11965aae3SH. Peter Anvin #ifndef _ASM_X86_VGTOD_H 21965aae3SH. Peter Anvin #define _ASM_X86_VGTOD_H 3bb898558SAl Viro 4bb898558SAl Viro #include <asm/vsyscall.h> 5bb898558SAl Viro #include <linux/clocksource.h> 6bb898558SAl Viro 7bb898558SAl Viro struct vsyscall_gtod_data { 82ab51657SThomas Gleixner seqcount_t seq; 9bb898558SAl Viro 10bb898558SAl Viro /* open coded 'struct timespec' */ 11bb898558SAl Viro time_t wall_time_sec; 12bb898558SAl Viro u32 wall_time_nsec; 13bb898558SAl Viro 14bb898558SAl Viro struct timezone sys_tz; 15bb898558SAl Viro struct { /* extract of a clocksource struct */ 1698d0ac38SAndy Lutomirski int vclock_mode; 17bb898558SAl Viro cycle_t cycle_last; 18bb898558SAl Viro cycle_t mask; 19bb898558SAl Viro u32 mult; 20bb898558SAl Viro u32 shift; 21bb898558SAl Viro } clock; 22bb898558SAl Viro struct timespec wall_to_monotonic; 23da15cfdaSjohn stultz struct timespec wall_time_coarse; 24bb898558SAl Viro }; 25bb898558SAl Viro extern struct vsyscall_gtod_data vsyscall_gtod_data; 26bb898558SAl Viro 271965aae3SH. Peter Anvin #endif /* _ASM_X86_VGTOD_H */ 28