OpenCores
URL https://opencores.org/ocsvn/or1k_soc_on_altera_embedded_dev_kit/or1k_soc_on_altera_embedded_dev_kit/trunk

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [trunk/] [linux-2.6/] [linux-2.6.24/] [include/] [asm-or32/] [posix_types.h] - Blame information for rev 7

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 7 xianfeng
#ifndef _OR32_POSIX_TYPES_H
2
#define _OR32_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 int    __kernel_ino_t;
11
typedef unsigned int    __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 int    __kernel_uid_t;
16
typedef unsigned int    __kernel_gid_t;
17
typedef unsigned int    __kernel_size_t;
18
typedef int             __kernel_ssize_t;
19
typedef long            __kernel_ptrdiff_t;
20
typedef long            __kernel_time_t;
21
typedef long            __kernel_suseconds_t;
22
typedef long            __kernel_clock_t;
23
typedef int             __kernel_timer_t;
24
typedef int             __kernel_clockid_t;
25
typedef int             __kernel_daddr_t;
26
typedef char *          __kernel_caddr_t;
27
typedef short           __kernel_ipc_pid_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 int    __kernel_old_uid_t;
34
typedef unsigned int    __kernel_old_gid_t;
35
typedef unsigned short  __kernel_old_dev_t;
36
 
37
/* i386, cris version
38
typedef unsigned long   __kernel_ino_t;
39
typedef unsigned short  __kernel_mode_t;
40
typedef unsigned short  __kernel_nlink_t;
41
typedef long            __kernel_off_t;
42
typedef int             __kernel_pid_t;
43
typedef unsigned short  __kernel_ipc_pid_t;
44
typedef unsigned short  __kernel_uid_t;
45
typedef unsigned short  __kernel_gid_t;
46
typedef unsigned int    __kernel_size_t;
47
typedef long            __kernel_ssize_t;
48
typedef int             __kernel_ptrdiff_t;
49
typedef long            __kernel_time_t;
50
typedef long            __kernel_suseconds_t;
51
typedef long            __kernel_clock_t;
52
typedef int             __kernel_timer_t;
53
typedef int             __kernel_clockid_t;
54
typedef int             __kernel_daddr_t;
55
typedef char *          __kernel_caddr_t;
56
typedef unsigned short  __kernel_uid16_t;
57
typedef unsigned short  __kernel_gid16_t;
58
typedef unsigned int    __kernel_uid32_t;
59
typedef unsigned int    __kernel_gid32_t;
60
 
61
typedef unsigned short  __kernel_old_uid_t;
62
typedef unsigned short  __kernel_old_gid_t;
63
typedef unsigned short  __kernel_old_dev_t;
64
*/
65
 
66
#ifdef __GNUC__
67
typedef long long       __kernel_loff_t;
68
#endif
69
 
70
typedef struct {
71
        int     val[2];
72
} __kernel_fsid_t;
73
 
74
#ifndef __GNUC__
75
 
76
#define __FD_SET(d, set)        ((set)->fds_bits[__FDELT(d)] |= __FDMASK(d))
77
#define __FD_CLR(d, set)        ((set)->fds_bits[__FDELT(d)] &= ~__FDMASK(d))
78
#define __FD_ISSET(d, set)      ((set)->fds_bits[__FDELT(d)] & __FDMASK(d))
79
#define __FD_ZERO(set)  \
80
  ((void) memset ((__ptr_t) (set), 0, sizeof (__kernel_fd_set)))
81
 
82
#else /* __GNUC__ */
83
 
84
#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2) \
85
    || (__GLIBC__ == 2 && __GLIBC_MINOR__ == 0)
86
/* With GNU C, use inline functions instead so args are evaluated only once: */
87
 
88
#undef __FD_SET
89
static __inline__ void __FD_SET(unsigned long fd, __kernel_fd_set *fdsetp)
90
{
91
        unsigned long _tmp = fd / __NFDBITS;
92
        unsigned long _rem = fd % __NFDBITS;
93
        fdsetp->fds_bits[_tmp] |= (1UL<<_rem);
94
}
95
 
96
#undef __FD_CLR
97
static __inline__ void __FD_CLR(unsigned long fd, __kernel_fd_set *fdsetp)
98
{
99
        unsigned long _tmp = fd / __NFDBITS;
100
        unsigned long _rem = fd % __NFDBITS;
101
        fdsetp->fds_bits[_tmp] &= ~(1UL<<_rem);
102
}
103
 
104
#undef __FD_ISSET
105
static __inline__ int __FD_ISSET(unsigned long fd, __kernel_fd_set *p)
106
{
107
        unsigned long _tmp = fd / __NFDBITS;
108
        unsigned long _rem = fd % __NFDBITS;
109
        return (p->fds_bits[_tmp] & (1UL<<_rem)) != 0;
110
}
111
 
112
/*
113
 * This will unroll the loop for the normal constant case (8 ints,
114
 * for a 256-bit fd_set)
115
 */
116
#undef __FD_ZERO
117
static __inline__ void __FD_ZERO(__kernel_fd_set *p)
118
{
119
        unsigned int *tmp = (unsigned int *)p->fds_bits;
120
        int i;
121
 
122
        if (__builtin_constant_p(__FDSET_LONGS)) {
123
                switch (__FDSET_LONGS) {
124
                        case 8:
125
                                tmp[0] = 0; tmp[1] = 0; tmp[2] = 0; tmp[3] = 0;
126
                                tmp[4] = 0; tmp[5] = 0; tmp[6] = 0; tmp[7] = 0;
127
                                return;
128
                }
129
        }
130
        i = __FDSET_LONGS;
131
        while (i) {
132
                i--;
133
                *tmp = 0;
134
                tmp++;
135
        }
136
}
137
 
138
#endif /* defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2) */
139
#endif /* __GNUC__ */
140
#endif /* _OR32_POSIX_TYPES_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.