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-tegra | |
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-tegra')
-rw-r--r-- | arch/arm/mach-tegra/board-dt-tegra20.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-dt-tegra30.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-tegra/timer.c | 6 |
4 files changed, 4 insertions, 8 deletions
diff --git a/arch/arm/mach-tegra/board-dt-tegra20.c b/arch/arm/mach-tegra/board-dt-tegra20.c index 734d9cc87f2e..3b9956aabf5a 100644 --- a/arch/arm/mach-tegra/board-dt-tegra20.c +++ b/arch/arm/mach-tegra/board-dt-tegra20.c | |||
@@ -203,7 +203,7 @@ DT_MACHINE_START(TEGRA_DT, "nVidia Tegra20 (Flattened Device Tree)") | |||
203 | .init_early = tegra20_init_early, | 203 | .init_early = tegra20_init_early, |
204 | .init_irq = tegra_dt_init_irq, | 204 | .init_irq = tegra_dt_init_irq, |
205 | .handle_irq = gic_handle_irq, | 205 | .handle_irq = gic_handle_irq, |
206 | .timer = &tegra_sys_timer, | 206 | .init_time = tegra_init_timer, |
207 | .init_machine = tegra_dt_init, | 207 | .init_machine = tegra_dt_init, |
208 | .init_late = tegra_dt_init_late, | 208 | .init_late = tegra_dt_init_late, |
209 | .restart = tegra_assert_system_reset, | 209 | .restart = tegra_assert_system_reset, |
diff --git a/arch/arm/mach-tegra/board-dt-tegra30.c b/arch/arm/mach-tegra/board-dt-tegra30.c index 6497d1236b08..381b2f25f0b4 100644 --- a/arch/arm/mach-tegra/board-dt-tegra30.c +++ b/arch/arm/mach-tegra/board-dt-tegra30.c | |||
@@ -113,7 +113,7 @@ DT_MACHINE_START(TEGRA30_DT, "NVIDIA Tegra30 (Flattened Device Tree)") | |||
113 | .init_early = tegra30_init_early, | 113 | .init_early = tegra30_init_early, |
114 | .init_irq = tegra_dt_init_irq, | 114 | .init_irq = tegra_dt_init_irq, |
115 | .handle_irq = gic_handle_irq, | 115 | .handle_irq = gic_handle_irq, |
116 | .timer = &tegra_sys_timer, | 116 | .init_time = tegra_init_timer, |
117 | .init_machine = tegra30_dt_init, | 117 | .init_machine = tegra30_dt_init, |
118 | .init_late = tegra_init_late, | 118 | .init_late = tegra_init_late, |
119 | .restart = tegra_assert_system_reset, | 119 | .restart = tegra_assert_system_reset, |
diff --git a/arch/arm/mach-tegra/board.h b/arch/arm/mach-tegra/board.h index 91fbe733a21e..744cdd246f6a 100644 --- a/arch/arm/mach-tegra/board.h +++ b/arch/arm/mach-tegra/board.h | |||
@@ -55,5 +55,5 @@ static inline int harmony_pcie_init(void) { return 0; } | |||
55 | 55 | ||
56 | void __init tegra_paz00_wifikill_init(void); | 56 | void __init tegra_paz00_wifikill_init(void); |
57 | 57 | ||
58 | extern struct sys_timer tegra_sys_timer; | 58 | extern void tegra_init_timer(void); |
59 | #endif | 59 | #endif |
diff --git a/arch/arm/mach-tegra/timer.c b/arch/arm/mach-tegra/timer.c index e4863f3e9ee7..b0036e519a15 100644 --- a/arch/arm/mach-tegra/timer.c +++ b/arch/arm/mach-tegra/timer.c | |||
@@ -168,7 +168,7 @@ static const struct of_device_id rtc_match[] __initconst = { | |||
168 | {} | 168 | {} |
169 | }; | 169 | }; |
170 | 170 | ||
171 | static void __init tegra_init_timer(void) | 171 | void __init tegra_init_timer(void) |
172 | { | 172 | { |
173 | struct device_node *np; | 173 | struct device_node *np; |
174 | struct clk *clk; | 174 | struct clk *clk; |
@@ -273,10 +273,6 @@ static void __init tegra_init_timer(void) | |||
273 | register_persistent_clock(NULL, tegra_read_persistent_clock); | 273 | register_persistent_clock(NULL, tegra_read_persistent_clock); |
274 | } | 274 | } |
275 | 275 | ||
276 | struct sys_timer tegra_sys_timer = { | ||
277 | .init = tegra_init_timer, | ||
278 | }; | ||
279 | |||
280 | #ifdef CONFIG_PM | 276 | #ifdef CONFIG_PM |
281 | static u32 usec_config; | 277 | static u32 usec_config; |
282 | 278 | ||