diff options
author | Tony Lindgren <tony@atomide.com> | 2011-03-29 18:54:48 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2011-06-20 04:25:39 -0400 |
commit | e74984e46e899c22137a385869fb4f3ae756e3df (patch) | |
tree | 2f40fe8d66afb676fefcf307b8df36b734c28ba3 /arch | |
parent | 741e3a89dee8a17aa9373975d51f130a65e1683d (diff) |
omap: Set separate timer init functions to avoid cpu_is_omap tests
This is needed for the following patches so we can initialize the
rest of the hardware timers later on.
As with the init_irq calls, there's no need to do cpu_is_omap calls
during the timer init as we only care about the major omap generation.
This means that we can initialize the sys_timer with the .timer
entries alone.
Note that for now we just set stubs for the various sys_timer entries
that will get populated in a later patch. The following patches will
also remove the omap_dm_timer_init calls and change the init for the
rest of the hardware timers to happen with an arch_initcall.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch')
46 files changed, 86 insertions, 62 deletions
diff --git a/arch/arm/mach-omap1/board-ams-delta.c b/arch/arm/mach-omap1/board-ams-delta.c index 17ed7575e035..f1ac7fbf54a9 100644 --- a/arch/arm/mach-omap1/board-ams-delta.c +++ b/arch/arm/mach-omap1/board-ams-delta.c | |||
@@ -391,7 +391,7 @@ MACHINE_START(AMS_DELTA, "Amstrad E3 (Delta)") | |||
391 | .reserve = omap_reserve, | 391 | .reserve = omap_reserve, |
392 | .init_irq = ams_delta_init_irq, | 392 | .init_irq = ams_delta_init_irq, |
393 | .init_machine = ams_delta_init, | 393 | .init_machine = ams_delta_init, |
394 | .timer = &omap_timer, | 394 | .timer = &omap1_timer, |
395 | MACHINE_END | 395 | MACHINE_END |
396 | 396 | ||
397 | EXPORT_SYMBOL(ams_delta_latch1_write); | 397 | EXPORT_SYMBOL(ams_delta_latch1_write); |
diff --git a/arch/arm/mach-omap1/board-fsample.c b/arch/arm/mach-omap1/board-fsample.c index eaff305fa47d..a6b1bea50371 100644 --- a/arch/arm/mach-omap1/board-fsample.c +++ b/arch/arm/mach-omap1/board-fsample.c | |||
@@ -394,5 +394,5 @@ MACHINE_START(OMAP_FSAMPLE, "OMAP730 F-Sample") | |||
394 | .reserve = omap_reserve, | 394 | .reserve = omap_reserve, |
395 | .init_irq = omap_fsample_init_irq, | 395 | .init_irq = omap_fsample_init_irq, |
396 | .init_machine = omap_fsample_init, | 396 | .init_machine = omap_fsample_init, |
397 | .timer = &omap_timer, | 397 | .timer = &omap1_timer, |
398 | MACHINE_END | 398 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-generic.c b/arch/arm/mach-omap1/board-generic.c index 3fd6b40d2e92..04fc356c40fa 100644 --- a/arch/arm/mach-omap1/board-generic.c +++ b/arch/arm/mach-omap1/board-generic.c | |||
@@ -99,5 +99,5 @@ MACHINE_START(OMAP_GENERIC, "Generic OMAP1510/1610/1710") | |||
99 | .reserve = omap_reserve, | 99 | .reserve = omap_reserve, |
100 | .init_irq = omap_generic_init_irq, | 100 | .init_irq = omap_generic_init_irq, |
101 | .init_machine = omap_generic_init, | 101 | .init_machine = omap_generic_init, |
102 | .timer = &omap_timer, | 102 | .timer = &omap1_timer, |
103 | MACHINE_END | 103 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c index 8147b044de56..cb7fb1aa3dca 100644 --- a/arch/arm/mach-omap1/board-h2.c +++ b/arch/arm/mach-omap1/board-h2.c | |||
@@ -466,5 +466,5 @@ MACHINE_START(OMAP_H2, "TI-H2") | |||
466 | .reserve = omap_reserve, | 466 | .reserve = omap_reserve, |
467 | .init_irq = h2_init_irq, | 467 | .init_irq = h2_init_irq, |
468 | .init_machine = h2_init, | 468 | .init_machine = h2_init, |
469 | .timer = &omap_timer, | 469 | .timer = &omap1_timer, |
470 | MACHINE_END | 470 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-h3.c b/arch/arm/mach-omap1/board-h3.c index 1b448f641918..31f34875ffad 100644 --- a/arch/arm/mach-omap1/board-h3.c +++ b/arch/arm/mach-omap1/board-h3.c | |||
@@ -454,5 +454,5 @@ MACHINE_START(OMAP_H3, "TI OMAP1710 H3 board") | |||
454 | .reserve = omap_reserve, | 454 | .reserve = omap_reserve, |
455 | .init_irq = h3_init_irq, | 455 | .init_irq = h3_init_irq, |
456 | .init_machine = h3_init, | 456 | .init_machine = h3_init, |
457 | .timer = &omap_timer, | 457 | .timer = &omap1_timer, |
458 | MACHINE_END | 458 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-htcherald.c b/arch/arm/mach-omap1/board-htcherald.c index 1bd4d8e2580c..36e06ea7ec65 100644 --- a/arch/arm/mach-omap1/board-htcherald.c +++ b/arch/arm/mach-omap1/board-htcherald.c | |||
@@ -616,5 +616,5 @@ MACHINE_START(HERALD, "HTC Herald") | |||
616 | .reserve = omap_reserve, | 616 | .reserve = omap_reserve, |
617 | .init_irq = htcherald_init_irq, | 617 | .init_irq = htcherald_init_irq, |
618 | .init_machine = htcherald_init, | 618 | .init_machine = htcherald_init, |
619 | .timer = &omap_timer, | 619 | .timer = &omap1_timer, |
620 | MACHINE_END | 620 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-innovator.c b/arch/arm/mach-omap1/board-innovator.c index 5926b0cf0467..0b1ba462d388 100644 --- a/arch/arm/mach-omap1/board-innovator.c +++ b/arch/arm/mach-omap1/board-innovator.c | |||
@@ -464,5 +464,5 @@ MACHINE_START(OMAP_INNOVATOR, "TI-Innovator") | |||
464 | .reserve = omap_reserve, | 464 | .reserve = omap_reserve, |
465 | .init_irq = innovator_init_irq, | 465 | .init_irq = innovator_init_irq, |
466 | .init_machine = innovator_init, | 466 | .init_machine = innovator_init, |
467 | .timer = &omap_timer, | 467 | .timer = &omap1_timer, |
468 | MACHINE_END | 468 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-nokia770.c b/arch/arm/mach-omap1/board-nokia770.c index e3cf21d3c301..5469ce247ffe 100644 --- a/arch/arm/mach-omap1/board-nokia770.c +++ b/arch/arm/mach-omap1/board-nokia770.c | |||
@@ -269,5 +269,5 @@ MACHINE_START(NOKIA770, "Nokia 770") | |||
269 | .reserve = omap_reserve, | 269 | .reserve = omap_reserve, |
270 | .init_irq = omap_nokia770_init_irq, | 270 | .init_irq = omap_nokia770_init_irq, |
271 | .init_machine = omap_nokia770_init, | 271 | .init_machine = omap_nokia770_init, |
272 | .timer = &omap_timer, | 272 | .timer = &omap1_timer, |
273 | MACHINE_END | 273 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-osk.c b/arch/arm/mach-omap1/board-osk.c index 1e7823d9df37..b08a21380772 100644 --- a/arch/arm/mach-omap1/board-osk.c +++ b/arch/arm/mach-omap1/board-osk.c | |||
@@ -588,5 +588,5 @@ MACHINE_START(OMAP_OSK, "TI-OSK") | |||
588 | .reserve = omap_reserve, | 588 | .reserve = omap_reserve, |
589 | .init_irq = osk_init_irq, | 589 | .init_irq = osk_init_irq, |
590 | .init_machine = osk_init, | 590 | .init_machine = osk_init, |
591 | .timer = &omap_timer, | 591 | .timer = &omap1_timer, |
592 | MACHINE_END | 592 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-palmte.c b/arch/arm/mach-omap1/board-palmte.c index 8b6a88184135..459cb6bfed55 100644 --- a/arch/arm/mach-omap1/board-palmte.c +++ b/arch/arm/mach-omap1/board-palmte.c | |||
@@ -280,5 +280,5 @@ MACHINE_START(OMAP_PALMTE, "OMAP310 based Palm Tungsten E") | |||
280 | .reserve = omap_reserve, | 280 | .reserve = omap_reserve, |
281 | .init_irq = omap_palmte_init_irq, | 281 | .init_irq = omap_palmte_init_irq, |
282 | .init_machine = omap_palmte_init, | 282 | .init_machine = omap_palmte_init, |
283 | .timer = &omap_timer, | 283 | .timer = &omap1_timer, |
284 | MACHINE_END | 284 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-palmtt.c b/arch/arm/mach-omap1/board-palmtt.c index f2de43d8336f..b214f45f646c 100644 --- a/arch/arm/mach-omap1/board-palmtt.c +++ b/arch/arm/mach-omap1/board-palmtt.c | |||
@@ -326,5 +326,5 @@ MACHINE_START(OMAP_PALMTT, "OMAP1510 based Palm Tungsten|T") | |||
326 | .reserve = omap_reserve, | 326 | .reserve = omap_reserve, |
327 | .init_irq = omap_palmtt_init_irq, | 327 | .init_irq = omap_palmtt_init_irq, |
328 | .init_machine = omap_palmtt_init, | 328 | .init_machine = omap_palmtt_init, |
329 | .timer = &omap_timer, | 329 | .timer = &omap1_timer, |
330 | MACHINE_END | 330 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-palmz71.c b/arch/arm/mach-omap1/board-palmz71.c index 6665d2da874b..9b0ea48d35fd 100644 --- a/arch/arm/mach-omap1/board-palmz71.c +++ b/arch/arm/mach-omap1/board-palmz71.c | |||
@@ -346,5 +346,5 @@ MACHINE_START(OMAP_PALMZ71, "OMAP310 based Palm Zire71") | |||
346 | .reserve = omap_reserve, | 346 | .reserve = omap_reserve, |
347 | .init_irq = omap_palmz71_init_irq, | 347 | .init_irq = omap_palmz71_init_irq, |
348 | .init_machine = omap_palmz71_init, | 348 | .init_machine = omap_palmz71_init, |
349 | .timer = &omap_timer, | 349 | .timer = &omap1_timer, |
350 | MACHINE_END | 350 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-perseus2.c b/arch/arm/mach-omap1/board-perseus2.c index 7f019e55a149..67acd4142639 100644 --- a/arch/arm/mach-omap1/board-perseus2.c +++ b/arch/arm/mach-omap1/board-perseus2.c | |||
@@ -355,5 +355,5 @@ MACHINE_START(OMAP_PERSEUS2, "OMAP730 Perseus2") | |||
355 | .reserve = omap_reserve, | 355 | .reserve = omap_reserve, |
356 | .init_irq = omap_perseus2_init_irq, | 356 | .init_irq = omap_perseus2_init_irq, |
357 | .init_machine = omap_perseus2_init, | 357 | .init_machine = omap_perseus2_init, |
358 | .timer = &omap_timer, | 358 | .timer = &omap1_timer, |
359 | MACHINE_END | 359 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-sx1.c b/arch/arm/mach-omap1/board-sx1.c index 24f0f7b85567..9c3b7c52d9cf 100644 --- a/arch/arm/mach-omap1/board-sx1.c +++ b/arch/arm/mach-omap1/board-sx1.c | |||
@@ -426,5 +426,5 @@ MACHINE_START(SX1, "OMAP310 based Siemens SX1") | |||
426 | .reserve = omap_reserve, | 426 | .reserve = omap_reserve, |
427 | .init_irq = omap_sx1_init_irq, | 427 | .init_irq = omap_sx1_init_irq, |
428 | .init_machine = omap_sx1_init, | 428 | .init_machine = omap_sx1_init, |
429 | .timer = &omap_timer, | 429 | .timer = &omap1_timer, |
430 | MACHINE_END | 430 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/board-voiceblue.c b/arch/arm/mach-omap1/board-voiceblue.c index 98826e2ae8ca..036edc0ee9b6 100644 --- a/arch/arm/mach-omap1/board-voiceblue.c +++ b/arch/arm/mach-omap1/board-voiceblue.c | |||
@@ -306,5 +306,5 @@ MACHINE_START(VOICEBLUE, "VoiceBlue OMAP5910") | |||
306 | .reserve = omap_reserve, | 306 | .reserve = omap_reserve, |
307 | .init_irq = voiceblue_init_irq, | 307 | .init_irq = voiceblue_init_irq, |
308 | .init_machine = voiceblue_init, | 308 | .init_machine = voiceblue_init, |
309 | .timer = &omap_timer, | 309 | .timer = &omap1_timer, |
310 | MACHINE_END | 310 | MACHINE_END |
diff --git a/arch/arm/mach-omap1/time.c b/arch/arm/mach-omap1/time.c index 03e1e1062ad4..a1837771e031 100644 --- a/arch/arm/mach-omap1/time.c +++ b/arch/arm/mach-omap1/time.c | |||
@@ -297,7 +297,7 @@ static inline int omap_32k_timer_usable(void) | |||
297 | * Timer initialization | 297 | * Timer initialization |
298 | * --------------------------------------------------------------------------- | 298 | * --------------------------------------------------------------------------- |
299 | */ | 299 | */ |
300 | static void __init omap_timer_init(void) | 300 | static void __init omap1_timer_init(void) |
301 | { | 301 | { |
302 | if (omap_32k_timer_usable()) { | 302 | if (omap_32k_timer_usable()) { |
303 | preferred_sched_clock_init(1); | 303 | preferred_sched_clock_init(1); |
@@ -307,6 +307,6 @@ static void __init omap_timer_init(void) | |||
307 | } | 307 | } |
308 | } | 308 | } |
309 | 309 | ||
310 | struct sys_timer omap_timer = { | 310 | struct sys_timer omap1_timer = { |
311 | .init = omap_timer_init, | 311 | .init = omap1_timer_init, |
312 | }; | 312 | }; |
diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c index 45cabc5283e4..2028464cf5b9 100644 --- a/arch/arm/mach-omap2/board-2430sdp.c +++ b/arch/arm/mach-omap2/board-2430sdp.c | |||
@@ -262,5 +262,5 @@ MACHINE_START(OMAP_2430SDP, "OMAP2430 sdp2430 board") | |||
262 | .init_early = omap_2430sdp_init_early, | 262 | .init_early = omap_2430sdp_init_early, |
263 | .init_irq = omap2_init_irq, | 263 | .init_irq = omap2_init_irq, |
264 | .init_machine = omap_2430sdp_init, | 264 | .init_machine = omap_2430sdp_init, |
265 | .timer = &omap_timer, | 265 | .timer = &omap2_timer, |
266 | MACHINE_END | 266 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c index 85b207f03865..12fae21346cf 100644 --- a/arch/arm/mach-omap2/board-3430sdp.c +++ b/arch/arm/mach-omap2/board-3430sdp.c | |||
@@ -806,5 +806,5 @@ MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board") | |||
806 | .init_early = omap_3430sdp_init_early, | 806 | .init_early = omap_3430sdp_init_early, |
807 | .init_irq = omap3_init_irq, | 807 | .init_irq = omap3_init_irq, |
808 | .init_machine = omap_3430sdp_init, | 808 | .init_machine = omap_3430sdp_init, |
809 | .timer = &omap_timer, | 809 | .timer = &omap3_timer, |
810 | MACHINE_END | 810 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-3630sdp.c b/arch/arm/mach-omap2/board-3630sdp.c index 2ec2d76087da..e4f37b57a0c4 100644 --- a/arch/arm/mach-omap2/board-3630sdp.c +++ b/arch/arm/mach-omap2/board-3630sdp.c | |||
@@ -221,5 +221,5 @@ MACHINE_START(OMAP_3630SDP, "OMAP 3630SDP board") | |||
221 | .init_early = omap_sdp_init_early, | 221 | .init_early = omap_sdp_init_early, |
222 | .init_irq = omap3_init_irq, | 222 | .init_irq = omap3_init_irq, |
223 | .init_machine = omap_sdp_init, | 223 | .init_machine = omap_sdp_init, |
224 | .timer = &omap_timer, | 224 | .timer = &omap3_timer, |
225 | MACHINE_END | 225 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c index 63de2d396e2d..128efb50215c 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c | |||
@@ -773,5 +773,5 @@ MACHINE_START(OMAP_4430SDP, "OMAP4430 4430SDP board") | |||
773 | .init_early = omap_4430sdp_init_early, | 773 | .init_early = omap_4430sdp_init_early, |
774 | .init_irq = gic_init_irq, | 774 | .init_irq = gic_init_irq, |
775 | .init_machine = omap_4430sdp_init, | 775 | .init_machine = omap_4430sdp_init, |
776 | .timer = &omap_timer, | 776 | .timer = &omap4_timer, |
777 | MACHINE_END | 777 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-am3517crane.c b/arch/arm/mach-omap2/board-am3517crane.c index 0bed0a4c8338..5f2b55ff04ff 100644 --- a/arch/arm/mach-omap2/board-am3517crane.c +++ b/arch/arm/mach-omap2/board-am3517crane.c | |||
@@ -106,5 +106,5 @@ MACHINE_START(CRANEBOARD, "AM3517/05 CRANEBOARD") | |||
106 | .init_early = am3517_crane_init_early, | 106 | .init_early = am3517_crane_init_early, |
107 | .init_irq = omap3_init_irq, | 107 | .init_irq = omap3_init_irq, |
108 | .init_machine = am3517_crane_init, | 108 | .init_machine = am3517_crane_init, |
109 | .timer = &omap_timer, | 109 | .timer = &omap3_timer, |
110 | MACHINE_END | 110 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-omap2/board-am3517evm.c index 0db0fb843010..f3006c304150 100644 --- a/arch/arm/mach-omap2/board-am3517evm.c +++ b/arch/arm/mach-omap2/board-am3517evm.c | |||
@@ -496,5 +496,5 @@ MACHINE_START(OMAP3517EVM, "OMAP3517/AM3517 EVM") | |||
496 | .init_early = am3517_evm_init_early, | 496 | .init_early = am3517_evm_init_early, |
497 | .init_irq = omap3_init_irq, | 497 | .init_irq = omap3_init_irq, |
498 | .init_machine = am3517_evm_init, | 498 | .init_machine = am3517_evm_init, |
499 | .timer = &omap_timer, | 499 | .timer = &omap3_timer, |
500 | MACHINE_END | 500 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-omap2/board-apollon.c index 93576c8a7157..70211703ff9f 100644 --- a/arch/arm/mach-omap2/board-apollon.c +++ b/arch/arm/mach-omap2/board-apollon.c | |||
@@ -356,5 +356,5 @@ MACHINE_START(OMAP_APOLLON, "OMAP24xx Apollon") | |||
356 | .init_early = omap_apollon_init_early, | 356 | .init_early = omap_apollon_init_early, |
357 | .init_irq = omap2_init_irq, | 357 | .init_irq = omap2_init_irq, |
358 | .init_machine = omap_apollon_init, | 358 | .init_machine = omap_apollon_init, |
359 | .timer = &omap_timer, | 359 | .timer = &omap2_timer, |
360 | MACHINE_END | 360 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c index 2940d640a661..8b49dc2c7b9d 100644 --- a/arch/arm/mach-omap2/board-cm-t35.c +++ b/arch/arm/mach-omap2/board-cm-t35.c | |||
@@ -648,5 +648,5 @@ MACHINE_START(CM_T35, "Compulab CM-T35") | |||
648 | .init_early = cm_t35_init_early, | 648 | .init_early = cm_t35_init_early, |
649 | .init_irq = omap3_init_irq, | 649 | .init_irq = omap3_init_irq, |
650 | .init_machine = cm_t35_init, | 650 | .init_machine = cm_t35_init, |
651 | .timer = &omap_timer, | 651 | .timer = &omap3_timer, |
652 | MACHINE_END | 652 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-cm-t3517.c b/arch/arm/mach-omap2/board-cm-t3517.c index 8f152228977c..aa67240da8e8 100644 --- a/arch/arm/mach-omap2/board-cm-t3517.c +++ b/arch/arm/mach-omap2/board-cm-t3517.c | |||
@@ -306,5 +306,5 @@ MACHINE_START(CM_T3517, "Compulab CM-T3517") | |||
306 | .init_early = cm_t3517_init_early, | 306 | .init_early = cm_t3517_init_early, |
307 | .init_irq = omap3_init_irq, | 307 | .init_irq = omap3_init_irq, |
308 | .init_machine = cm_t3517_init, | 308 | .init_machine = cm_t3517_init, |
309 | .timer = &omap_timer, | 309 | .timer = &omap3_timer, |
310 | MACHINE_END | 310 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-devkit8000.c b/arch/arm/mach-omap2/board-devkit8000.c index 00f6cb6e3bf9..671aaeade116 100644 --- a/arch/arm/mach-omap2/board-devkit8000.c +++ b/arch/arm/mach-omap2/board-devkit8000.c | |||
@@ -707,5 +707,5 @@ MACHINE_START(DEVKIT8000, "OMAP3 Devkit8000") | |||
707 | .init_early = devkit8000_init_early, | 707 | .init_early = devkit8000_init_early, |
708 | .init_irq = devkit8000_init_irq, | 708 | .init_irq = devkit8000_init_irq, |
709 | .init_machine = devkit8000_init, | 709 | .init_machine = devkit8000_init, |
710 | .timer = &omap_timer, | 710 | .timer = &omap3_secure_timer, |
711 | MACHINE_END | 711 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c index ccd503ac24bd..c6ecf607ebd6 100644 --- a/arch/arm/mach-omap2/board-generic.c +++ b/arch/arm/mach-omap2/board-generic.c | |||
@@ -72,5 +72,5 @@ MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx") | |||
72 | .init_early = omap_generic_init_early, | 72 | .init_early = omap_generic_init_early, |
73 | .init_irq = omap2_init_irq, | 73 | .init_irq = omap2_init_irq, |
74 | .init_machine = omap_generic_init, | 74 | .init_machine = omap_generic_init, |
75 | .timer = &omap_timer, | 75 | .timer = &omap3_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 2e16d6cb3fe1..45de2b319ec9 100644 --- a/arch/arm/mach-omap2/board-h4.c +++ b/arch/arm/mach-omap2/board-h4.c | |||
@@ -388,5 +388,5 @@ MACHINE_START(OMAP_H4, "OMAP2420 H4 board") | |||
388 | .init_early = omap_h4_init_early, | 388 | .init_early = omap_h4_init_early, |
389 | .init_irq = omap_h4_init_irq, | 389 | .init_irq = omap_h4_init_irq, |
390 | .init_machine = omap_h4_init, | 390 | .init_machine = omap_h4_init, |
391 | .timer = &omap_timer, | 391 | .timer = &omap2_timer, |
392 | MACHINE_END | 392 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-igep0020.c b/arch/arm/mach-omap2/board-igep0020.c index 359b765483f5..381a27c615b7 100644 --- a/arch/arm/mach-omap2/board-igep0020.c +++ b/arch/arm/mach-omap2/board-igep0020.c | |||
@@ -705,7 +705,7 @@ MACHINE_START(IGEP0020, "IGEP v2 board") | |||
705 | .init_early = igep_init_early, | 705 | .init_early = igep_init_early, |
706 | .init_irq = omap3_init_irq, | 706 | .init_irq = omap3_init_irq, |
707 | .init_machine = igep_init, | 707 | .init_machine = igep_init, |
708 | .timer = &omap_timer, | 708 | .timer = &omap3_timer, |
709 | MACHINE_END | 709 | MACHINE_END |
710 | 710 | ||
711 | MACHINE_START(IGEP0030, "IGEP OMAP3 module") | 711 | MACHINE_START(IGEP0030, "IGEP OMAP3 module") |
@@ -715,5 +715,5 @@ MACHINE_START(IGEP0030, "IGEP OMAP3 module") | |||
715 | .init_early = igep_init_early, | 715 | .init_early = igep_init_early, |
716 | .init_irq = omap3_init_irq, | 716 | .init_irq = omap3_init_irq, |
717 | .init_machine = igep_init, | 717 | .init_machine = igep_init, |
718 | .timer = &omap_timer, | 718 | .timer = &omap3_timer, |
719 | MACHINE_END | 719 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c index a054f54b1714..75ebc99f9d53 100644 --- a/arch/arm/mach-omap2/board-ldp.c +++ b/arch/arm/mach-omap2/board-ldp.c | |||
@@ -352,5 +352,5 @@ MACHINE_START(OMAP_LDP, "OMAP LDP board") | |||
352 | .init_early = omap_ldp_init_early, | 352 | .init_early = omap_ldp_init_early, |
353 | .init_irq = omap3_init_irq, | 353 | .init_irq = omap3_init_irq, |
354 | .init_machine = omap_ldp_init, | 354 | .init_machine = omap_ldp_init, |
355 | .timer = &omap_timer, | 355 | .timer = &omap3_timer, |
356 | MACHINE_END | 356 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-n8x0.c b/arch/arm/mach-omap2/board-n8x0.c index 9c791a291898..e11f0c5d608a 100644 --- a/arch/arm/mach-omap2/board-n8x0.c +++ b/arch/arm/mach-omap2/board-n8x0.c | |||
@@ -701,7 +701,7 @@ MACHINE_START(NOKIA_N800, "Nokia N800") | |||
701 | .init_early = n8x0_init_early, | 701 | .init_early = n8x0_init_early, |
702 | .init_irq = omap2_init_irq, | 702 | .init_irq = omap2_init_irq, |
703 | .init_machine = n8x0_init_machine, | 703 | .init_machine = n8x0_init_machine, |
704 | .timer = &omap_timer, | 704 | .timer = &omap2_timer, |
705 | MACHINE_END | 705 | MACHINE_END |
706 | 706 | ||
707 | MACHINE_START(NOKIA_N810, "Nokia N810") | 707 | MACHINE_START(NOKIA_N810, "Nokia N810") |
@@ -711,7 +711,7 @@ MACHINE_START(NOKIA_N810, "Nokia N810") | |||
711 | .init_early = n8x0_init_early, | 711 | .init_early = n8x0_init_early, |
712 | .init_irq = omap2_init_irq, | 712 | .init_irq = omap2_init_irq, |
713 | .init_machine = n8x0_init_machine, | 713 | .init_machine = n8x0_init_machine, |
714 | .timer = &omap_timer, | 714 | .timer = &omap2_timer, |
715 | MACHINE_END | 715 | MACHINE_END |
716 | 716 | ||
717 | MACHINE_START(NOKIA_N810_WIMAX, "Nokia N810 WiMAX") | 717 | MACHINE_START(NOKIA_N810_WIMAX, "Nokia N810 WiMAX") |
@@ -721,5 +721,5 @@ MACHINE_START(NOKIA_N810_WIMAX, "Nokia N810 WiMAX") | |||
721 | .init_early = n8x0_init_early, | 721 | .init_early = n8x0_init_early, |
722 | .init_irq = omap2_init_irq, | 722 | .init_irq = omap2_init_irq, |
723 | .init_machine = n8x0_init_machine, | 723 | .init_machine = n8x0_init_machine, |
724 | .timer = &omap_timer, | 724 | .timer = &omap2_timer, |
725 | MACHINE_END | 725 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c index 456005548718..3d416549936a 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c | |||
@@ -599,5 +599,5 @@ MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board") | |||
599 | .init_early = omap3_beagle_init_early, | 599 | .init_early = omap3_beagle_init_early, |
600 | .init_irq = omap3_beagle_init_irq, | 600 | .init_irq = omap3_beagle_init_irq, |
601 | .init_machine = omap3_beagle_init, | 601 | .init_machine = omap3_beagle_init, |
602 | .timer = &omap_timer, | 602 | .timer = &omap3_secure_timer, |
603 | MACHINE_END | 603 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c index 79d5362cb260..7cbcf6043626 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c | |||
@@ -742,5 +742,5 @@ MACHINE_START(OMAP3EVM, "OMAP3 EVM") | |||
742 | .init_early = omap3_evm_init_early, | 742 | .init_early = omap3_evm_init_early, |
743 | .init_irq = omap3_init_irq, | 743 | .init_irq = omap3_init_irq, |
744 | .init_machine = omap3_evm_init, | 744 | .init_machine = omap3_evm_init, |
745 | .timer = &omap_timer, | 745 | .timer = &omap3_timer, |
746 | MACHINE_END | 746 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3logic.c b/arch/arm/mach-omap2/board-omap3logic.c index 739fdfc12338..693eba1d4f7d 100644 --- a/arch/arm/mach-omap2/board-omap3logic.c +++ b/arch/arm/mach-omap2/board-omap3logic.c | |||
@@ -217,7 +217,7 @@ MACHINE_START(OMAP3_TORPEDO, "Logic OMAP3 Torpedo board") | |||
217 | .init_early = omap3logic_init_early, | 217 | .init_early = omap3logic_init_early, |
218 | .init_irq = omap3_init_irq, | 218 | .init_irq = omap3_init_irq, |
219 | .init_machine = omap3logic_init, | 219 | .init_machine = omap3logic_init, |
220 | .timer = &omap_timer, | 220 | .timer = &omap3_timer, |
221 | MACHINE_END | 221 | MACHINE_END |
222 | 222 | ||
223 | MACHINE_START(OMAP3530_LV_SOM, "OMAP Logic 3530 LV SOM board") | 223 | MACHINE_START(OMAP3530_LV_SOM, "OMAP Logic 3530 LV SOM board") |
@@ -226,5 +226,5 @@ MACHINE_START(OMAP3530_LV_SOM, "OMAP Logic 3530 LV SOM board") | |||
226 | .init_early = omap3logic_init_early, | 226 | .init_early = omap3logic_init_early, |
227 | .init_irq = omap3_init_irq, | 227 | .init_irq = omap3_init_irq, |
228 | .init_machine = omap3logic_init, | 228 | .init_machine = omap3logic_init, |
229 | .timer = &omap_timer, | 229 | .timer = &omap3_timer, |
230 | MACHINE_END | 230 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c index 7b4e1391ee80..ff0be8320793 100644 --- a/arch/arm/mach-omap2/board-omap3pandora.c +++ b/arch/arm/mach-omap2/board-omap3pandora.c | |||
@@ -644,5 +644,5 @@ MACHINE_START(OMAP3_PANDORA, "Pandora Handheld Console") | |||
644 | .init_early = omap3pandora_init_early, | 644 | .init_early = omap3pandora_init_early, |
645 | .init_irq = omap3_init_irq, | 645 | .init_irq = omap3_init_irq, |
646 | .init_machine = omap3pandora_init, | 646 | .init_machine = omap3pandora_init, |
647 | .timer = &omap_timer, | 647 | .timer = &omap3_timer, |
648 | MACHINE_END | 648 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3stalker.c b/arch/arm/mach-omap2/board-omap3stalker.c index 01616260224b..96fec1f8fca1 100644 --- a/arch/arm/mach-omap2/board-omap3stalker.c +++ b/arch/arm/mach-omap2/board-omap3stalker.c | |||
@@ -560,5 +560,5 @@ MACHINE_START(SBC3530, "OMAP3 STALKER") | |||
560 | .init_early = omap3_stalker_init_early, | 560 | .init_early = omap3_stalker_init_early, |
561 | .init_irq = omap3_stalker_init_irq, | 561 | .init_irq = omap3_stalker_init_irq, |
562 | .init_machine = omap3_stalker_init, | 562 | .init_machine = omap3_stalker_init, |
563 | .timer = &omap_timer, | 563 | .timer = &omap3_secure_timer, |
564 | MACHINE_END | 564 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap3touchbook.c b/arch/arm/mach-omap2/board-omap3touchbook.c index 3cc553159557..9447bc06d0d0 100644 --- a/arch/arm/mach-omap2/board-omap3touchbook.c +++ b/arch/arm/mach-omap2/board-omap3touchbook.c | |||
@@ -449,5 +449,5 @@ MACHINE_START(TOUCHBOOK, "OMAP3 touchbook Board") | |||
449 | .init_early = omap3_touchbook_init_early, | 449 | .init_early = omap3_touchbook_init_early, |
450 | .init_irq = omap3_touchbook_init_irq, | 450 | .init_irq = omap3_touchbook_init_irq, |
451 | .init_machine = omap3_touchbook_init, | 451 | .init_machine = omap3_touchbook_init, |
452 | .timer = &omap_timer, | 452 | .timer = &omap3_secure_timer, |
453 | MACHINE_END | 453 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c index 0cfe2005cb50..e76fe98a0bbe 100644 --- a/arch/arm/mach-omap2/board-omap4panda.c +++ b/arch/arm/mach-omap2/board-omap4panda.c | |||
@@ -716,5 +716,5 @@ MACHINE_START(OMAP4_PANDA, "OMAP4 Panda board") | |||
716 | .init_early = omap4_panda_init_early, | 716 | .init_early = omap4_panda_init_early, |
717 | .init_irq = gic_init_irq, | 717 | .init_irq = gic_init_irq, |
718 | .init_machine = omap4_panda_init, | 718 | .init_machine = omap4_panda_init, |
719 | .timer = &omap_timer, | 719 | .timer = &omap4_timer, |
720 | MACHINE_END | 720 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c index 9c9f20cd9ce1..d06248f0b802 100644 --- a/arch/arm/mach-omap2/board-overo.c +++ b/arch/arm/mach-omap2/board-overo.c | |||
@@ -617,5 +617,5 @@ MACHINE_START(OVERO, "Gumstix Overo") | |||
617 | .init_early = overo_init_early, | 617 | .init_early = overo_init_early, |
618 | .init_irq = omap3_init_irq, | 618 | .init_irq = omap3_init_irq, |
619 | .init_machine = overo_init, | 619 | .init_machine = overo_init, |
620 | .timer = &omap_timer, | 620 | .timer = &omap3_timer, |
621 | MACHINE_END | 621 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-rm680.c b/arch/arm/mach-omap2/board-rm680.c index 9c3d115b65d1..54dceb163415 100644 --- a/arch/arm/mach-omap2/board-rm680.c +++ b/arch/arm/mach-omap2/board-rm680.c | |||
@@ -165,5 +165,5 @@ MACHINE_START(NOKIA_RM680, "Nokia RM-680 board") | |||
165 | .init_early = rm680_init_early, | 165 | .init_early = rm680_init_early, |
166 | .init_irq = omap3_init_irq, | 166 | .init_irq = omap3_init_irq, |
167 | .init_machine = rm680_init, | 167 | .init_machine = rm680_init, |
168 | .timer = &omap_timer, | 168 | .timer = &omap3_timer, |
169 | MACHINE_END | 169 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-rx51.c b/arch/arm/mach-omap2/board-rx51.c index ee35e4e8b09d..5ea142f9bc97 100644 --- a/arch/arm/mach-omap2/board-rx51.c +++ b/arch/arm/mach-omap2/board-rx51.c | |||
@@ -162,5 +162,5 @@ MACHINE_START(NOKIA_RX51, "Nokia RX-51 board") | |||
162 | .init_early = rx51_init_early, | 162 | .init_early = rx51_init_early, |
163 | .init_irq = omap3_init_irq, | 163 | .init_irq = omap3_init_irq, |
164 | .init_machine = rx51_init, | 164 | .init_machine = rx51_init, |
165 | .timer = &omap_timer, | 165 | .timer = &omap3_timer, |
166 | MACHINE_END | 166 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-ti8168evm.c b/arch/arm/mach-omap2/board-ti8168evm.c index 713c20f20f3e..a85d5b0b11da 100644 --- a/arch/arm/mach-omap2/board-ti8168evm.c +++ b/arch/arm/mach-omap2/board-ti8168evm.c | |||
@@ -52,6 +52,6 @@ MACHINE_START(TI8168EVM, "ti8168evm") | |||
52 | .map_io = ti8168_evm_map_io, | 52 | .map_io = ti8168_evm_map_io, |
53 | .init_early = ti8168_init_early, | 53 | .init_early = ti8168_init_early, |
54 | .init_irq = ti816x_init_irq, | 54 | .init_irq = ti816x_init_irq, |
55 | .timer = &omap_timer, | 55 | .timer = &omap3_timer, |
56 | .init_machine = ti8168_evm_init, | 56 | .init_machine = ti8168_evm_init, |
57 | MACHINE_END | 57 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/board-zoom.c b/arch/arm/mach-omap2/board-zoom.c index 97a3f0b21c33..8a98c3c303fc 100644 --- a/arch/arm/mach-omap2/board-zoom.c +++ b/arch/arm/mach-omap2/board-zoom.c | |||
@@ -139,7 +139,7 @@ MACHINE_START(OMAP_ZOOM2, "OMAP Zoom2 board") | |||
139 | .init_early = omap_zoom_init_early, | 139 | .init_early = omap_zoom_init_early, |
140 | .init_irq = omap3_init_irq, | 140 | .init_irq = omap3_init_irq, |
141 | .init_machine = omap_zoom_init, | 141 | .init_machine = omap_zoom_init, |
142 | .timer = &omap_timer, | 142 | .timer = &omap3_timer, |
143 | MACHINE_END | 143 | MACHINE_END |
144 | 144 | ||
145 | MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board") | 145 | MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board") |
@@ -149,5 +149,5 @@ MACHINE_START(OMAP_ZOOM3, "OMAP Zoom3 board") | |||
149 | .init_early = omap_zoom_init_early, | 149 | .init_early = omap_zoom_init_early, |
150 | .init_irq = omap3_init_irq, | 150 | .init_irq = omap3_init_irq, |
151 | .init_machine = omap_zoom_init, | 151 | .init_machine = omap_zoom_init, |
152 | .timer = &omap_timer, | 152 | .timer = &omap3_timer, |
153 | MACHINE_END | 153 | MACHINE_END |
diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c index 3b9cf85f4bb9..a0d8e83594eb 100644 --- a/arch/arm/mach-omap2/timer-gp.c +++ b/arch/arm/mach-omap2/timer-gp.c | |||
@@ -247,20 +247,41 @@ static void __init omap2_gp_clocksource_init(void) | |||
247 | } | 247 | } |
248 | #endif | 248 | #endif |
249 | 249 | ||
250 | static void __init omap2_gp_timer_init(void) | 250 | #define OMAP_SYS_TIMER_INIT(name) \ |
251 | static void __init omap##name##_timer_init(void) \ | ||
252 | { \ | ||
253 | omap_dm_timer_init(); \ | ||
254 | omap2_gp_clockevent_init(); \ | ||
255 | omap2_gp_clocksource_init(); \ | ||
256 | } | ||
257 | |||
258 | #define OMAP_SYS_TIMER(name) \ | ||
259 | struct sys_timer omap##name##_timer = { \ | ||
260 | .init = omap##name##_timer_init, \ | ||
261 | }; | ||
262 | |||
263 | #ifdef CONFIG_ARCH_OMAP2 | ||
264 | OMAP_SYS_TIMER_INIT(2) | ||
265 | OMAP_SYS_TIMER(2) | ||
266 | #endif | ||
267 | |||
268 | #ifdef CONFIG_ARCH_OMAP3 | ||
269 | OMAP_SYS_TIMER_INIT(3) | ||
270 | OMAP_SYS_TIMER(3) | ||
271 | OMAP_SYS_TIMER_INIT(3_secure) | ||
272 | OMAP_SYS_TIMER(3_secure) | ||
273 | #endif | ||
274 | |||
275 | #ifdef CONFIG_ARCH_OMAP4 | ||
276 | static void __init omap4_timer_init(void) | ||
251 | { | 277 | { |
252 | #ifdef CONFIG_LOCAL_TIMERS | 278 | #ifdef CONFIG_LOCAL_TIMERS |
253 | if (cpu_is_omap44xx()) { | 279 | twd_base = ioremap(OMAP44XX_LOCAL_TWD_BASE, SZ_256); |
254 | twd_base = ioremap(OMAP44XX_LOCAL_TWD_BASE, SZ_256); | 280 | BUG_ON(!twd_base); |
255 | BUG_ON(!twd_base); | ||
256 | } | ||
257 | #endif | 281 | #endif |
258 | omap_dm_timer_init(); | 282 | omap_dm_timer_init(); |
259 | |||
260 | omap2_gp_clockevent_init(); | 283 | omap2_gp_clockevent_init(); |
261 | omap2_gp_clocksource_init(); | 284 | omap2_gp_clocksource_init(); |
262 | } | 285 | } |
263 | 286 | OMAP_SYS_TIMER(4) | |
264 | struct sys_timer omap_timer = { | 287 | #endif |
265 | .init = omap2_gp_timer_init, | ||
266 | }; | ||
diff --git a/arch/arm/plat-omap/include/plat/common.h b/arch/arm/plat-omap/include/plat/common.h index 5288130be96e..4564cc697d7f 100644 --- a/arch/arm/plat-omap/include/plat/common.h +++ b/arch/arm/plat-omap/include/plat/common.h | |||
@@ -34,7 +34,11 @@ | |||
34 | struct sys_timer; | 34 | struct sys_timer; |
35 | 35 | ||
36 | extern void omap_map_common_io(void); | 36 | extern void omap_map_common_io(void); |
37 | extern struct sys_timer omap_timer; | 37 | extern struct sys_timer omap1_timer; |
38 | extern struct sys_timer omap2_timer; | ||
39 | extern struct sys_timer omap3_timer; | ||
40 | extern struct sys_timer omap3_secure_timer; | ||
41 | extern struct sys_timer omap4_timer; | ||
38 | extern bool omap_32k_timer_init(void); | 42 | extern bool omap_32k_timer_init(void); |
39 | extern int __init omap_init_clocksource_32k(void); | 43 | extern int __init omap_init_clocksource_32k(void); |
40 | extern unsigned long long notrace omap_32k_sched_clock(void); | 44 | extern unsigned long long notrace omap_32k_sched_clock(void); |
diff --git a/arch/arm/plat-omap/include/plat/dmtimer.h b/arch/arm/plat-omap/include/plat/dmtimer.h index d6c70d2f4030..330bd17bb5e7 100644 --- a/arch/arm/plat-omap/include/plat/dmtimer.h +++ b/arch/arm/plat-omap/include/plat/dmtimer.h | |||
@@ -57,7 +57,6 @@ | |||
57 | #define OMAP_TIMER_IP_VERSION_1 0x1 | 57 | #define OMAP_TIMER_IP_VERSION_1 0x1 |
58 | struct omap_dm_timer; | 58 | struct omap_dm_timer; |
59 | extern struct omap_dm_timer *gptimer_wakeup; | 59 | extern struct omap_dm_timer *gptimer_wakeup; |
60 | extern struct sys_timer omap_timer; | ||
61 | struct clk; | 60 | struct clk; |
62 | 61 | ||
63 | int omap_dm_timer_init(void); | 62 | int omap_dm_timer_init(void); |