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