diff options
Diffstat (limited to 'arch/arm')
27 files changed, 130 insertions, 102 deletions
diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c index e0661777f599..ec74c0f2051c 100644 --- a/arch/arm/mach-omap2/board-2430sdp.c +++ b/arch/arm/mach-omap2/board-2430sdp.c | |||
@@ -139,13 +139,12 @@ static struct omap_board_config_kernel sdp2430_config[] __initdata = { | |||
139 | {OMAP_TAG_LCD, &sdp2430_lcd_config}, | 139 | {OMAP_TAG_LCD, &sdp2430_lcd_config}, |
140 | }; | 140 | }; |
141 | 141 | ||
142 | static void __init omap_2430sdp_init_irq(void) | 142 | static void __init omap_2430sdp_init_early(void) |
143 | { | 143 | { |
144 | omap_board_config = sdp2430_config; | 144 | omap_board_config = sdp2430_config; |
145 | omap_board_config_size = ARRAY_SIZE(sdp2430_config); | 145 | omap_board_config_size = ARRAY_SIZE(sdp2430_config); |
146 | omap2_init_common_infrastructure(); | 146 | omap2_init_common_infrastructure(); |
147 | omap2_init_common_devices(NULL, NULL); | 147 | omap2_init_common_devices(NULL, NULL); |
148 | omap_init_irq(); | ||
149 | } | 148 | } |
150 | 149 | ||
151 | static struct twl4030_gpio_platform_data sdp2430_gpio_data = { | 150 | static struct twl4030_gpio_platform_data sdp2430_gpio_data = { |
@@ -253,9 +252,10 @@ static void __init omap_2430sdp_map_io(void) | |||
253 | MACHINE_START(OMAP_2430SDP, "OMAP2430 sdp2430 board") | 252 | MACHINE_START(OMAP_2430SDP, "OMAP2430 sdp2430 board") |
254 | /* Maintainer: Syed Khasim - Texas Instruments Inc */ | 253 | /* Maintainer: Syed Khasim - Texas Instruments Inc */ |
255 | .boot_params = 0x80000100, | 254 | .boot_params = 0x80000100, |
256 | .map_io = omap_2430sdp_map_io, | ||
257 | .reserve = omap_reserve, | 255 | .reserve = omap_reserve, |
258 | .init_irq = omap_2430sdp_init_irq, | 256 | .map_io = omap_2430sdp_map_io, |
257 | .init_early = omap_2430sdp_init_early, | ||
258 | .init_irq = omap_init_irq, | ||
259 | .init_machine = omap_2430sdp_init, | 259 | .init_machine = omap_2430sdp_init, |
260 | .timer = &omap_timer, | 260 | .timer = &omap_timer, |
261 | MACHINE_END | 261 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c index d4e41ef86aa5..31085883199e 100644 --- a/arch/arm/mach-omap2/board-3430sdp.c +++ b/arch/arm/mach-omap2/board-3430sdp.c | |||
@@ -327,14 +327,13 @@ static struct platform_device *sdp3430_devices[] __initdata = { | |||
327 | static struct omap_board_config_kernel sdp3430_config[] __initdata = { | 327 | static struct omap_board_config_kernel sdp3430_config[] __initdata = { |
328 | }; | 328 | }; |
329 | 329 | ||
330 | static void __init omap_3430sdp_init_irq(void) | 330 | static void __init omap_3430sdp_init_early(void) |
331 | { | 331 | { |
332 | omap_board_config = sdp3430_config; | 332 | omap_board_config = sdp3430_config; |
333 | omap_board_config_size = ARRAY_SIZE(sdp3430_config); | 333 | omap_board_config_size = ARRAY_SIZE(sdp3430_config); |
334 | omap3_pm_init_cpuidle(omap3_cpuidle_params_table); | 334 | omap3_pm_init_cpuidle(omap3_cpuidle_params_table); |
335 | omap2_init_common_infrastructure(); | 335 | omap2_init_common_infrastructure(); |
336 | omap2_init_common_devices(hyb18m512160af6_sdrc_params, NULL); | 336 | omap2_init_common_devices(hyb18m512160af6_sdrc_params, NULL); |
337 | omap_init_irq(); | ||
338 | } | 337 | } |
339 | 338 | ||
340 | static int sdp3430_batt_table[] = { | 339 | static int sdp3430_batt_table[] = { |
@@ -822,9 +821,10 @@ static void __init omap_3430sdp_init(void) | |||
822 | MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board") | 821 | MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board") |
823 | /* Maintainer: Syed Khasim - Texas Instruments Inc */ | 822 | /* Maintainer: Syed Khasim - Texas Instruments Inc */ |
824 | .boot_params = 0x80000100, | 823 | .boot_params = 0x80000100, |
825 | .map_io = omap3_map_io, | ||
826 | .reserve = omap_reserve, | 824 | .reserve = omap_reserve, |
827 | .init_irq = omap_3430sdp_init_irq, | 825 | .map_io = omap3_map_io, |
826 | .init_early = omap_3430sdp_init_early, | ||
827 | .init_irq = omap_init_irq, | ||
828 | .init_machine = omap_3430sdp_init, | 828 | .init_machine = omap_3430sdp_init, |
829 | .timer = &omap_timer, | 829 | .timer = &omap_timer, |
830 | MACHINE_END | 830 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-3630sdp.c b/arch/arm/mach-omap2/board-3630sdp.c index 62645640f5e4..16538757291a 100644 --- a/arch/arm/mach-omap2/board-3630sdp.c +++ b/arch/arm/mach-omap2/board-3630sdp.c | |||
@@ -69,14 +69,13 @@ static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { | |||
69 | static struct omap_board_config_kernel sdp_config[] __initdata = { | 69 | static struct omap_board_config_kernel sdp_config[] __initdata = { |
70 | }; | 70 | }; |
71 | 71 | ||
72 | static void __init omap_sdp_init_irq(void) | 72 | static void __init omap_sdp_init_early(void) |
73 | { | 73 | { |
74 | omap_board_config = sdp_config; | 74 | omap_board_config = sdp_config; |
75 | omap_board_config_size = ARRAY_SIZE(sdp_config); | 75 | omap_board_config_size = ARRAY_SIZE(sdp_config); |
76 | omap2_init_common_infrastructure(); | 76 | omap2_init_common_infrastructure(); |
77 | omap2_init_common_devices(h8mbx00u0mer0em_sdrc_params, | 77 | omap2_init_common_devices(h8mbx00u0mer0em_sdrc_params, |
78 | h8mbx00u0mer0em_sdrc_params); | 78 | h8mbx00u0mer0em_sdrc_params); |
79 | omap_init_irq(); | ||
80 | } | 79 | } |
81 | 80 | ||
82 | #ifdef CONFIG_OMAP_MUX | 81 | #ifdef CONFIG_OMAP_MUX |
@@ -216,9 +215,10 @@ static void __init omap_sdp_init(void) | |||
216 | 215 | ||
217 | MACHINE_START(OMAP_3630SDP, "OMAP 3630SDP board") | 216 | MACHINE_START(OMAP_3630SDP, "OMAP 3630SDP board") |
218 | .boot_params = 0x80000100, | 217 | .boot_params = 0x80000100, |
219 | .map_io = omap3_map_io, | ||
220 | .reserve = omap_reserve, | 218 | .reserve = omap_reserve, |
221 | .init_irq = omap_sdp_init_irq, | 219 | .map_io = omap3_map_io, |
220 | .init_early = omap_sdp_init_early, | ||
221 | .init_irq = omap_init_irq, | ||
222 | .init_machine = omap_sdp_init, | 222 | .init_machine = omap_sdp_init, |
223 | .timer = &omap_timer, | 223 | .timer = &omap_timer, |
224 | MACHINE_END | 224 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index 07d1b20b1148..12d99e582cd6 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
@@ -239,7 +239,7 @@ static struct omap_board_config_kernel sdp4430_config[] __initdata = { | |||
239 | { OMAP_TAG_LCD, &sdp4430_lcd_config }, | 239 | { OMAP_TAG_LCD, &sdp4430_lcd_config }, |
240 | }; | 240 | }; |
241 | 241 | ||
242 | static void __init omap_4430sdp_init_irq(void) | 242 | static void __init omap_4430sdp_init_early(void) |
243 | { | 243 | { |
244 | omap_board_config = sdp4430_config; | 244 | omap_board_config = sdp4430_config; |
245 | omap_board_config_size = ARRAY_SIZE(sdp4430_config); | 245 | omap_board_config_size = ARRAY_SIZE(sdp4430_config); |
@@ -248,7 +248,6 @@ static void __init omap_4430sdp_init_irq(void) | |||
248 | #ifdef CONFIG_OMAP_32K_TIMER | 248 | #ifdef CONFIG_OMAP_32K_TIMER |
249 | omap2_gp_clockevent_set_gptimer(1); | 249 | omap2_gp_clockevent_set_gptimer(1); |
250 | #endif | 250 | #endif |
251 | gic_init_irq(); | ||
252 | } | 251 | } |
253 | 252 | ||
254 | static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { | 253 | static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { |
@@ -605,9 +604,10 @@ static void __init omap_4430sdp_map_io(void) | |||
605 | MACHINE_START(OMAP_4430SDP, "OMAP4430 4430SDP board") | 604 | MACHINE_START(OMAP_4430SDP, "OMAP4430 4430SDP board") |
606 | /* Maintainer: Santosh Shilimkar - Texas Instruments Inc */ | 605 | /* Maintainer: Santosh Shilimkar - Texas Instruments Inc */ |
607 | .boot_params = 0x80000100, | 606 | .boot_params = 0x80000100, |
608 | .map_io = omap_4430sdp_map_io, | ||
609 | .reserve = omap_reserve, | 607 | .reserve = omap_reserve, |
610 | .init_irq = omap_4430sdp_init_irq, | 608 | .map_io = omap_4430sdp_map_io, |
609 | .init_early = omap_4430sdp_init_early, | ||
610 | .init_irq = gic_init_irq, | ||
611 | .init_machine = omap_4430sdp_init, | 611 | .init_machine = omap_4430sdp_init, |
612 | .timer = &omap_timer, | 612 | .timer = &omap_timer, |
613 | MACHINE_END | 613 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c index 71acb5ab281c..ae3a83d47dab 100644 --- a/arch/arm/mach-omap2/board-am3517crane.c +++ b/arch/arm/mach-omap2/board-am3517crane.c | |||
@@ -49,14 +49,13 @@ static struct omap_board_mux board_mux[] __initdata = { | |||
49 | #define board_mux NULL | 49 | #define board_mux NULL |
50 | #endif | 50 | #endif |
51 | 51 | ||
52 | static void __init am3517_crane_init_irq(void) | 52 | static void __init am3517_crane_init_early(void) |
53 | { | 53 | { |
54 | omap_board_config = am3517_crane_config; | 54 | omap_board_config = am3517_crane_config; |
55 | omap_board_config_size = ARRAY_SIZE(am3517_crane_config); | 55 | omap_board_config_size = ARRAY_SIZE(am3517_crane_config); |
56 | 56 | ||
57 | omap2_init_common_infrastructure(); | 57 | omap2_init_common_infrastructure(); |
58 | omap2_init_common_devices(NULL, NULL); | 58 | omap2_init_common_devices(NULL, NULL); |
59 | omap_init_irq(); | ||
60 | } | 59 | } |
61 | 60 | ||
62 | static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = { | 61 | static struct ehci_hcd_omap_platform_data ehci_pdata __initdata = { |
@@ -108,9 +107,10 @@ static void __init am3517_crane_init(void) | |||
108 | 107 | ||
109 | MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD") | 108 | MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD") |
110 | .boot_params = 0x80000100, | 109 | .boot_params = 0x80000100, |
111 | .map_io = omap3_map_io, | ||
112 | .reserve = omap_reserve, | 110 | .reserve = omap_reserve, |
113 | .init_irq = am3517_crane_init_irq, | 111 | .map_io = omap3_map_io, |
112 | .init_early = am3517_crane_init_early, | ||
113 | .init_irq = omap_init_irq, | ||
114 | .init_machine = am3517_crane_init, | 114 | .init_machine = am3517_crane_init, |
115 | .timer = &omap_timer, | 115 | .timer = &omap_timer, |
116 | MACHINE_END | 116 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-omap2/board-am3517evm.c index 10d60b7743cf..d0d0f5528132 100644 --- a/arch/arm/mach-omap2/board-am3517evm.c +++ b/arch/arm/mach-omap2/board-am3517evm.c | |||
@@ -396,13 +396,12 @@ static struct platform_device *am3517_evm_devices[] __initdata = { | |||
396 | &am3517_evm_dss_device, | 396 | &am3517_evm_dss_device, |
397 | }; | 397 | }; |
398 | 398 | ||
399 | static void __init am3517_evm_init_irq(void) | 399 | static void __init am3517_evm_init_early(void) |
400 | { | 400 | { |
401 | omap_board_config = am3517_evm_config; | 401 | omap_board_config = am3517_evm_config; |
402 | omap_board_config_size = ARRAY_SIZE(am3517_evm_config); | 402 | omap_board_config_size = ARRAY_SIZE(am3517_evm_config); |
403 | omap2_init_common_infrastructure(); | 403 | omap2_init_common_infrastructure(); |
404 | omap2_init_common_devices(NULL, NULL); | 404 | omap2_init_common_devices(NULL, NULL); |
405 | omap_init_irq(); | ||
406 | } | 405 | } |
407 | 406 | ||
408 | static struct omap_musb_board_data musb_board_data = { | 407 | static struct omap_musb_board_data musb_board_data = { |
@@ -521,9 +520,10 @@ static void __init am3517_evm_init(void) | |||
521 | 520 | ||
522 | MACHINE_START(OMAP3517EVM, "OMAP3517/AM3517 EVM") | 521 | MACHINE_START(OMAP3517EVM, "OMAP3517/AM3517 EVM") |
523 | .boot_params = 0x80000100, | 522 | .boot_params = 0x80000100, |
524 | .map_io = omap3_map_io, | ||
525 | .reserve = omap_reserve, | 523 | .reserve = omap_reserve, |
526 | .init_irq = am3517_evm_init_irq, | 524 | .map_io = omap3_map_io, |
525 | .init_early = am3517_evm_init_early, | ||
526 | .init_irq = omap_init_irq, | ||
527 | .init_machine = am3517_evm_init, | 527 | .init_machine = am3517_evm_init, |
528 | .timer = &omap_timer, | 528 | .timer = &omap_timer, |
529 | MACHINE_END | 529 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-omap2/board-apollon.c index 9f55b68687f7..4ef4aad4e719 100644 --- a/arch/arm/mach-omap2/board-apollon.c +++ b/arch/arm/mach-omap2/board-apollon.c | |||
@@ -274,13 +274,12 @@ static struct omap_board_config_kernel apollon_config[] __initdata = { | |||
274 | { OMAP_TAG_LCD, &apollon_lcd_config }, | 274 | { OMAP_TAG_LCD, &apollon_lcd_config }, |
275 | }; | 275 | }; |
276 | 276 | ||
277 | static void __init omap_apollon_init_irq(void) | 277 | static void __init omap_apollon_init_early(void) |
278 | { | 278 | { |
279 | omap_board_config = apollon_config; | 279 | omap_board_config = apollon_config; |
280 | omap_board_config_size = ARRAY_SIZE(apollon_config); | 280 | omap_board_config_size = ARRAY_SIZE(apollon_config); |
281 | omap2_init_common_infrastructure(); | 281 | omap2_init_common_infrastructure(); |
282 | omap2_init_common_devices(NULL, NULL); | 282 | omap2_init_common_devices(NULL, NULL); |
283 | omap_init_irq(); | ||
284 | } | 283 | } |
285 | 284 | ||
286 | static void __init apollon_led_init(void) | 285 | static void __init apollon_led_init(void) |
@@ -355,9 +354,10 @@ static void __init omap_apollon_map_io(void) | |||
355 | MACHINE_START(OMAP_APOLLON, "OMAP24xx Apollon") | 354 | MACHINE_START(OMAP_APOLLON, "OMAP24xx Apollon") |
356 | /* Maintainer: Kyungmin Park <kyungmin.park@samsung.com> */ | 355 | /* Maintainer: Kyungmin Park <kyungmin.park@samsung.com> */ |
357 | .boot_params = 0x80000100, | 356 | .boot_params = 0x80000100, |
358 | .map_io = omap_apollon_map_io, | ||
359 | .reserve = omap_reserve, | 357 | .reserve = omap_reserve, |
360 | .init_irq = omap_apollon_init_irq, | 358 | .map_io = omap_apollon_map_io, |
359 | .init_early = omap_apollon_init_early, | ||
360 | .init_irq = omap_init_irq, | ||
361 | .init_machine = omap_apollon_init, | 361 | .init_machine = omap_apollon_init, |
362 | .timer = &omap_timer, | 362 | .timer = &omap_timer, |
363 | MACHINE_END | 363 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c index dac141610666..9e4de92a5798 100644 --- a/arch/arm/mach-omap2/board-cm-t35.c +++ b/arch/arm/mach-omap2/board-cm-t35.c | |||
@@ -683,7 +683,7 @@ static void __init cm_t35_init_i2c(void) | |||
683 | static struct omap_board_config_kernel cm_t35_config[] __initdata = { | 683 | static struct omap_board_config_kernel cm_t35_config[] __initdata = { |
684 | }; | 684 | }; |
685 | 685 | ||
686 | static void __init cm_t35_init_irq(void) | 686 | static void __init cm_t35_init_early(void) |
687 | { | 687 | { |
688 | omap_board_config = cm_t35_config; | 688 | omap_board_config = cm_t35_config; |
689 | omap_board_config_size = ARRAY_SIZE(cm_t35_config); | 689 | omap_board_config_size = ARRAY_SIZE(cm_t35_config); |
@@ -691,7 +691,6 @@ static void __init cm_t35_init_irq(void) | |||
691 | omap2_init_common_infrastructure(); | 691 | omap2_init_common_infrastructure(); |
692 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, | 692 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, |
693 | mt46h32m32lf6_sdrc_params); | 693 | mt46h32m32lf6_sdrc_params); |
694 | omap_init_irq(); | ||
695 | } | 694 | } |
696 | 695 | ||
697 | static struct omap_board_mux board_mux[] __initdata = { | 696 | static struct omap_board_mux board_mux[] __initdata = { |
@@ -815,9 +814,10 @@ static void __init cm_t35_init(void) | |||
815 | 814 | ||
816 | MACHINE_START(CM_T35, "Compulab CM-T35") | 815 | MACHINE_START(CM_T35, "Compulab CM-T35") |
817 | .boot_params = 0x80000100, | 816 | .boot_params = 0x80000100, |
818 | .map_io = omap3_map_io, | ||
819 | .reserve = omap_reserve, | 817 | .reserve = omap_reserve, |
820 | .init_irq = cm_t35_init_irq, | 818 | .map_io = omap3_map_io, |
819 | .init_early = cm_t35_init_early, | ||
820 | .init_irq = omap_init_irq, | ||
821 | .init_machine = cm_t35_init, | 821 | .init_machine = cm_t35_init, |
822 | .timer = &omap_timer, | 822 | .timer = &omap_timer, |
823 | MACHINE_END | 823 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-cm-t3517.c b/arch/arm/mach-omap2/board-cm-t3517.c index 8f9a64d650ee..38bef6d004c9 100644 --- a/arch/arm/mach-omap2/board-cm-t3517.c +++ b/arch/arm/mach-omap2/board-cm-t3517.c | |||
@@ -254,14 +254,13 @@ static inline void cm_t3517_init_nand(void) {} | |||
254 | static struct omap_board_config_kernel cm_t3517_config[] __initdata = { | 254 | static struct omap_board_config_kernel cm_t3517_config[] __initdata = { |
255 | }; | 255 | }; |
256 | 256 | ||
257 | static void __init cm_t3517_init_irq(void) | 257 | static void __init cm_t3517_init_early(void) |
258 | { | 258 | { |
259 | omap_board_config = cm_t3517_config; | 259 | omap_board_config = cm_t3517_config; |
260 | omap_board_config_size = ARRAY_SIZE(cm_t3517_config); | 260 | omap_board_config_size = ARRAY_SIZE(cm_t3517_config); |
261 | 261 | ||
262 | omap2_init_common_infrastructure(); | 262 | omap2_init_common_infrastructure(); |
263 | omap2_init_common_devices(NULL, NULL); | 263 | omap2_init_common_devices(NULL, NULL); |
264 | omap_init_irq(); | ||
265 | } | 264 | } |
266 | 265 | ||
267 | static struct omap_board_mux board_mux[] __initdata = { | 266 | static struct omap_board_mux board_mux[] __initdata = { |
@@ -303,9 +302,10 @@ static void __init cm_t3517_init(void) | |||
303 | 302 | ||
304 | MACHINE_START(CM_T3517, "Compulab CM-T3517") | 303 | MACHINE_START(CM_T3517, "Compulab CM-T3517") |
305 | .boot_params = 0x80000100, | 304 | .boot_params = 0x80000100, |
306 | .map_io = omap3_map_io, | ||
307 | .reserve = omap_reserve, | 305 | .reserve = omap_reserve, |
308 | .init_irq = cm_t3517_init_irq, | 306 | .map_io = omap3_map_io, |
307 | .init_early = cm_t3517_init_early, | ||
308 | .init_irq = omap_init_irq, | ||
309 | .init_machine = cm_t3517_init, | 309 | .init_machine = cm_t3517_init, |
310 | .timer = &omap_timer, | 310 | .timer = &omap_timer, |
311 | MACHINE_END | 311 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-devkit8000.c b/arch/arm/mach-omap2/board-devkit8000.c index 9a2a31e011ce..af742887e834 100644 --- a/arch/arm/mach-omap2/board-devkit8000.c +++ b/arch/arm/mach-omap2/board-devkit8000.c | |||
@@ -456,11 +456,15 @@ static struct platform_device keys_gpio = { | |||
456 | }; | 456 | }; |
457 | 457 | ||
458 | 458 | ||
459 | static void __init devkit8000_init_irq(void) | 459 | static void __init devkit8000_init_early(void) |
460 | { | 460 | { |
461 | omap2_init_common_infrastructure(); | 461 | omap2_init_common_infrastructure(); |
462 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, | 462 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, |
463 | mt46h32m32lf6_sdrc_params); | 463 | mt46h32m32lf6_sdrc_params); |
464 | } | ||
465 | |||
466 | static void __init devkit8000_init_irq(void) | ||
467 | { | ||
464 | omap_init_irq(); | 468 | omap_init_irq(); |
465 | #ifdef CONFIG_OMAP_32K_TIMER | 469 | #ifdef CONFIG_OMAP_32K_TIMER |
466 | omap2_gp_clockevent_set_gptimer(12); | 470 | omap2_gp_clockevent_set_gptimer(12); |
@@ -813,8 +817,9 @@ static void __init devkit8000_init(void) | |||
813 | 817 | ||
814 | MACHINE_START(DEVKIT8000, "OMAP3 Devkit8000") | 818 | MACHINE_START(DEVKIT8000, "OMAP3 Devkit8000") |
815 | .boot_params = 0x80000100, | 819 | .boot_params = 0x80000100, |
816 | .map_io = omap3_map_io, | ||
817 | .reserve = omap_reserve, | 820 | .reserve = omap_reserve, |
821 | .map_io = omap3_map_io, | ||
822 | .init_early = devkit8000_init_early, | ||
818 | .init_irq = devkit8000_init_irq, | 823 | .init_irq = devkit8000_init_irq, |
819 | .init_machine = devkit8000_init, | 824 | .init_machine = devkit8000_init, |
820 | .timer = &omap_timer, | 825 | .timer = &omap_timer, |
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c index 0e3d81e09f89..682da9251db6 100644 --- a/arch/arm/mach-omap2/board-generic.c +++ b/arch/arm/mach-omap2/board-generic.c | |||
@@ -33,13 +33,12 @@ | |||
33 | static struct omap_board_config_kernel generic_config[] = { | 33 | static struct omap_board_config_kernel generic_config[] = { |
34 | }; | 34 | }; |
35 | 35 | ||
36 | static void __init omap_generic_init_irq(void) | 36 | static void __init omap_generic_init_early(void) |
37 | { | 37 | { |
38 | omap_board_config = generic_config; | 38 | omap_board_config = generic_config; |
39 | omap_board_config_size = ARRAY_SIZE(generic_config); | 39 | omap_board_config_size = ARRAY_SIZE(generic_config); |
40 | omap2_init_common_infrastructure(); | 40 | omap2_init_common_infrastructure(); |
41 | omap2_init_common_devices(NULL, NULL); | 41 | omap2_init_common_devices(NULL, NULL); |
42 | omap_init_irq(); | ||
43 | } | 42 | } |
44 | 43 | ||
45 | static void __init omap_generic_init(void) | 44 | static void __init omap_generic_init(void) |
@@ -68,9 +67,10 @@ static void __init omap_generic_map_io(void) | |||
68 | MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx") | 67 | MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx") |
69 | /* Maintainer: Paul Mundt <paul.mundt@nokia.com> */ | 68 | /* Maintainer: Paul Mundt <paul.mundt@nokia.com> */ |
70 | .boot_params = 0x80000100, | 69 | .boot_params = 0x80000100, |
71 | .map_io = omap_generic_map_io, | ||
72 | .reserve = omap_reserve, | 70 | .reserve = omap_reserve, |
73 | .init_irq = omap_generic_init_irq, | 71 | .map_io = omap_generic_map_io, |
72 | .init_early = omap_generic_init_early, | ||
73 | .init_irq = omap_init_irq, | ||
74 | .init_machine = omap_generic_init, | 74 | .init_machine = omap_generic_init, |
75 | .timer = &omap_timer, | 75 | .timer = &omap_timer, |
76 | MACHINE_END | 76 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c index 25cc9dad4b02..f6a3872f72fa 100644 --- a/arch/arm/mach-omap2/board-h4.c +++ b/arch/arm/mach-omap2/board-h4.c | |||
@@ -290,12 +290,16 @@ static struct omap_board_config_kernel h4_config[] __initdata = { | |||
290 | { OMAP_TAG_LCD, &h4_lcd_config }, | 290 | { OMAP_TAG_LCD, &h4_lcd_config }, |
291 | }; | 291 | }; |
292 | 292 | ||
293 | static void __init omap_h4_init_irq(void) | 293 | static void __init omap_h4_init_early(void) |
294 | { | 294 | { |
295 | omap_board_config = h4_config; | 295 | omap_board_config = h4_config; |
296 | omap_board_config_size = ARRAY_SIZE(h4_config); | 296 | omap_board_config_size = ARRAY_SIZE(h4_config); |
297 | omap2_init_common_infrastructure(); | 297 | omap2_init_common_infrastructure(); |
298 | omap2_init_common_devices(NULL, NULL); | 298 | omap2_init_common_devices(NULL, NULL); |
299 | } | ||
300 | |||
301 | static void __init omap_h4_init_irq(void) | ||
302 | { | ||
299 | omap_init_irq(); | 303 | omap_init_irq(); |
300 | h4_init_flash(); | 304 | h4_init_flash(); |
301 | } | 305 | } |
@@ -378,8 +382,9 @@ static void __init omap_h4_map_io(void) | |||
378 | MACHINE_START(OMAP_H4, "OMAP2420 H4 board") | 382 | MACHINE_START(OMAP_H4, "OMAP2420 H4 board") |
379 | /* Maintainer: Paul Mundt <paul.mundt@nokia.com> */ | 383 | /* Maintainer: Paul Mundt <paul.mundt@nokia.com> */ |
380 | .boot_params = 0x80000100, | 384 | .boot_params = 0x80000100, |
381 | .map_io = omap_h4_map_io, | ||
382 | .reserve = omap_reserve, | 385 | .reserve = omap_reserve, |
386 | .map_io = omap_h4_map_io, | ||
387 | .init_early = omap_h4_init_early, | ||
383 | .init_irq = omap_h4_init_irq, | 388 | .init_irq = omap_h4_init_irq, |
384 | .init_machine = omap_h4_init, | 389 | .init_machine = omap_h4_init, |
385 | .timer = &omap_timer, | 390 | .timer = &omap_timer, |
diff --git a/arch/arm/mach-omap2/board-igep0020.c b/arch/arm/mach-omap2/board-igep0020.c index 3be85a1f55f4..dd0b1ac3b662 100644 --- a/arch/arm/mach-omap2/board-igep0020.c +++ b/arch/arm/mach-omap2/board-igep0020.c | |||
@@ -525,12 +525,11 @@ static struct platform_device *igep2_devices[] __initdata = { | |||
525 | &igep2_vwlan_device, | 525 | &igep2_vwlan_device, |
526 | }; | 526 | }; |
527 | 527 | ||
528 | static void __init igep2_init_irq(void) | 528 | static void __init igep2_init_early(void) |
529 | { | 529 | { |
530 | omap2_init_common_infrastructure(); | 530 | omap2_init_common_infrastructure(); |
531 | omap2_init_common_devices(m65kxxxxam_sdrc_params, | 531 | omap2_init_common_devices(m65kxxxxam_sdrc_params, |
532 | m65kxxxxam_sdrc_params); | 532 | m65kxxxxam_sdrc_params); |
533 | omap_init_irq(); | ||
534 | } | 533 | } |
535 | 534 | ||
536 | static struct twl4030_codec_audio_data igep2_audio_data = { | 535 | static struct twl4030_codec_audio_data igep2_audio_data = { |
@@ -716,9 +715,10 @@ static void __init igep2_init(void) | |||
716 | 715 | ||
717 | MACHINE_START(IGEP0020, "IGEP v2 board") | 716 | MACHINE_START(IGEP0020, "IGEP v2 board") |
718 | .boot_params = 0x80000100, | 717 | .boot_params = 0x80000100, |
719 | .map_io = omap3_map_io, | ||
720 | .reserve = omap_reserve, | 718 | .reserve = omap_reserve, |
721 | .init_irq = igep2_init_irq, | 719 | .map_io = omap3_map_io, |
720 | .init_early = igep2_init_early, | ||
721 | .init_irq = omap_init_irq, | ||
722 | .init_machine = igep2_init, | 722 | .init_machine = igep2_init, |
723 | .timer = &omap_timer, | 723 | .timer = &omap_timer, |
724 | MACHINE_END | 724 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-igep0030.c b/arch/arm/mach-omap2/board-igep0030.c index 4dc62a9b9cb2..d75028e48f5d 100644 --- a/arch/arm/mach-omap2/board-igep0030.c +++ b/arch/arm/mach-omap2/board-igep0030.c | |||
@@ -331,12 +331,11 @@ static struct platform_device *igep3_devices[] __initdata = { | |||
331 | &igep3_vwlan_device, | 331 | &igep3_vwlan_device, |
332 | }; | 332 | }; |
333 | 333 | ||
334 | static void __init igep3_init_irq(void) | 334 | static void __init igep3_init_early(void) |
335 | { | 335 | { |
336 | omap2_init_common_infrastructure(); | 336 | omap2_init_common_infrastructure(); |
337 | omap2_init_common_devices(m65kxxxxam_sdrc_params, | 337 | omap2_init_common_devices(m65kxxxxam_sdrc_params, |
338 | m65kxxxxam_sdrc_params); | 338 | m65kxxxxam_sdrc_params); |
339 | omap_init_irq(); | ||
340 | } | 339 | } |
341 | 340 | ||
342 | static struct twl4030_platform_data igep3_twl4030_pdata = { | 341 | static struct twl4030_platform_data igep3_twl4030_pdata = { |
@@ -452,7 +451,8 @@ MACHINE_START(IGEP0030, "IGEP OMAP3 module") | |||
452 | .boot_params = 0x80000100, | 451 | .boot_params = 0x80000100, |
453 | .reserve = omap_reserve, | 452 | .reserve = omap_reserve, |
454 | .map_io = omap3_map_io, | 453 | .map_io = omap3_map_io, |
455 | .init_irq = igep3_init_irq, | 454 | .init_early = igep3_init_early, |
455 | .init_irq = omap_init_irq, | ||
456 | .init_machine = igep3_init, | 456 | .init_machine = igep3_init, |
457 | .timer = &omap_timer, | 457 | .timer = &omap_timer, |
458 | MACHINE_END | 458 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c index e5dc74875f9d..d8eb2cb7cbc7 100644 --- a/arch/arm/mach-omap2/board-ldp.c +++ b/arch/arm/mach-omap2/board-ldp.c | |||
@@ -288,13 +288,12 @@ static struct omap_board_config_kernel ldp_config[] __initdata = { | |||
288 | { OMAP_TAG_LCD, &ldp_lcd_config }, | 288 | { OMAP_TAG_LCD, &ldp_lcd_config }, |
289 | }; | 289 | }; |
290 | 290 | ||
291 | static void __init omap_ldp_init_irq(void) | 291 | static void __init omap_ldp_init_early(void) |
292 | { | 292 | { |
293 | omap_board_config = ldp_config; | 293 | omap_board_config = ldp_config; |
294 | omap_board_config_size = ARRAY_SIZE(ldp_config); | 294 | omap_board_config_size = ARRAY_SIZE(ldp_config); |
295 | omap2_init_common_infrastructure(); | 295 | omap2_init_common_infrastructure(); |
296 | omap2_init_common_devices(NULL, NULL); | 296 | omap2_init_common_devices(NULL, NULL); |
297 | omap_init_irq(); | ||
298 | } | 297 | } |
299 | 298 | ||
300 | static struct twl4030_usb_data ldp_usb_data = { | 299 | static struct twl4030_usb_data ldp_usb_data = { |
@@ -443,9 +442,10 @@ static void __init omap_ldp_init(void) | |||
443 | 442 | ||
444 | MACHINE_START(OMAP_LDP, "OMAP LDP board") | 443 | MACHINE_START(OMAP_LDP, "OMAP LDP board") |
445 | .boot_params = 0x80000100, | 444 | .boot_params = 0x80000100, |
446 | .map_io = omap3_map_io, | ||
447 | .reserve = omap_reserve, | 445 | .reserve = omap_reserve, |
448 | .init_irq = omap_ldp_init_irq, | 446 | .map_io = omap3_map_io, |
447 | .init_early = omap_ldp_init_early, | ||
448 | .init_irq = omap_init_irq, | ||
449 | .init_machine = omap_ldp_init, | 449 | .init_machine = omap_ldp_init, |
450 | .timer = &omap_timer, | 450 | .timer = &omap_timer, |
451 | MACHINE_END | 451 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-n8x0.c b/arch/arm/mach-omap2/board-n8x0.c index f396756872b7..b36cbd21e2d0 100644 --- a/arch/arm/mach-omap2/board-n8x0.c +++ b/arch/arm/mach-omap2/board-n8x0.c | |||
@@ -628,11 +628,10 @@ static void __init n8x0_map_io(void) | |||
628 | omap242x_map_common_io(); | 628 | omap242x_map_common_io(); |
629 | } | 629 | } |
630 | 630 | ||
631 | static void __init n8x0_init_irq(void) | 631 | static void __init n8x0_init_early(void) |
632 | { | 632 | { |
633 | omap2_init_common_infrastructure(); | 633 | omap2_init_common_infrastructure(); |
634 | omap2_init_common_devices(NULL, NULL); | 634 | omap2_init_common_devices(NULL, NULL); |
635 | omap_init_irq(); | ||
636 | } | 635 | } |
637 | 636 | ||
638 | #ifdef CONFIG_OMAP_MUX | 637 | #ifdef CONFIG_OMAP_MUX |
@@ -703,27 +702,30 @@ static void __init n8x0_init_machine(void) | |||
703 | 702 | ||
704 | MACHINE_START(NOKIA_N800, "Nokia N800") | 703 | MACHINE_START(NOKIA_N800, "Nokia N800") |
705 | .boot_params = 0x80000100, | 704 | .boot_params = 0x80000100, |
706 | .map_io = n8x0_map_io, | ||
707 | .reserve = omap_reserve, | 705 | .reserve = omap_reserve, |
708 | .init_irq = n8x0_init_irq, | 706 | .map_io = n8x0_map_io, |
707 | .init_early = n8x0_init_early, | ||
708 | .init_irq = omap_init_irq, | ||
709 | .init_machine = n8x0_init_machine, | 709 | .init_machine = n8x0_init_machine, |
710 | .timer = &omap_timer, | 710 | .timer = &omap_timer, |
711 | MACHINE_END | 711 | MACHINE_END |
712 | 712 | ||
713 | MACHINE_START(NOKIA_N810, "Nokia N810") | 713 | MACHINE_START(NOKIA_N810, "Nokia N810") |
714 | .boot_params = 0x80000100, | 714 | .boot_params = 0x80000100, |
715 | .map_io = n8x0_map_io, | ||
716 | .reserve = omap_reserve, | 715 | .reserve = omap_reserve, |
717 | .init_irq = n8x0_init_irq, | 716 | .map_io = n8x0_map_io, |
717 | .init_early = n8x0_init_early, | ||
718 | .init_irq = omap_init_irq, | ||
718 | .init_machine = n8x0_init_machine, | 719 | .init_machine = n8x0_init_machine, |
719 | .timer = &omap_timer, | 720 | .timer = &omap_timer, |
720 | MACHINE_END | 721 | MACHINE_END |
721 | 722 | ||
722 | MACHINE_START(NOKIA_N810_WIMAX, "Nokia N810 WiMAX") | 723 | MACHINE_START(NOKIA_N810_WIMAX, "Nokia N810 WiMAX") |
723 | .boot_params = 0x80000100, | 724 | .boot_params = 0x80000100, |
724 | .map_io = n8x0_map_io, | ||
725 | .reserve = omap_reserve, | 725 | .reserve = omap_reserve, |
726 | .init_irq = n8x0_init_irq, | 726 | .map_io = n8x0_map_io, |
727 | .init_early = n8x0_init_early, | ||
728 | .init_irq = omap_init_irq, | ||
727 | .init_machine = n8x0_init_machine, | 729 | .init_machine = n8x0_init_machine, |
728 | .timer = &omap_timer, | 730 | .timer = &omap_timer, |
729 | MACHINE_END | 731 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c index 46d814ab5656..19bcd004d604 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c | |||
@@ -536,11 +536,15 @@ static struct platform_device keys_gpio = { | |||
536 | }, | 536 | }, |
537 | }; | 537 | }; |
538 | 538 | ||
539 | static void __init omap3_beagle_init_irq(void) | 539 | static void __init omap3_beagle_init_early(void) |
540 | { | 540 | { |
541 | omap2_init_common_infrastructure(); | 541 | omap2_init_common_infrastructure(); |
542 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, | 542 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, |
543 | mt46h32m32lf6_sdrc_params); | 543 | mt46h32m32lf6_sdrc_params); |
544 | } | ||
545 | |||
546 | static void __init omap3_beagle_init_irq(void) | ||
547 | { | ||
544 | omap_init_irq(); | 548 | omap_init_irq(); |
545 | #ifdef CONFIG_OMAP_32K_TIMER | 549 | #ifdef CONFIG_OMAP_32K_TIMER |
546 | omap2_gp_clockevent_set_gptimer(12); | 550 | omap2_gp_clockevent_set_gptimer(12); |
@@ -638,8 +642,9 @@ static void __init omap3_beagle_init(void) | |||
638 | MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board") | 642 | MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board") |
639 | /* Maintainer: Syed Mohammed Khasim - http://beagleboard.org */ | 643 | /* Maintainer: Syed Mohammed Khasim - http://beagleboard.org */ |
640 | .boot_params = 0x80000100, | 644 | .boot_params = 0x80000100, |
641 | .map_io = omap3_map_io, | ||
642 | .reserve = omap_reserve, | 645 | .reserve = omap_reserve, |
646 | .map_io = omap3_map_io, | ||
647 | .init_early = omap3_beagle_init_early, | ||
643 | .init_irq = omap3_beagle_init_irq, | 648 | .init_irq = omap3_beagle_init_irq, |
644 | .init_machine = omap3_beagle_init, | 649 | .init_machine = omap3_beagle_init, |
645 | .timer = &omap_timer, | 650 | .timer = &omap_timer, |
diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c index 323c3809ce39..c2a0fca4aa53 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c | |||
@@ -625,13 +625,12 @@ static struct spi_board_info omap3evm_spi_board_info[] = { | |||
625 | static struct omap_board_config_kernel omap3_evm_config[] __initdata = { | 625 | static struct omap_board_config_kernel omap3_evm_config[] __initdata = { |
626 | }; | 626 | }; |
627 | 627 | ||
628 | static void __init omap3_evm_init_irq(void) | 628 | static void __init omap3_evm_init_early(void) |
629 | { | 629 | { |
630 | omap_board_config = omap3_evm_config; | 630 | omap_board_config = omap3_evm_config; |
631 | omap_board_config_size = ARRAY_SIZE(omap3_evm_config); | 631 | omap_board_config_size = ARRAY_SIZE(omap3_evm_config); |
632 | omap2_init_common_infrastructure(); | 632 | omap2_init_common_infrastructure(); |
633 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, NULL); | 633 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, NULL); |
634 | omap_init_irq(); | ||
635 | } | 634 | } |
636 | 635 | ||
637 | static struct platform_device *omap3_evm_devices[] __initdata = { | 636 | static struct platform_device *omap3_evm_devices[] __initdata = { |
@@ -720,9 +719,10 @@ static void __init omap3_evm_init(void) | |||
720 | MACHINE_START(OMAP3EVM, "OMAP3 EVM") | 719 | MACHINE_START(OMAP3EVM, "OMAP3 EVM") |
721 | /* Maintainer: Syed Mohammed Khasim - Texas Instruments */ | 720 | /* Maintainer: Syed Mohammed Khasim - Texas Instruments */ |
722 | .boot_params = 0x80000100, | 721 | .boot_params = 0x80000100, |
723 | .map_io = omap3_map_io, | ||
724 | .reserve = omap_reserve, | 722 | .reserve = omap_reserve, |
725 | .init_irq = omap3_evm_init_irq, | 723 | .map_io = omap3_map_io, |
724 | .init_early = omap3_evm_init_early, | ||
725 | .init_irq = omap_init_irq, | ||
726 | .init_machine = omap3_evm_init, | 726 | .init_machine = omap3_evm_init, |
727 | .timer = &omap_timer, | 727 | .timer = &omap_timer, |
728 | MACHINE_END | 728 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3logic.c b/arch/arm/mach-omap2/board-omap3logic.c index 15e4b08e99ba..b726943d7c93 100644 --- a/arch/arm/mach-omap2/board-omap3logic.c +++ b/arch/arm/mach-omap2/board-omap3logic.c | |||
@@ -195,11 +195,10 @@ static inline void __init board_smsc911x_init(void) | |||
195 | gpmc_smsc911x_init(&board_smsc911x_data); | 195 | gpmc_smsc911x_init(&board_smsc911x_data); |
196 | } | 196 | } |
197 | 197 | ||
198 | static void __init omap3logic_init_irq(void) | 198 | static void __init omap3logic_init_early(void) |
199 | { | 199 | { |
200 | omap2_init_common_infrastructure(); | 200 | omap2_init_common_infrastructure(); |
201 | omap2_init_common_devices(NULL, NULL); | 201 | omap2_init_common_devices(NULL, NULL); |
202 | omap_init_irq(); | ||
203 | } | 202 | } |
204 | 203 | ||
205 | #ifdef CONFIG_OMAP_MUX | 204 | #ifdef CONFIG_OMAP_MUX |
@@ -225,7 +224,8 @@ static void __init omap3logic_init(void) | |||
225 | MACHINE_START(OMAP3_TORPEDO, "Logic OMAP3 Torpedo board") | 224 | MACHINE_START(OMAP3_TORPEDO, "Logic OMAP3 Torpedo board") |
226 | .boot_params = 0x80000100, | 225 | .boot_params = 0x80000100, |
227 | .map_io = omap3_map_io, | 226 | .map_io = omap3_map_io, |
228 | .init_irq = omap3logic_init_irq, | 227 | .init_early = omap3logic_init_early, |
228 | .init_irq = omap_init_irq, | ||
229 | .init_machine = omap3logic_init, | 229 | .init_machine = omap3logic_init, |
230 | .timer = &omap_timer, | 230 | .timer = &omap_timer, |
231 | MACHINE_END | 231 | MACHINE_END |
@@ -233,7 +233,8 @@ MACHINE_END | |||
233 | MACHINE_START(OMAP3530_LV_SOM, "OMAP Logic 3530 LV SOM board") | 233 | MACHINE_START(OMAP3530_LV_SOM, "OMAP Logic 3530 LV SOM board") |
234 | .boot_params = 0x80000100, | 234 | .boot_params = 0x80000100, |
235 | .map_io = omap3_map_io, | 235 | .map_io = omap3_map_io, |
236 | .init_irq = omap3logic_init_irq, | 236 | .init_early = omap3logic_init_early, |
237 | .init_irq = omap_init_irq, | ||
237 | .init_machine = omap3logic_init, | 238 | .init_machine = omap3logic_init, |
238 | .timer = &omap_timer, | 239 | .timer = &omap_timer, |
239 | MACHINE_END | 240 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c index 0b34beded11f..b91f74ce3a9f 100644 --- a/arch/arm/mach-omap2/board-omap3pandora.c +++ b/arch/arm/mach-omap2/board-omap3pandora.c | |||
@@ -634,12 +634,11 @@ static struct spi_board_info omap3pandora_spi_board_info[] __initdata = { | |||
634 | } | 634 | } |
635 | }; | 635 | }; |
636 | 636 | ||
637 | static void __init omap3pandora_init_irq(void) | 637 | static void __init omap3pandora_init_early(void) |
638 | { | 638 | { |
639 | omap2_init_common_infrastructure(); | 639 | omap2_init_common_infrastructure(); |
640 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, | 640 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, |
641 | mt46h32m32lf6_sdrc_params); | 641 | mt46h32m32lf6_sdrc_params); |
642 | omap_init_irq(); | ||
643 | } | 642 | } |
644 | 643 | ||
645 | static void __init pandora_wl1251_init(void) | 644 | static void __init pandora_wl1251_init(void) |
@@ -727,9 +726,10 @@ static void __init omap3pandora_init(void) | |||
727 | 726 | ||
728 | MACHINE_START(OMAP3_PANDORA, "Pandora Handheld Console") | 727 | MACHINE_START(OMAP3_PANDORA, "Pandora Handheld Console") |
729 | .boot_params = 0x80000100, | 728 | .boot_params = 0x80000100, |
730 | .map_io = omap3_map_io, | ||
731 | .reserve = omap_reserve, | 729 | .reserve = omap_reserve, |
732 | .init_irq = omap3pandora_init_irq, | 730 | .map_io = omap3_map_io, |
731 | .init_early = omap3pandora_init_early, | ||
732 | .init_irq = omap_init_irq, | ||
733 | .init_machine = omap3pandora_init, | 733 | .init_machine = omap3pandora_init, |
734 | .timer = &omap_timer, | 734 | .timer = &omap_timer, |
735 | MACHINE_END | 735 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3stalker.c b/arch/arm/mach-omap2/board-omap3stalker.c index 2a2dad447e86..5d1ccef69164 100644 --- a/arch/arm/mach-omap2/board-omap3stalker.c +++ b/arch/arm/mach-omap2/board-omap3stalker.c | |||
@@ -591,12 +591,16 @@ static struct spi_board_info omap3stalker_spi_board_info[] = { | |||
591 | static struct omap_board_config_kernel omap3_stalker_config[] __initdata = { | 591 | static struct omap_board_config_kernel omap3_stalker_config[] __initdata = { |
592 | }; | 592 | }; |
593 | 593 | ||
594 | static void __init omap3_stalker_init_irq(void) | 594 | static void __init omap3_stalker_init_early(void) |
595 | { | 595 | { |
596 | omap_board_config = omap3_stalker_config; | 596 | omap_board_config = omap3_stalker_config; |
597 | omap_board_config_size = ARRAY_SIZE(omap3_stalker_config); | 597 | omap_board_config_size = ARRAY_SIZE(omap3_stalker_config); |
598 | omap2_init_common_infrastructure(); | 598 | omap2_init_common_infrastructure(); |
599 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, NULL); | 599 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, NULL); |
600 | } | ||
601 | |||
602 | static void __init omap3_stalker_init_irq(void) | ||
603 | { | ||
600 | omap_init_irq(); | 604 | omap_init_irq(); |
601 | #ifdef CONFIG_OMAP_32K_TIMER | 605 | #ifdef CONFIG_OMAP_32K_TIMER |
602 | omap2_gp_clockevent_set_gptimer(12); | 606 | omap2_gp_clockevent_set_gptimer(12); |
@@ -666,6 +670,7 @@ MACHINE_START(SBC3530, "OMAP3 STALKER") | |||
666 | /* Maintainer: Jason Lam -lzg@ema-tech.com */ | 670 | /* Maintainer: Jason Lam -lzg@ema-tech.com */ |
667 | .boot_params = 0x80000100, | 671 | .boot_params = 0x80000100, |
668 | .map_io = omap3_map_io, | 672 | .map_io = omap3_map_io, |
673 | .init_early = omap3_stalker_init_early, | ||
669 | .init_irq = omap3_stalker_init_irq, | 674 | .init_irq = omap3_stalker_init_irq, |
670 | .init_machine = omap3_stalker_init, | 675 | .init_machine = omap3_stalker_init, |
671 | .timer = &omap_timer, | 676 | .timer = &omap_timer, |
diff --git a/arch/arm/mach-omap2/board-omap3touchbook.c b/arch/arm/mach-omap2/board-omap3touchbook.c index db1f74fe6c4f..6a60f79dcccb 100644 --- a/arch/arm/mach-omap2/board-omap3touchbook.c +++ b/arch/arm/mach-omap2/board-omap3touchbook.c | |||
@@ -415,7 +415,7 @@ static struct omap_board_mux board_mux[] __initdata = { | |||
415 | }; | 415 | }; |
416 | #endif | 416 | #endif |
417 | 417 | ||
418 | static void __init omap3_touchbook_init_irq(void) | 418 | static void __init omap3_touchbook_init_early(void) |
419 | { | 419 | { |
420 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); | 420 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); |
421 | omap_board_config = omap3_touchbook_config; | 421 | omap_board_config = omap3_touchbook_config; |
@@ -423,6 +423,10 @@ static void __init omap3_touchbook_init_irq(void) | |||
423 | omap2_init_common_infrastructure(); | 423 | omap2_init_common_infrastructure(); |
424 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, | 424 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, |
425 | mt46h32m32lf6_sdrc_params); | 425 | mt46h32m32lf6_sdrc_params); |
426 | } | ||
427 | |||
428 | static void __init omap3_touchbook_init_irq(void) | ||
429 | { | ||
426 | omap_init_irq(); | 430 | omap_init_irq(); |
427 | #ifdef CONFIG_OMAP_32K_TIMER | 431 | #ifdef CONFIG_OMAP_32K_TIMER |
428 | omap2_gp_clockevent_set_gptimer(12); | 432 | omap2_gp_clockevent_set_gptimer(12); |
@@ -538,8 +542,9 @@ static void __init omap3_touchbook_init(void) | |||
538 | MACHINE_START(TOUCHBOOK, "OMAP3 touchbook Board") | 542 | MACHINE_START(TOUCHBOOK, "OMAP3 touchbook Board") |
539 | /* Maintainer: Gregoire Gentil - http://www.alwaysinnovating.com */ | 543 | /* Maintainer: Gregoire Gentil - http://www.alwaysinnovating.com */ |
540 | .boot_params = 0x80000100, | 544 | .boot_params = 0x80000100, |
541 | .map_io = omap3_map_io, | ||
542 | .reserve = omap_reserve, | 545 | .reserve = omap_reserve, |
546 | .map_io = omap3_map_io, | ||
547 | .init_early = omap3_touchbook_init_early, | ||
543 | .init_irq = omap3_touchbook_init_irq, | 548 | .init_irq = omap3_touchbook_init_irq, |
544 | .init_machine = omap3_touchbook_init, | 549 | .init_machine = omap3_touchbook_init, |
545 | .timer = &omap_timer, | 550 | .timer = &omap_timer, |
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c index e944025d5ef8..fca5b9e80c18 100644 --- a/arch/arm/mach-omap2/board-omap4panda.c +++ b/arch/arm/mach-omap2/board-omap4panda.c | |||
@@ -76,11 +76,10 @@ static struct platform_device *panda_devices[] __initdata = { | |||
76 | &leds_gpio, | 76 | &leds_gpio, |
77 | }; | 77 | }; |
78 | 78 | ||
79 | static void __init omap4_panda_init_irq(void) | 79 | static void __init omap4_panda_init_early(void) |
80 | { | 80 | { |
81 | omap2_init_common_infrastructure(); | 81 | omap2_init_common_infrastructure(); |
82 | omap2_init_common_devices(NULL, NULL); | 82 | omap2_init_common_devices(NULL, NULL); |
83 | gic_init_irq(); | ||
84 | } | 83 | } |
85 | 84 | ||
86 | static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { | 85 | static const struct ehci_hcd_omap_platform_data ehci_pdata __initconst = { |
@@ -424,7 +423,8 @@ MACHINE_START(OMAP4_PANDA, "OMAP4 Panda board") | |||
424 | .boot_params = 0x80000100, | 423 | .boot_params = 0x80000100, |
425 | .reserve = omap_reserve, | 424 | .reserve = omap_reserve, |
426 | .map_io = omap4_panda_map_io, | 425 | .map_io = omap4_panda_map_io, |
427 | .init_irq = omap4_panda_init_irq, | 426 | .init_early = omap4_panda_init_early, |
427 | .init_irq = gic_init_irq, | ||
428 | .init_machine = omap4_panda_init, | 428 | .init_machine = omap4_panda_init, |
429 | .timer = &omap_timer, | 429 | .timer = &omap_timer, |
430 | MACHINE_END | 430 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c index cb26e5d8268d..a33ec0edec13 100644 --- a/arch/arm/mach-omap2/board-overo.c +++ b/arch/arm/mach-omap2/board-overo.c | |||
@@ -409,14 +409,13 @@ static struct omap_board_config_kernel overo_config[] __initdata = { | |||
409 | { OMAP_TAG_LCD, &overo_lcd_config }, | 409 | { OMAP_TAG_LCD, &overo_lcd_config }, |
410 | }; | 410 | }; |
411 | 411 | ||
412 | static void __init overo_init_irq(void) | 412 | static void __init overo_init_early(void) |
413 | { | 413 | { |
414 | omap_board_config = overo_config; | 414 | omap_board_config = overo_config; |
415 | omap_board_config_size = ARRAY_SIZE(overo_config); | 415 | omap_board_config_size = ARRAY_SIZE(overo_config); |
416 | omap2_init_common_infrastructure(); | 416 | omap2_init_common_infrastructure(); |
417 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, | 417 | omap2_init_common_devices(mt46h32m32lf6_sdrc_params, |
418 | mt46h32m32lf6_sdrc_params); | 418 | mt46h32m32lf6_sdrc_params); |
419 | omap_init_irq(); | ||
420 | } | 419 | } |
421 | 420 | ||
422 | static struct platform_device *overo_devices[] __initdata = { | 421 | static struct platform_device *overo_devices[] __initdata = { |
@@ -501,9 +500,10 @@ static void __init overo_init(void) | |||
501 | 500 | ||
502 | MACHINE_START(OVERO, "Gumstix Overo") | 501 | MACHINE_START(OVERO, "Gumstix Overo") |
503 | .boot_params = 0x80000100, | 502 | .boot_params = 0x80000100, |
504 | .map_io = omap3_map_io, | ||
505 | .reserve = omap_reserve, | 503 | .reserve = omap_reserve, |
506 | .init_irq = overo_init_irq, | 504 | .map_io = omap3_map_io, |
505 | .init_early = overo_init_early, | ||
506 | .init_irq = omap_init_irq, | ||
507 | .init_machine = overo_init, | 507 | .init_machine = overo_init, |
508 | .timer = &omap_timer, | 508 | .timer = &omap_timer, |
509 | MACHINE_END | 509 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-rm680.c b/arch/arm/mach-omap2/board-rm680.c index 39a71bb8a308..bdebcb7328e6 100644 --- a/arch/arm/mach-omap2/board-rm680.c +++ b/arch/arm/mach-omap2/board-rm680.c | |||
@@ -138,14 +138,13 @@ static void __init rm680_peripherals_init(void) | |||
138 | omap2_hsmmc_init(mmc); | 138 | omap2_hsmmc_init(mmc); |
139 | } | 139 | } |
140 | 140 | ||
141 | static void __init rm680_init_irq(void) | 141 | static void __init rm680_init_early(void) |
142 | { | 142 | { |
143 | struct omap_sdrc_params *sdrc_params; | 143 | struct omap_sdrc_params *sdrc_params; |
144 | 144 | ||
145 | omap2_init_common_infrastructure(); | 145 | omap2_init_common_infrastructure(); |
146 | sdrc_params = nokia_get_sdram_timings(); | 146 | sdrc_params = nokia_get_sdram_timings(); |
147 | omap2_init_common_devices(sdrc_params, sdrc_params); | 147 | omap2_init_common_devices(sdrc_params, sdrc_params); |
148 | omap_init_irq(); | ||
149 | } | 148 | } |
150 | 149 | ||
151 | #ifdef CONFIG_OMAP_MUX | 150 | #ifdef CONFIG_OMAP_MUX |
@@ -176,9 +175,10 @@ static void __init rm680_map_io(void) | |||
176 | 175 | ||
177 | MACHINE_START(NOKIA_RM680, "Nokia RM-680 board") | 176 | MACHINE_START(NOKIA_RM680, "Nokia RM-680 board") |
178 | .boot_params = 0x80000100, | 177 | .boot_params = 0x80000100, |
179 | .map_io = rm680_map_io, | ||
180 | .reserve = omap_reserve, | 178 | .reserve = omap_reserve, |
181 | .init_irq = rm680_init_irq, | 179 | .map_io = rm680_map_io, |
180 | .init_early = rm680_init_early, | ||
181 | .init_irq = omap_init_irq, | ||
182 | .init_machine = rm680_init, | 182 | .init_machine = rm680_init, |
183 | .timer = &omap_timer, | 183 | .timer = &omap_timer, |
184 | MACHINE_END | 184 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-rx51.c b/arch/arm/mach-omap2/board-rx51.c index f53fc551c58f..3cf72fe6d75b 100644 --- a/arch/arm/mach-omap2/board-rx51.c +++ b/arch/arm/mach-omap2/board-rx51.c | |||
@@ -98,7 +98,7 @@ static struct omap_board_config_kernel rx51_config[] = { | |||
98 | { OMAP_TAG_LCD, &rx51_lcd_config }, | 98 | { OMAP_TAG_LCD, &rx51_lcd_config }, |
99 | }; | 99 | }; |
100 | 100 | ||
101 | static void __init rx51_init_irq(void) | 101 | static void __init rx51_init_early(void) |
102 | { | 102 | { |
103 | struct omap_sdrc_params *sdrc_params; | 103 | struct omap_sdrc_params *sdrc_params; |
104 | 104 | ||
@@ -108,7 +108,6 @@ static void __init rx51_init_irq(void) | |||
108 | omap2_init_common_infrastructure(); | 108 | omap2_init_common_infrastructure(); |
109 | sdrc_params = nokia_get_sdram_timings(); | 109 | sdrc_params = nokia_get_sdram_timings(); |
110 | omap2_init_common_devices(sdrc_params, sdrc_params); | 110 | omap2_init_common_devices(sdrc_params, sdrc_params); |
111 | omap_init_irq(); | ||
112 | } | 111 | } |
113 | 112 | ||
114 | extern void __init rx51_peripherals_init(void); | 113 | extern void __init rx51_peripherals_init(void); |
@@ -149,9 +148,10 @@ static void __init rx51_map_io(void) | |||
149 | MACHINE_START(NOKIA_RX51, "Nokia RX-51 board") | 148 | MACHINE_START(NOKIA_RX51, "Nokia RX-51 board") |
150 | /* Maintainer: Lauri Leukkunen <lauri.leukkunen@nokia.com> */ | 149 | /* Maintainer: Lauri Leukkunen <lauri.leukkunen@nokia.com> */ |
151 | .boot_params = 0x80000100, | 150 | .boot_params = 0x80000100, |
152 | .map_io = rx51_map_io, | ||
153 | .reserve = omap_reserve, | 151 | .reserve = omap_reserve, |
154 | .init_irq = rx51_init_irq, | 152 | .map_io = rx51_map_io, |
153 | .init_early = rx51_init_early, | ||
154 | .init_irq = omap_init_irq, | ||
155 | .init_machine = rx51_init, | 155 | .init_machine = rx51_init, |
156 | .timer = &omap_timer, | 156 | .timer = &omap_timer, |
157 | MACHINE_END | 157 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-zoom.c b/arch/arm/mach-omap2/board-zoom.c index e26754c24ee8..85d4170f30ab 100644 --- a/arch/arm/mach-omap2/board-zoom.c +++ b/arch/arm/mach-omap2/board-zoom.c | |||
@@ -33,7 +33,7 @@ | |||
33 | 33 | ||
34 | #define ZOOM3_EHCI_RESET_GPIO 64 | 34 | #define ZOOM3_EHCI_RESET_GPIO 64 |
35 | 35 | ||
36 | static void __init omap_zoom_init_irq(void) | 36 | static void __init omap_zoom_init_early(void) |
37 | { | 37 | { |
38 | omap2_init_common_infrastructure(); | 38 | omap2_init_common_infrastructure(); |
39 | if (machine_is_omap_zoom2()) | 39 | if (machine_is_omap_zoom2()) |
@@ -42,8 +42,6 @@ static void __init omap_zoom_init_irq(void) | |||
42 | else if (machine_is_omap_zoom3()) | 42 | else if (machine_is_omap_zoom3()) |
43 | omap2_init_common_devices(h8mbx00u0mer0em_sdrc_params, | 43 | omap2_init_common_devices(h8mbx00u0mer0em_sdrc_params, |
44 | h8mbx00u0mer0em_sdrc_params); | 44 | h8mbx00u0mer0em_sdrc_params); |
45 | |||
46 | omap_init_irq(); | ||
47 | } | 45 | } |
48 | 46 | ||
49 | #ifdef CONFIG_OMAP_MUX | 47 | #ifdef CONFIG_OMAP_MUX |
@@ -135,18 +133,20 @@ static void __init omap_zoom_init(void) | |||
135 | 133 | ||
136 | MACHINE_START(OMAP_ZOOM2, "OMAP Zoom2 board") | 134 | MACHINE_START(OMAP_ZOOM2, "OMAP Zoom2 board") |
137 | .boot_params = 0x80000100, | 135 | .boot_params = 0x80000100, |
138 | .map_io = omap3_map_io, | ||
139 | .reserve = omap_reserve, | 136 | .reserve = omap_reserve, |
140 | .init_irq = omap_zoom_init_irq, | 137 | .map_io = omap3_map_io, |
138 | .init_early = omap_zoom_init_early, | ||
139 | .init_irq = omap_init_irq, | ||
141 | .init_machine = omap_zoom_init, | 140 | .init_machine = omap_zoom_init, |
142 | .timer = &omap_timer, | 141 | .timer = &omap_timer, |
143 | MACHINE_END | 142 | MACHINE_END |
144 | 143 | ||
145 | MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board") | 144 | MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board") |
146 | .boot_params = 0x80000100, | 145 | .boot_params = 0x80000100, |
147 | .map_io = omap3_map_io, | ||
148 | .reserve = omap_reserve, | 146 | .reserve = omap_reserve, |
149 | .init_irq = omap_zoom_init_irq, | 147 | .map_io = omap3_map_io, |
148 | .init_early = omap_zoom_init_early, | ||
149 | .init_irq = omap_init_irq, | ||
150 | .init_machine = omap_zoom_init, | 150 | .init_machine = omap_zoom_init, |
151 | .timer = &omap_timer, | 151 | .timer = &omap_timer, |
152 | MACHINE_END | 152 | MACHINE_END |