blob: 44aec7893cdd7b7f44ed690ae9f27a2bd265b8ec [file] [log] [blame]
Thomas Gleixner8b094cd2014-07-16 21:04:02 +00001#ifndef _KERNEL_TIME_TIMEKEEPING_H
2#define _KERNEL_TIME_TIMEKEEPING_H
3/*
4 * Internal interfaces for kernel/time/
5 */
Thomas Gleixner868a3e92015-04-14 21:08:37 +00006extern ktime_t ktime_get_update_offsets_now(unsigned int *cwsseq,
7 ktime_t *offs_real,
8 ktime_t *offs_boot,
9 ktime_t *offs_tai);
Thomas Gleixner8b094cd2014-07-16 21:04:02 +000010
11extern int timekeeping_valid_for_hres(void);
12extern u64 timekeeping_max_deferment(void);
Arnd Bergmanne0956dc2017-10-19 13:14:44 +020013extern void timekeeping_warp_clock(void);
Rafael J. Wysocki124cf9112015-02-13 23:50:43 +010014extern int timekeeping_suspend(void);
15extern void timekeeping_resume(void);
Thomas Gleixner8b094cd2014-07-16 21:04:02 +000016
Thomas Gleixnerbfb83b22015-03-25 13:06:04 +010017extern void do_timer(unsigned long ticks);
18extern void update_wall_time(void);
19
20extern seqlock_t jiffies_lock;
21
22#define CS_NAME_LEN 32
23
Thomas Gleixner8b094cd2014-07-16 21:04:02 +000024#endif