Lines Matching refs:tkr_mono
69 while (tk->tkr_mono.xtime_nsec >= ((u64)NSEC_PER_SEC << tk->tkr_mono.shift)) { in tk_normalize_xtime()
70 tk->tkr_mono.xtime_nsec -= (u64)NSEC_PER_SEC << tk->tkr_mono.shift; in tk_normalize_xtime()
80 ts.tv_nsec = (long)(tk->tkr_mono.xtime_nsec >> tk->tkr_mono.shift); in tk_xtime()
87 tk->tkr_mono.xtime_nsec = (u64)ts->tv_nsec << tk->tkr_mono.shift; in tk_set_xtime()
93 tk->tkr_mono.xtime_nsec += (u64)ts->tv_nsec << tk->tkr_mono.shift; in tk_xtime_add()
137 cycle_t max_cycles = tk->tkr_mono.clock->max_cycles; in timekeeping_check_update()
138 const char *name = tk->tkr_mono.clock->name; in timekeeping_check_update()
247 old_clock = tk->tkr_mono.clock; in tk_setup_internals()
248 tk->tkr_mono.clock = clock; in tk_setup_internals()
249 tk->tkr_mono.read = clock->read; in tk_setup_internals()
250 tk->tkr_mono.mask = clock->mask; in tk_setup_internals()
251 tk->tkr_mono.cycle_last = tk->tkr_mono.read(clock); in tk_setup_internals()
256 tk->tkr_raw.cycle_last = tk->tkr_mono.cycle_last; in tk_setup_internals()
280 tk->tkr_mono.xtime_nsec >>= -shift_change; in tk_setup_internals()
282 tk->tkr_mono.xtime_nsec <<= shift_change; in tk_setup_internals()
286 tk->tkr_mono.shift = clock->shift; in tk_setup_internals()
298 tk->tkr_mono.mult = clock->mult; in tk_setup_internals()
461 struct tk_read_base *tkr = &tk->tkr_mono; in halt_fast_timekeeper()
482 update_vsyscall_old(&xt, &wm, tk->tkr_mono.clock, tk->tkr_mono.mult, in update_vsyscall()
483 tk->tkr_mono.cycle_last); in update_vsyscall()
500 remainder = tk->tkr_mono.xtime_nsec & ((1ULL << tk->tkr_mono.shift) - 1); in old_vsyscall_fixup()
501 tk->tkr_mono.xtime_nsec -= remainder; in old_vsyscall_fixup()
502 tk->tkr_mono.xtime_nsec += 1ULL << tk->tkr_mono.shift; in old_vsyscall_fixup()
504 tk->ntp_error -= (1ULL << tk->tkr_mono.shift) << tk->ntp_error_shift; in old_vsyscall_fixup()
569 tk->tkr_mono.base = ns_to_ktime(seconds * NSEC_PER_SEC + nsec); in tk_update_ktime_data()
579 nsec += (u32)(tk->tkr_mono.xtime_nsec >> tk->tkr_mono.shift); in tk_update_ktime_data()
602 update_fast_timekeeper(&tk->tkr_mono, &tk_fast_mono); in timekeeping_update()
615 struct clocksource *clock = tk->tkr_mono.clock; in timekeeping_forward_now()
619 cycle_now = tk->tkr_mono.read(clock); in timekeeping_forward_now()
620 delta = clocksource_delta(cycle_now, tk->tkr_mono.cycle_last, tk->tkr_mono.mask); in timekeeping_forward_now()
621 tk->tkr_mono.cycle_last = cycle_now; in timekeeping_forward_now()
624 tk->tkr_mono.xtime_nsec += delta * tk->tkr_mono.mult; in timekeeping_forward_now()
627 tk->tkr_mono.xtime_nsec += (u64)arch_gettimeoffset() << tk->tkr_mono.shift; in timekeeping_forward_now()
652 nsecs = timekeeping_get_ns(&tk->tkr_mono); in __getnstimeofday64()
692 base = tk->tkr_mono.base; in ktime_get()
693 nsecs = timekeeping_get_ns(&tk->tkr_mono); in ktime_get()
718 base = ktime_add(tk->tkr_mono.base, *offset); in ktime_get_with_offset()
719 nsecs = timekeeping_get_ns(&tk->tkr_mono); in ktime_get_with_offset()
789 nsec = timekeeping_get_ns(&tk->tkr_mono); in ktime_get_ts64()
875 nsecs_real = timekeeping_get_ns(&tk->tkr_mono); in getnstime_raw_and_real()
1058 old = tk->tkr_mono.clock; in change_clocksource()
1086 if (tk->tkr_mono.clock == clock) in timekeeping_notify()
1090 return tk->tkr_mono.clock == clock ? 0 : -1; in timekeeping_notify()
1131 ret = tk->tkr_mono.clock->flags & CLOCK_SOURCE_VALID_FOR_HRES; in timekeeping_valid_for_hres()
1150 ret = tk->tkr_mono.clock->max_idle_ns; in timekeeping_max_deferment()
1360 struct clocksource *clock = tk->tkr_mono.clock; in timekeeping_resume()
1386 cycle_now = tk->tkr_mono.read(clock); in timekeeping_resume()
1388 cycle_now > tk->tkr_mono.cycle_last) { in timekeeping_resume()
1394 cycle_delta = clocksource_delta(cycle_now, tk->tkr_mono.cycle_last, in timekeeping_resume()
1395 tk->tkr_mono.mask); in timekeeping_resume()
1421 tk->tkr_mono.cycle_last = cycle_now; in timekeeping_resume()
1574 if ((mult_adj > 0) && (tk->tkr_mono.mult + mult_adj < mult_adj)) { in timekeeping_apply_adjustment()
1580 tk->tkr_mono.mult += mult_adj; in timekeeping_apply_adjustment()
1582 tk->tkr_mono.xtime_nsec -= offset; in timekeeping_apply_adjustment()
1644 if (unlikely(tk->tkr_mono.clock->maxadj && in timekeeping_adjust()
1645 (abs(tk->tkr_mono.mult - tk->tkr_mono.clock->mult) in timekeeping_adjust()
1646 > tk->tkr_mono.clock->maxadj))) { in timekeeping_adjust()
1649 tk->tkr_mono.clock->name, (long)tk->tkr_mono.mult, in timekeeping_adjust()
1650 (long)tk->tkr_mono.clock->mult + tk->tkr_mono.clock->maxadj); in timekeeping_adjust()
1667 if (unlikely((s64)tk->tkr_mono.xtime_nsec < 0)) { in timekeeping_adjust()
1668 s64 neg = -(s64)tk->tkr_mono.xtime_nsec; in timekeeping_adjust()
1669 tk->tkr_mono.xtime_nsec = 0; in timekeeping_adjust()
1684 u64 nsecps = (u64)NSEC_PER_SEC << tk->tkr_mono.shift; in accumulate_nsecs_to_secs()
1687 while (tk->tkr_mono.xtime_nsec >= nsecps) { in accumulate_nsecs_to_secs()
1690 tk->tkr_mono.xtime_nsec -= nsecps; in accumulate_nsecs_to_secs()
1735 tk->tkr_mono.cycle_last += interval; in logarithmic_accumulation()
1738 tk->tkr_mono.xtime_nsec += tk->xtime_interval << shift; in logarithmic_accumulation()
1781 offset = clocksource_delta(tk->tkr_mono.read(tk->tkr_mono.clock), in update_wall_time()
1782 tk->tkr_mono.cycle_last, tk->tkr_mono.mask); in update_wall_time()
1946 base = tk->tkr_mono.base; in ktime_get_update_offsets_tick()
1947 nsecs = tk->tkr_mono.xtime_nsec >> tk->tkr_mono.shift; in ktime_get_update_offsets_tick()
1978 base = tk->tkr_mono.base; in ktime_get_update_offsets_now()
1979 nsecs = timekeeping_get_ns(&tk->tkr_mono); in ktime_get_update_offsets_now()