aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/time.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-10-15 01:41:27 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-10-15 01:41:27 -0400
commitc362495586e8a3a6487a318fcd82eaf15ffe2142 (patch)
tree86f7b195d36ba198f24f86be327f21a8d24ec248 /include/uapi/linux/time.h
parentb70936d9ffbf0f45f4fa13a03122f015f13ecdb0 (diff)
parentddffeb8c4d0331609ef2581d84de4d763607bd37 (diff)
Merge 3.7-rc1 into tty-linus
This syncs up the tty-linus branch to the latest in Linus's tree to get all of the UAPI stuff needed for the next set of patches to merge. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/uapi/linux/time.h')
-rw-r--r--include/uapi/linux/time.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/include/uapi/linux/time.h b/include/uapi/linux/time.h
new file mode 100644
index 000000000000..0d3c0edc3eda
--- /dev/null
+++ b/include/uapi/linux/time.h
@@ -0,0 +1,71 @@
1#ifndef _UAPI_LINUX_TIME_H
2#define _UAPI_LINUX_TIME_H
3
4#include <linux/types.h>
5
6
7#ifndef _STRUCT_TIMESPEC
8#define _STRUCT_TIMESPEC
9struct timespec {
10 __kernel_time_t tv_sec; /* seconds */
11 long tv_nsec; /* nanoseconds */
12};
13#endif
14
15struct timeval {
16 __kernel_time_t tv_sec; /* seconds */
17 __kernel_suseconds_t tv_usec; /* microseconds */
18};
19
20struct timezone {
21 int tz_minuteswest; /* minutes west of Greenwich */
22 int tz_dsttime; /* type of dst correction */
23};
24
25
26/*
27 * Names of the interval timers, and structure
28 * defining a timer setting:
29 */
30#define ITIMER_REAL 0
31#define ITIMER_VIRTUAL 1
32#define ITIMER_PROF 2
33
34struct itimerspec {
35 struct timespec it_interval; /* timer period */
36 struct timespec it_value; /* timer expiration */
37};
38
39struct itimerval {
40 struct timeval it_interval; /* timer interval */
41 struct timeval it_value; /* current value */
42};
43
44/*
45 * The IDs of the various system clocks (for POSIX.1b interval timers):
46 */
47#define CLOCK_REALTIME 0
48#define CLOCK_MONOTONIC 1
49#define CLOCK_PROCESS_CPUTIME_ID 2
50#define CLOCK_THREAD_CPUTIME_ID 3
51#define CLOCK_MONOTONIC_RAW 4
52#define CLOCK_REALTIME_COARSE 5
53#define CLOCK_MONOTONIC_COARSE 6
54#define CLOCK_BOOTTIME 7
55#define CLOCK_REALTIME_ALARM 8
56#define CLOCK_BOOTTIME_ALARM 9
57
58/*
59 * The IDs of various hardware clocks:
60 */
61#define CLOCK_SGI_CYCLE 10
62#define MAX_CLOCKS 16
63#define CLOCKS_MASK (CLOCK_REALTIME | CLOCK_MONOTONIC)
64#define CLOCKS_MONO CLOCK_MONOTONIC
65
66/*
67 * The various flags for setting POSIX.1b interval timers:
68 */
69#define TIMER_ABSTIME 0x01
70
71#endif /* _UAPI_LINUX_TIME_H */