1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2*4882a593Smuzhiyun #ifndef __ASM_SH_IOCTLS_H 3*4882a593Smuzhiyun #define __ASM_SH_IOCTLS_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #include <asm/ioctl.h> 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun #define FIOCLEX _IO('f', 1) 8*4882a593Smuzhiyun #define FIONCLEX _IO('f', 2) 9*4882a593Smuzhiyun #define FIOASYNC _IOW('f', 125, int) 10*4882a593Smuzhiyun #define FIONBIO _IOW('f', 126, int) 11*4882a593Smuzhiyun #define FIONREAD _IOR('f', 127, int) 12*4882a593Smuzhiyun #define TIOCINQ FIONREAD 13*4882a593Smuzhiyun #define FIOQSIZE _IOR('f', 128, loff_t) 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #define TCGETS 0x5401 16*4882a593Smuzhiyun #define TCSETS 0x5402 17*4882a593Smuzhiyun #define TCSETSW 0x5403 18*4882a593Smuzhiyun #define TCSETSF 0x5404 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun #define TCGETA 0x80127417 /* _IOR('t', 23, struct termio) */ 21*4882a593Smuzhiyun #define TCSETA 0x40127418 /* _IOW('t', 24, struct termio) */ 22*4882a593Smuzhiyun #define TCSETAW 0x40127419 /* _IOW('t', 25, struct termio) */ 23*4882a593Smuzhiyun #define TCSETAF 0x4012741C /* _IOW('t', 28, struct termio) */ 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun #define TCSBRK _IO('t', 29) 26*4882a593Smuzhiyun #define TCXONC _IO('t', 30) 27*4882a593Smuzhiyun #define TCFLSH _IO('t', 31) 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun #define TIOCSWINSZ 0x40087467 /* _IOW('t', 103, struct winsize) */ 30*4882a593Smuzhiyun #define TIOCGWINSZ 0x80087468 /* _IOR('t', 104, struct winsize) */ 31*4882a593Smuzhiyun #define TIOCSTART _IO('t', 110) /* start output, like ^Q */ 32*4882a593Smuzhiyun #define TIOCSTOP _IO('t', 111) /* stop output, like ^S */ 33*4882a593Smuzhiyun #define TIOCOUTQ _IOR('t', 115, int) /* output queue size */ 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun #define TIOCSPGRP _IOW('t', 118, int) 36*4882a593Smuzhiyun #define TIOCGPGRP _IOR('t', 119, int) 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun #define TIOCEXCL _IO('T', 12) /* 0x540C */ 39*4882a593Smuzhiyun #define TIOCNXCL _IO('T', 13) /* 0x540D */ 40*4882a593Smuzhiyun #define TIOCSCTTY _IO('T', 14) /* 0x540E */ 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun #define TIOCSTI _IOW('T', 18, char) /* 0x5412 */ 43*4882a593Smuzhiyun #define TIOCMGET _IOR('T', 21, unsigned int) /* 0x5415 */ 44*4882a593Smuzhiyun #define TIOCMBIS _IOW('T', 22, unsigned int) /* 0x5416 */ 45*4882a593Smuzhiyun #define TIOCMBIC _IOW('T', 23, unsigned int) /* 0x5417 */ 46*4882a593Smuzhiyun #define TIOCMSET _IOW('T', 24, unsigned int) /* 0x5418 */ 47*4882a593Smuzhiyun # define TIOCM_LE 0x001 48*4882a593Smuzhiyun # define TIOCM_DTR 0x002 49*4882a593Smuzhiyun # define TIOCM_RTS 0x004 50*4882a593Smuzhiyun # define TIOCM_ST 0x008 51*4882a593Smuzhiyun # define TIOCM_SR 0x010 52*4882a593Smuzhiyun # define TIOCM_CTS 0x020 53*4882a593Smuzhiyun # define TIOCM_CAR 0x040 54*4882a593Smuzhiyun # define TIOCM_RNG 0x080 55*4882a593Smuzhiyun # define TIOCM_DSR 0x100 56*4882a593Smuzhiyun # define TIOCM_CD TIOCM_CAR 57*4882a593Smuzhiyun # define TIOCM_RI TIOCM_RNG 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun #define TIOCGSOFTCAR _IOR('T', 25, unsigned int) /* 0x5419 */ 60*4882a593Smuzhiyun #define TIOCSSOFTCAR _IOW('T', 26, unsigned int) /* 0x541A */ 61*4882a593Smuzhiyun #define TIOCLINUX _IOW('T', 28, char) /* 0x541C */ 62*4882a593Smuzhiyun #define TIOCCONS _IO('T', 29) /* 0x541D */ 63*4882a593Smuzhiyun #define TIOCGSERIAL 0x803C541E /* _IOR('T', 30, struct serial_struct) 0x541E */ 64*4882a593Smuzhiyun #define TIOCSSERIAL 0x403C541F /* _IOW('T', 31, struct serial_struct) 0x541F */ 65*4882a593Smuzhiyun #define TIOCPKT _IOW('T', 32, int) /* 0x5420 */ 66*4882a593Smuzhiyun # define TIOCPKT_DATA 0 67*4882a593Smuzhiyun # define TIOCPKT_FLUSHREAD 1 68*4882a593Smuzhiyun # define TIOCPKT_FLUSHWRITE 2 69*4882a593Smuzhiyun # define TIOCPKT_STOP 4 70*4882a593Smuzhiyun # define TIOCPKT_START 8 71*4882a593Smuzhiyun # define TIOCPKT_NOSTOP 16 72*4882a593Smuzhiyun # define TIOCPKT_DOSTOP 32 73*4882a593Smuzhiyun # define TIOCPKT_IOCTL 64 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun 76*4882a593Smuzhiyun #define TIOCNOTTY _IO('T', 34) /* 0x5422 */ 77*4882a593Smuzhiyun #define TIOCSETD _IOW('T', 35, int) /* 0x5423 */ 78*4882a593Smuzhiyun #define TIOCGETD _IOR('T', 36, int) /* 0x5424 */ 79*4882a593Smuzhiyun #define TCSBRKP _IOW('T', 37, int) /* 0x5425 */ /* Needed for POSIX tcsendbreak() */ 80*4882a593Smuzhiyun #define TIOCSBRK _IO('T', 39) /* 0x5427 */ /* BSD compatibility */ 81*4882a593Smuzhiyun #define TIOCCBRK _IO('T', 40) /* 0x5428 */ /* BSD compatibility */ 82*4882a593Smuzhiyun #define TIOCGSID _IOR('T', 41, pid_t) /* 0x5429 */ /* Return the session ID of FD */ 83*4882a593Smuzhiyun #define TCGETS2 _IOR('T', 42, struct termios2) 84*4882a593Smuzhiyun #define TCSETS2 _IOW('T', 43, struct termios2) 85*4882a593Smuzhiyun #define TCSETSW2 _IOW('T', 44, struct termios2) 86*4882a593Smuzhiyun #define TCSETSF2 _IOW('T', 45, struct termios2) 87*4882a593Smuzhiyun #define TIOCGRS485 _IOR('T', 46, struct serial_rs485) 88*4882a593Smuzhiyun #define TIOCSRS485 _IOWR('T', 47, struct serial_rs485) 89*4882a593Smuzhiyun #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ 90*4882a593Smuzhiyun #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ 91*4882a593Smuzhiyun #define TIOCGDEV _IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */ 92*4882a593Smuzhiyun #define TIOCSIG _IOW('T',0x36, int) /* Generate signal on Pty slave */ 93*4882a593Smuzhiyun #define TIOCVHANGUP _IO('T', 0x37) 94*4882a593Smuzhiyun #define TIOCGPKT _IOR('T', 0x38, int) /* Get packet mode state */ 95*4882a593Smuzhiyun #define TIOCGPTLCK _IOR('T', 0x39, int) /* Get Pty lock state */ 96*4882a593Smuzhiyun #define TIOCGEXCL _IOR('T', 0x40, int) /* Get exclusive mode state */ 97*4882a593Smuzhiyun #define TIOCGPTPEER _IO('T', 0x41) /* Safely open the slave */ 98*4882a593Smuzhiyun #define TIOCGISO7816 _IOR('T', 0x42, struct serial_iso7816) 99*4882a593Smuzhiyun #define TIOCSISO7816 _IOWR('T', 0x43, struct serial_iso7816) 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun #define TIOCSERCONFIG _IO('T', 83) /* 0x5453 */ 102*4882a593Smuzhiyun #define TIOCSERGWILD _IOR('T', 84, int) /* 0x5454 */ 103*4882a593Smuzhiyun #define TIOCSERSWILD _IOW('T', 85, int) /* 0x5455 */ 104*4882a593Smuzhiyun #define TIOCGLCKTRMIOS 0x5456 105*4882a593Smuzhiyun #define TIOCSLCKTRMIOS 0x5457 106*4882a593Smuzhiyun #define TIOCSERGSTRUCT 0x80d85458 /* _IOR('T', 88, struct async_struct) 0x5458 */ /* For debugging only */ 107*4882a593Smuzhiyun #define TIOCSERGETLSR _IOR('T', 89, unsigned int) /* 0x5459 */ /* Get line status register */ 108*4882a593Smuzhiyun /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ 109*4882a593Smuzhiyun # define TIOCSER_TEMT 0x01 /* Transmitter physically empty */ 110*4882a593Smuzhiyun #define TIOCSERGETMULTI 0x80A8545A /* _IOR('T', 90, struct serial_multiport_struct) 0x545A */ /* Get multiport config */ 111*4882a593Smuzhiyun #define TIOCSERSETMULTI 0x40A8545B /* _IOW('T', 91, struct serial_multiport_struct) 0x545B */ /* Set multiport config */ 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun #define TIOCMIWAIT _IO('T', 92) /* 0x545C */ /* wait for a change on serial input line(s) */ 114*4882a593Smuzhiyun #define TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */ 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun #endif /* __ASM_SH_IOCTLS_H */ 117