1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2*4882a593Smuzhiyun #ifndef _UAPI_ALPHA_TERMIOS_H 3*4882a593Smuzhiyun #define _UAPI_ALPHA_TERMIOS_H 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #include <asm/ioctls.h> 6*4882a593Smuzhiyun #include <asm/termbits.h> 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun struct sgttyb { 9*4882a593Smuzhiyun char sg_ispeed; 10*4882a593Smuzhiyun char sg_ospeed; 11*4882a593Smuzhiyun char sg_erase; 12*4882a593Smuzhiyun char sg_kill; 13*4882a593Smuzhiyun short sg_flags; 14*4882a593Smuzhiyun }; 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun struct tchars { 17*4882a593Smuzhiyun char t_intrc; 18*4882a593Smuzhiyun char t_quitc; 19*4882a593Smuzhiyun char t_startc; 20*4882a593Smuzhiyun char t_stopc; 21*4882a593Smuzhiyun char t_eofc; 22*4882a593Smuzhiyun char t_brkc; 23*4882a593Smuzhiyun }; 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun struct ltchars { 26*4882a593Smuzhiyun char t_suspc; 27*4882a593Smuzhiyun char t_dsuspc; 28*4882a593Smuzhiyun char t_rprntc; 29*4882a593Smuzhiyun char t_flushc; 30*4882a593Smuzhiyun char t_werasc; 31*4882a593Smuzhiyun char t_lnextc; 32*4882a593Smuzhiyun }; 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun struct winsize { 35*4882a593Smuzhiyun unsigned short ws_row; 36*4882a593Smuzhiyun unsigned short ws_col; 37*4882a593Smuzhiyun unsigned short ws_xpixel; 38*4882a593Smuzhiyun unsigned short ws_ypixel; 39*4882a593Smuzhiyun }; 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun #define NCC 8 42*4882a593Smuzhiyun struct termio { 43*4882a593Smuzhiyun unsigned short c_iflag; /* input mode flags */ 44*4882a593Smuzhiyun unsigned short c_oflag; /* output mode flags */ 45*4882a593Smuzhiyun unsigned short c_cflag; /* control mode flags */ 46*4882a593Smuzhiyun unsigned short c_lflag; /* local mode flags */ 47*4882a593Smuzhiyun unsigned char c_line; /* line discipline */ 48*4882a593Smuzhiyun unsigned char c_cc[NCC]; /* control characters */ 49*4882a593Smuzhiyun }; 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun /* 52*4882a593Smuzhiyun * c_cc characters in the termio structure. Oh, how I love being 53*4882a593Smuzhiyun * backwardly compatible. Notice that character 4 and 5 are 54*4882a593Smuzhiyun * interpreted differently depending on whether ICANON is set in 55*4882a593Smuzhiyun * c_lflag. If it's set, they are used as _VEOF and _VEOL, otherwise 56*4882a593Smuzhiyun * as _VMIN and V_TIME. This is for compatibility with OSF/1 (which 57*4882a593Smuzhiyun * is compatible with sysV)... 58*4882a593Smuzhiyun */ 59*4882a593Smuzhiyun #define _VINTR 0 60*4882a593Smuzhiyun #define _VQUIT 1 61*4882a593Smuzhiyun #define _VERASE 2 62*4882a593Smuzhiyun #define _VKILL 3 63*4882a593Smuzhiyun #define _VEOF 4 64*4882a593Smuzhiyun #define _VMIN 4 65*4882a593Smuzhiyun #define _VEOL 5 66*4882a593Smuzhiyun #define _VTIME 5 67*4882a593Smuzhiyun #define _VEOL2 6 68*4882a593Smuzhiyun #define _VSWTC 7 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun #endif /* _UAPI_ALPHA_TERMIOS_H */ 72