OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [conts/] [posix/] [libposix/] [include/] [posix/] [bits/] [termios.h] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
/* termios type and macro definitions.  Linux version.
2
   Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2003, 2005
3
        Free Software Foundation, Inc.
4
   This file is part of the GNU C Library.
5
 
6
   The GNU C Library is free software; you can redistribute it and/or
7
   modify it under the terms of the GNU Lesser General Public
8
   License as published by the Free Software Foundation; either
9
   version 2.1 of the License, or (at your option) any later version.
10
 
11
   The GNU C Library is distributed in the hope that it will be useful,
12
   but WITHOUT ANY WARRANTY; without even the implied warranty of
13
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14
   Lesser General Public License for more details.
15
 
16
   You should have received a copy of the GNU Lesser General Public
17
   License along with the GNU C Library; if not, write to the Free
18
   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
19
   02111-1307 USA.  */
20
 
21
#ifndef _TERMIOS_H
22
# error "Never include <bits/termios.h> directly; use <termios.h> instead."
23
#endif
24
 
25
typedef unsigned char   cc_t;
26
typedef unsigned int    speed_t;
27
typedef unsigned int    tcflag_t;
28
 
29
#define NCCS 32
30
struct termios
31
  {
32
    tcflag_t c_iflag;           /* input mode flags */
33
    tcflag_t c_oflag;           /* output mode flags */
34
    tcflag_t c_cflag;           /* control mode flags */
35
    tcflag_t c_lflag;           /* local mode flags */
36
    cc_t c_line;                        /* line discipline */
37
    cc_t c_cc[NCCS];            /* control characters */
38
    speed_t c_ispeed;           /* input speed */
39
    speed_t c_ospeed;           /* output speed */
40
#define _HAVE_STRUCT_TERMIOS_C_ISPEED 1
41
#define _HAVE_STRUCT_TERMIOS_C_OSPEED 1
42
  };
43
 
44
/* c_cc characters */
45
#define VINTR 0
46
#define VQUIT 1
47
#define VERASE 2
48
#define VKILL 3
49
#define VEOF 4
50
#define VTIME 5
51
#define VMIN 6
52
#define VSWTC 7
53
#define VSTART 8
54
#define VSTOP 9
55
#define VSUSP 10
56
#define VEOL 11
57
#define VREPRINT 12
58
#define VDISCARD 13
59
#define VWERASE 14
60
#define VLNEXT 15
61
#define VEOL2 16
62
 
63
/* c_iflag bits */
64
#define IGNBRK  0000001
65
#define BRKINT  0000002
66
#define IGNPAR  0000004
67
#define PARMRK  0000010
68
#define INPCK   0000020
69
#define ISTRIP  0000040
70
#define INLCR   0000100
71
#define IGNCR   0000200
72
#define ICRNL   0000400
73
#define IUCLC   0001000
74
#define IXON    0002000
75
#define IXANY   0004000
76
#define IXOFF   0010000
77
#define IMAXBEL 0020000
78
#define IUTF8   0040000
79
 
80
/* c_oflag bits */
81
#define OPOST   0000001
82
#define OLCUC   0000002
83
#define ONLCR   0000004
84
#define OCRNL   0000010
85
#define ONOCR   0000020
86
#define ONLRET  0000040
87
#define OFILL   0000100
88
#define OFDEL   0000200
89
#if defined __USE_MISC || defined __USE_XOPEN
90
# define NLDLY  0000400
91
# define   NL0  0000000
92
# define   NL1  0000400
93
# define CRDLY  0003000
94
# define   CR0  0000000
95
# define   CR1  0001000
96
# define   CR2  0002000
97
# define   CR3  0003000
98
# define TABDLY 0014000
99
# define   TAB0 0000000
100
# define   TAB1 0004000
101
# define   TAB2 0010000
102
# define   TAB3 0014000
103
# define BSDLY  0020000
104
# define   BS0  0000000
105
# define   BS1  0020000
106
# define FFDLY  0100000
107
# define   FF0  0000000
108
# define   FF1  0100000
109
#endif
110
 
