diff options
author | Olof Johansson <olof@lixom.net> | 2013-01-14 13:20:02 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-01-14 13:20:02 -0500 |
commit | 8d84981e395850aab31c3f2ca7e2738e03f671d7 (patch) | |
tree | 933425fddb23d28be802277471df3fe3f6c2711d /arch/arm/mach-exynos/mct.c | |
parent | 00c82d64405631967dca3890a9ce80ab35d04cc7 (diff) | |
parent | 77cc982f6a3b33a5aa058ad3b20cda8866db2948 (diff) |
Merge branch 'clocksource/cleanup' into next/cleanup
Clockevent cleanup series from Shawn Guo.
Resolved move/change conflict in mach-pxa/time.c due to the sys_timer
cleanup.
* clocksource/cleanup:
clocksource: use clockevents_config_and_register() where possible
ARM: use clockevents_config_and_register() where possible
clockevents: export clockevents_config_and_register for module use
+ sync to Linux 3.8-rc3
Signed-off-by: Olof Johansson <olof@lixom.net>
Conflicts:
arch/arm/mach-pxa/time.c
Diffstat (limited to 'arch/arm/mach-exynos/mct.c')
-rw-r--r-- | arch/arm/mach-exynos/mct.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/arch/arm/mach-exynos/mct.c b/arch/arm/mach-exynos/mct.c index 4a89b54fcadb..577ee1b03ff4 100644 --- a/arch/arm/mach-exynos/mct.c +++ b/arch/arm/mach-exynos/mct.c | |||
@@ -255,13 +255,9 @@ static struct irqaction mct_comp_event_irq = { | |||
255 | 255 | ||
256 | static void exynos4_clockevent_init(void) | 256 | static void exynos4_clockevent_init(void) |
257 | { | 257 | { |
258 | clockevents_calc_mult_shift(&mct_comp_device, clk_rate, 5); | ||
259 | mct_comp_device.max_delta_ns = | ||
260 | clockevent_delta2ns(0xffffffff, &mct_comp_device); | ||
261 | mct_comp_device.min_delta_ns = | ||
262 | clockevent_delta2ns(0xf, &mct_comp_device); | ||
263 | mct_comp_device.cpumask = cpumask_of(0); | 258 | mct_comp_device.cpumask = cpumask_of(0); |
264 | clockevents_register_device(&mct_comp_device); | 259 | clockevents_config_and_register(&mct_comp_device, clk_rate, |
260 | 0xf, 0xffffffff); | ||
265 | 261 | ||
266 | if (soc_is_exynos5250()) | 262 | if (soc_is_exynos5250()) |
267 | setup_irq(EXYNOS5_IRQ_MCT_G0, &mct_comp_event_irq); | 263 | setup_irq(EXYNOS5_IRQ_MCT_G0, &mct_comp_event_irq); |
@@ -404,14 +400,8 @@ static int __cpuinit exynos4_local_timer_setup(struct clock_event_device *evt) | |||
404 | evt->set_mode = exynos4_tick_set_mode; | 400 | evt->set_mode = exynos4_tick_set_mode; |
405 | evt->features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT; | 401 | evt->features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT; |
406 | evt->rating = 450; | 402 | evt->rating = 450; |
407 | 403 | clockevents_config_and_register(evt, clk_rate / (TICK_BASE_CNT + 1), | |
408 | clockevents_calc_mult_shift(evt, clk_rate / (TICK_BASE_CNT + 1), 5); | 404 | 0xf, 0x7fffffff); |
409 | evt->max_delta_ns = | ||
410 | clockevent_delta2ns(0x7fffffff, evt); | ||
411 | evt->min_delta_ns = | ||
412 | clockevent_delta2ns(0xf, evt); | ||
413 | |||
414 | clockevents_register_device(evt); | ||
415 | 405 | ||
416 | exynos4_mct_write(TICK_BASE_CNT, mevt->base + MCT_L_TCNTB_OFFSET); | 406 | exynos4_mct_write(TICK_BASE_CNT, mevt->base + MCT_L_TCNTB_OFFSET); |
417 | 407 | ||