1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12#ifndef _LINUX_TIMEX_H 13#define _LINUX_TIMEX_H 14 15#include <linux/compiler.h> 16#include <linux/time.h> 17 18#include <asm/param.h> 19 20#define SHIFT_KG 6 21#define SHIFT_KF 16 22#define SHIFT_KH 2 23#define MAXTC 6 24 25#define SHIFT_SCALE 22 26#define SHIFT_UPDATE (SHIFT_KG + MAXTC) 27#define SHIFT_USEC 16 28#define FINENSEC (1L << (SHIFT_SCALE - 10)) 29 30#define MAXPHASE 512000L 31#define MAXFREQ (512L << SHIFT_USEC) 32#define MINSEC 16L 33#define MAXSEC 1200L 34#define NTP_PHASE_LIMIT (MAXPHASE << 5) 35 36struct timex { 37 unsigned int modes; 38 long offset; 39 long freq; 40 long maxerror; 41 long esterror; 42 int status; 43 long constant; 44 long precision; 45 long tolerance; 46 struct timeval time; 47 long tick; 48 49 long ppsfreq; 50 long jitter; 51 int shift; 52 long stabil; 53 long jitcnt; 54 long calcnt; 55 long errcnt; 56 long stbcnt; 57 58 int :32; int :32; int :32; int :32; 59 int :32; int :32; int :32; int :32; 60 int :32; int :32; int :32; int :32; 61}; 62 63#define ADJ_OFFSET 0x0001 64#define ADJ_FREQUENCY 0x0002 65#define ADJ_MAXERROR 0x0004 66#define ADJ_ESTERROR 0x0008 67#define ADJ_STATUS 0x0010 68#define ADJ_TIMECONST 0x0020 69#define ADJ_TICK 0x4000 70#define ADJ_OFFSET_SINGLESHOT 0x8001 71 72#define MOD_OFFSET ADJ_OFFSET 73#define MOD_FREQUENCY ADJ_FREQUENCY 74#define MOD_MAXERROR ADJ_MAXERROR 75#define MOD_ESTERROR ADJ_ESTERROR 76#define MOD_STATUS ADJ_STATUS 77#define MOD_TIMECONST ADJ_TIMECONST 78#define MOD_CLKB ADJ_TICK 79#define MOD_CLKA ADJ_OFFSET_SINGLESHOT 80 81#define STA_PLL 0x0001 82#define STA_PPSFREQ 0x0002 83#define STA_PPSTIME 0x0004 84#define STA_FLL 0x0008 85 86#define STA_INS 0x0010 87#define STA_DEL 0x0020 88#define STA_UNSYNC 0x0040 89#define STA_FREQHOLD 0x0080 90 91#define STA_PPSSIGNAL 0x0100 92#define STA_PPSJITTER 0x0200 93#define STA_PPSWANDER 0x0400 94#define STA_PPSERROR 0x0800 95 96#define STA_CLOCKERR 0x1000 97 98#define STA_RONLY (STA_PPSSIGNAL | STA_PPSJITTER | STA_PPSWANDER | STA_PPSERROR | STA_CLOCKERR) 99 100#define TIME_OK 0 101#define TIME_INS 1 102#define TIME_DEL 2 103#define TIME_OOP 3 104#define TIME_WAIT 4 105#define TIME_ERROR 5 106#define TIME_BAD TIME_ERROR 107 108#endif 109