blob: 7a9b4eb7a1d5bde85e7a7b1c7747602cdd605975 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Thomas Gleixner8b094cd2014-07-16 21:04:02 +00002#ifndef _KERNEL_TIME_TIMEKEEPING_H
3#define _KERNEL_TIME_TIMEKEEPING_H
4/*
5 * Internal interfaces for kernel/time/
6 */
Thomas Gleixner868a3e92015-04-14 21:08:37 +00007extern ktime_t ktime_get_update_offsets_now(unsigned int *cwsseq,
8 ktime_t *offs_real,
9 ktime_t *offs_boot,
10 ktime_t *offs_tai);
Thomas Gleixner8b094cd2014-07-16 21:04:02 +000011
12extern int timekeeping_valid_for_hres(void);
13extern u64 timekeeping_max_deferment(void);
Arnd Bergmanne0956dc2017-10-19 13:14:44 +020014extern void timekeeping_warp_clock(void);
Rafael J. Wysocki124cf9112015-02-13 23:50:43 +010015extern int timekeeping_suspend(void);
16extern void timekeeping_resume(void);
Thomas Gleixner8b094cd2014-07-16 21:04:02 +000017
Thomas Gleixnerbfb83b22015-03-25 13:06:04 +010018extern void do_timer(unsigned long ticks);
19extern void update_wall_time(void);
20
21extern seqlock_t jiffies_lock;
22
23#define CS_NAME_LEN 32
24
Thomas Gleixner8b094cd2014-07-16 21:04:02 +000025#endif