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