static void apbt_restart_clocksource(struct clocksource *cs) { struct dw_apb_clocksource *dw_cs = clocksource_to_dw_apb_clocksource(cs); dw_apb_clocksource_start(dw_cs); }
static cycle_t __apbt_read_clocksource(struct clocksource *cs) { unsigned long current_count; struct dw_apb_clocksource *dw_cs = clocksource_to_dw_apb_clocksource(cs); current_count = apbt_readl(&dw_cs->timer, APBTMR_N_CURRENT_VALUE); return (cycle_t)~current_count; }