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