1#ifndef __ASM_ARM_TERMBITS_H
2#define __ASM_ARM_TERMBITS_H
3
4typedef unsigned char	cc_t;
5typedef unsigned int	speed_t;
6typedef unsigned int	tcflag_t;
7
8#define NCCS 19
9struct termios {
10	tcflag_t c_iflag;		/* input mode flags */
11	tcflag_t c_oflag;		/* output mode flags */
12	tcflag_t c_cflag;		/* control mode flags */
13	tcflag_t c_lflag;		/* local mode flags */
14	cc_t c_line;			/* line discipline */
15	cc_t c_cc[NCCS];		/* control characters */
16};
17
18/* c_cc characters */
19#define VINTR 0
20#define VQUIT 1
21#define VERASE 2
22#define VKILL 3
23#define VEOF 4
24#define VTIME 5
25#define VMIN 6
26#define VSWTC 7
27#define VSTART 8
28#define VSTOP 9
29#define VSUSP 10
30#define VEOL 11
31#define VREPRINT 12
32#define VDISCARD 13
33#define VWERASE 14
34#define VLNEXT 15
35#define VEOL2 16
36
37/* c_iflag bits */
38#define IGNBRK	0000001
39#define BRKINT	0000002
40#define IGNPAR	0000004
41#define PARMRK	0000010
42#define INPCK	0000020
43#define ISTRIP	0000040
44#define INLCR	0000100
45#define IGNCR	0000200
46#define ICRNL	0000400
47#define IUCLC	0001000
48#define IXON	0002000
49#define IXANY	0004000
50#define IXOFF	0010000
51#define IMAXBEL	0020000
52#define IUTF8	0040000
53
54/* c_oflag bits */
55#define OPOST	0000001
56#define OLCUC	0000002
57#define ONLCR	0000004
58#define OCRNL	0000010
59#define ONOCR	0000020
60#define ONLRET	0000040
61#define OFILL	0000100
62#define OFDEL	0000200
63#define NLDLY	0000400
64#define   NL0	0000000
65#define   NL1	0000400
66#define CRDLY	0003000
67#define   CR0	0000000
68#define   CR1	0001000
69#define   CR2	0002000
70#define   CR3	0003000
71#define TABDLY	0014000
72#define   TAB0	0000000
73#define   TAB1	0004000
74#define   TAB2	0010000
75#define   TAB3	0014000
76#define   XTABS	0014000
77#define BSDLY	0020000
78#define   BS0	0000000
79#define   BS1	0020000
80#define VTDLY	0040000
81#define   VT0	0000000
82#define   VT1	0040000
83#define FFDLY	0100000
84#define   FF0	0000000
85#define   FF1	0100000
86
87/* c_cflag bit meaning */
88#define CBAUD	0010017
89#define  B0	0000000		/* hang up */
90#define  B50	0000001
91#define  B75	0000002
92#define  B110	0000003
93#define  B134	0000004
94#define  B150	0000005
95#define  B200	0000006
96#define  B300	0000007
97#define  B600	0000010
98#define  B1200	0000011
99#define  B1800	0000012
100#define  B2400	0000013
101#define  B4800	0000014
102#define  B9600	0000015
103#define  B19200	0000016
104#define  B38400	0000017
105#define EXTA B19200
106#define EXTB B38400
107#define CSIZE	0000060
108#define   CS5	0000000
109#define   CS6	0000020
110#define   CS7	0000040
111#define   CS8	0000060
112#define CSTOPB	0000100
113#define CREAD	0000200
114#define PARENB	0000400
115#define PARODD	0001000
116#define HUPCL	0002000
117#define CLOCAL	0004000
118#define CBAUDEX 0010000
119#define    B57600 0010001
120#define   B115200 0010002
121#define   B230400 0010003
122#define   B460800 0010004
123#define   B500000 0010005
124#define   B576000 0010006
125#define   B921600 0010007
126#define  B1000000 0010010
127#define  B1152000 0010011
128#define  B1500000 0010012
129#define  B2000000 0010013
130#define  B2500000 0010014
131#define  B3000000 0010015
132#define  B3500000 0010016
133#define  B4000000 0010017
134#define CIBAUD	  002003600000	/* input baud rate (not used) */
135#define CMSPAR    010000000000		/* mark or space (stick) parity */
136#define CRTSCTS	  020000000000		/* flow control */
137
138/* c_lflag bits */
139#define ISIG	0000001
140#define ICANON	0000002
141#define XCASE	0000004
142#define ECHO	0000010
143#define ECHOE	0000020
144#define ECHOK	0000040
145#define ECHONL	0000100
146#define NOFLSH	0000200
147#define TOSTOP	0000400
148#define ECHOCTL	0001000
149#define ECHOPRT	0002000
150#define ECHOKE	0004000
151#define FLUSHO	0010000
152#define PENDIN	0040000
153#define IEXTEN	0100000
154
155/* tcflow() and TCXONC use these */
156#define	TCOOFF		0
157#define	TCOON		1
158#define	TCIOFF		2
159#define	TCION		3
160
161/* tcflush() and TCFLSH use these */
162#define	TCIFLUSH	0
163#define	TCOFLUSH	1
164#define	TCIOFLUSH	2
165
166/* tcsetattr uses these */
167#define	TCSANOW		0
168#define	TCSADRAIN	1
169#define	TCSAFLUSH	2
170
171#endif	/* __ASM_ARM_TERMBITS_H */
172