diff options
author | Santosh Shilimkar <santosh.shilimkar@ti.com> | 2011-02-23 12:53:15 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-02-23 12:54:27 -0500 |
commit | af90f10d3826525306c96d423df240210640cb72 (patch) | |
tree | 1b4e2fa6e483b0bb9ced44a9e36a9dceff384c8e /arch/arm/mach-msm | |
parent | d77e270c53a4911d23ded9f4ab8b175a3fe3bb34 (diff) |
ARM: 6759/1: smp: Select local timers vs broadcast timer support runtime
The current code support of dummy timers in absence of local
timer is compile time. This is an attempt to convert it to runtime
so that on few SOC version if the local timers aren't supported
kernel can switch to dummy timers. OMAP4430 ES1.0 does suffer from
this limitation.
This patch should not have any functional impact on affected
files.
Cc: Daniel Walker <dwalker@codeaurora.org>
Cc: Bryan Huntsman <bryanh@codeaurora.org>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Kukjin Kim <kgene.kim@samsung.com>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Colin Cross <ccross@android.com>
Cc: Erik Gilling <konkers@android.com>
Cc: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Cc: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Acked-by: David Brown <davidb@codeaurora.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-msm')
-rw-r--r-- | arch/arm/mach-msm/timer.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/arm/mach-msm/timer.c b/arch/arm/mach-msm/timer.c index c105d28b53e3..ae85aa951806 100644 --- a/arch/arm/mach-msm/timer.c +++ b/arch/arm/mach-msm/timer.c | |||
@@ -255,7 +255,7 @@ static void __init msm_timer_init(void) | |||
255 | } | 255 | } |
256 | 256 | ||
257 | #ifdef CONFIG_SMP | 257 | #ifdef CONFIG_SMP |
258 | void __cpuinit local_timer_setup(struct clock_event_device *evt) | 258 | int __cpuinit local_timer_setup(struct clock_event_device *evt) |
259 | { | 259 | { |
260 | struct msm_clock *clock = &msm_clocks[MSM_GLOBAL_TIMER]; | 260 | struct msm_clock *clock = &msm_clocks[MSM_GLOBAL_TIMER]; |
261 | 261 | ||
@@ -287,6 +287,7 @@ void __cpuinit local_timer_setup(struct clock_event_device *evt) | |||
287 | gic_enable_ppi(clock->irq.irq); | 287 | gic_enable_ppi(clock->irq.irq); |
288 | 288 | ||
289 | clockevents_register_device(evt); | 289 | clockevents_register_device(evt); |
290 | return 0; | ||
290 | } | 291 | } |
291 | 292 | ||
292 | inline int local_timer_ack(void) | 293 | inline int local_timer_ack(void) |