1951a39d68df598db08dfced8b4707755864a0492Ying Wang/****************************************************************************
2951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
3951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
4951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   This header was automatically generated from a Linux kernel header
5951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   of the same name, to make information necessary for userspace to
6951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   call into the kernel available to libc.  It contains only constants,
7951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   structures, and macros generated from the original header, and thus,
8951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   contains no copyrightable information.
9951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
10951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/
12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_TIME_H
13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_TIME_H
14951a39d68df598db08dfced8b4707755864a0492Ying Wang
15951a39d68df598db08dfced8b4707755864a0492Ying Wang#include <linux/types.h>
16951a39d68df598db08dfced8b4707755864a0492Ying Wang
17951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _STRUCT_TIMESPEC
18951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _STRUCT_TIMESPEC
19951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct timespec {
20951a39d68df598db08dfced8b4707755864a0492Ying Wang time_t tv_sec;
21951a39d68df598db08dfced8b4707755864a0492Ying Wang long tv_nsec;
22951a39d68df598db08dfced8b4707755864a0492Ying Wang};
23951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif
24951a39d68df598db08dfced8b4707755864a0492Ying Wang
25951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct timeval {
26951a39d68df598db08dfced8b4707755864a0492Ying Wang time_t tv_sec;
27951a39d68df598db08dfced8b4707755864a0492Ying Wang suseconds_t tv_usec;
28951a39d68df598db08dfced8b4707755864a0492Ying Wang};
29951a39d68df598db08dfced8b4707755864a0492Ying Wang
30951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct timezone {
31951a39d68df598db08dfced8b4707755864a0492Ying Wang int tz_minuteswest;
32951a39d68df598db08dfced8b4707755864a0492Ying Wang int tz_dsttime;
33951a39d68df598db08dfced8b4707755864a0492Ying Wang};
34951a39d68df598db08dfced8b4707755864a0492Ying Wang
35951a39d68df598db08dfced8b4707755864a0492Ying Wang#define NFDBITS __NFDBITS
36951a39d68df598db08dfced8b4707755864a0492Ying Wang
37951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FD_SETSIZE __FD_SETSIZE
38951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FD_SET(fd,fdsetp) __FD_SET(fd,fdsetp)
39951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FD_CLR(fd,fdsetp) __FD_CLR(fd,fdsetp)
40951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FD_ISSET(fd,fdsetp) __FD_ISSET(fd,fdsetp)
41951a39d68df598db08dfced8b4707755864a0492Ying Wang#define FD_ZERO(fdsetp) __FD_ZERO(fdsetp)
42951a39d68df598db08dfced8b4707755864a0492Ying Wang
43951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ITIMER_REAL 0
44951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ITIMER_VIRTUAL 1
45951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ITIMER_PROF 2
46951a39d68df598db08dfced8b4707755864a0492Ying Wang
47951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct itimerspec {
48951a39d68df598db08dfced8b4707755864a0492Ying Wang struct timespec it_interval;
49951a39d68df598db08dfced8b4707755864a0492Ying Wang struct timespec it_value;
50951a39d68df598db08dfced8b4707755864a0492Ying Wang};
51951a39d68df598db08dfced8b4707755864a0492Ying Wang
52951a39d68df598db08dfced8b4707755864a0492Ying Wangstruct itimerval {
53951a39d68df598db08dfced8b4707755864a0492Ying Wang struct timeval it_interval;
54951a39d68df598db08dfced8b4707755864a0492Ying Wang struct timeval it_value;
55951a39d68df598db08dfced8b4707755864a0492Ying Wang};
56951a39d68df598db08dfced8b4707755864a0492Ying Wang
57951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCK_REALTIME 0
58951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCK_MONOTONIC 1
59951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCK_PROCESS_CPUTIME_ID 2
60951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCK_THREAD_CPUTIME_ID 3
61951a39d68df598db08dfced8b4707755864a0492Ying Wang
62951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCK_SGI_CYCLE 10
63951a39d68df598db08dfced8b4707755864a0492Ying Wang#define MAX_CLOCKS 16
64951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCKS_MASK (CLOCK_REALTIME | CLOCK_MONOTONIC)
65951a39d68df598db08dfced8b4707755864a0492Ying Wang#define CLOCKS_MONO CLOCK_MONOTONIC
66951a39d68df598db08dfced8b4707755864a0492Ying Wang
67951a39d68df598db08dfced8b4707755864a0492Ying Wang#define TIMER_ABSTIME 0x01
68951a39d68df598db08dfced8b4707755864a0492Ying Wang
69951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif
70