1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef __m68k_POLL_H 3 #define __m68k_POLL_H 4 5 #ifndef __KERNEL__ 6 #define POLLWRNORM POLLOUT 7 #define POLLWRBAND (__force __poll_t)256 8 #else 9 #define __ARCH_HAS_MANGLED_POLL 10 static inline __u16 mangle_poll(__poll_t val) 11 { 12 __u16 v = (__force __u16)val; 13 /* bit 9 -> bit 8, bit 8 -> bit 2 */ 14 return (v & ~0x300) | ((v & 0x200) >> 1) | ((v & 0x100) >> 6); 15 } 16 17 static inline __poll_t demangle_poll(__u16 v) 18 { 19 /* bit 8 -> bit 9, bit 2 -> bits 2 and 8 */ 20 return (__force __poll_t)((v & ~0x100) | ((v & 0x100) << 1) | 21 ((v & 4) << 6)); 22 } 23 #endif 24 25 #include <asm-generic/poll.h> 26 27 #endif 28