xref: /openbmc/linux/kernel/time/timekeeping.h (revision 9b799b78)
1 #ifndef _KERNEL_TIME_TIMEKEEPING_H
2 #define _KERNEL_TIME_TIMEKEEPING_H
3 /*
4  * Internal interfaces for kernel/time/
5  */
6 extern ktime_t ktime_get_update_offsets_tick(ktime_t *offs_real,
7 						ktime_t *offs_boot,
8 						ktime_t *offs_tai);
9 extern ktime_t ktime_get_update_offsets_now(ktime_t *offs_real,
10 						ktime_t *offs_boot,
11 						ktime_t *offs_tai);
12 
13 extern int timekeeping_valid_for_hres(void);
14 extern u64 timekeeping_max_deferment(void);
15 extern int timekeeping_inject_offset(struct timespec *ts);
16 extern s32 timekeeping_get_tai_offset(void);
17 extern void timekeeping_set_tai_offset(s32 tai_offset);
18 extern void timekeeping_clocktai(struct timespec *ts);
19 extern int timekeeping_suspend(void);
20 extern void timekeeping_resume(void);
21 
22 extern void do_timer(unsigned long ticks);
23 extern void update_wall_time(void);
24 
25 extern seqlock_t jiffies_lock;
26 
27 #define CS_NAME_LEN	32
28 
29 #endif
30