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