home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / arch / cris / include / asm / termbits.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-12-24  |  5.6 KB  |  235 lines

  1. /* $Id: termbits.h,v 1.1 2000/07/10 16:32:31 bjornw Exp $ */
  2.  
  3. #ifndef __ARCH_ETRAX100_TERMBITS_H__
  4. #define __ARCH_ETRAX100_TERMBITS_H__
  5.  
  6. #include <linux/posix_types.h>
  7.  
  8. typedef unsigned char    cc_t;
  9. typedef unsigned int    speed_t;
  10. typedef unsigned int    tcflag_t;
  11.  
  12. #define NCCS 19
  13. struct termios {
  14.     tcflag_t c_iflag;        /* input mode flags */
  15.     tcflag_t c_oflag;        /* output mode flags */
  16.     tcflag_t c_cflag;        /* control mode flags */
  17.     tcflag_t c_lflag;        /* local mode flags */
  18.     cc_t c_line;            /* line discipline */
  19.     cc_t c_cc[NCCS];        /* control characters */
  20. };
  21.  
  22. struct termios2 {
  23.     tcflag_t c_iflag;        /* input mode flags */
  24.     tcflag_t c_oflag;        /* output mode flags */
  25.     tcflag_t c_cflag;        /* control mode flags */
  26.     tcflag_t c_lflag;        /* local mode flags */
  27.     cc_t c_line;            /* line discipline */
  28.     cc_t c_cc[NCCS];        /* control characters */
  29.     speed_t c_ispeed;        /* input speed */
  30.     speed_t c_ospeed;        /* output speed */
  31. };
  32.  
  33. struct ktermios {
  34.     tcflag_t c_iflag;        /* input mode flags */
  35.     tcflag_t c_oflag;        /* output mode flags */
  36.     tcflag_t c_cflag;        /* control mode flags */
  37.     tcflag_t c_lflag;        /* local mode flags */
  38.     cc_t c_line;            /* line discipline */
  39.     cc_t c_cc[NCCS];        /* control characters */
  40.     speed_t c_ispeed;        /* input speed */
  41.     speed_t c_ospeed;        /* output speed */
  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. #define NLDLY    0000400
  90. #define   NL0    0000000
  91. #define   NL1    0000400
  92. #define CRDLY    0003000
  93. #define   CR0    0000000
  94. #define   CR1    0001000
  95. #define   CR2    0002000
  96. #define   CR3    0003000
  97. #define TABDLY    0014000
  98. #define   TAB0    0000000
  99. #define   TAB1    0004000
  100. #define   TAB2    0010000
  101. #define   TAB3    0014000
  102. #define   XTABS    0014000
  103. #define BSDLY    0020000
  104. #define   BS0    0000000
  105. #define   BS1    0020000
  106. #define VTDLY    0040000
  107. #define   VT0    0000000
  108. #define   VT1    0040000
  109. #define FFDLY    0100000
  110. #define   FF0    0000000
  111. #define   FF1    0100000
  112.  
  113. /* c_cflag bit meaning */
  114. /*
  115.  *     3             2            1
  116.  *    10 987 654 321 098 765 432 109 876 543 210
  117.  *                             |           | ||| CBAUD
  118.  *                                         obaud    
  119.  *
  120.  *                                       ||CSIZE
  121.  *
  122.  *                                     |CSTOP
  123.  *                                    |CREAD
  124.  *                                   |CPARENB
  125.  *
  126.  *                                 |CPARODD 
  127.  *                                |HUPCL
  128.  *                               |CLOCAL
  129.  *                             |CBAUDEX
  130.  *    10 987 654 321 098 765 432 109 876 543 210
  131.  *        |           || ||   CIBAUD, IBSHIFT=16
  132.  *                    ibaud
  133.  *     |CMSPAR
  134.  *    | CRTSCTS
  135.  *       x x xxx xxx x     x xx Free bits
  136.  */
  137.  
  138. #define CBAUD    0010017
  139. #define  B0    0000000        /* hang up */
  140. #define  B50    0000001
  141. #define  B75    0000002
  142. #define  B110    0000003
  143. #define  B134    0000004
  144. #define  B150    0000005
  145. #define  B200    0000006
  146. #define  B300    0000007
  147. #define  B600    0000010
  148. #define  B1200    0000011
  149. #define  B1800    0000012
  150. #define  B2400    0000013
  151. #define  B4800    0000014
  152. #define  B9600    0000015
  153. #define  B19200    0000016
  154. #define  B38400    0000017
  155. #define EXTA B19200
  156. #define EXTB B38400
  157. #define CSIZE    0000060
  158. #define   CS5    0000000
  159. #define   CS6    0000020
  160. #define   CS7    0000040
  161. #define   CS8    0000060
  162. #define CSTOPB    0000100
  163. #define CREAD    0000200
  164. #define PARENB    0000400
  165. #define PARODD    0001000
  166. #define HUPCL    0002000
  167. #define CLOCAL    0004000
  168. #define CBAUDEX 0010000
  169. #define  BOTHER  0010000
  170. #define  B57600  0010001
  171. #define  B115200 0010002
  172. #define  B230400 0010003
  173. #define  B460800 0010004
  174.  
  175. /* Unsupported rates, but needed to avoid compile error. */
  176. #define   B500000 0010005
  177. #define   B576000 0010006
  178. #define  B1000000 0010010
  179. #define  B1152000 0010011
  180. #define  B1500000 0010012
  181. #define  B2000000 0010013
  182. #define  B2500000 0010014
  183. #define  B3000000 0010015
  184. #define  B3500000 0010016
  185. #define  B4000000 0010017
  186.  
  187. /* etrax supports these additional three baud rates */
  188. #define  B921600   0010005
  189. #define  B1843200  0010006
  190. #define  B6250000  0010007
  191. /* ETRAX FS supports this as well */
  192. #define  B12500000 0010010
  193. #define CIBAUD      002003600000    /* input baud rate (used in v32) */
  194. /* The values for CIBAUD bits are the same as the values for CBAUD and CBAUDEX
  195.  * shifted left IBSHIFT bits.
  196.  */
  197. #define IBSHIFT   16
  198. #define CMSPAR    010000000000 /* mark or space (stick) parity - PARODD=space*/
  199. #define CRTSCTS      020000000000        /* flow control */
  200.  
  201. /* c_lflag bits */
  202. #define ISIG    0000001
  203. #define ICANON    0000002
  204. #define XCASE    0000004
  205. #define ECHO    0000010
  206. #define ECHOE    0000020
  207. #define ECHOK    0000040
  208. #define ECHONL    0000100
  209. #define NOFLSH    0000200
  210. #define TOSTOP    0000400
  211. #define ECHOCTL    0001000
  212. #define ECHOPRT    0002000
  213. #define ECHOKE    0004000
  214. #define FLUSHO    0010000
  215. #define PENDIN    0040000
  216. #define IEXTEN    0100000
  217.  
  218. /* tcflow() and TCXONC use these */
  219. #define    TCOOFF        0
  220. #define    TCOON        1
  221. #define    TCIOFF        2
  222. #define    TCION        3
  223.  
  224. /* tcflush() and TCFLSH use these */
  225. #define    TCIFLUSH    0
  226. #define    TCOFLUSH    1
  227. #define    TCIOFLUSH    2
  228.  
  229. /* tcsetattr uses these */
  230. #define    TCSANOW        0
  231. #define    TCSADRAIN    1
  232. #define    TCSAFLUSH    2
  233.  
  234. #endif
  235.