linux/arch/powerpc/include/asm/termbits.h
<<
>>
Prefs
   1#ifndef _ASM_POWERPC_TERMBITS_H
   2#define _ASM_POWERPC_TERMBITS_H
   3
   4/*
   5 * This program is free software; you can redistribute it and/or
   6 * modify it under the terms of the GNU General Public License
   7 * as published by the Free Software Foundation; either version
   8 * 2 of the License, or (at your option) any later version.
   9 */
  10
  11typedef unsigned char   cc_t;
  12typedef unsigned int    speed_t;
  13typedef unsigned int    tcflag_t;
  14
  15/*
  16 * termios type and macro definitions.  Be careful about adding stuff
  17 * to this file since it's used in GNU libc and there are strict rules
  18 * concerning namespace pollution.
  19 */
  20
  21#define NCCS 19
  22struct termios {
  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_cc[NCCS];                /* control characters */
  28        cc_t c_line;                    /* line discipline (== c_cc[19]) */
  29        speed_t c_ispeed;               /* input speed */
  30        speed_t c_ospeed;               /* output speed */
  31};
  32
  33/* For PowerPC the termios and ktermios are the same */
  34
  35struct ktermios {
  36        tcflag_t c_iflag;               /* input mode flags */
  37        tcflag_t c_oflag;               /* output mode flags */
  38        tcflag_t c_cflag;               /* control mode flags */
  39        tcflag_t c_lflag;               /* local mode flags */
  40        cc_t c_cc[NCCS];                /* control characters */
  41        cc_t c_line;                    /* line discipline (== c_cc[19]) */
  42        speed_t c_ispeed;               /* input speed */
  43        speed_t c_ospeed;               /* output speed */
  44};
  45
  46/* c_cc characters */
  47#define VINTR            0
  48#define VQUIT            1
  49#define VERASE           2
  50#define VKILL            3
  51#define VEOF             4
  52#define VMIN             5
  53#define VEOL             6
  54#define VTIME            7
  55#define VEOL2            8
  56#define VSWTC            9
  57#define VWERASE         10
  58#define VREPRINT        11
  59#define VSUSP           12
  60#define VSTART          13
  61#define VSTOP           14
  62#define VLNEXT          15
  63#define VDISCARD        16
  64
  65/* c_iflag bits */
  66#define IGNBRK  0000001
  67#define BRKINT  0000002
  68#define IGNPAR  0000004
  69#define PARMRK  0000010
  70#define INPCK   0000020
  71#define ISTRIP  0000040
  72#define INLCR   0000100
  73#define IGNCR   0000200
  74#define ICRNL   0000400
  75#define IXON    0001000
  76#define IXOFF   0002000
  77#define IXANY   0004000
  78#define IUCLC   0010000
  79#define IMAXBEL 0020000
  80#define IUTF8   0040000
  81
  82/* c_oflag bits */
  83#define OPOST   0000001
  84#define ONLCR   0000002
  85#define OLCUC   0000004
  86
  87#define OCRNL   0000010
  88#define ONOCR   0000020
  89#define ONLRET  0000040
  90
  91#define OFILL   00000100
  92#define OFDEL   00000200
  93#define NLDLY   00001400
  94#define   NL0   00000000
  95#define   NL1   00000400
  96#define   NL2   00001000
  97#define   NL3   00001400
  98#define TABDLY  00006000
  99#define   TAB0  00000000
 100#define   TAB1  00002000
 101#define   TAB2  00004000
 102#define   TAB3  00006000
 103#define   XTABS 00006000        /* required by POSIX to == TAB3 */
 104#define CRDLY   00030000
 105#define   CR0   00000000
 106#define   CR1   00010000
 107#define   CR2   00020000
 108#define   CR3   00030000
 109#define FFDLY   00040000
 110#define   FF0   00000000
 111#define   FF1   00040000
 112#define BSDLY   00100000
 113#define   BS0   00000000
 114#define   BS1   00100000
 115#define VTDLY   00200000
 116#define   VT0   00000000
 117#define   VT1   00200000
 118
 119/* c_cflag bit meaning */
 120#define CBAUD   0000377
 121#define  B0     0000000         /* hang up */
 122#define  B50    0000001
 123#define  B75    0000002
 124#define  B110   0000003
 125#define  B134   0000004
 126#define  B150   0000005
 127#define  B200   0000006
 128#define  B300   0000007
 129#define  B600   0000010
 130#define  B1200  0000011
 131#define  B1800  0000012
 132#define  B2400  0000013
 133#define  B4800  0000014
 134#define  B9600  0000015
 135#define  B19200 0000016
 136#define  B38400 0000017
 137#define  EXTA   B19200
 138#define  EXTB   B38400
 139#define  CBAUDEX 0000000
 140#define  B57600   00020
 141#define  B115200  00021
 142#define  B230400  00022
 143#define  B460800  00023
 144#define  B500000  00024
 145#define  B576000  00025
 146#define  B921600  00026
 147#define B1000000  00027
 148#define B1152000  00030
 149#define B1500000  00031
 150#define B2000000  00032
 151#define B2500000  00033
 152#define B3000000  00034
 153#define B3500000  00035
 154#define B4000000  00036
 155#define   BOTHER  00037
 156
 157#define CIBAUD  077600000
 158#define IBSHIFT 16              /* Shift from CBAUD to CIBAUD */
 159
 160#define CSIZE   00001400
 161#define   CS5   00000000
 162#define   CS6   00000400
 163#define   CS7   00001000
 164#define   CS8   00001400
 165
 166#define CSTOPB  00002000
 167#define CREAD   00004000
 168#define PARENB  00010000
 169#define PARODD  00020000
 170#define HUPCL   00040000
 171
 172#define CLOCAL  00100000
 173#define CMSPAR    010000000000          /* mark or space (stick) parity */
 174#define CRTSCTS   020000000000          /* flow control */
 175
 176/* c_lflag bits */
 177#define ISIG    0x00000080
 178#define ICANON  0x00000100
 179#define XCASE   0x00004000
 180#define ECHO    0x00000008
 181#define ECHOE   0x00000002
 182#define ECHOK   0x00000004
 183#define ECHONL  0x00000010
 184#define NOFLSH  0x80000000
 185#define TOSTOP  0x00400000
 186#define ECHOCTL 0x00000040
 187#define ECHOPRT 0x00000020
 188#define ECHOKE  0x00000001
 189#define FLUSHO  0x00800000
 190#define PENDIN  0x20000000
 191#define IEXTEN  0x00000400
 192
 193/* Values for the ACTION argument to `tcflow'.  */
 194#define TCOOFF          0
 195#define TCOON           1
 196#define TCIOFF          2
 197#define TCION           3
 198
 199/* Values for the QUEUE_SELECTOR argument to `tcflush'.  */
 200#define TCIFLUSH        0
 201#define TCOFLUSH        1
 202#define TCIOFLUSH       2
 203
 204/* Values for the OPTIONAL_ACTIONS argument to `tcsetattr'.  */
 205#define TCSANOW         0
 206#define TCSADRAIN       1
 207#define TCSAFLUSH       2
 208
 209#endif  /* _ASM_POWERPC_TERMBITS_H */
 210