xref: /aosp_15_r20/external/kernel-headers/original/uapi/asm-generic/termbits.h (revision f80ad8b4341604f5951dab671d41019a6d7087ce)
1*f80ad8b4SAndroid Build Coastguard Worker /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2*f80ad8b4SAndroid Build Coastguard Worker #ifndef __ASM_GENERIC_TERMBITS_H
3*f80ad8b4SAndroid Build Coastguard Worker #define __ASM_GENERIC_TERMBITS_H
4*f80ad8b4SAndroid Build Coastguard Worker 
5*f80ad8b4SAndroid Build Coastguard Worker #include <asm-generic/termbits-common.h>
6*f80ad8b4SAndroid Build Coastguard Worker 
7*f80ad8b4SAndroid Build Coastguard Worker typedef unsigned int	tcflag_t;
8*f80ad8b4SAndroid Build Coastguard Worker 
9*f80ad8b4SAndroid Build Coastguard Worker #define NCCS 19
10*f80ad8b4SAndroid Build Coastguard Worker struct termios {
11*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_iflag;		/* input mode flags */
12*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_oflag;		/* output mode flags */
13*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_cflag;		/* control mode flags */
14*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_lflag;		/* local mode flags */
15*f80ad8b4SAndroid Build Coastguard Worker 	cc_t c_line;			/* line discipline */
16*f80ad8b4SAndroid Build Coastguard Worker 	cc_t c_cc[NCCS];		/* control characters */
17*f80ad8b4SAndroid Build Coastguard Worker };
18*f80ad8b4SAndroid Build Coastguard Worker 
19*f80ad8b4SAndroid Build Coastguard Worker struct termios2 {
20*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_iflag;		/* input mode flags */
21*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_oflag;		/* output mode flags */
22*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_cflag;		/* control mode flags */
23*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_lflag;		/* local mode flags */
24*f80ad8b4SAndroid Build Coastguard Worker 	cc_t c_line;			/* line discipline */
25*f80ad8b4SAndroid Build Coastguard Worker 	cc_t c_cc[NCCS];		/* control characters */
26*f80ad8b4SAndroid Build Coastguard Worker 	speed_t c_ispeed;		/* input speed */
27*f80ad8b4SAndroid Build Coastguard Worker 	speed_t c_ospeed;		/* output speed */
28*f80ad8b4SAndroid Build Coastguard Worker };
29*f80ad8b4SAndroid Build Coastguard Worker 
30*f80ad8b4SAndroid Build Coastguard Worker struct ktermios {
31*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_iflag;		/* input mode flags */
32*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_oflag;		/* output mode flags */
33*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_cflag;		/* control mode flags */
34*f80ad8b4SAndroid Build Coastguard Worker 	tcflag_t c_lflag;		/* local mode flags */
35*f80ad8b4SAndroid Build Coastguard Worker 	cc_t c_line;			/* line discipline */
36*f80ad8b4SAndroid Build Coastguard Worker 	cc_t c_cc[NCCS];		/* control characters */
37*f80ad8b4SAndroid Build Coastguard Worker 	speed_t c_ispeed;		/* input speed */
38*f80ad8b4SAndroid Build Coastguard Worker 	speed_t c_ospeed;		/* output speed */
39*f80ad8b4SAndroid Build Coastguard Worker };
40*f80ad8b4SAndroid Build Coastguard Worker 
41*f80ad8b4SAndroid Build Coastguard Worker /* c_cc characters */
42*f80ad8b4SAndroid Build Coastguard Worker #define VINTR		 0
43*f80ad8b4SAndroid Build Coastguard Worker #define VQUIT		 1
44*f80ad8b4SAndroid Build Coastguard Worker #define VERASE		 2
45*f80ad8b4SAndroid Build Coastguard Worker #define VKILL		 3
46*f80ad8b4SAndroid Build Coastguard Worker #define VEOF		 4
47*f80ad8b4SAndroid Build Coastguard Worker #define VTIME		 5
48*f80ad8b4SAndroid Build Coastguard Worker #define VMIN		 6
49*f80ad8b4SAndroid Build Coastguard Worker #define VSWTC		 7
50*f80ad8b4SAndroid Build Coastguard Worker #define VSTART		 8
51*f80ad8b4SAndroid Build Coastguard Worker #define VSTOP		 9
52*f80ad8b4SAndroid Build Coastguard Worker #define VSUSP		10
53*f80ad8b4SAndroid Build Coastguard Worker #define VEOL		11
54*f80ad8b4SAndroid Build Coastguard Worker #define VREPRINT	12
55*f80ad8b4SAndroid Build Coastguard Worker #define VDISCARD	13
56*f80ad8b4SAndroid Build Coastguard Worker #define VWERASE		14
57*f80ad8b4SAndroid Build Coastguard Worker #define VLNEXT		15
58*f80ad8b4SAndroid Build Coastguard Worker #define VEOL2		16
59*f80ad8b4SAndroid Build Coastguard Worker 
60*f80ad8b4SAndroid Build Coastguard Worker /* c_iflag bits */
61*f80ad8b4SAndroid Build Coastguard Worker #define IUCLC	0x0200
62*f80ad8b4SAndroid Build Coastguard Worker #define IXON	0x0400
63*f80ad8b4SAndroid Build Coastguard Worker #define IXOFF	0x1000
64*f80ad8b4SAndroid Build Coastguard Worker #define IMAXBEL	0x2000
65*f80ad8b4SAndroid Build Coastguard Worker #define IUTF8	0x4000
66*f80ad8b4SAndroid Build Coastguard Worker 
67*f80ad8b4SAndroid Build Coastguard Worker /* c_oflag bits */
68*f80ad8b4SAndroid Build Coastguard Worker #define OLCUC	0x00002
69*f80ad8b4SAndroid Build Coastguard Worker #define ONLCR	0x00004
70*f80ad8b4SAndroid Build Coastguard Worker #define NLDLY	0x00100
71*f80ad8b4SAndroid Build Coastguard Worker #define   NL0	0x00000
72*f80ad8b4SAndroid Build Coastguard Worker #define   NL1	0x00100
73*f80ad8b4SAndroid Build Coastguard Worker #define CRDLY	0x00600
74*f80ad8b4SAndroid Build Coastguard Worker #define   CR0	0x00000
75*f80ad8b4SAndroid Build Coastguard Worker #define   CR1	0x00200
76*f80ad8b4SAndroid Build Coastguard Worker #define   CR2	0x00400
77*f80ad8b4SAndroid Build Coastguard Worker #define   CR3	0x00600
78*f80ad8b4SAndroid Build Coastguard Worker #define TABDLY	0x01800
79*f80ad8b4SAndroid Build Coastguard Worker #define   TAB0	0x00000
80*f80ad8b4SAndroid Build Coastguard Worker #define   TAB1	0x00800
81*f80ad8b4SAndroid Build Coastguard Worker #define   TAB2	0x01000
82*f80ad8b4SAndroid Build Coastguard Worker #define   TAB3	0x01800
83*f80ad8b4SAndroid Build Coastguard Worker #define   XTABS	0x01800
84*f80ad8b4SAndroid Build Coastguard Worker #define BSDLY	0x02000
85*f80ad8b4SAndroid Build Coastguard Worker #define   BS0	0x00000
86*f80ad8b4SAndroid Build Coastguard Worker #define   BS1	0x02000
87*f80ad8b4SAndroid Build Coastguard Worker #define VTDLY	0x04000
88*f80ad8b4SAndroid Build Coastguard Worker #define   VT0	0x00000
89*f80ad8b4SAndroid Build Coastguard Worker #define   VT1	0x04000
90*f80ad8b4SAndroid Build Coastguard Worker #define FFDLY	0x08000
91*f80ad8b4SAndroid Build Coastguard Worker #define   FF0	0x00000
92*f80ad8b4SAndroid Build Coastguard Worker #define   FF1	0x08000
93*f80ad8b4SAndroid Build Coastguard Worker 
94*f80ad8b4SAndroid Build Coastguard Worker /* c_cflag bit meaning */
95*f80ad8b4SAndroid Build Coastguard Worker #define CBAUD		0x0000100f
96*f80ad8b4SAndroid Build Coastguard Worker #define CSIZE		0x00000030
97*f80ad8b4SAndroid Build Coastguard Worker #define   CS5		0x00000000
98*f80ad8b4SAndroid Build Coastguard Worker #define   CS6		0x00000010
99*f80ad8b4SAndroid Build Coastguard Worker #define   CS7		0x00000020
100*f80ad8b4SAndroid Build Coastguard Worker #define   CS8		0x00000030
101*f80ad8b4SAndroid Build Coastguard Worker #define CSTOPB		0x00000040
102*f80ad8b4SAndroid Build Coastguard Worker #define CREAD		0x00000080
103*f80ad8b4SAndroid Build Coastguard Worker #define PARENB		0x00000100
104*f80ad8b4SAndroid Build Coastguard Worker #define PARODD		0x00000200
105*f80ad8b4SAndroid Build Coastguard Worker #define HUPCL		0x00000400
106*f80ad8b4SAndroid Build Coastguard Worker #define CLOCAL		0x00000800
107*f80ad8b4SAndroid Build Coastguard Worker #define CBAUDEX		0x00001000
108*f80ad8b4SAndroid Build Coastguard Worker #define BOTHER		0x00001000
109*f80ad8b4SAndroid Build Coastguard Worker #define     B57600	0x00001001
110*f80ad8b4SAndroid Build Coastguard Worker #define    B115200	0x00001002
111*f80ad8b4SAndroid Build Coastguard Worker #define    B230400	0x00001003
112*f80ad8b4SAndroid Build Coastguard Worker #define    B460800	0x00001004
113*f80ad8b4SAndroid Build Coastguard Worker #define    B500000	0x00001005
114*f80ad8b4SAndroid Build Coastguard Worker #define    B576000	0x00001006
115*f80ad8b4SAndroid Build Coastguard Worker #define    B921600	0x00001007
116*f80ad8b4SAndroid Build Coastguard Worker #define   B1000000	0x00001008
117*f80ad8b4SAndroid Build Coastguard Worker #define   B1152000	0x00001009
118*f80ad8b4SAndroid Build Coastguard Worker #define   B1500000	0x0000100a
119*f80ad8b4SAndroid Build Coastguard Worker #define   B2000000	0x0000100b
120*f80ad8b4SAndroid Build Coastguard Worker #define   B2500000	0x0000100c
121*f80ad8b4SAndroid Build Coastguard Worker #define   B3000000	0x0000100d
122*f80ad8b4SAndroid Build Coastguard Worker #define   B3500000	0x0000100e
123*f80ad8b4SAndroid Build Coastguard Worker #define   B4000000	0x0000100f
124*f80ad8b4SAndroid Build Coastguard Worker #define CIBAUD		0x100f0000	/* input baud rate */
125*f80ad8b4SAndroid Build Coastguard Worker 
126*f80ad8b4SAndroid Build Coastguard Worker /* c_lflag bits */
127*f80ad8b4SAndroid Build Coastguard Worker #define ISIG	0x00001
128*f80ad8b4SAndroid Build Coastguard Worker #define ICANON	0x00002
129*f80ad8b4SAndroid Build Coastguard Worker #define XCASE	0x00004
130*f80ad8b4SAndroid Build Coastguard Worker #define ECHO	0x00008
131*f80ad8b4SAndroid Build Coastguard Worker #define ECHOE	0x00010
132*f80ad8b4SAndroid Build Coastguard Worker #define ECHOK	0x00020
133*f80ad8b4SAndroid Build Coastguard Worker #define ECHONL	0x00040
134*f80ad8b4SAndroid Build Coastguard Worker #define NOFLSH	0x00080
135*f80ad8b4SAndroid Build Coastguard Worker #define TOSTOP	0x00100
136*f80ad8b4SAndroid Build Coastguard Worker #define ECHOCTL	0x00200
137*f80ad8b4SAndroid Build Coastguard Worker #define ECHOPRT	0x00400
138*f80ad8b4SAndroid Build Coastguard Worker #define ECHOKE	0x00800
139*f80ad8b4SAndroid Build Coastguard Worker #define FLUSHO	0x01000
140*f80ad8b4SAndroid Build Coastguard Worker #define PENDIN	0x04000
141*f80ad8b4SAndroid Build Coastguard Worker #define IEXTEN	0x08000
142*f80ad8b4SAndroid Build Coastguard Worker #define EXTPROC	0x10000
143*f80ad8b4SAndroid Build Coastguard Worker 
144*f80ad8b4SAndroid Build Coastguard Worker /* tcsetattr uses these */
145*f80ad8b4SAndroid Build Coastguard Worker #define	TCSANOW		0
146*f80ad8b4SAndroid Build Coastguard Worker #define	TCSADRAIN	1
147*f80ad8b4SAndroid Build Coastguard Worker #define	TCSAFLUSH	2
148*f80ad8b4SAndroid Build Coastguard Worker 
149*f80ad8b4SAndroid Build Coastguard Worker #endif /* __ASM_GENERIC_TERMBITS_H */
150