1#ifndef _ASM_SPARC_IOCTLS_H 2#define _ASM_SPARC_IOCTLS_H 3 4#include <asm/ioctl.h> 5 6/* Big T */ 7#define TCGETA _IOR('T', 1, struct termio) 8#define TCSETA _IOW('T', 2, struct termio) 9#define TCSETAW _IOW('T', 3, struct termio) 10#define TCSETAF _IOW('T', 4, struct termio) 11#define TCSBRK _IO('T', 5) 12#define TCXONC _IO('T', 6) 13#define TCFLSH _IO('T', 7) 14#define TCGETS _IOR('T', 8, struct termios) 15#define TCSETS _IOW('T', 9, struct termios) 16#define TCSETSW _IOW('T', 10, struct termios) 17#define TCSETSF _IOW('T', 11, struct termios) 18 19/* Note that all the ioctls that are not available in Linux have a 20 * double underscore on the front to: a) avoid some programs to 21 * thing we support some ioctls under Linux (autoconfiguration stuff) 22 */ 23/* Little t */ 24#define TIOCGETD _IOR('t', 0, int) 25#define TIOCSETD _IOW('t', 1, int) 26#define __TIOCHPCL _IO('t', 2) /* SunOS Specific */ 27#define __TIOCMODG _IOR('t', 3, int) /* SunOS Specific */ 28#define __TIOCMODS _IOW('t', 4, int) /* SunOS Specific */ 29#define __TIOCGETP _IOR('t', 8, struct sgttyb) /* SunOS Specific */ 30#define __TIOCSETP _IOW('t', 9, struct sgttyb) /* SunOS Specific */ 31#define __TIOCSETN _IOW('t', 10, struct sgttyb) /* SunOS Specific */ 32#define TIOCEXCL _IO('t', 13) 33#define TIOCNXCL _IO('t', 14) 34#define __TIOCFLUSH _IOW('t', 16, int) /* SunOS Specific */ 35#define __TIOCSETC _IOW('t', 17, struct tchars) /* SunOS Specific */ 36#define __TIOCGETC _IOR('t', 18, struct tchars) /* SunOS Specific */ 37#define __TIOCTCNTL _IOW('t', 32, int) /* SunOS Specific */ 38#define __TIOCSIGNAL _IOW('t', 33, int) /* SunOS Specific */ 39#define __TIOCSETX _IOW('t', 34, int) /* SunOS Specific */ 40#define __TIOCGETX _IOR('t', 35, int) /* SunOS Specific */ 41#define TIOCCONS _IO('t', 36) 42#define __TIOCSSIZE _IOW('t', 37, struct sunos_ttysize) /* SunOS Specific */ 43#define __TIOCGSIZE _IOR('t', 38, struct sunos_ttysize) /* SunOS Specific */ 44#define TIOCGSOFTCAR _IOR('t', 100, int) 45#define TIOCSSOFTCAR _IOW('t', 101, int) 46#define __TIOCUCNTL _IOW('t', 102, int) /* SunOS Specific */ 47#define TIOCSWINSZ _IOW('t', 103, struct winsize) 48#define TIOCGWINSZ _IOR('t', 104, struct winsize) 49#define __TIOCREMOTE _IOW('t', 105, int) /* SunOS Specific */ 50#define TIOCMGET _IOR('t', 106, int) 51#define TIOCMBIC _IOW('t', 107, int) 52#define TIOCMBIS _IOW('t', 108, int) 53#define TIOCMSET _IOW('t', 109, int) 54#define TIOCSTART _IO('t', 110) 55#define TIOCSTOP _IO('t', 111) 56#define TIOCPKT _IOW('t', 112, int) 57#define TIOCNOTTY _IO('t', 113) 58#define TIOCSTI _IOW('t', 114, char) 59#define TIOCOUTQ _IOR('t', 115, int) 60#define __TIOCGLTC _IOR('t', 116, struct ltchars) /* SunOS Specific */ 61#define __TIOCSLTC _IOW('t', 117, struct ltchars) /* SunOS Specific */ 62/* 118 is the non-posix setpgrp tty ioctl */ 63/* 119 is the non-posix getpgrp tty ioctl */ 64#define __TIOCCDTR _IO('t', 120) /* SunOS Specific */ 65#define __TIOCSDTR _IO('t', 121) /* SunOS Specific */ 66#define TIOCCBRK _IO('t', 122) 67#define TIOCSBRK _IO('t', 123) 68#define __TIOCLGET _IOW('t', 124, int) /* SunOS Specific */ 69#define __TIOCLSET _IOW('t', 125, int) /* SunOS Specific */ 70#define __TIOCLBIC _IOW('t', 126, int) /* SunOS Specific */ 71#define __TIOCLBIS _IOW('t', 127, int) /* SunOS Specific */ 72#define __TIOCISPACE _IOR('t', 128, int) /* SunOS Specific */ 73#define __TIOCISIZE _IOR('t', 129, int) /* SunOS Specific */ 74#define TIOCSPGRP _IOW('t', 130, int) 75#define TIOCGPGRP _IOR('t', 131, int) 76#define TIOCSCTTY _IO('t', 132) 77#define TIOCGSID _IOR('t', 133, int) 78/* Get minor device of a pty master's FD -- Solaris equiv is ISPTM */ 79#define TIOCGPTN _IOR('t', 134, unsigned int) /* Get Pty Number */ 80#define TIOCSPTLCK _IOW('t', 135, int) /* Lock/unlock PTY */ 81 82/* Little f */ 83#define FIOCLEX _IO('f', 1) 84#define FIONCLEX _IO('f', 2) 85#define FIOASYNC _IOW('f', 125, int) 86#define FIONBIO _IOW('f', 126, int) 87#define FIONREAD _IOR('f', 127, int) 88#define TIOCINQ FIONREAD 89#define FIOQSIZE _IOR('f', 128, loff_t) 90 91/* SCARY Rutgers local SunOS kernel hackery, perhaps I will support it 92 * someday. This is completely bogus, I know... 93 */ 94#define __TCGETSTAT _IO('T', 200) /* Rutgers specific */ 95#define __TCSETSTAT _IO('T', 201) /* Rutgers specific */ 96 97/* Linux specific, no SunOS equivalent. */ 98#define TIOCLINUX 0x541C 99#define TIOCGSERIAL 0x541E 100#define TIOCSSERIAL 0x541F 101#define TCSBRKP 0x5425 102#define TIOCSERCONFIG 0x5453 103#define TIOCSERGWILD 0x5454 104#define TIOCSERSWILD 0x5455 105#define TIOCGLCKTRMIOS 0x5456 106#define TIOCSLCKTRMIOS 0x5457 107#define TIOCSERGSTRUCT 0x5458 /* For debugging only */ 108#define TIOCSERGETLSR 0x5459 /* Get line status register */ 109#define TIOCSERGETMULTI 0x545A /* Get multiport config */ 110#define TIOCSERSETMULTI 0x545B /* Set multiport config */ 111#define TIOCMIWAIT 0x545C /* Wait input */ 112#define TIOCGICOUNT 0x545D /* Read serial port inline interrupt counts */ 113 114/* Kernel definitions */ 115#ifdef __KERNEL__ 116#define TIOCGETC __TIOCGETC 117#define TIOCGETP __TIOCGETP 118#define TIOCGLTC __TIOCGLTC 119#define TIOCSLTC __TIOCSLTC 120#define TIOCSETP __TIOCSETP 121#define TIOCSETN __TIOCSETN 122#define TIOCSETC __TIOCSETC 123#endif 124 125/* Used for packet mode */ 126#define TIOCPKT_DATA 0 127#define TIOCPKT_FLUSHREAD 1 128#define TIOCPKT_FLUSHWRITE 2 129#define TIOCPKT_STOP 4 130#define TIOCPKT_START 8 131#define TIOCPKT_NOSTOP 16 132#define TIOCPKT_DOSTOP 32 133 134#endif /* !(_ASM_SPARC_IOCTLS_H) */ 135