ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / arch / arm / kernel / arch.c
1 /*
2  *  linux/arch/arm/kernel/arch.c
3  *
4  *  Architecture specific fixups.
5  */
6 #include <linux/config.h>
7 #include <linux/init.h>
8 #include <linux/types.h>
9
10 #include <asm/elf.h>
11 #include <asm/page.h>
12 #include <asm/setup.h>
13 #include <asm/mach-types.h>
14 #include <asm/mach/arch.h>
15
16 unsigned int vram_size;
17
18 #ifdef CONFIG_ARCH_ACORN
19
20 unsigned int memc_ctrl_reg;
21 unsigned int number_mfm_drives;
22
23 static int __init parse_tag_acorn(const struct tag *tag)
24 {
25         memc_ctrl_reg = tag->u.acorn.memc_control_reg;
26         number_mfm_drives = tag->u.acorn.adfsdrives;
27
28         switch (tag->u.acorn.vram_pages) {
29         case 512:
30                 vram_size += PAGE_SIZE * 256;
31         case 256:
32                 vram_size += PAGE_SIZE * 256;
33         default:
34                 break;
35         }
36 #if 0
37         if (vram_size) {
38                 desc->video_start = 0x02000000;
39                 desc->video_end   = 0x02000000 + vram_size;
40         }
41 #endif
42         return 0;
43 }
44
45 __tagtable(ATAG_ACORN, parse_tag_acorn);
46
47 #endif