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()
203 struct ttc_timer *timer = &ttce->ttc; in ttc_set_mode()
208 ttc_set_interval(timer, DIV_ROUND_CLOSEST(ttce->ttc.freq, in ttc_set_mode()
234 struct ttc_timer *ttc = to_ttc_timer(nb); in ttc_rate_change_clocksource_cb() local
235 struct ttc_timer_clocksource *ttccs = container_of(ttc, in ttc_rate_change_clocksource_cb()
236 struct ttc_timer_clocksource, ttc); in ttc_rate_change_clocksource_cb()
269 readl_relaxed(ttccs->ttc.base_addr + in ttc_rate_change_clocksource_cb()
295 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_rate_change_clocksource_cb()
305 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_rate_change_clocksource_cb()
315 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_rate_change_clocksource_cb()
334 ttccs->ttc.clk = clk; in ttc_setup_clocksource()
336 err = clk_prepare_enable(ttccs->ttc.clk); in ttc_setup_clocksource()
342 ttccs->ttc.freq = clk_get_rate(ttccs->ttc.clk); in ttc_setup_clocksource()
344 ttccs->ttc.clk_rate_change_nb.notifier_call = in ttc_setup_clocksource()
346 ttccs->ttc.clk_rate_change_nb.next = NULL; in ttc_setup_clocksource()
347 if (clk_notifier_register(ttccs->ttc.clk, in ttc_setup_clocksource()
348 &ttccs->ttc.clk_rate_change_nb)) in ttc_setup_clocksource()
351 ttccs->ttc.base_addr = base; in ttc_setup_clocksource()
363 writel_relaxed(0x0, ttccs->ttc.base_addr + TTC_IER_OFFSET); in ttc_setup_clocksource()
365 ttccs->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_setup_clocksource()
367 ttccs->ttc.base_addr + TTC_CNT_CNTRL_OFFSET); in ttc_setup_clocksource()
369 err = clocksource_register_hz(&ttccs->cs, ttccs->ttc.freq / PRESCALE); in ttc_setup_clocksource()
377 ttccs->ttc.freq / PRESCALE); in ttc_setup_clocksource()
384 struct ttc_timer *ttc = to_ttc_timer(nb); in ttc_rate_change_clockevent_cb() local
385 struct ttc_timer_clockevent *ttcce = container_of(ttc, in ttc_rate_change_clockevent_cb()
386 struct ttc_timer_clockevent, ttc); in ttc_rate_change_clockevent_cb()
391 ttc->freq = ndata->new_rate; in ttc_rate_change_clockevent_cb()
413 ttcce->ttc.clk = clk; in ttc_setup_clockevent()
415 err = clk_prepare_enable(ttcce->ttc.clk); in ttc_setup_clockevent()
421 ttcce->ttc.clk_rate_change_nb.notifier_call = in ttc_setup_clockevent()
423 ttcce->ttc.clk_rate_change_nb.next = NULL; in ttc_setup_clockevent()
424 if (clk_notifier_register(ttcce->ttc.clk, in ttc_setup_clockevent()
425 &ttcce->ttc.clk_rate_change_nb)) in ttc_setup_clockevent()
427 ttcce->ttc.freq = clk_get_rate(ttcce->ttc.clk); in ttc_setup_clockevent()
429 ttcce->ttc.base_addr = base; in ttc_setup_clockevent()
443 writel_relaxed(0x23, ttcce->ttc.base_addr + TTC_CNT_CNTRL_OFFSET); in ttc_setup_clockevent()
445 ttcce->ttc.base_addr + TTC_CLK_CNTRL_OFFSET); in ttc_setup_clockevent()
446 writel_relaxed(0x1, ttcce->ttc.base_addr + TTC_IER_OFFSET); in ttc_setup_clockevent()
456 ttcce->ttc.freq / PRESCALE, 1, 0xfffe); in ttc_setup_clockevent()
520 CLOCKSOURCE_OF_DECLARE(ttc, "cdns,ttc", ttc_timer_init);