Dr Andrew Scott G7VAV

My photo
 
June 2025
Mo Tu We Th Fr Sa Su
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6


termbits.h
001: #ifndef __ASM_GENERIC_TERMBITS_H
002: #define __ASM_GENERIC_TERMBITS_H
003: 
004: #include <linux/posix_types.h>
005: 
006: typedef unsigned char   cc_t;
007: typedef unsigned int    speed_t;
008: typedef unsigned int    tcflag_t;
009: 
010: #define NCCS 19
011: struct termios {
012:         tcflag_t c_iflag;               /* input mode flags */
013:         tcflag_t c_oflag;               /* output mode flags */
014:         tcflag_t c_cflag;               /* control mode flags */
015:         tcflag_t c_lflag;               /* local mode flags */
016:         cc_t c_line;                    /* line discipline */
017:         cc_t c_cc[NCCS];                /* control characters */
018: };
019: 
020: struct termios2 {
021:         tcflag_t c_iflag;               /* input mode flags */
022:         tcflag_t c_oflag;               /* output mode flags */
023:         tcflag_t c_cflag;               /* control mode flags */
024:         tcflag_t c_lflag;               /* local mode flags */
025:         cc_t c_line;                    /* line discipline */
026:         cc_t c_cc[NCCS];                /* control characters */
027:         speed_t c_ispeed;               /* input speed */
028:         speed_t c_ospeed;               /* output speed */
029: };
030: 
031: struct ktermios {
032:         tcflag_t c_iflag;               /* input mode flags */
033:         tcflag_t c_oflag;               /* output mode flags */
034:         tcflag_t c_cflag;               /* control mode flags */
035:         tcflag_t c_lflag;               /* local mode flags */
036:         cc_t c_line;                    /* line discipline */
037:         cc_t c_cc[NCCS];                /* control characters */
038:         speed_t c_ispeed;               /* input speed */
039:         speed_t c_ospeed;               /* output speed */
040: };
041: 
042: /* c_cc characters */
043: #define VINTR 0
044: #define VQUIT 1
045: #define VERASE 2
046: #define VKILL 3
047: #define VEOF 4
048: #define VTIME 5
049: #define VMIN 6
050: #define VSWTC 7
051: #define VSTART 8
052: #define VSTOP 9
053: #define VSUSP 10
054: #define VEOL 11
055: #define VREPRINT 12
056: #define VDISCARD 13
057: #define VWERASE 14
058: #define VLNEXT 15
059: #define VEOL2 16
060: 
061: /* c_iflag bits */
062: #define IGNBRK  0000001
063: #define BRKINT  0000002
064: #define IGNPAR  0000004
065: #define PARMRK  0000010
066: #define INPCK   0000020
067: #define ISTRIP  0000040
068: #define INLCR   0000100
069: #define IGNCR   0000200
070: #define ICRNL   0000400
071: #define IUCLC   0001000
072: #define IXON    0002000
073: #define IXANY   0004000
074: #define IXOFF   0010000
075: #define IMAXBEL 0020000
076: #define IUTF8   0040000
077: 
078: /* c_oflag bits */
079: #define OPOST   0000001
080: #define OLCUC   0000002
081: #define ONLCR   0000004
082: #define OCRNL   0000010
083: #define ONOCR   0000020
084: #define ONLRET  0000040
085: #define OFILL   0000100
086: #define OFDEL   0000200
087: #define NLDLY   0000400
088: #define   NL0   0000000
089: #define   NL1   0000400
090: #define CRDLY   0003000
091: #define   CR0   0000000
092: #define   CR1   0001000
093: #define   CR2   0002000
094: #define   CR3   0003000
095: #define TABDLY  0014000
096: #define   TAB0  0000000
097: #define   TAB1  0004000
098: #define   TAB2  0010000
099: #define   TAB3  0014000
100: #define   XTABS 0014000
101: #define BSDLY   0020000
102: #define   BS0   0000000
103: #define   BS1   0020000
104: #define VTDLY   0040000
105: #define   VT0   0000000
106: #define   VT1   0040000
107: #define FFDLY   0100000
108: #define   FF0   0000000
109: #define   FF1   0100000
110: 
111: /* c_cflag bit meaning */
112: #define CBAUD   0010017
113: #define  B0     0000000         /* hang up */
114: #define  B50    0000001
115: #define  B75    0000002
116: #define  B110   0000003
117: #define  B134   0000004
118: #define  B150   0000005
119: #define  B200   0000006
120: #define  B300   0000007
121: #define  B600   0000010
122: #define  B1200  0000011
123: #define  B1800  0000012
124: #define  B2400  0000013
125: #define  B4800  0000014
126: #define  B9600  0000015
127: #define  B19200 0000016
128: #define  B38400 0000017
129: #define EXTA B19200
130: #define EXTB B38400
131: #define CSIZE   0000060
132: #define   CS5   0000000
133: #define   CS6   0000020
134: #define   CS7   0000040
135: #define   CS8   0000060
136: #define CSTOPB  0000100
137: #define CREAD   0000200
138: #define PARENB  0000400
139: #define PARODD  0001000
140: #define HUPCL   0002000
141: #define CLOCAL  0004000
142: #define CBAUDEX 0010000
143: #define    BOTHER 0010000
144: #define    B57600 0010001
145: #define   B115200 0010002
146: #define   B230400 0010003
147: #define   B460800 0010004
148: #define   B500000 0010005
149: #define   B576000 0010006
150: #define   B921600 0010007
151: #define  B1000000 0010010
152: #define  B1152000 0010011
153: #define  B1500000 0010012
154: #define  B2000000 0010013
155: #define  B2500000 0010014
156: #define  B3000000 0010015
157: #define  B3500000 0010016
158: #define  B4000000 0010017
159: #define CIBAUD    002003600000  /* input baud rate */
160: #define CMSPAR    010000000000  /* mark or space (stick) parity */
161: #define CRTSCTS   020000000000  /* flow control */
162: 
163: #define IBSHIFT   16            /* Shift from CBAUD to CIBAUD */
164: 
165: /* c_lflag bits */
166: #define ISIG    0000001
167: #define ICANON  0000002
168: #define XCASE   0000004
169: #define ECHO    0000010
170: #define ECHOE   0000020
171: #define ECHOK   0000040
172: #define ECHONL  0000100
173: #define NOFLSH  0000200
174: #define TOSTOP  0000400
175: #define ECHOCTL 0001000
176: #define ECHOPRT 0002000
177: #define ECHOKE  0004000
178: #define FLUSHO  0010000
179: #define PENDIN  0040000
180: #define IEXTEN  0100000
181: #define EXTPROC 0200000
182: 
183: /* tcflow() and TCXONC use these */
184: #define TCOOFF          0
185: #define TCOON           1
186: #define TCIOFF          2
187: #define TCION           3
188: 
189: /* tcflush() and TCFLSH use these */
190: #define TCIFLUSH        0
191: #define TCOFLUSH        1
192: #define TCIOFLUSH       2
193: 
194: /* tcsetattr uses these */
195: #define TCSANOW         0
196: #define TCSADRAIN       1
197: #define TCSAFLUSH       2
198: 
199: #endif /* __ASM_GENERIC_TERMBITS_H */
200: 


for client (none)
© Andrew Scott 2006 - 2025,
All Rights Reserved
http://www.andrew-scott.uk/
Andrew Scott
http://www.andrew-scott.co.uk/