Statistics
| Branch: | Revision:

root / linux-user / mips / termbits.h @ a6f79cc9

History | View | Annotate | Download (8.7 kB)

1 048f6b4d bellard
/* from asm/termbits.h */
2 048f6b4d bellard
3 048f6b4d bellard
#define TARGET_NCCS 23
4 048f6b4d bellard
5 048f6b4d bellard
struct target_termios {
6 048f6b4d bellard
    unsigned int c_iflag;               /* input mode flags */
7 048f6b4d bellard
    unsigned int c_oflag;               /* output mode flags */
8 048f6b4d bellard
    unsigned int c_cflag;               /* control mode flags */
9 048f6b4d bellard
    unsigned int c_lflag;               /* local mode flags */
10 048f6b4d bellard
    unsigned char c_line;                    /* line discipline */
11 048f6b4d bellard
    unsigned char c_cc[TARGET_NCCS];                /* control characters */
12 048f6b4d bellard
};
13 048f6b4d bellard
14 048f6b4d bellard
/* c_iflag bits */
15 048f6b4d bellard
#define TARGET_IGNBRK  0000001
16 048f6b4d bellard
#define TARGET_BRKINT  0000002
17 048f6b4d bellard
#define TARGET_IGNPAR  0000004
18 048f6b4d bellard
#define TARGET_PARMRK  0000010
19 048f6b4d bellard
#define TARGET_INPCK   0000020
20 048f6b4d bellard
#define TARGET_ISTRIP  0000040
21 048f6b4d bellard
#define TARGET_INLCR   0000100
22 048f6b4d bellard
#define TARGET_IGNCR   0000200
23 048f6b4d bellard
#define TARGET_ICRNL   0000400
24 048f6b4d bellard
#define TARGET_IUCLC   0001000
25 048f6b4d bellard
#define TARGET_IXON    0002000
26 048f6b4d bellard
#define TARGET_IXANY   0004000
27 048f6b4d bellard
#define TARGET_IXOFF   0010000
28 048f6b4d bellard
#define TARGET_IMAXBEL 0020000
29 2601c356 ths
#define TARGET_IUTF8   0040000
30 048f6b4d bellard
31 048f6b4d bellard
/* c_oflag bits */
32 048f6b4d bellard
#define TARGET_OPOST   0000001
33 048f6b4d bellard
#define TARGET_OLCUC   0000002
34 048f6b4d bellard
#define TARGET_ONLCR   0000004
35 048f6b4d bellard
#define TARGET_OCRNL   0000010
36 048f6b4d bellard
#define TARGET_ONOCR   0000020
37 048f6b4d bellard
#define TARGET_ONLRET  0000040
38 048f6b4d bellard
#define TARGET_OFILL   0000100
39 048f6b4d bellard
#define TARGET_OFDEL   0000200
40 048f6b4d bellard
#define TARGET_NLDLY   0000400
41 048f6b4d bellard
#define   TARGET_NL0   0000000
42 048f6b4d bellard
#define   TARGET_NL1   0000400
43 048f6b4d bellard
#define TARGET_CRDLY   0003000
44 048f6b4d bellard
#define   TARGET_CR0   0000000
45 048f6b4d bellard
#define   TARGET_CR1   0001000
46 048f6b4d bellard
#define   TARGET_CR2   0002000
47 048f6b4d bellard
#define   TARGET_CR3   0003000
48 048f6b4d bellard
#define TARGET_TABDLY  0014000
49 048f6b4d bellard
#define   TARGET_TAB0  0000000
50 048f6b4d bellard
#define   TARGET_TAB1  0004000
51 048f6b4d bellard
#define   TARGET_TAB2  0010000
52 048f6b4d bellard
#define   TARGET_TAB3  0014000
53 048f6b4d bellard
#define   TARGET_XTABS 0014000
54 048f6b4d bellard
#define TARGET_BSDLY   0020000
55 048f6b4d bellard
#define   TARGET_BS0   0000000
56 048f6b4d bellard
#define   TARGET_BS1   0020000
57 048f6b4d bellard
#define TARGET_VTDLY   0040000
58 048f6b4d bellard
#define   TARGET_VT0   0000000
59 048f6b4d bellard
#define   TARGET_VT1   0040000
60 048f6b4d bellard
#define TARGET_FFDLY   0100000
61 048f6b4d bellard
#define   TARGET_FF0   0000000
62 048f6b4d bellard
#define   TARGET_FF1   0100000
63 048f6b4d bellard
64 048f6b4d bellard
/* c_cflag bit meaning */
65 048f6b4d bellard
#define TARGET_CBAUD   0010017
66 048f6b4d bellard
#define  TARGET_B0     0000000         /* hang up */
67 048f6b4d bellard
#define  TARGET_B50    0000001
68 048f6b4d bellard
#define  TARGET_B75    0000002
69 048f6b4d bellard
#define  TARGET_B110   0000003
70 048f6b4d bellard
#define  TARGET_B134   0000004
71 048f6b4d bellard
#define  TARGET_B150   0000005
72 048f6b4d bellard
#define  TARGET_B200   0000006
73 048f6b4d bellard
#define  TARGET_B300   0000007
74 048f6b4d bellard
#define  TARGET_B600   0000010
75 048f6b4d bellard
#define  TARGET_B1200  0000011
76 048f6b4d bellard
#define  TARGET_B1800  0000012
77 048f6b4d bellard
#define  TARGET_B2400  0000013
78 048f6b4d bellard
#define  TARGET_B4800  0000014
79 048f6b4d bellard
#define  TARGET_B9600  0000015
80 048f6b4d bellard
#define  TARGET_B19200 0000016
81 048f6b4d bellard
#define  TARGET_B38400 0000017
82 048f6b4d bellard
#define TARGET_EXTA B19200
83 048f6b4d bellard
#define TARGET_EXTB B38400
84 048f6b4d bellard
#define TARGET_CSIZE   0000060
85 048f6b4d bellard
#define   TARGET_CS5   0000000
86 048f6b4d bellard
#define   TARGET_CS6   0000020
87 048f6b4d bellard
#define   TARGET_CS7   0000040
88 048f6b4d bellard
#define   TARGET_CS8   0000060
89 048f6b4d bellard
#define TARGET_CSTOPB  0000100
90 048f6b4d bellard
#define TARGET_CREAD   0000200
91 048f6b4d bellard
#define TARGET_PARENB  0000400
92 048f6b4d bellard
#define TARGET_PARODD  0001000
93 048f6b4d bellard
#define TARGET_HUPCL   0002000
94 048f6b4d bellard
#define TARGET_CLOCAL  0004000
95 048f6b4d bellard
#define TARGET_CBAUDEX 0010000
96 2601c356 ths
#define  TARGET_BOTHER   0010000
97 2601c356 ths
#define  TARGET_B57600   0010001
98 2601c356 ths
#define  TARGET_B115200  0010002
99 2601c356 ths
#define  TARGET_B230400  0010003
100 2601c356 ths
#define  TARGET_B460800  0010004
101 2601c356 ths
#define  TARGET_B500000  0010005
102 2601c356 ths
#define  TARGET_B576000  0010006
103 2601c356 ths
#define  TARGET_B921600  0010007
104 2601c356 ths
#define  TARGET_B1000000 0010010
105 2601c356 ths
#define  TARGET_B1152000 0010011
106 2601c356 ths
#define  TARGET_B1500000 0010012
107 2601c356 ths
#define  TARGET_B2000000 0010013
108 2601c356 ths
#define  TARGET_B2500000 0010014
109 2601c356 ths
#define  TARGET_B3000000 0010015
110 2601c356 ths
#define  TARGET_B3500000 0010016
111 2601c356 ths
#define  TARGET_B4000000 0010017
112 048f6b4d bellard
#define TARGET_CIBAUD    002003600000  /* input baud rate (not used) */
113 2601c356 ths
#define TARGET_CMSPAR    010000000000  /* mark or space (stick) parity */
114 2601c356 ths
#define TARGET_CRTSCTS   020000000000  /* flow control */
115 048f6b4d bellard
116 048f6b4d bellard
/* c_lflag bits */
117 048f6b4d bellard
#define TARGET_ISIG    0000001
118 048f6b4d bellard
#define TARGET_ICANON  0000002
119 048f6b4d bellard
#define TARGET_XCASE   0000004
120 048f6b4d bellard
#define TARGET_ECHO    0000010
121 048f6b4d bellard
#define TARGET_ECHOE   0000020
122 048f6b4d bellard
#define TARGET_ECHOK   0000040
123 048f6b4d bellard
#define TARGET_ECHONL  0000100
124 048f6b4d bellard
#define TARGET_NOFLSH  0000200
125 2601c356 ths
#define TARGET_IEXTEN  0000400
126 048f6b4d bellard
#define TARGET_ECHOCTL 0001000
127 048f6b4d bellard
#define TARGET_ECHOPRT 0002000
128 048f6b4d bellard
#define TARGET_ECHOKE  0004000
129 048f6b4d bellard
#define TARGET_FLUSHO  0010000
130 048f6b4d bellard
#define TARGET_PENDIN  0040000
131 2601c356 ths
#define TARGET_TOSTOP  0100000
132 2601c356 ths
#define TARGET_ITOSTOP TARGET_TOSTOP
133 048f6b4d bellard
134 048f6b4d bellard
/* c_cc character offsets */
135 048f6b4d bellard
#define TARGET_VINTR        0
136 048f6b4d bellard
#define TARGET_VQUIT        1
137 048f6b4d bellard
#define TARGET_VERASE        2
138 048f6b4d bellard
#define TARGET_VKILL        3
139 2601c356 ths
#define TARGET_VMIN        4
140 048f6b4d bellard
#define TARGET_VTIME        5
141 2601c356 ths
#define TARGET_VEOL2        6
142 048f6b4d bellard
#define TARGET_VSWTC        7
143 048f6b4d bellard
#define TARGET_VSTART        8
144 048f6b4d bellard
#define TARGET_VSTOP        9
145 048f6b4d bellard
#define TARGET_VSUSP        10
146 2601c356 ths
/* VDSUSP not supported */
147 048f6b4d bellard
#define TARGET_VREPRINT        12
148 048f6b4d bellard
#define TARGET_VDISCARD        13
149 048f6b4d bellard
#define TARGET_VWERASE        14
150 048f6b4d bellard
#define TARGET_VLNEXT        15
151 2601c356 ths
#define TARGET_VEOF        16
152 2601c356 ths
#define TARGET_VEOL        17
153 048f6b4d bellard
154 048f6b4d bellard
/* ioctls */
155 048f6b4d bellard
156 c960bde1 bellard
#define TARGET_TCGETA                0x5401
157 c960bde1 bellard
#define TARGET_TCSETA                0x5402        /* Clashes with SNDCTL_TMR_START sound ioctl */
158 c960bde1 bellard
#define TARGET_TCSETAW                0x5403
159 c960bde1 bellard
#define TARGET_TCSETAF                0x5404
160 c960bde1 bellard
161 c960bde1 bellard
#define TARGET_TCSBRK                0x5405
162 c960bde1 bellard
#define TARGET_TCXONC                0x5406
163 c960bde1 bellard
#define TARGET_TCFLSH                0x5407
164 c960bde1 bellard
165 c960bde1 bellard
#define TARGET_TCGETS                0x540d
166 c960bde1 bellard
#define TARGET_TCSETS                0x540e
167 c960bde1 bellard
#define TARGET_TCSETSW                0x540f
168 c960bde1 bellard
#define TARGET_TCSETSF                0x5410
169 c960bde1 bellard
170 c960bde1 bellard
#define TARGET_TIOCEXCL        0x740d                /* set exclusive use of tty */
171 c960bde1 bellard
#define TARGET_TIOCNXCL        0x740e                /* reset exclusive use of tty */
172 c960bde1 bellard
#define TARGET_TIOCOUTQ        0x7472                /* output queue size */
173 2601c356 ths
#define TARGET_TIOCSTI        0x5472                /* simulate terminal input */
174 c960bde1 bellard
#define TARGET_TIOCMGET        0x741d                /* get all modem bits */
175 c960bde1 bellard
#define TARGET_TIOCMBIS        0x741b                /* bis modem bits */
176 c960bde1 bellard
#define TARGET_TIOCMBIC        0x741c                /* bic modem bits */
177 c960bde1 bellard
#define TARGET_TIOCMSET        0x741a                /* set all modem bits */
178 c960bde1 bellard
#define TARGET_TIOCPKT                0x5470                /* pty: set/clear packet mode */
179 c960bde1 bellard
#define         TARGET_TIOCPKT_DATA                0x00        /* data packet */
180 c960bde1 bellard
#define         TARGET_TIOCPKT_FLUSHREAD        0x01        /* flush packet */
181 c960bde1 bellard
#define         TARGET_TIOCPKT_FLUSHWRITE        0x02        /* flush packet */
182 c960bde1 bellard
#define         TARGET_TIOCPKT_STOP                0x04        /* stop output */
183 c960bde1 bellard
#define         TARGET_TIOCPKT_START                0x08        /* start output */
184 c960bde1 bellard
#define         TARGET_TIOCPKT_NOSTOP                0x10        /* no more ^S, ^Q */
185 c960bde1 bellard
#define         TARGET_TIOCPKT_DOSTOP                0x20        /* now do ^S ^Q */
186 c960bde1 bellard
/* #define  TIOCPKT_IOCTL                0x40        state change of pty driver */
187 c960bde1 bellard
#define TARGET_TIOCSWINSZ        TARGET_IOW('t', 103, struct winsize)        /* set window size */
188 c960bde1 bellard
#define TARGET_TIOCGWINSZ        TARGET_IOR('t', 104, struct winsize)        /* get window size */
189 c960bde1 bellard
#define TARGET_TIOCNOTTY        0x5471                /* void tty association */
190 c960bde1 bellard
#define TARGET_TIOCSETD        0x7401
191 c960bde1 bellard
#define TARGET_TIOCGETD        0x7400
192 c960bde1 bellard
193 c960bde1 bellard
#define TARGET_FIOCLEX                0x6601
194 c960bde1 bellard
#define TARGET_FIONCLEX        0x6602
195 c960bde1 bellard
#define TARGET_FIOASYNC        0x667d
196 c960bde1 bellard
#define TARGET_FIONBIO                0x667e
197 c960bde1 bellard
#define TARGET_FIOQSIZE        0x667f
198 c960bde1 bellard
199 c960bde1 bellard
#define TARGET_TIOCGLTC        0x7474                        /* get special local chars */
200 c960bde1 bellard
#define TARGET_TIOCSLTC        0x7475                        /* set special local chars */
201 c960bde1 bellard
#define TARGET_TIOCSPGRP        TARGET_IOW('t', 118, int)        /* set pgrp of tty */
202 c960bde1 bellard
#define TARGET_TIOCGPGRP        TARGET_IOR('t', 119, int)        /* get pgrp of tty */
203 c960bde1 bellard
#define TARGET_TIOCCONS        TARGET_IOW('t', 120, int)        /* become virtual console */
204 c960bde1 bellard
205 c960bde1 bellard
#define TARGET_FIONREAD        0x467f
206 048f6b4d bellard
#define TARGET_TIOCINQ                TARGET_FIONREAD
207 c960bde1 bellard
208 c960bde1 bellard
#define TARGET_TIOCGETP        0x7408
209 c960bde1 bellard
#define TARGET_TIOCSETP        0x7409
210 c960bde1 bellard
#define TARGET_TIOCSETN        0x740a                        /* TIOCSETP wo flush */
211 c960bde1 bellard
212 c960bde1 bellard
/* #define TARGET_TIOCSETA        TARGET_IOW('t', 20, struct termios) set termios struct */
213 c960bde1 bellard
/* #define TARGET_TIOCSETAW        TARGET_IOW('t', 21, struct termios) drain output, set */
214 c960bde1 bellard
/* #define TARGET_TIOCSETAF        TARGET_IOW('t', 22, struct termios) drn out, fls in, set */
215 c960bde1 bellard
/* #define TARGET_TIOCGETD        TARGET_IOR('t', 26, int)        get line discipline */
216 c960bde1 bellard
/* #define TARGET_TIOCSETD        TARGET_IOW('t', 27, int)        set line discipline */
217 c960bde1 bellard
                                                /* 127-124 compat */
