From abde710ca8776f851e41c3dfe78ad7dcafa26dc9 Mon Sep 17 00:00:00 2001 From: Marc Zyngier Date: Tue, 10 Jan 2012 19:07:28 +0000 Subject: [PATCH] ARM: smp_twd: make local_timer_stop a symbol instead of a #define When CONFIG_HAVE_ARM_TWD is selected, local_timer_stop is a #define, while all other local timers are using a real function. Convert it to an alias of twd_timer_stop, as it helps converting all local timers to another internal API in a sane way. Signed-off-by: Marc Zyngier --- arch/arm/include/asm/localtimer.h | 6 +----- arch/arm/include/asm/smp_twd.h | 1 - arch/arm/kernel/smp_twd.c | 7 ++++++- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch/arm/include/asm/localtimer.h b/arch/arm/include/asm/localtimer.h index c6a18424888e..7e1b2c5f7d17 100644 --- a/arch/arm/include/asm/localtimer.h +++ b/arch/arm/include/asm/localtimer.h @@ -26,17 +26,13 @@ void percpu_timer_setup(void); #include "smp_twd.h" -#define local_timer_stop(c) twd_timer_stop((c)) - -#else +#endif /* * Stop the local timer */ void local_timer_stop(struct clock_event_device *); -#endif - /* * Setup a local timer interrupt for a CPU. */ diff --git a/arch/arm/include/asm/smp_twd.h b/arch/arm/include/asm/smp_twd.h index ef9ffba97ad8..bf8449da480a 100644 --- a/arch/arm/include/asm/smp_twd.h +++ b/arch/arm/include/asm/smp_twd.h @@ -23,6 +23,5 @@ struct clock_event_device; extern void __iomem *twd_base; void twd_timer_setup(struct clock_event_device *); -void twd_timer_stop(struct clock_event_device *); #endif diff --git a/arch/arm/kernel/smp_twd.c b/arch/arm/kernel/smp_twd.c index 4285daa077b0..b39916ad31c2 100644 --- a/arch/arm/kernel/smp_twd.c +++ b/arch/arm/kernel/smp_twd.c @@ -87,12 +87,17 @@ int twd_timer_ack(void) return 0; } -void twd_timer_stop(struct clock_event_device *clk) +static void twd_timer_stop(struct clock_event_device *clk) { twd_set_mode(CLOCK_EVT_MODE_UNUSED, clk); disable_percpu_irq(clk->irq); } +/* Temporary hack to be removed when all TWD users are converted to + the new registration interface */ +void local_timer_stop(struct clock_event_device *clk) + __attribute__ ((alias ("twd_timer_stop"))); + #ifdef CONFIG_CPU_FREQ /* -- 2.20.1