diff options
Diffstat (limited to 'arch/m32r/include/asm/posix_types.h')
-rw-r--r-- | arch/m32r/include/asm/posix_types.h | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/arch/m32r/include/asm/posix_types.h b/arch/m32r/include/asm/posix_types.h new file mode 100644 index 00000000000..b309c585863 --- /dev/null +++ b/arch/m32r/include/asm/posix_types.h | |||
@@ -0,0 +1,118 @@ | |||
1 | #ifndef _ASM_M32R_POSIX_TYPES_H | ||
2 | #define _ASM_M32R_POSIX_TYPES_H | ||
3 | |||
4 | /* | ||
5 | * This file is generally used by user-level software, so you need to | ||
6 | * be a little careful about namespace pollution etc. Also, we cannot | ||
7 | * assume GCC is being used. | ||
8 | */ | ||
9 | |||
10 | typedef unsigned long __kernel_ino_t; | ||
11 | typedef unsigned short __kernel_mode_t; | ||
12 | typedef unsigned short __kernel_nlink_t; | ||
13 | typedef long __kernel_off_t; | ||
14 | typedef int __kernel_pid_t; | ||
15 | typedef unsigned short __kernel_ipc_pid_t; | ||
16 | typedef unsigned short __kernel_uid_t; | ||
17 | typedef unsigned short __kernel_gid_t; | ||
18 | typedef unsigned int __kernel_size_t; | ||
19 | typedef int __kernel_ssize_t; | ||
20 | typedef int __kernel_ptrdiff_t; | ||
21 | typedef long __kernel_time_t; | ||
22 | typedef long __kernel_suseconds_t; | ||
23 | typedef long __kernel_clock_t; | ||
24 | typedef int __kernel_timer_t; | ||
25 | typedef int __kernel_clockid_t; | ||
26 | typedef int __kernel_daddr_t; | ||
27 | typedef char * __kernel_caddr_t; | ||
28 | typedef unsigned short __kernel_uid16_t; | ||
29 | typedef unsigned short __kernel_gid16_t; | ||
30 | typedef unsigned int __kernel_uid32_t; | ||
31 | typedef unsigned int __kernel_gid32_t; | ||
32 | |||
33 | typedef unsigned short __kernel_old_uid_t; | ||
34 | typedef unsigned short __kernel_old_gid_t; | ||
35 | typedef unsigned short __kernel_old_dev_t; | ||
36 | |||
37 | #ifdef __GNUC__ | ||
38 | typedef long long __kernel_loff_t; | ||
39 | #endif | ||
40 | |||
41 | typedef struct { | ||
42 | int val[2]; | ||
43 | } __kernel_fsid_t; | ||
44 | |||
45 | #if defined(__KERNEL__) | ||
46 | |||
47 | #undef __FD_SET | ||
48 | static __inline__ void __FD_SET(unsigned long __fd, __kernel_fd_set *__fdsetp) | ||
49 | { | ||
50 | unsigned long __tmp = __fd / __NFDBITS; | ||
51 | unsigned long __rem = __fd % __NFDBITS; | ||
52 | __fdsetp->fds_bits[__tmp] |= (1UL<<__rem); | ||
53 | } | ||
54 | |||
55 | #undef __FD_CLR | ||
56 | static __inline__ void __FD_CLR(unsigned long __fd, __kernel_fd_set *__fdsetp) | ||
57 | { | ||
58 | unsigned long __tmp = __fd / __NFDBITS; | ||
59 | unsigned long __rem = __fd % __NFDBITS; | ||
60 | __fdsetp->fds_bits[__tmp] &= ~(1UL<<__rem); | ||
61 | } | ||
62 | |||
63 | |||
64 | #undef __FD_ISSET | ||
65 | static __inline__ int __FD_ISSET(unsigned long __fd, const __kernel_fd_set *__p) | ||
66 | { | ||
67 | unsigned long __tmp = __fd / __NFDBITS; | ||
68 | unsigned long __rem = __fd % __NFDBITS; | ||
69 | return (__p->fds_bits[__tmp] & (1UL<<__rem)) != 0; | ||
70 | } | ||
71 | |||
72 | /* | ||
73 | * This will unroll the loop for the normal constant case (8 ints, | ||
74 | * for a 256-bit fd_set) | ||
75 | */ | ||
76 | #undef __FD_ZERO | ||
77 | static __inline__ void __FD_ZERO(__kernel_fd_set *__p) | ||
78 | { | ||
79 | unsigned long *__tmp = __p->fds_bits; | ||
80 | int __i; | ||
81 | |||
82 | if (__builtin_constant_p(__FDSET_LONGS)) { | ||
83 | switch (__FDSET_LONGS) { | ||
84 | case 16: | ||
85 | __tmp[ 0] = 0; __tmp[ 1] = 0; | ||
86 | __tmp[ 2] = 0; __tmp[ 3] = 0; | ||
87 | __tmp[ 4] = 0; __tmp[ 5] = 0; | ||
88 | __tmp[ 6] = 0; __tmp[ 7] = 0; | ||
89 | __tmp[ 8] = 0; __tmp[ 9] = 0; | ||
90 | __tmp[10] = 0; __tmp[11] = 0; | ||
91 | __tmp[12] = 0; __tmp[13] = 0; | ||
92 | __tmp[14] = 0; __tmp[15] = 0; | ||
93 | return; | ||
94 | |||
95 | case 8: | ||
96 | __tmp[ 0] = 0; __tmp[ 1] = 0; | ||
97 | __tmp[ 2] = 0; __tmp[ 3] = 0; | ||
98 | __tmp[ 4] = 0; __tmp[ 5] = 0; | ||
99 | __tmp[ 6] = 0; __tmp[ 7] = 0; | ||
100 | return; | ||
101 | |||
102 | case 4: | ||
103 | __tmp[ 0] = 0; __tmp[ 1] = 0; | ||
104 | __tmp[ 2] = 0; __tmp[ 3] = 0; | ||
105 | return; | ||
106 | } | ||
107 | } | ||
108 | __i = __FDSET_LONGS; | ||
109 | while (__i) { | ||
110 | __i--; | ||
111 | *__tmp = 0; | ||
112 | __tmp++; | ||
113 | } | ||
114 | } | ||
115 | |||
116 | #endif /* defined(__KERNEL__) */ | ||
117 | |||
118 | #endif /* _ASM_M32R_POSIX_TYPES_H */ | ||