]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - sys/compat/svr4/svr4_hrt.h
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / sys / compat / svr4 / svr4_hrt.h
1 /*-
2  * Copyright (c) 1998 Mark Newton
3  * Copyright (c) 1994 Christos Zoulas
4  * All rights reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions
8  * are met:
9  * 1. Redistributions of source code must retain the above copyright
10  *    notice, this list of conditions and the following disclaimer.
11  * 2. Redistributions in binary form must reproduce the above copyright
12  *    notice, this list of conditions and the following disclaimer in the
13  *    documentation and/or other materials provided with the distribution.
14  * 3. The name of the author may not be used to endorse or promote products
15  *    derived from this software without specific prior written permission
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27  * 
28  * $FreeBSD$
29  */
30
31 #ifndef _SVR4_HRT_H_
32 #define _SVR4_HRT_H_
33
34 #define SVR4_HRT_CNTL           0
35 #define SVR4_HRT_CNTL_RES       0
36 #define SVR4_HRT_CNTL_TOFD      1
37 #define SVR4_HRT_CNTL_START     2
38 #define SVR4_HRT_CNTL_GET       3
39
40 #define SVR4_HRT_ALRM           1
41 #define SVR4_HRT_ALRM_DO        4
42 #define SVR4_HRT_ALRM_REP       5
43 #define SVR4_HRT_ALRM_TOD       6
44 #define SVR4_HRT_ALRM_FUTREP    7
45 #define SVR4_HRT_ALRM_TODREP    8
46 #define SVR4_HRT_ALRM_PEND      9
47
48 #define SVR4_HRT_SLP            2
49 #define SVR4_HRT_SLP_INT        10
50 #define SVR4_HRT_SLP_TOD        11
51
52 #define SVR4_HRT_BSD            12
53 #define SVR4_HRT_BSD_PEND       13
54 #define SVR4_HRT_BSD_REP1       14
55 #define SVR4_HRT_BSD_REP2       15
56 #define SVR4_HRT_BSD_CANCEL     16
57
58 #define SVR4_HRT_CAN            3
59
60 #define SVR4_HRT_SEC                     1
61 #define SVR4_HRT_MSEC                 1000
62 #define SVR4_HRT_USEC              1000000
63 #define SVR4_HRT_NSEC           1000000000
64
65 #define SVR4_HRT_TRUNC  0
66 #define SVR4_HRT_RND    1
67
68 typedef struct {
69         u_long  i_word1;
70         u_long  i_word2;
71         int     i_clock;
72 } svr4_hrt_interval_t;
73
74 typedef struct {
75         u_long  h_sec;
76         long    h_rem;
77         u_long  h_res;
78 } svr4_hrt_time_t;
79
80 #define SVR4_HRT_DONE   1
81 #define SVR4_HRT_ERROR  2       
82
83 #define SVR4_HRT_CLK_STD        1
84 #define SVR4_HRT_CLK_USERVIRT   2
85 #define SVR4_HRT_CLK_PROCVIRT   4       
86
87 #endif /* !_SVR4_HRT_H_ */