1 | /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ |
2 | #ifndef __ASM_GENERIC_POLL_H |
3 | #define __ASM_GENERIC_POLL_H |
4 | |
5 | /* These are specified by iBCS2 */ |
6 | #define POLLIN 0x0001 |
7 | #define POLLPRI 0x0002 |
8 | #define POLLOUT 0x0004 |
9 | #define POLLERR 0x0008 |
10 | #define POLLHUP 0x0010 |
11 | #define POLLNVAL 0x0020 |
12 | |
13 | /* The rest seem to be more-or-less nonstandard. Check them! */ |
14 | #define POLLRDNORM 0x0040 |
15 | #define POLLRDBAND 0x0080 |
16 | #ifndef POLLWRNORM |
17 | #define POLLWRNORM 0x0100 |
18 | #endif |
19 | #ifndef POLLWRBAND |
20 | #define POLLWRBAND 0x0200 |
21 | #endif |
22 | #ifndef POLLMSG |
23 | #define POLLMSG 0x0400 |
24 | #endif |
25 | #ifndef POLLREMOVE |
26 | #define POLLREMOVE 0x1000 |
27 | #endif |
28 | #ifndef POLLRDHUP |
29 | #define POLLRDHUP 0x2000 |
30 | #endif |
31 | |
32 | #define POLLFREE (__force __poll_t)0x4000 |
33 | |
34 | #define POLL_BUSY_LOOP (__force __poll_t)0x8000 |
35 | |
36 | struct pollfd { |
37 | int fd; |
38 | short events; |
39 | short revents; |
40 | }; |
41 | |
42 | #endif /* __ASM_GENERIC_POLL_H */ |
43 | |