111
#define VTDLY   0040000
112
#define   VT0   0000000
113
#define   VT1   0040000
114
 
115
#ifdef __USE_MISC
116
# define XTABS  0014000
117
#endif
118
 
119
/* c_cflag bit meaning */
120
#ifdef __USE_MISC
121
# define CBAUD  0010017
122
#endif
123
#define  B0     0000000         /* hang up */
124
#define  B50    0000001
125
#define  B75    0000002
126
#define  B110   0000003
127
#define  B134   0000004
128
#define  B150   0000005
129
#define  B200   0000006
130
#define  B300   0000007
131
#define  B600   0000010
132
#define  B1200  0000011
133
#define  B1800  0000012
134
#define  B2400  0000013
135
#define  B4800  0000014
136
#define  B9600  0000015
137
#define  B19200 0000016
138
#define  B38400 0000017
139
#ifdef __USE_MISC
140
# define EXTA B19200
141
# define EXTB B38400
142
#endif
143
#define CSIZE   0000060
144
#define   CS5   0000000
145
#define   CS6   0000020
146
#define   CS7   0000040
147
#define   CS8   0000060
148
#define CSTOPB  0000100
149
#define CREAD   0000200
150
#define PARENB  0000400
151
#define PARODD  0001000
152
#define HUPCL   0002000
153
#define CLOCAL  0004000
154
#ifdef __USE_MISC
155
# define CBAUDEX 0010000
156
#endif
157
#define  B57600   0010001
158
#define  B115200  0010002
159
#if 0 /* limited on uClibc, keep in sync w/ cfsetspeed.c */
160
#define  B230400  0010003
161
#define  B460800  0010004
162
#define  B500000  0010005
163
#define  B576000  0010006
164
#define  B921600  0010007
165
#define  B1000000 0010010
166
#define  B1152000 0010011
167
#define  B1500000 0010012
168
#define  B2000000 0010013
169
#define  B2500000 0010014
170
#define  B3000000 0010015
171
#define  B3500000 0010016
172
#define  B4000000 0010017
173
#define __MAX_BAUD B4000000
174
#else
175
#define __MAX_BAUD B115200
176
#endif
177
#ifdef __USE_MISC
178
# define CIBAUD   002003600000          /* input baud rate (not used) */
179
# define CMSPAR   010000000000          /* mark or space (stick) parity */
180
# define CRTSCTS  020000000000          /* flow control */
181
#endif
182
 
183
/* c_lflag bits */
184
#define ISIG    0000001
185
#define ICANON  0000002
186
#if defined __USE_MISC || defined __USE_XOPEN
187
# define XCASE  0000004
188
#endif
189
#define ECHO    0000010
190
#define ECHOE   0000020
191
#define ECHOK   0000040
192
#define ECHONL  0000100
193
#define NOFLSH  0000200
194
#define TOSTOP  0000400
195
#ifdef __USE_MISC
196
# define ECHOCTL 0001000
197
# define ECHOPRT 0002000
198
# define ECHOKE  0004000
199
# define FLUSHO  0010000
200
# define PENDIN  0040000
201
#endif
202
#define IEXTEN  0100000
203
 
204
/* tcflow() and TCXONC use these */
205
#define TCOOFF          0
206
#define TCOON           1
207
#define TCIOFF          2
208
#define TCION           3
209
 
210
/* tcflush() and TCFLSH use these */
211
#define TCIFLUSH        0
212
#define TCOFLUSH        1
213
#define TCIOFLUSH       2
214
 
215
/* tcsetattr uses these */
216
#define TCSANOW         0
217
#define TCSADRAIN       1
218
#define TCSAFLUSH       2
219
 
220
 
221
#define _IOT_termios /* Hurd ioctl type field.  */ \
222
  _IOT (_IOTS (cflag_t), 4, _IOTS (cc_t), NCCS, _IOTS (speed_t), 2)

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.