1
2
3
4
5
6
7
8
9
10
11#ifndef _ASM_TERMBITS_H
12#define _ASM_TERMBITS_H
13
14#include <linux/posix_types.h>
15
16typedef unsigned char cc_t;
17typedef unsigned int speed_t;
18typedef unsigned int tcflag_t;
19
20
21
22
23
24#define NCCS 23
25struct termios {
26 tcflag_t c_iflag;
27 tcflag_t c_oflag;
28 tcflag_t c_cflag;
29 tcflag_t c_lflag;
30 cc_t c_line;
31 cc_t c_cc[NCCS];
32};
33
34struct termios2 {
35 tcflag_t c_iflag;
36 tcflag_t c_oflag;
37 tcflag_t c_cflag;
38 tcflag_t c_lflag;
39 cc_t c_line;
40 cc_t c_cc[NCCS];
41 speed_t c_ispeed;
42 speed_t c_ospeed;
43};
44
45struct ktermios {
46 tcflag_t c_iflag;
47 tcflag_t c_oflag;
48 tcflag_t c_cflag;
49 tcflag_t c_lflag;
50 cc_t c_line;
51 cc_t c_cc[NCCS];
52 speed_t c_ispeed;
53 speed_t c_ospeed;
54};
55
56
57#define VINTR 0
58#define VQUIT 1
59#define VERASE 2
60#define VKILL 3
61#define VMIN 4
62#define VTIME 5
63#define VEOL2 6
64#define VSWTC 7
65#define VSWTCH VSWTC
66#define VSTART 8
67#define VSTOP 9
68#define VSUSP 10
69#if 0
70
71
72
73#define VDSUSP 11
74#endif
75#define VREPRINT 12
76#define VDISCARD 13
77#define VWERASE 14
78#define VLNEXT 15
79#define VEOF 16
80#define VEOL 17
81
82
83#define IGNBRK 0000001
84#define BRKINT 0000002
85#define IGNPAR 0000004
86#define PARMRK 0000010
87#define INPCK 0000020
88#define ISTRIP 0000040
89#define INLCR 0000100
90#define IGNCR 0000200
91#define ICRNL 0000400
92#define IUCLC 0001000
93#define IXON 0002000
94#define IXANY 0004000
95#define IXOFF 0010000
96#define IMAXBEL 0020000
97#define IUTF8 0040000
98
99
100#define OPOST 0000001
101#define OLCUC 0000002
102#define ONLCR 0000004
103#define OCRNL 0000010
104#define ONOCR 0000020
105#define ONLRET 0000040
106#define OFILL 0000100
107#define OFDEL 0000200
108#define NLDLY 0000400
109#define NL0 0000000
110#define NL1 0000400
111#define CRDLY 0003000
112#define CR0 0000000
113#define CR1 0001000
114#define CR2 0002000
115#define CR3 0003000
116#define TABDLY 0014000
117#define TAB0 0000000
118#define TAB1 0004000
119#define TAB2 0010000
120#define TAB3 0014000
121#define XTABS 0014000
122#define BSDLY 0020000
123#define BS0 0000000
124#define BS1 0020000
125#define VTDLY 0040000
126#define VT0 0000000
127#define VT1 0040000
128#define FFDLY 0100000
129#define FF0 0000000
130#define FF1 0100000
131
132
133
134
135
136
137#define CBAUD 0010017
138#define B0 0000000
139#define B50 0000001
140#define B75 0000002
141#define B110 0000003
142#define B134 0000004
143#define B150 0000005
144#define B200 0000006
145#define B300 0000007
146#define B600 0000010
147#define B1200 0000011
148#define B1800 0000012
149#define B2400 0000013
150#define B4800 0000014
151#define B9600 0000015
152#define B19200 0000016
153#define B38400 0000017
154#define EXTA B19200
155#define EXTB B38400
156#define CSIZE 0000060
157#define CS5 0000000
158#define CS6 0000020
159#define CS7 0000040
160#define CS8 0000060
161#define CSTOPB 0000100
162#define CREAD 0000200
163#define PARENB 0000400
164#define PARODD 0001000
165#define HUPCL 0002000
166#define CLOCAL 0004000
167#define CBAUDEX 0010000
168#define BOTHER 0010000
169#define B57600 0010001
170#define B115200 0010002
171#define B230400 0010003
172#define B460800 0010004
173#define B500000 0010005
174#define B576000 0010006
175#define B921600 0010007
176#define B1000000 0010010
177#define B1152000 0010011
178#define B1500000 0010012
179#define B2000000 0010013
180#define B2500000 0010014
181#define B3000000 0010015
182#define B3500000 0010016
183#define B4000000 0010017
184#define CIBAUD 002003600000
185#define CMSPAR 010000000000
186#define CRTSCTS 020000000000
187
188#define IBSHIFT 16
189
190
191#define ISIG 0000001
192#define ICANON 0000002
193#define XCASE 0000004
194#define ECHO 0000010
195#define ECHOE 0000020
196#define ECHOK 0000040
197#define ECHONL 0000100
198#define NOFLSH 0000200
199#define IEXTEN 0000400
200#define ECHOCTL 0001000
201#define ECHOPRT 0002000
202#define ECHOKE 0004000
203#define FLUSHO 0020000
204#define PENDIN 0040000
205#define TOSTOP 0100000
206#define ITOSTOP TOSTOP
207#define EXTPROC 0200000
208
209
210#define TIOCSER_TEMT 0x01
211
212
213#define TCOOFF 0
214#define TCOON 1
215#define TCIOFF 2
216#define TCION 3
217
218
219#define TCIFLUSH 0
220#define TCOFLUSH 1
221#define TCIOFLUSH 2
222
223
224#define TCSANOW TCSETS
225#define TCSADRAIN TCSETSW
226#define TCSAFLUSH TCSETSF
227
228#endif
229