1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef __ASM_GENERIC_POLL_H
3 #define __ASM_GENERIC_POLL_H
5 /* These are specified by iBCS2 */
6 #define POLLIN (__force __poll_t)0x0001
7 #define POLLPRI (__force __poll_t)0x0002
8 #define POLLOUT (__force __poll_t)0x0004
9 #define POLLERR (__force __poll_t)0x0008
10 #define POLLHUP (__force __poll_t)0x0010
11 #define POLLNVAL (__force __poll_t)0x0020
13 /* The rest seem to be more-or-less nonstandard. Check them! */
14 #define POLLRDNORM (__force __poll_t)0x0040
15 #define POLLRDBAND (__force __poll_t)0x0080
17 #define POLLWRNORM (__force __poll_t)0x0100
20 #define POLLWRBAND (__force __poll_t)0x0200
23 #define POLLMSG (__force __poll_t)0x0400
26 #define POLLREMOVE (__force __poll_t)0x1000
29 #define POLLRDHUP (__force __poll_t)0x2000
32 #define POLLFREE (__force __poll_t)0x4000 /* currently only for epoll */
34 #define POLL_BUSY_LOOP (__force __poll_t)0x8000
37 #ifndef __ARCH_HAS_MANGLED_POLL
38 static inline __u16 mangle_poll(__poll_t val)
40 return (__force __u16)val;
43 static inline __poll_t demangle_poll(__u16 v)
45 return (__force __poll_t)v;
56 #endif /* __ASM_GENERIC_POLL_H */