1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef _UAPI_ASM_GENERIC_TERMIOS_H 3 #define _UAPI_ASM_GENERIC_TERMIOS_H 4 /* 5 * Most architectures have straight copies of the x86 code, with 6 * varying levels of bug fixes on top. Usually it's a good idea 7 * to use this generic version instead, but be careful to avoid 8 * ABI changes. 9 * New architectures should not provide their own version. 10 */ 11 12 #include <asm/termbits.h> 13 #include <asm/ioctls.h> 14 15 struct winsize { 16 unsigned short ws_row; 17 unsigned short ws_col; 18 unsigned short ws_xpixel; 19 unsigned short ws_ypixel; 20 }; 21 22 #define NCC 8 23 struct termio { 24 unsigned short c_iflag; /* input mode flags */ 25 unsigned short c_oflag; /* output mode flags */ 26 unsigned short c_cflag; /* control mode flags */ 27 unsigned short c_lflag; /* local mode flags */ 28 unsigned char c_line; /* line discipline */ 29 unsigned char c_cc[NCC]; /* control characters */ 30 }; 31 32 /* modem lines */ 33 #define TIOCM_LE 0x001 34 #define TIOCM_DTR 0x002 35 #define TIOCM_RTS 0x004 36 #define TIOCM_ST 0x008 37 #define TIOCM_SR 0x010 38 #define TIOCM_CTS 0x020 39 #define TIOCM_CAR 0x040 40 #define TIOCM_RNG 0x080 41 #define TIOCM_DSR 0x100 42 #define TIOCM_CD TIOCM_CAR 43 #define TIOCM_RI TIOCM_RNG 44 #define TIOCM_OUT1 0x2000 45 #define TIOCM_OUT2 0x4000 46 #define TIOCM_LOOP 0x8000 47 48 /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ 49 50 51 #endif /* _UAPI_ASM_GENERIC_TERMIOS_H */ 52