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-u300 | |
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-u300')
-rw-r--r-- | arch/arm/mach-u300/core.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-u300/timer.c | 10 | ||||
-rw-r--r-- | arch/arm/mach-u300/timer.h | 2 |
3 files changed, 3 insertions, 11 deletions
diff --git a/arch/arm/mach-u300/core.c b/arch/arm/mach-u300/core.c index 4ce77cdc31cc..100a8b764dad 100644 --- a/arch/arm/mach-u300/core.c +++ b/arch/arm/mach-u300/core.c | |||
@@ -1780,7 +1780,7 @@ MACHINE_START(U300, "Ericsson AB U335 S335/B335 Prototype Board") | |||
1780 | .nr_irqs = 0, | 1780 | .nr_irqs = 0, |
1781 | .init_irq = u300_init_irq, | 1781 | .init_irq = u300_init_irq, |
1782 | .handle_irq = vic_handle_irq, | 1782 | .handle_irq = vic_handle_irq, |
1783 | .timer = &u300_timer, | 1783 | .init_time = u300_timer_init, |
1784 | .init_machine = u300_init_machine, | 1784 | .init_machine = u300_init_machine, |
1785 | .restart = u300_restart, | 1785 | .restart = u300_restart, |
1786 | MACHINE_END | 1786 | MACHINE_END |
diff --git a/arch/arm/mach-u300/timer.c b/arch/arm/mach-u300/timer.c index 1da10e20e996..d9e73209c9b8 100644 --- a/arch/arm/mach-u300/timer.c +++ b/arch/arm/mach-u300/timer.c | |||
@@ -349,7 +349,7 @@ static u32 notrace u300_read_sched_clock(void) | |||
349 | /* | 349 | /* |
350 | * This sets up the system timers, clock source and clock event. | 350 | * This sets up the system timers, clock source and clock event. |
351 | */ | 351 | */ |
352 | static void __init u300_timer_init(void) | 352 | void __init u300_timer_init(void) |
353 | { | 353 | { |
354 | struct clk *clk; | 354 | struct clk *clk; |
355 | unsigned long rate; | 355 | unsigned long rate; |
@@ -413,11 +413,3 @@ static void __init u300_timer_init(void) | |||
413 | * used by hrtimers! | 413 | * used by hrtimers! |
414 | */ | 414 | */ |
415 | } | 415 | } |
416 | |||
417 | /* | ||
418 | * Very simple system timer that only register the clock event and | ||
419 | * clock source. | ||
420 | */ | ||
421 | struct sys_timer u300_timer = { | ||
422 | .init = u300_timer_init, | ||
423 | }; | ||
diff --git a/arch/arm/mach-u300/timer.h b/arch/arm/mach-u300/timer.h index b5e9791762e0..d34287bc34f5 100644 --- a/arch/arm/mach-u300/timer.h +++ b/arch/arm/mach-u300/timer.h | |||
@@ -1 +1 @@ | |||
extern struct sys_timer u300_timer; | extern void u300_timer_init(void); | ||