Lines Matching refs:ttc
92 struct ttc_timer ttc; member
100 struct ttc_timer ttc; member
147 struct ttc_timer *timer = &ttce->ttc; in ttc_clock_event_interrupt()
164 struct ttc_timer *timer = &to_ttc_timer_clksrc(cs)->ttc; in __ttc_clocksource_read()
187 struct ttc_timer *timer = &ttce->ttc; in ttc_set_next_event()
201 struct ttc_timer *timer = &ttce->ttc; in ttc_shutdown()
213 struct ttc_timer *timer = &ttce->ttc; in ttc_set_periodic()
216 DIV_ROUND_CLOSEST(ttce->ttc.freq, PRESCALE * HZ)); in ttc_set_periodic()
223 struct ttc_timer *timer = &ttce->ttc; in ttc_resume()
236 struct ttc_timer *ttc = to_ttc_timer(nb); in ttc_rate_change_clocksource_cb() local
237 struct ttc_timer_clocksource *ttccs = container_of(ttc, in ttc_rate_change_clocksource_cb()
238 struct ttc_timer_clocksource, ttc); in ttc_rate_change_clocksource_cb()
271 readl_relaxed(ttccs->ttc.base_addr + in ttc_rate_change_clocksource_cb()
297 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_rate_change_clocksource_cb()
307 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_rate_change_clocksource_cb()
317 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_rate_change_clocksource_cb()
336 ttccs->ttc.clk = clk; in ttc_setup_clocksource()
338 err = clk_prepare_enable(ttccs->ttc.clk); in ttc_setup_clocksource()
344 ttccs->ttc.freq = clk_get_rate(ttccs->ttc.clk); in ttc_setup_clocksource()
346 ttccs->ttc.clk_rate_change_nb.notifier_call = in ttc_setup_clocksource()
348 ttccs->ttc.clk_rate_change_nb.next = NULL; in ttc_setup_clocksource()
350 err = clk_notifier_register(ttccs->ttc.clk, in ttc_setup_clocksource()
351 &ttccs->ttc.clk_rate_change_nb); in ttc_setup_clocksource()
355 ttccs->ttc.base_addr = base; in ttc_setup_clocksource()
367 writel_relaxed(0x0, ttccs->ttc.base_addr + TTC_IER_OFFSET); in ttc_setup_clocksource()
369 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_setup_clocksource()
371 ttccs->ttc.base_addr + TTC_CNT_CNTRL_OFFSET); in ttc_setup_clocksource()
373 err = clocksource_register_hz(&ttccs->cs, ttccs->ttc.freq / PRESCALE); in ttc_setup_clocksource()
381 ttccs->ttc.freq / PRESCALE); in ttc_setup_clocksource()
390 struct ttc_timer *ttc = to_ttc_timer(nb); in ttc_rate_change_clockevent_cb() local
391 struct ttc_timer_clockevent *ttcce = container_of(ttc, in ttc_rate_change_clockevent_cb()
392 struct ttc_timer_clockevent, ttc); in ttc_rate_change_clockevent_cb()
397 ttc->freq = ndata->new_rate; in ttc_rate_change_clockevent_cb()
419 ttcce->ttc.clk = clk; in ttc_setup_clockevent()
421 err = clk_prepare_enable(ttcce->ttc.clk); in ttc_setup_clockevent()
427 ttcce->ttc.clk_rate_change_nb.notifier_call = in ttc_setup_clockevent()
429 ttcce->ttc.clk_rate_change_nb.next = NULL; in ttc_setup_clockevent()
431 err = clk_notifier_register(ttcce->ttc.clk, in ttc_setup_clockevent()
432 &ttcce->ttc.clk_rate_change_nb); in ttc_setup_clockevent()
438 ttcce->ttc.freq = clk_get_rate(ttcce->ttc.clk); in ttc_setup_clockevent()
440 ttcce->ttc.base_addr = base; in ttc_setup_clockevent()
457 writel_relaxed(0x23, ttcce->ttc.base_addr + TTC_CNT_CNTRL_OFFSET); in ttc_setup_clockevent()
459 ttcce->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_setup_clockevent()
460 writel_relaxed(0x1, ttcce->ttc.base_addr + TTC_IER_OFFSET); in ttc_setup_clockevent()
470 ttcce->ttc.freq / PRESCALE, 1, 0xfffe); in ttc_setup_clockevent()
543 TIMER_OF_DECLARE(ttc, "cdns,ttc", ttc_timer_init);