218 c960bde1 bellard
219 048f6b4d bellard
#define TARGET_TIOCSBRK        0x5427  /* BSD compatibility */
220 048f6b4d bellard
#define TARGET_TIOCCBRK        0x5428  /* BSD compatibility */
221 c960bde1 bellard
#define TARGET_TIOCGSID        0x7416  /* Return the session ID of FD */
222 048f6b4d bellard
#define TARGET_TIOCGPTN        TARGET_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
223 048f6b4d bellard
#define TARGET_TIOCSPTLCK        TARGET_IOW('T',0x31, int)  /* Lock/unlock Pty */
224 048f6b4d bellard
225 c960bde1 bellard
/* I hope the range from 0x5480 on is free ... */
226 c960bde1 bellard
#define TARGET_TIOCSCTTY        0x5480                /* become controlling tty */
227 c960bde1 bellard
#define TARGET_TIOCGSOFTCAR        0x5481
228 c960bde1 bellard
#define TARGET_TIOCSSOFTCAR        0x5482
229 c960bde1 bellard
#define TARGET_TIOCLINUX        0x5483
230 c960bde1 bellard
#define TARGET_TIOCGSERIAL        0x5484
231 c960bde1 bellard
#define TARGET_TIOCSSERIAL        0x5485
232 c960bde1 bellard
#define TARGET_TCSBRKP                0x5486        /* Needed for POSIX tcsendbreak() */
233 c960bde1 bellard
#define TARGET_TIOCSERCONFIG        0x5488
234 c960bde1 bellard
#define TARGET_TIOCSERGWILD        0x5489
235 c960bde1 bellard
#define TARGET_TIOCSERSWILD        0x548a
236 c960bde1 bellard
#define TARGET_TIOCGLCKTRMIOS        0x548b
237 c960bde1 bellard
#define TARGET_TIOCSLCKTRMIOS        0x548c
238 c960bde1 bellard
#define TARGET_TIOCSERGSTRUCT        0x548d /* For debugging only */
239 c960bde1 bellard
#define TARGET_TIOCSERGETLSR   0x548e /* Get line status register */
240 c960bde1 bellard
#define TARGET_TIOCSERGETMULTI 0x548f /* Get multiport config  */
241 c960bde1 bellard
#define TARGET_TIOCSERSETMULTI 0x5490 /* Set multiport config */
242 c960bde1 bellard
#define TARGET_TIOCMIWAIT      0x5491 /* wait for a change on serial input line(s) */
243 c960bde1 bellard
#define TARGET_TIOCGICOUNT     0x5492 /* read serial port inline interrupt counts */
244 c960bde1 bellard
#define TARGET_TIOCGHAYESESP        0x5493 /* Get Hayes ESP configuration */
245 c960bde1 bellard
#define TARGET_TIOCSHAYESESP        0x5494 /* Set Hayes ESP configuration */