| Viewing file:  termbits.h (5.66 KB)      -rw-r--r-- Select action/file-type:
 
  (+) |  (+) |  (+) | Code (+) | Session (+) |  (+) | SDB (+) |  (+) |  (+) |  (+) |  (+) |  (+) | 
 
/* $Id: termbits.h,v 1.1 2000/07/10 16:32:31 bjornw Exp $ */
 #ifndef __ARCH_ETRAX100_TERMBITS_H__
 #define __ARCH_ETRAX100_TERMBITS_H__
 
 #include <linux/posix_types.h>
 
 typedef unsigned char    cc_t;
 typedef unsigned int    speed_t;
 typedef unsigned int    tcflag_t;
 
 #define NCCS 19
 struct termios {
 tcflag_t c_iflag;        /* input mode flags */
 tcflag_t c_oflag;        /* output mode flags */
 tcflag_t c_cflag;        /* control mode flags */
 tcflag_t c_lflag;        /* local mode flags */
 cc_t c_line;            /* line discipline */
 cc_t c_cc[NCCS];        /* control characters */
 };
 
 struct termios2 {
 tcflag_t c_iflag;        /* input mode flags */
 tcflag_t c_oflag;        /* output mode flags */
 tcflag_t c_cflag;        /* control mode flags */
 tcflag_t c_lflag;        /* local mode flags */
 cc_t c_line;            /* line discipline */
 cc_t c_cc[NCCS];        /* control characters */
 speed_t c_ispeed;        /* input speed */
 speed_t c_ospeed;        /* output speed */
 };
 
 struct ktermios {
 tcflag_t c_iflag;        /* input mode flags */
 tcflag_t c_oflag;        /* output mode flags */
 tcflag_t c_cflag;        /* control mode flags */
 tcflag_t c_lflag;        /* local mode flags */
 cc_t c_line;            /* line discipline */
 cc_t c_cc[NCCS];        /* control characters */
 speed_t c_ispeed;        /* input speed */
 speed_t c_ospeed;        /* output speed */
 };
 
 /* c_cc characters */
 #define VINTR 0
 #define VQUIT 1
 #define VERASE 2
 #define VKILL 3
 #define VEOF 4
 #define VTIME 5
 #define VMIN 6
 #define VSWTC 7
 #define VSTART 8
 #define VSTOP 9
 #define VSUSP 10
 #define VEOL 11
 #define VREPRINT 12
 #define VDISCARD 13
 #define VWERASE 14
 #define VLNEXT 15
 #define VEOL2 16
 
 /* c_iflag bits */
 #define IGNBRK    0000001
 #define BRKINT    0000002
 #define IGNPAR    0000004
 #define PARMRK    0000010
 #define INPCK    0000020
 #define ISTRIP    0000040
 #define INLCR    0000100
 #define IGNCR    0000200
 #define ICRNL    0000400
 #define IUCLC    0001000
 #define IXON    0002000
 #define IXANY    0004000
 #define IXOFF    0010000
 #define IMAXBEL    0020000
 #define IUTF8    0040000
 
 /* c_oflag bits */
 #define OPOST    0000001
 #define OLCUC    0000002
 #define ONLCR    0000004
 #define OCRNL    0000010
 #define ONOCR    0000020
 #define ONLRET    0000040
 #define OFILL    0000100
 #define OFDEL    0000200
 #define NLDLY    0000400
 #define   NL0    0000000
 #define   NL1    0000400
 #define CRDLY    0003000
 #define   CR0    0000000
 #define   CR1    0001000
 #define   CR2    0002000
 #define   CR3    0003000
 #define TABDLY    0014000
 #define   TAB0    0000000
 #define   TAB1    0004000
 #define   TAB2    0010000
 #define   TAB3    0014000
 #define   XTABS    0014000
 #define BSDLY    0020000
 #define   BS0    0000000
 #define   BS1    0020000
 #define VTDLY    0040000
 #define   VT0    0000000
 #define   VT1    0040000
 #define FFDLY    0100000
 #define   FF0    0000000
 #define   FF1    0100000
 
 /* c_cflag bit meaning */
 /*
 *     3             2            1
 *    10 987 654 321 098 765 432 109 876 543 210
 *                             |           | ||| CBAUD
 *                                         obaud
 *
 *                                       ||CSIZE
 *
 *                                     |CSTOP
 *                                    |CREAD
 *                                   |CPARENB
 *
 *                                 |CPARODD
 *                                |HUPCL
 *                               |CLOCAL
 *                             |CBAUDEX
 *    10 987 654 321 098 765 432 109 876 543 210
 *        |           || ||   CIBAUD, IBSHIFT=16
 *                    ibaud
 *     |CMSPAR
 *    | CRTSCTS
 *       x x xxx xxx x     x xx Free bits
 */
 
 #define CBAUD    0010017
 #define  B0    0000000        /* hang up */
 #define  B50    0000001
 #define  B75    0000002
 #define  B110    0000003
 #define  B134    0000004
 #define  B150    0000005
 #define  B200    0000006
 #define  B300    0000007
 #define  B600    0000010
 #define  B1200    0000011
 #define  B1800    0000012
 #define  B2400    0000013
 #define  B4800    0000014
 #define  B9600    0000015
 #define  B19200    0000016
 #define  B38400    0000017
 #define EXTA B19200
 #define EXTB B38400
 #define CSIZE    0000060
 #define   CS5    0000000
 #define   CS6    0000020
 #define   CS7    0000040
 #define   CS8    0000060
 #define CSTOPB    0000100
 #define CREAD    0000200
 #define PARENB    0000400
 #define PARODD    0001000
 #define HUPCL    0002000
 #define CLOCAL    0004000
 #define CBAUDEX 0010000
 #define  BOTHER  0010000
 #define  B57600  0010001
 #define  B115200 0010002
 #define  B230400 0010003
 #define  B460800 0010004
 
 /* Unsupported rates, but needed to avoid compile error. */
 #define   B500000 0010005
 #define   B576000 0010006
 #define  B1000000 0010010
 #define  B1152000 0010011
 #define  B1500000 0010012
 #define  B2000000 0010013
 #define  B2500000 0010014
 #define  B3000000 0010015
 #define  B3500000 0010016
 #define  B4000000 0010017
 
 /* etrax supports these additional three baud rates */
 #define  B921600   0010005
 #define  B1843200  0010006
 #define  B6250000  0010007
 /* ETRAX FS supports this as well */
 #define  B12500000 0010010
 #define CIBAUD      002003600000    /* input baud rate (used in v32) */
 /* The values for CIBAUD bits are the same as the values for CBAUD and CBAUDEX
 * shifted left IBSHIFT bits.
 */
 #define IBSHIFT   16
 #define CMSPAR    010000000000 /* mark or space (stick) parity - PARODD=space*/
 #define CRTSCTS      020000000000        /* flow control */
 
 /* c_lflag bits */
 #define ISIG    0000001
 #define ICANON    0000002
 #define XCASE    0000004
 #define ECHO    0000010
 #define ECHOE    0000020
 #define ECHOK    0000040
 #define ECHONL    0000100
 #define NOFLSH    0000200
 #define TOSTOP    0000400
 #define ECHOCTL    0001000
 #define ECHOPRT    0002000
 #define ECHOKE    0004000
 #define FLUSHO    0010000
 #define PENDIN    0040000
 #define IEXTEN    0100000
 #define EXTPROC    0200000
 
 /* tcflow() and TCXONC use these */
 #define    TCOOFF        0
 #define    TCOON        1
 #define    TCIOFF        2
 #define    TCION        3
 
 /* tcflush() and TCFLSH use these */
 #define    TCIFLUSH    0
 #define    TCOFLUSH    1
 #define    TCIOFLUSH    2
 
 /* tcsetattr uses these */
 #define    TCSANOW        0
 #define    TCSADRAIN    1
 #define    TCSAFLUSH    2
 
 #endif
 
 |