Lines Matching refs:mevt

348 static void exynos4_mct_tick_stop(struct mct_clock_event_device *mevt)  in exynos4_mct_tick_stop()  argument
352 unsigned long offset = mevt->base + MCT_L_TCON_OFFSET; in exynos4_mct_tick_stop()
362 struct mct_clock_event_device *mevt) in exynos4_mct_tick_start() argument
366 exynos4_mct_tick_stop(mevt); in exynos4_mct_tick_start()
371 exynos4_mct_write(tmp, mevt->base + MCT_L_ICNTB_OFFSET); in exynos4_mct_tick_start()
374 exynos4_mct_write(0x1, mevt->base + MCT_L_INT_ENB_OFFSET); in exynos4_mct_tick_start()
376 tmp = readl_relaxed(reg_base + mevt->base + MCT_L_TCON_OFFSET); in exynos4_mct_tick_start()
379 exynos4_mct_write(tmp, mevt->base + MCT_L_TCON_OFFSET); in exynos4_mct_tick_start()
385 struct mct_clock_event_device *mevt; in exynos4_tick_set_next_event() local
387 mevt = container_of(evt, struct mct_clock_event_device, evt); in exynos4_tick_set_next_event()
388 exynos4_mct_tick_start(cycles, mevt); in exynos4_tick_set_next_event()
394 struct mct_clock_event_device *mevt; in set_state_shutdown() local
396 mevt = container_of(evt, struct mct_clock_event_device, evt); in set_state_shutdown()
397 exynos4_mct_tick_stop(mevt); in set_state_shutdown()
403 struct mct_clock_event_device *mevt; in set_state_periodic() local
406 mevt = container_of(evt, struct mct_clock_event_device, evt); in set_state_periodic()
409 exynos4_mct_tick_stop(mevt); in set_state_periodic()
410 exynos4_mct_tick_start(cycles_per_jiffy, mevt); in set_state_periodic()
414 static void exynos4_mct_tick_clear(struct mct_clock_event_device *mevt) in exynos4_mct_tick_clear() argument
421 if (!clockevent_state_periodic(&mevt->evt)) in exynos4_mct_tick_clear()
422 exynos4_mct_tick_stop(mevt); in exynos4_mct_tick_clear()
425 if (readl_relaxed(reg_base + mevt->base + MCT_L_INT_CSTAT_OFFSET) & 1) in exynos4_mct_tick_clear()
426 exynos4_mct_write(0x1, mevt->base + MCT_L_INT_CSTAT_OFFSET); in exynos4_mct_tick_clear()
431 struct mct_clock_event_device *mevt = dev_id; in exynos4_mct_tick_isr() local
432 struct clock_event_device *evt = &mevt->evt; in exynos4_mct_tick_isr()
434 exynos4_mct_tick_clear(mevt); in exynos4_mct_tick_isr()
441 static int exynos4_local_timer_setup(struct mct_clock_event_device *mevt) in exynos4_local_timer_setup() argument
443 struct clock_event_device *evt = &mevt->evt; in exynos4_local_timer_setup()
446 mevt->base = EXYNOS4_MCT_L_BASE(cpu); in exynos4_local_timer_setup()
447 snprintf(mevt->name, sizeof(mevt->name), "mct_tick%d", cpu); in exynos4_local_timer_setup()
449 evt->name = mevt->name; in exynos4_local_timer_setup()
459 exynos4_mct_write(TICK_BASE_CNT, mevt->base + MCT_L_TCNTB_OFFSET); in exynos4_local_timer_setup()
477 static void exynos4_local_timer_stop(struct mct_clock_event_device *mevt) in exynos4_local_timer_stop() argument
479 struct clock_event_device *evt = &mevt->evt; in exynos4_local_timer_stop()
493 struct mct_clock_event_device *mevt; in exynos4_mct_cpu_notify() local
501 mevt = this_cpu_ptr(&percpu_mct_tick); in exynos4_mct_cpu_notify()
502 exynos4_local_timer_setup(mevt); in exynos4_mct_cpu_notify()
505 mevt = this_cpu_ptr(&percpu_mct_tick); in exynos4_mct_cpu_notify()
506 exynos4_local_timer_stop(mevt); in exynos4_mct_cpu_notify()
520 struct mct_clock_event_device *mevt = this_cpu_ptr(&percpu_mct_tick); in exynos4_timer_resources() local
572 exynos4_local_timer_setup(mevt); in exynos4_timer_resources()