diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2006-06-17 20:32:22 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2006-06-19 12:39:23 -0400 |
commit | 2925aba4223f4532e85f0c6f64584b3e0b2849c3 (patch) | |
tree | 1a7d38a22db3b745926232d665d6653baa47ee61 | |
parent | 7ab2dc41d15f31e9d5472e46148337b4cf7c941c (diff) |
[MIPS] Cleanup memory managment initialization.
Historically plat_mem_setup did the entire platform initialization. This
was rather impractical because it meant plat_mem_setup had to get away
without any kind of memory allocator. To keep old code from breaking
plat_setup was just renamed to plat_setup and a second platform
initialization hook for anything else was introduced.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
34 files changed, 81 insertions, 45 deletions
diff --git a/arch/mips/au1000/common/setup.c b/arch/mips/au1000/common/setup.c index eb6026ef1cbb..97165b6b3894 100644 --- a/arch/mips/au1000/common/setup.c +++ b/arch/mips/au1000/common/setup.c | |||
@@ -55,7 +55,7 @@ extern void au1xxx_time_init(void); | |||
55 | extern void au1xxx_timer_setup(struct irqaction *irq); | 55 | extern void au1xxx_timer_setup(struct irqaction *irq); |
56 | extern void set_cpuspec(void); | 56 | extern void set_cpuspec(void); |
57 | 57 | ||
58 | void __init plat_setup(void) | 58 | void __init plat_mem_setup(void) |
59 | { | 59 | { |
60 | struct cpu_spec *sp; | 60 | struct cpu_spec *sp; |
61 | char *argptr; | 61 | char *argptr; |
diff --git a/arch/mips/cobalt/setup.c b/arch/mips/cobalt/setup.c index 928431a9bcb0..ca719d6398bd 100644 --- a/arch/mips/cobalt/setup.c +++ b/arch/mips/cobalt/setup.c | |||
@@ -120,7 +120,7 @@ static struct pci_controller cobalt_pci_controller = { | |||
120 | .io_offset = 0 - GT64111_IO_BASE | 120 | .io_offset = 0 - GT64111_IO_BASE |
121 | }; | 121 | }; |
122 | 122 | ||
123 | void __init plat_setup(void) | 123 | void __init plat_mem_setup(void) |
124 | { | 124 | { |
125 | static struct uart_port uart; | 125 | static struct uart_port uart; |
126 | unsigned int devfn = PCI_DEVFN(COBALT_PCICONF_VIA, 0); | 126 | unsigned int devfn = PCI_DEVFN(COBALT_PCICONF_VIA, 0); |
diff --git a/arch/mips/ddb5xxx/ddb5074/setup.c b/arch/mips/ddb5xxx/ddb5074/setup.c index 91456b068c2e..4882ad1052e7 100644 --- a/arch/mips/ddb5xxx/ddb5074/setup.c +++ b/arch/mips/ddb5xxx/ddb5074/setup.c | |||
@@ -86,7 +86,7 @@ static void __init ddb_time_init(void) | |||
86 | 86 | ||
87 | 87 | ||
88 | 88 | ||
89 | void __init plat_setup(void) | 89 | void __init plat_mem_setup(void) |
90 | { | 90 | { |
91 | set_io_port_base(NILE4_PCI_IO_BASE); | 91 | set_io_port_base(NILE4_PCI_IO_BASE); |
92 | isa_slot_offset = NILE4_PCI_MEM_BASE; | 92 | isa_slot_offset = NILE4_PCI_MEM_BASE; |
diff --git a/arch/mips/ddb5xxx/ddb5476/setup.c b/arch/mips/ddb5xxx/ddb5476/setup.c index fc8d8bb4849c..101021afb2e4 100644 --- a/arch/mips/ddb5xxx/ddb5476/setup.c +++ b/arch/mips/ddb5xxx/ddb5476/setup.c | |||
@@ -150,7 +150,7 @@ static struct { | |||
150 | 150 | ||
151 | static void ddb5476_board_init(void); | 151 | static void ddb5476_board_init(void); |
152 | 152 | ||
153 | void __init plat_setup(void) | 153 | void __init plat_mem_setup(void) |
154 | { | 154 | { |
155 | set_io_port_base(KSEG1ADDR(DDB_PCI_IO_BASE)); | 155 | set_io_port_base(KSEG1ADDR(DDB_PCI_IO_BASE)); |
156 | 156 | ||
diff --git a/arch/mips/ddb5xxx/ddb5477/setup.c b/arch/mips/ddb5xxx/ddb5477/setup.c index 2f566034cc44..93167ecdb424 100644 --- a/arch/mips/ddb5xxx/ddb5477/setup.c +++ b/arch/mips/ddb5xxx/ddb5477/setup.c | |||
@@ -171,7 +171,7 @@ static void ddb5477_board_init(void); | |||
171 | extern struct pci_controller ddb5477_ext_controller; | 171 | extern struct pci_controller ddb5477_ext_controller; |
172 | extern struct pci_controller ddb5477_io_controller; | 172 | extern struct pci_controller ddb5477_io_controller; |
173 | 173 | ||
174 | void __init plat_setup(void) | 174 | void __init plat_mem_setup(void) |
175 | { | 175 | { |
176 | /* initialize board - we don't trust the loader */ | 176 | /* initialize board - we don't trust the loader */ |
177 | ddb5477_board_init(); | 177 | ddb5477_board_init(); |
diff --git a/arch/mips/dec/setup.c b/arch/mips/dec/setup.c index ad5d436d80c1..9c707b9ceb65 100644 --- a/arch/mips/dec/setup.c +++ b/arch/mips/dec/setup.c | |||
@@ -147,7 +147,7 @@ static void __init dec_be_init(void) | |||
147 | extern void dec_time_init(void); | 147 | extern void dec_time_init(void); |
148 | extern void dec_timer_setup(struct irqaction *); | 148 | extern void dec_timer_setup(struct irqaction *); |
149 | 149 | ||
150 | void __init plat_setup(void) | 150 | void __init plat_mem_setup(void) |
151 | { | 151 | { |
152 | board_be_init = dec_be_init; | 152 | board_be_init = dec_be_init; |
153 | board_time_init = dec_time_init; | 153 | board_time_init = dec_time_init; |
diff --git a/arch/mips/galileo-boards/ev96100/setup.c b/arch/mips/galileo-boards/ev96100/setup.c index 78dbb18edeb8..a04aea6123da 100644 --- a/arch/mips/galileo-boards/ev96100/setup.c +++ b/arch/mips/galileo-boards/ev96100/setup.c | |||
@@ -55,7 +55,7 @@ extern void mips_reboot_setup(void); | |||
55 | 55 | ||
56 | unsigned char mac_0_1[12]; | 56 | unsigned char mac_0_1[12]; |
57 | 57 | ||
58 | void __init plat_setup(void) | 58 | void __init plat_mem_setup(void) |
59 | { | 59 | { |
60 | unsigned int config = read_c0_config(); | 60 | unsigned int config = read_c0_config(); |
61 | unsigned int status = read_c0_status(); | 61 | unsigned int status = read_c0_status(); |
diff --git a/arch/mips/gt64120/ev64120/setup.c b/arch/mips/gt64120/ev64120/setup.c index 6d859d1e7a2d..4236da31ecc6 100644 --- a/arch/mips/gt64120/ev64120/setup.c +++ b/arch/mips/gt64120/ev64120/setup.c | |||
@@ -71,7 +71,7 @@ unsigned long __init prom_free_prom_memory(void) | |||
71 | */ | 71 | */ |
72 | extern void gt64120_time_init(void); | 72 | extern void gt64120_time_init(void); |
73 | 73 | ||
74 | void __init plat_setup(void) | 74 | void __init plat_mem_setup(void) |
75 | { | 75 | { |
76 | _machine_restart = galileo_machine_restart; | 76 | _machine_restart = galileo_machine_restart; |
77 | _machine_halt = galileo_machine_halt; | 77 | _machine_halt = galileo_machine_halt; |
diff --git a/arch/mips/gt64120/momenco_ocelot/setup.c b/arch/mips/gt64120/momenco_ocelot/setup.c index 20b65d3d2151..1193a22c4693 100644 --- a/arch/mips/gt64120/momenco_ocelot/setup.c +++ b/arch/mips/gt64120/momenco_ocelot/setup.c | |||
@@ -152,7 +152,7 @@ void PMON_v2_setup() | |||
152 | gt64120_base = 0xe0000000; | 152 | gt64120_base = 0xe0000000; |
153 | } | 153 | } |
154 | 154 | ||
155 | void __init plat_setup(void) | 155 | void __init plat_mem_setup(void) |
156 | { | 156 | { |
157 | void (*l3func)(unsigned long)=KSEG1ADDR(&setup_l3cache); | 157 | void (*l3func)(unsigned long)=KSEG1ADDR(&setup_l3cache); |
158 | unsigned int tmpword; | 158 | unsigned int tmpword; |
diff --git a/arch/mips/ite-boards/generic/it8172_setup.c b/arch/mips/ite-boards/generic/it8172_setup.c index 00844e621e5f..da6ae0991199 100644 --- a/arch/mips/ite-boards/generic/it8172_setup.c +++ b/arch/mips/ite-boards/generic/it8172_setup.c | |||
@@ -154,7 +154,7 @@ void __init it8172_init_ram_resource(unsigned long memsize) | |||
154 | it8172_resources.ram.end = memsize; | 154 | it8172_resources.ram.end = memsize; |
155 | } | 155 | } |
156 | 156 | ||
157 | void __init plat_setup(void) | 157 | void __init plat_mem_setup(void) |
158 | { | 158 | { |
159 | unsigned short dsr; | 159 | unsigned short dsr; |
160 | char *argptr; | 160 | char *argptr; |
diff --git a/arch/mips/jazz/setup.c b/arch/mips/jazz/setup.c index 4036dc434551..c8d0df7d0c36 100644 --- a/arch/mips/jazz/setup.c +++ b/arch/mips/jazz/setup.c | |||
@@ -52,7 +52,7 @@ static struct resource jazz_io_resources[] = { | |||
52 | { "dma2", 0xc0, 0xdf, IORESOURCE_BUSY }, | 52 | { "dma2", 0xc0, 0xdf, IORESOURCE_BUSY }, |
53 | }; | 53 | }; |
54 | 54 | ||
55 | void __init plat_setup(void) | 55 | void __init plat_mem_setup(void) |
56 | { | 56 | { |
57 | int i; | 57 | int i; |
58 | 58 | ||
diff --git a/arch/mips/jmr3927/rbhma3100/setup.c b/arch/mips/jmr3927/rbhma3100/setup.c index 1f136551f2ac..308e6cdcd245 100644 --- a/arch/mips/jmr3927/rbhma3100/setup.c +++ b/arch/mips/jmr3927/rbhma3100/setup.c | |||
@@ -238,7 +238,7 @@ static void jmr3927_board_init(void); | |||
238 | extern struct resource pci_io_resource; | 238 | extern struct resource pci_io_resource; |
239 | extern struct resource pci_mem_resource; | 239 | extern struct resource pci_mem_resource; |
240 | 240 | ||
241 | void __init plat_setup(void) | 241 | void __init plat_mem_setup(void) |
242 | { | 242 | { |
243 | char *argptr; | 243 | char *argptr; |
244 | 244 | ||
diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c index 397a70e651b5..bfcec8d9bfe4 100644 --- a/arch/mips/kernel/setup.c +++ b/arch/mips/kernel/setup.c | |||
@@ -442,6 +442,48 @@ static inline void bootmem_init(void) | |||
442 | #endif /* CONFIG_BLK_DEV_INITRD */ | 442 | #endif /* CONFIG_BLK_DEV_INITRD */ |
443 | } | 443 | } |
444 | 444 | ||
445 | /* | ||
446 | * arch_mem_init - initialize memory managment subsystem | ||
447 | * | ||
448 | * o plat_mem_setup() detects the memory configuration and will record detected | ||
449 | * memory areas using add_memory_region. | ||
450 | * o parse_cmdline_early() parses the command line for mem= options which, | ||
451 | * iff detected, will override the results of the automatic detection. | ||
452 | * | ||
453 | * At this stage the memory configuration of the system is known to the | ||
454 | * kernel but generic memory managment system is still entirely uninitialized. | ||
455 | * | ||
456 | * o bootmem_init() | ||
457 | * o sparse_init() | ||
458 | * o paging_init() | ||
459 | * | ||
460 | * At this stage the bootmem allocator is ready to use. | ||
461 | * | ||
462 | * NOTE: historically plat_mem_setup did the entire platform initialization. | ||
463 | * This was rather impractical because it meant plat_mem_setup had to | ||
464 | * get away without any kind of memory allocator. To keep old code from | ||
465 | * breaking plat_setup was just renamed to plat_setup and a second platform | ||
466 | * initialization hook for anything else was introduced. | ||
467 | */ | ||
468 | |||
469 | extern void plat_mem_setup(void); | ||
470 | |||
471 | static void __init arch_mem_init(char **cmdline_p) | ||
472 | { | ||
473 | /* call board setup routine */ | ||
474 | plat_mem_setup(); | ||
475 | |||
476 | strlcpy(command_line, arcs_cmdline, sizeof(command_line)); | ||
477 | strlcpy(saved_command_line, command_line, COMMAND_LINE_SIZE); | ||
478 | |||
479 | *cmdline_p = command_line; | ||
480 | |||
481 | parse_cmdline_early(); | ||
482 | bootmem_init(); | ||
483 | sparse_init(); | ||
484 | paging_init(); | ||
485 | } | ||
486 | |||
445 | static inline void resource_init(void) | 487 | static inline void resource_init(void) |
446 | { | 488 | { |
447 | int i; | 489 | int i; |
@@ -495,8 +537,6 @@ static inline void resource_init(void) | |||
495 | #undef MAXMEM | 537 | #undef MAXMEM |
496 | #undef MAXMEM_PFN | 538 | #undef MAXMEM_PFN |
497 | 539 | ||
498 | extern void plat_setup(void); | ||
499 | |||
500 | void __init setup_arch(char **cmdline_p) | 540 | void __init setup_arch(char **cmdline_p) |
501 | { | 541 | { |
502 | cpu_probe(); | 542 | cpu_probe(); |
@@ -511,18 +551,8 @@ void __init setup_arch(char **cmdline_p) | |||
511 | #endif | 551 | #endif |
512 | #endif | 552 | #endif |
513 | 553 | ||
514 | /* call board setup routine */ | 554 | arch_mem_init(cmdline_p); |
515 | plat_setup(); | ||
516 | 555 | ||
517 | strlcpy(command_line, arcs_cmdline, sizeof(command_line)); | ||
518 | strlcpy(saved_command_line, command_line, COMMAND_LINE_SIZE); | ||
519 | |||
520 | *cmdline_p = command_line; | ||
521 | |||
522 | parse_cmdline_early(); | ||
523 | bootmem_init(); | ||
524 | sparse_init(); | ||
525 | paging_init(); | ||
526 | resource_init(); | 556 | resource_init(); |
527 | #ifdef CONFIG_SMP | 557 | #ifdef CONFIG_SMP |
528 | plat_smp_setup(); | 558 | plat_smp_setup(); |
diff --git a/arch/mips/lasat/setup.c b/arch/mips/lasat/setup.c index bb70a8240e61..3f64277429e4 100644 --- a/arch/mips/lasat/setup.c +++ b/arch/mips/lasat/setup.c | |||
@@ -155,7 +155,7 @@ void __init serial_init(void) | |||
155 | } | 155 | } |
156 | #endif | 156 | #endif |
157 | 157 | ||
158 | void __init plat_setup(void) | 158 | void __init plat_mem_setup(void) |
159 | { | 159 | { |
160 | int i; | 160 | int i; |
161 | lasat_misc = &lasat_misc_info[mips_machtype]; | 161 | lasat_misc = &lasat_misc_info[mips_machtype]; |
diff --git a/arch/mips/mips-boards/atlas/atlas_setup.c b/arch/mips/mips-boards/atlas/atlas_setup.c index c20d401ecf80..8cc9effcb832 100644 --- a/arch/mips/mips-boards/atlas/atlas_setup.c +++ b/arch/mips/mips-boards/atlas/atlas_setup.c | |||
@@ -50,7 +50,7 @@ const char *get_system_type(void) | |||
50 | return "MIPS Atlas"; | 50 | return "MIPS Atlas"; |
51 | } | 51 | } |
52 | 52 | ||
53 | void __init plat_setup(void) | 53 | void __init plat_mem_setup(void) |
54 | { | 54 | { |
55 | mips_pcibios_init(); | 55 | mips_pcibios_init(); |
56 | 56 | ||
diff --git a/arch/mips/mips-boards/malta/malta_setup.c b/arch/mips/mips-boards/malta/malta_setup.c index ae1de3dc71ed..0766e434b6bd 100644 --- a/arch/mips/mips-boards/malta/malta_setup.c +++ b/arch/mips/mips-boards/malta/malta_setup.c | |||
@@ -111,7 +111,7 @@ void __init fd_activate(void) | |||
111 | } | 111 | } |
112 | #endif | 112 | #endif |
113 | 113 | ||
114 | void __init plat_setup(void) | 114 | void __init plat_mem_setup(void) |
115 | { | 115 | { |
116 | unsigned int i; | 116 | unsigned int i; |
117 | 117 | ||
diff --git a/arch/mips/mips-boards/sead/sead_setup.c b/arch/mips/mips-boards/sead/sead_setup.c index 4266ce445174..6430f11f3a95 100644 --- a/arch/mips/mips-boards/sead/sead_setup.c +++ b/arch/mips/mips-boards/sead/sead_setup.c | |||
@@ -45,7 +45,7 @@ const char *get_system_type(void) | |||
45 | return "MIPS SEAD"; | 45 | return "MIPS SEAD"; |
46 | } | 46 | } |
47 | 47 | ||
48 | void __init plat_setup(void) | 48 | void __init plat_mem_setup(void) |
49 | { | 49 | { |
50 | ioport_resource.end = 0x7fffffff; | 50 | ioport_resource.end = 0x7fffffff; |
51 | 51 | ||
diff --git a/arch/mips/mips-boards/sim/sim_setup.c b/arch/mips/mips-boards/sim/sim_setup.c index a2fd62997ca3..15a5dac4ae19 100644 --- a/arch/mips/mips-boards/sim/sim_setup.c +++ b/arch/mips/mips-boards/sim/sim_setup.c | |||
@@ -50,7 +50,7 @@ const char *get_system_type(void) | |||
50 | return "MIPSsim"; | 50 | return "MIPSsim"; |
51 | } | 51 | } |
52 | 52 | ||
53 | void __init plat_setup(void) | 53 | void __init plat_mem_setup(void) |
54 | { | 54 | { |
55 | set_io_port_base(0xbfd00000); | 55 | set_io_port_base(0xbfd00000); |
56 | 56 | ||
diff --git a/arch/mips/momentum/jaguar_atx/setup.c b/arch/mips/momentum/jaguar_atx/setup.c index 1379c76845dc..df1485501ce6 100644 --- a/arch/mips/momentum/jaguar_atx/setup.c +++ b/arch/mips/momentum/jaguar_atx/setup.c | |||
@@ -359,7 +359,7 @@ static __init int __init ja_pci_init(void) | |||
359 | 359 | ||
360 | arch_initcall(ja_pci_init); | 360 | arch_initcall(ja_pci_init); |
361 | 361 | ||
362 | void __init plat_setup(void) | 362 | void __init plat_mem_setup(void) |
363 | { | 363 | { |
364 | unsigned int tmpword; | 364 | unsigned int tmpword; |
365 | 365 | ||
diff --git a/arch/mips/momentum/ocelot_3/setup.c b/arch/mips/momentum/ocelot_3/setup.c index c69195234309..8c53490ba6f1 100644 --- a/arch/mips/momentum/ocelot_3/setup.c +++ b/arch/mips/momentum/ocelot_3/setup.c | |||
@@ -313,7 +313,7 @@ static __init int __init ja_pci_init(void) | |||
313 | 313 | ||
314 | arch_initcall(ja_pci_init); | 314 | arch_initcall(ja_pci_init); |
315 | 315 | ||
316 | void __init plat_setup(void) | 316 | void __init plat_mem_setup(void) |
317 | { | 317 | { |
318 | unsigned int tmpword; | 318 | unsigned int tmpword; |
319 | 319 | ||
diff --git a/arch/mips/momentum/ocelot_c/setup.c b/arch/mips/momentum/ocelot_c/setup.c index a3e6f5575592..257e1d1b72dd 100644 --- a/arch/mips/momentum/ocelot_c/setup.c +++ b/arch/mips/momentum/ocelot_c/setup.c | |||
@@ -231,7 +231,7 @@ void momenco_time_init(void) | |||
231 | rtc_mips_set_time = m48t37y_set_time; | 231 | rtc_mips_set_time = m48t37y_set_time; |
232 | } | 232 | } |
233 | 233 | ||
234 | void __init plat_setup(void) | 234 | void __init plat_mem_setup(void) |
235 | { | 235 | { |
236 | unsigned int tmpword; | 236 | unsigned int tmpword; |
237 | 237 | ||
diff --git a/arch/mips/momentum/ocelot_g/setup.c b/arch/mips/momentum/ocelot_g/setup.c index fed4e8eee116..72143ab1e900 100644 --- a/arch/mips/momentum/ocelot_g/setup.c +++ b/arch/mips/momentum/ocelot_g/setup.c | |||
@@ -162,7 +162,7 @@ static void __init setup_l3cache(unsigned long size) | |||
162 | printk("Done\n"); | 162 | printk("Done\n"); |
163 | } | 163 | } |
164 | 164 | ||
165 | void __init plat_setup(void) | 165 | void __init plat_mem_setup(void) |
166 | { | 166 | { |
167 | void (*l3func)(unsigned long) = (void *) KSEG1ADDR(setup_l3cache); | 167 | void (*l3func)(unsigned long) = (void *) KSEG1ADDR(setup_l3cache); |
168 | unsigned int tmpword; | 168 | unsigned int tmpword; |
diff --git a/arch/mips/philips/pnx8550/common/setup.c b/arch/mips/philips/pnx8550/common/setup.c index 2b199f338080..0e791f4f6ea3 100644 --- a/arch/mips/philips/pnx8550/common/setup.c +++ b/arch/mips/philips/pnx8550/common/setup.c | |||
@@ -99,7 +99,7 @@ unsigned long get_system_mem_size(void) | |||
99 | 99 | ||
100 | int pnx8550_console_port = -1; | 100 | int pnx8550_console_port = -1; |
101 | 101 | ||
102 | void __init plat_setup(void) | 102 | void __init plat_mem_setup(void) |
103 | { | 103 | { |
104 | int i; | 104 | int i; |
105 | char* argptr; | 105 | char* argptr; |
diff --git a/arch/mips/pmc-sierra/yosemite/setup.c b/arch/mips/pmc-sierra/yosemite/setup.c index 3f724d661bdb..aa0d6ff3c6ec 100644 --- a/arch/mips/pmc-sierra/yosemite/setup.c +++ b/arch/mips/pmc-sierra/yosemite/setup.c | |||
@@ -218,7 +218,7 @@ static void __init py_late_time_init(void) | |||
218 | py_rtc_setup(); | 218 | py_rtc_setup(); |
219 | } | 219 | } |
220 | 220 | ||
221 | void __init plat_setup(void) | 221 | void __init plat_mem_setup(void) |
222 | { | 222 | { |
223 | board_time_init = yosemite_time_init; | 223 | board_time_init = yosemite_time_init; |
224 | late_time_init = py_late_time_init; | 224 | late_time_init = py_late_time_init; |
diff --git a/arch/mips/qemu/q-setup.c b/arch/mips/qemu/q-setup.c index f27155bc2d9a..e100d6072e31 100644 --- a/arch/mips/qemu/q-setup.c +++ b/arch/mips/qemu/q-setup.c | |||
@@ -20,7 +20,7 @@ static void __init qemu_timer_setup(struct irqaction *irq) | |||
20 | setup_irq(0, irq); | 20 | setup_irq(0, irq); |
21 | } | 21 | } |
22 | 22 | ||
23 | void __init plat_setup(void) | 23 | void __init plat_mem_setup(void) |
24 | { | 24 | { |
25 | set_io_port_base(QEMU_PORT_BASE); | 25 | set_io_port_base(QEMU_PORT_BASE); |
26 | board_timer_setup = qemu_timer_setup; | 26 | board_timer_setup = qemu_timer_setup; |
diff --git a/arch/mips/sgi-ip22/ip22-setup.c b/arch/mips/sgi-ip22/ip22-setup.c index 7018e1833e85..d7138906eb10 100644 --- a/arch/mips/sgi-ip22/ip22-setup.c +++ b/arch/mips/sgi-ip22/ip22-setup.c | |||
@@ -53,7 +53,7 @@ EXPORT_SYMBOL(ip22_do_break); | |||
53 | extern void ip22_be_init(void) __init; | 53 | extern void ip22_be_init(void) __init; |
54 | extern void ip22_time_init(void) __init; | 54 | extern void ip22_time_init(void) __init; |
55 | 55 | ||
56 | void __init plat_setup(void) | 56 | void __init plat_mem_setup(void) |
57 | { | 57 | { |
58 | char *ctype; | 58 | char *ctype; |
59 | char *cserial; | 59 | char *cserial; |
diff --git a/arch/mips/sgi-ip27/ip27-init.c b/arch/mips/sgi-ip27/ip27-init.c index 16c4b3410eaf..a6b490e99709 100644 --- a/arch/mips/sgi-ip27/ip27-init.c +++ b/arch/mips/sgi-ip27/ip27-init.c | |||
@@ -196,7 +196,7 @@ extern void ip27_setup_console(void); | |||
196 | extern void ip27_time_init(void); | 196 | extern void ip27_time_init(void); |
197 | extern void ip27_reboot_setup(void); | 197 | extern void ip27_reboot_setup(void); |
198 | 198 | ||
199 | void __init plat_setup(void) | 199 | void __init plat_mem_setup(void) |
200 | { | 200 | { |
201 | hubreg_t p, e, n_mode; | 201 | hubreg_t p, e, n_mode; |
202 | nasid_t nid; | 202 | nasid_t nid; |
diff --git a/arch/mips/sgi-ip32/ip32-setup.c b/arch/mips/sgi-ip32/ip32-setup.c index a2dd8ae1ea8f..acbdad06fac1 100644 --- a/arch/mips/sgi-ip32/ip32-setup.c +++ b/arch/mips/sgi-ip32/ip32-setup.c | |||
@@ -87,7 +87,7 @@ void __init ip32_timer_setup(struct irqaction *irq) | |||
87 | setup_irq(IP32_R4K_TIMER_IRQ, irq); | 87 | setup_irq(IP32_R4K_TIMER_IRQ, irq); |
88 | } | 88 | } |
89 | 89 | ||
90 | void __init plat_setup(void) | 90 | void __init plat_mem_setup(void) |
91 | { | 91 | { |
92 | board_be_init = ip32_be_init; | 92 | board_be_init = ip32_be_init; |
93 | 93 | ||
diff --git a/arch/mips/sibyte/swarm/setup.c b/arch/mips/sibyte/swarm/setup.c index 4b5f74ff3edd..7f646bc0719c 100644 --- a/arch/mips/sibyte/swarm/setup.c +++ b/arch/mips/sibyte/swarm/setup.c | |||
@@ -103,7 +103,7 @@ int swarm_be_handler(struct pt_regs *regs, int is_fixup) | |||
103 | return (is_fixup ? MIPS_BE_FIXUP : MIPS_BE_FATAL); | 103 | return (is_fixup ? MIPS_BE_FIXUP : MIPS_BE_FATAL); |
104 | } | 104 | } |
105 | 105 | ||
106 | void __init plat_setup(void) | 106 | void __init plat_mem_setup(void) |
107 | { | 107 | { |
108 | #if defined(CONFIG_SIBYTE_BCM1x55) || defined(CONFIG_SIBYTE_BCM1x80) | 108 | #if defined(CONFIG_SIBYTE_BCM1x55) || defined(CONFIG_SIBYTE_BCM1x80) |
109 | bcm1480_setup(); | 109 | bcm1480_setup(); |
diff --git a/arch/mips/sni/setup.c b/arch/mips/sni/setup.c index c33cb9d1e18d..635b904cabd7 100644 --- a/arch/mips/sni/setup.c +++ b/arch/mips/sni/setup.c | |||
@@ -252,7 +252,7 @@ static inline void sni_pcimt_time_init(void) | |||
252 | rtc_mips_set_time = mc146818_set_rtc_mmss; | 252 | rtc_mips_set_time = mc146818_set_rtc_mmss; |
253 | } | 253 | } |
254 | 254 | ||
255 | void __init plat_setup(void) | 255 | void __init plat_mem_setup(void) |
256 | { | 256 | { |
257 | sni_pcimt_detect(); | 257 | sni_pcimt_detect(); |
258 | sni_pcimt_sc_init(); | 258 | sni_pcimt_sc_init(); |
diff --git a/arch/mips/tx4927/common/tx4927_setup.c b/arch/mips/tx4927/common/tx4927_setup.c index 77c3b66fb959..81a5acfe8c42 100644 --- a/arch/mips/tx4927/common/tx4927_setup.c +++ b/arch/mips/tx4927/common/tx4927_setup.c | |||
@@ -64,7 +64,7 @@ static void tx4927_write_buffer_flush(void) | |||
64 | } | 64 | } |
65 | 65 | ||
66 | 66 | ||
67 | void __init plat_setup(void) | 67 | void __init plat_mem_setup(void) |
68 | { | 68 | { |
69 | board_time_init = tx4927_time_init; | 69 | board_time_init = tx4927_time_init; |
70 | board_timer_setup = tx4927_timer_setup; | 70 | board_timer_setup = tx4927_timer_setup; |
diff --git a/arch/mips/tx4938/common/setup.c b/arch/mips/tx4938/common/setup.c index fc992953bf95..ef59a5cffc69 100644 --- a/arch/mips/tx4938/common/setup.c +++ b/arch/mips/tx4938/common/setup.c | |||
@@ -61,7 +61,7 @@ tx4938_write_buffer_flush(void) | |||
61 | } | 61 | } |
62 | 62 | ||
63 | void __init | 63 | void __init |
64 | plat_setup(void) | 64 | plat_mem_setup(void) |
65 | { | 65 | { |
66 | board_time_init = tx4938_time_init; | 66 | board_time_init = tx4938_time_init; |
67 | board_timer_setup = tx4938_timer_setup; | 67 | board_timer_setup = tx4938_timer_setup; |
diff --git a/arch/mips/vr41xx/common/init.c b/arch/mips/vr41xx/common/init.c index 707bd0933eed..915bfa5c0719 100644 --- a/arch/mips/vr41xx/common/init.c +++ b/arch/mips/vr41xx/common/init.c | |||
@@ -58,7 +58,7 @@ static void __init timer_init(void) | |||
58 | board_timer_setup = setup_timer_irq; | 58 | board_timer_setup = setup_timer_irq; |
59 | } | 59 | } |
60 | 60 | ||
61 | void __init plat_setup(void) | 61 | void __init plat_mem_setup(void) |
62 | { | 62 | { |
63 | vr41xx_calculate_clock_frequency(); | 63 | vr41xx_calculate_clock_frequency(); |
64 | 64 | ||
diff --git a/include/asm-mips/bootinfo.h b/include/asm-mips/bootinfo.h index 14fc88f27226..edf2b9a71c82 100644 --- a/include/asm-mips/bootinfo.h +++ b/include/asm-mips/bootinfo.h | |||
@@ -258,4 +258,10 @@ extern char arcs_cmdline[CL_SIZE]; | |||
258 | * Registers a0, a1, a3 and a4 as passed to the kenrel entry by firmware | 258 | * Registers a0, a1, a3 and a4 as passed to the kenrel entry by firmware |
259 | */ | 259 | */ |
260 | extern unsigned long fw_arg0, fw_arg1, fw_arg2, fw_arg3; | 260 | extern unsigned long fw_arg0, fw_arg1, fw_arg2, fw_arg3; |
261 | |||
262 | /* | ||
263 | * Platform memory detection hook called by setup_arch | ||
264 | */ | ||
265 | extern void plat_mem_setup(void); | ||
266 | |||
261 | #endif /* _ASM_BOOTINFO_H */ | 267 | #endif /* _ASM_BOOTINFO_H */ |