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