diff options
author | Stephen Warren <swarren@nvidia.com> | 2012-11-08 14:40:59 -0500 |
---|---|---|
committer | Stephen Warren <swarren@nvidia.com> | 2012-12-24 11:36:38 -0500 |
commit | 6bb27d7349db51b50c40534710fe164ca0d58902 (patch) | |
tree | 8f227c8bbf27b87275302dc133bb2b949b64622f /arch/arm/mach-footbridge | |
parent | 7704c095230e2e9863f3aacd0489a4b4cc00bf45 (diff) |
ARM: delete struct sys_timer
Now that the only field in struct sys_timer is .init, delete the struct,
and replace the machine descriptor .timer field with the initialization
function itself.
This will enable moving timer drivers into drivers/clocksource without
having to place a public prototype of each struct sys_timer object into
include/linux; the intent is to create a single of_clocksource_init()
function that determines which timer driver to initialize by scanning
the device dtree, much like the proposed irqchip_init() at:
http://www.spinics.net/lists/arm-kernel/msg203686.html
Includes mach-omap2 fixes from Igor Grinberg.
Tested-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Diffstat (limited to 'arch/arm/mach-footbridge')
-rw-r--r-- | arch/arm/mach-footbridge/cats-hw.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-footbridge/common.h | 4 | ||||
-rw-r--r-- | arch/arm/mach-footbridge/dc21285-timer.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-footbridge/ebsa285.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-footbridge/isa-timer.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-footbridge/netwinder-hw.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-footbridge/personal.c | 2 |
7 files changed, 8 insertions, 16 deletions
diff --git a/arch/arm/mach-footbridge/cats-hw.c b/arch/arm/mach-footbridge/cats-hw.c index 25b453601acc..6987a09ec219 100644 --- a/arch/arm/mach-footbridge/cats-hw.c +++ b/arch/arm/mach-footbridge/cats-hw.c | |||
@@ -90,6 +90,6 @@ MACHINE_START(CATS, "Chalice-CATS") | |||
90 | .fixup = fixup_cats, | 90 | .fixup = fixup_cats, |
91 | .map_io = footbridge_map_io, | 91 | .map_io = footbridge_map_io, |
92 | .init_irq = footbridge_init_irq, | 92 | .init_irq = footbridge_init_irq, |
93 | .timer = &isa_timer, | 93 | .init_time = isa_timer_init, |
94 | .restart = footbridge_restart, | 94 | .restart = footbridge_restart, |
95 | MACHINE_END | 95 | MACHINE_END |
diff --git a/arch/arm/mach-footbridge/common.h b/arch/arm/mach-footbridge/common.h index c9767b892cb2..a846e50a07b8 100644 --- a/arch/arm/mach-footbridge/common.h +++ b/arch/arm/mach-footbridge/common.h | |||
@@ -1,6 +1,6 @@ | |||
1 | 1 | ||
2 | extern struct sys_timer footbridge_timer; | 2 | extern void footbridge_timer_init(void); |
3 | extern struct sys_timer isa_timer; | 3 | extern void isa_timer_init(void); |
4 | 4 | ||
5 | extern void isa_rtc_init(void); | 5 | extern void isa_rtc_init(void); |
6 | 6 | ||
diff --git a/arch/arm/mach-footbridge/dc21285-timer.c b/arch/arm/mach-footbridge/dc21285-timer.c index 3b54196447c7..9f14b1d9a0e7 100644 --- a/arch/arm/mach-footbridge/dc21285-timer.c +++ b/arch/arm/mach-footbridge/dc21285-timer.c | |||
@@ -93,7 +93,7 @@ static struct irqaction footbridge_timer_irq = { | |||
93 | /* | 93 | /* |
94 | * Set up timer interrupt. | 94 | * Set up timer interrupt. |
95 | */ | 95 | */ |
96 | static void __init footbridge_timer_init(void) | 96 | void __init footbridge_timer_init(void) |
97 | { | 97 | { |
98 | struct clock_event_device *ce = &ckevt_dc21285; | 98 | struct clock_event_device *ce = &ckevt_dc21285; |
99 | 99 | ||
@@ -108,7 +108,3 @@ static void __init footbridge_timer_init(void) | |||
108 | 108 | ||
109 | clockevents_register_device(ce); | 109 | clockevents_register_device(ce); |
110 | } | 110 | } |
111 | |||
112 | struct sys_timer footbridge_timer = { | ||
113 | .init = footbridge_timer_init, | ||
114 | }; | ||
diff --git a/arch/arm/mach-footbridge/ebsa285.c b/arch/arm/mach-footbridge/ebsa285.c index b09551ef89ca..b08243500e2e 100644 --- a/arch/arm/mach-footbridge/ebsa285.c +++ b/arch/arm/mach-footbridge/ebsa285.c | |||
@@ -101,7 +101,7 @@ MACHINE_START(EBSA285, "EBSA285") | |||
101 | .video_end = 0x000bffff, | 101 | .video_end = 0x000bffff, |
102 | .map_io = footbridge_map_io, | 102 | .map_io = footbridge_map_io, |
103 | .init_irq = footbridge_init_irq, | 103 | .init_irq = footbridge_init_irq, |
104 | .timer = &footbridge_timer, | 104 | .init_time = footbridge_timer_init, |
105 | .restart = footbridge_restart, | 105 | .restart = footbridge_restart, |
106 | MACHINE_END | 106 | MACHINE_END |
107 | 107 | ||
diff --git a/arch/arm/mach-footbridge/isa-timer.c b/arch/arm/mach-footbridge/isa-timer.c index c40bb415f4b5..d9301dd56354 100644 --- a/arch/arm/mach-footbridge/isa-timer.c +++ b/arch/arm/mach-footbridge/isa-timer.c | |||
@@ -31,14 +31,10 @@ static struct irqaction pit_timer_irq = { | |||
31 | .dev_id = &i8253_clockevent, | 31 | .dev_id = &i8253_clockevent, |
32 | }; | 32 | }; |
33 | 33 | ||
34 | static void __init isa_timer_init(void) | 34 | void __init isa_timer_init(void) |
35 | { | 35 | { |
36 | clocksource_i8253_init(); | 36 | clocksource_i8253_init(); |
37 | 37 | ||
38 | setup_irq(i8253_clockevent.irq, &pit_timer_irq); | 38 | setup_irq(i8253_clockevent.irq, &pit_timer_irq); |
39 | clockevent_i8253_init(false); | 39 | clockevent_i8253_init(false); |
40 | } | 40 | } |
41 | |||
42 | struct sys_timer isa_timer = { | ||
43 | .init = isa_timer_init, | ||
44 | }; | ||
diff --git a/arch/arm/mach-footbridge/netwinder-hw.c b/arch/arm/mach-footbridge/netwinder-hw.c index d2d14339c6c4..90ea23fdce4c 100644 --- a/arch/arm/mach-footbridge/netwinder-hw.c +++ b/arch/arm/mach-footbridge/netwinder-hw.c | |||
@@ -766,6 +766,6 @@ MACHINE_START(NETWINDER, "Rebel-NetWinder") | |||
766 | .fixup = fixup_netwinder, | 766 | .fixup = fixup_netwinder, |
767 | .map_io = footbridge_map_io, | 767 | .map_io = footbridge_map_io, |
768 | .init_irq = footbridge_init_irq, | 768 | .init_irq = footbridge_init_irq, |
769 | .timer = &isa_timer, | 769 | .init_time = isa_timer_init, |
770 | .restart = netwinder_restart, | 770 | .restart = netwinder_restart, |
771 | MACHINE_END | 771 | MACHINE_END |
diff --git a/arch/arm/mach-footbridge/personal.c b/arch/arm/mach-footbridge/personal.c index e1e9990fa957..7bdeabdcd4d8 100644 --- a/arch/arm/mach-footbridge/personal.c +++ b/arch/arm/mach-footbridge/personal.c | |||
@@ -18,7 +18,7 @@ MACHINE_START(PERSONAL_SERVER, "Compaq-PersonalServer") | |||
18 | .atag_offset = 0x100, | 18 | .atag_offset = 0x100, |
19 | .map_io = footbridge_map_io, | 19 | .map_io = footbridge_map_io, |
20 | .init_irq = footbridge_init_irq, | 20 | .init_irq = footbridge_init_irq, |
21 | .timer = &footbridge_timer, | 21 | .init_time = footbridge_timer_init, |
22 | .restart = footbridge_restart, | 22 | .restart = footbridge_restart, |
23 | MACHINE_END | 23 | MACHINE_END |
24 | 24 | ||