summaryrefslogtreecommitdiff
path: root/arch/arm/mach-exynos4/mct.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-exynos4/mct.c')
-rw-r--r--arch/arm/mach-exynos4/mct.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm/mach-exynos4/mct.c b/arch/arm/mach-exynos4/mct.c
index eb182f29f48f..f191608b28d6 100644
--- a/arch/arm/mach-exynos4/mct.c
+++ b/arch/arm/mach-exynos4/mct.c
@@ -403,9 +403,11 @@ static void exynos4_mct_tick_init(struct clock_event_device *evt)
if (mct_int_type == MCT_INT_SPI) {
if (cpu == 0) {
mct_tick0_event_irq.dev_id = &mct_tick[cpu];
+ evt->irq = IRQ_MCT_L0;
setup_irq(IRQ_MCT_L0, &mct_tick0_event_irq);
} else {
mct_tick1_event_irq.dev_id = &mct_tick[cpu];
+ evt->irq = IRQ_MCT_L1;
setup_irq(IRQ_MCT_L1, &mct_tick1_event_irq);
irq_set_affinity(IRQ_MCT_L1, cpumask_of(1));
}
@@ -422,12 +424,10 @@ int __cpuinit local_timer_setup(struct clock_event_device *evt)
return 0;
}
-int local_timer_ack(void)
+void local_timer_stop(struct clock_event_device *evt)
{
- unsigned int cpu = smp_processor_id();
- struct mct_clock_event_device *mevt = &mct_tick[cpu];
-
- return exynos4_mct_tick_clear(mevt);
+ evt->set_mode(CLOCK_EVT_MODE_UNUSED, evt);
+ disable_irq(evt->irq);
}
#endif /* CONFIG_LOCAL_TIMERS */