| 1 |
|
| 2 | #ifndef _KERNEL_TIME_TIMEKEEPING_H
|
| 3 | #define _KERNEL_TIME_TIMEKEEPING_H
|
| 4 | |
| 5 | * Internal interfaces for kernel/time/
|
| 6 |
|
| 7 | extern ktime_t ktime_get_update_offsets_now(u32 *cwsseq,
|
| 8 | ktime_t *offs_real,
|
| 9 | ktime_t *offs_boot,
|
| 10 | ktime_t *offs_tai);
|
| 11 |
|
| 12 | bool ktime_expiry_to_cycles(enum clocksource_ids id, ktime_t expires_ns, u64 *cycles);
|
| 13 |
|
| 14 | extern int timekeeping_valid_for_hres(void);
|
| 15 | extern u64 timekeeping_max_deferment(void);
|
| 16 | extern void timekeeping_warp_clock(void);
|
| 17 | extern int timekeeping_suspend(void);
|
| 18 | extern void timekeeping_resume(void);
|
| 19 | #ifdef CONFIG_GENERIC_SCHED_CLOCK
|
| 20 | extern int sched_clock_suspend(void);
|
| 21 | extern void sched_clock_resume(void);
|
| 22 | #else
|
| 23 | static inline int sched_clock_suspend(void) { return 0; }
|
| 24 | static inline void sched_clock_resume(void) { }
|
| 25 | #endif
|
| 26 |
|
| 27 | extern void update_process_times(int user);
|
| 28 | extern void do_timer(unsigned long ticks);
|
| 29 | extern void update_wall_time(void);
|
| 30 |
|
| 31 | extern raw_spinlock_t jiffies_lock;
|
| 32 | extern seqcount_raw_spinlock_t jiffies_seq;
|
| 33 |
|
| 34 | #define CS_NAME_LEN 32
|
| 35 |
|
| 36 | #endif
|