Lines Matching full:clockevent

68 to_davinci_clockevent(struct clock_event_device *clockevent)  in to_davinci_clockevent()  argument
70 return container_of(clockevent, struct davinci_clockevent, dev); in to_davinci_clockevent()
74 davinci_clockevent_read(struct davinci_clockevent *clockevent, in davinci_clockevent_read() argument
77 return readl_relaxed(clockevent->base + reg); in davinci_clockevent_read()
80 static void davinci_clockevent_write(struct davinci_clockevent *clockevent, in davinci_clockevent_write() argument
83 writel_relaxed(val, clockevent->base + reg); in davinci_clockevent_write()
118 struct davinci_clockevent *clockevent; in davinci_clockevent_shutdown() local
120 clockevent = to_davinci_clockevent(dev); in davinci_clockevent_shutdown()
122 davinci_tim12_shutdown(clockevent->base); in davinci_clockevent_shutdown()
129 struct davinci_clockevent *clockevent = to_davinci_clockevent(dev); in davinci_clockevent_set_oneshot() local
131 davinci_clockevent_write(clockevent, DAVINCI_TIMER_REG_TIM12, 0x0); in davinci_clockevent_set_oneshot()
133 davinci_tim12_set_oneshot(clockevent->base); in davinci_clockevent_set_oneshot()
142 struct davinci_clockevent *clockevent = to_davinci_clockevent(dev); in davinci_clockevent_set_next_event_std() local
146 davinci_clockevent_write(clockevent, DAVINCI_TIMER_REG_TIM12, 0x0); in davinci_clockevent_set_next_event_std()
147 davinci_clockevent_write(clockevent, DAVINCI_TIMER_REG_PRD12, cycles); in davinci_clockevent_set_next_event_std()
158 struct davinci_clockevent *clockevent = to_davinci_clockevent(dev); in davinci_clockevent_set_next_event_cmp() local
161 curr_time = davinci_clockevent_read(clockevent, in davinci_clockevent_set_next_event_cmp()
163 davinci_clockevent_write(clockevent, in davinci_clockevent_set_next_event_cmp()
164 clockevent->cmp_off, curr_time + cycles); in davinci_clockevent_set_next_event_cmp()
171 struct davinci_clockevent *clockevent = data; in davinci_timer_irq_timer() local
173 if (!clockevent_state_oneshot(&clockevent->dev)) in davinci_timer_irq_timer()
174 davinci_tim12_shutdown(clockevent->base); in davinci_timer_irq_timer()
176 clockevent->dev.event_handler(&clockevent->dev); in davinci_timer_irq_timer()
193 * Standard use-case: we're using tim12 for clockevent and tim34 for
213 * both clocksource and clockevent. We set tim12 to periodic and don't touch
246 struct davinci_clockevent *clockevent; in davinci_timer_register() local
273 clockevent = kzalloc(sizeof(*clockevent), GFP_KERNEL); in davinci_timer_register()
274 if (!clockevent) in davinci_timer_register()
277 clockevent->dev.name = "tim12"; in davinci_timer_register()
278 clockevent->dev.features = CLOCK_EVT_FEAT_ONESHOT; in davinci_timer_register()
279 clockevent->dev.cpumask = cpumask_of(0); in davinci_timer_register()
280 clockevent->base = base; in davinci_timer_register()
283 clockevent->cmp_off = timer_cfg->cmp_off; in davinci_timer_register()
284 clockevent->dev.set_next_event = in davinci_timer_register()
287 clockevent->dev.set_next_event = in davinci_timer_register()
289 clockevent->dev.set_state_oneshot = in davinci_timer_register()
291 clockevent->dev.set_state_shutdown = in davinci_timer_register()
297 "clockevent/tim12", clockevent); in davinci_timer_register()
299 pr_err("Unable to request the clockevent interrupt\n"); in davinci_timer_register()
320 clockevents_config_and_register(&clockevent->dev, tick_rate, in davinci_timer_register()