qemu/linux-user/tilegx/termbits.h
<<
>>
Prefs
   1#ifndef TILEGX_TERMBITS_H
   2#define TILEGX_TERMBITS_H
   3
   4/* From asm-generic/termbits.h, which is used by tilegx */
   5
   6#define TARGET_NCCS 19
   7struct target_termios {
   8    unsigned int c_iflag;             /* input mode flags */
   9    unsigned int c_oflag;             /* output mode flags */
  10    unsigned int c_cflag;             /* control mode flags */
  11    unsigned int c_lflag;             /* local mode flags */
  12    unsigned char c_line;             /* line discipline */
  13    unsigned char c_cc[TARGET_NCCS];  /* control characters */
  14};
  15
  16struct target_termios2 {
  17    unsigned int c_iflag;             /* input mode flags */
  18    unsigned int c_oflag;             /* output mode flags */
  19    unsigned int c_cflag;             /* control mode flags */
  20    unsigned int c_lflag;             /* local mode flags */
  21    unsigned char c_line;             /* line discipline */
  22    unsigned char c_cc[TARGET_NCCS];  /* control characters */
  23    unsigned int c_ispeed;            /* input speed */
  24    unsigned int c_ospeed;            /* output speed */
  25};
  26
  27/* c_cc characters */
  28#define TARGET_VINTR     0
  29#define TARGET_VQUIT     1
  30#define TARGET_VERASE    2
  31#define TARGET_VKILL     3
  32#define TARGET_VEOF      4
  33#define TARGET_VTIME     5
  34#define TARGET_VMIN      6
  35#define TARGET_VSWTC     7
  36#define TARGET_VSTART    8
  37#define TARGET_VSTOP     9
  38#define TARGET_VSUSP     10
  39#define TARGET_VEOL      11
  40#define TARGET_VREPRINT  12
  41#define TARGET_VDISCARD  13
  42#define TARGET_VWERASE   14
  43#define TARGET_VLNEXT    15
  44#define TARGET_VEOL2     16
  45
  46/* c_iflag bits */
  47#define TARGET_IGNBRK    0000001
  48#define TARGET_BRKINT    0000002
  49#define TARGET_IGNPAR    0000004
  50#define TARGET_PARMRK    0000010
  51#define TARGET_INPCK     0000020
  52#define TARGET_ISTRIP    0000040
  53#define TARGET_INLCR     0000100
  54#define TARGET_IGNCR     0000200
  55#define TARGET_ICRNL     0000400
  56#define TARGET_IUCLC     0001000
  57#define TARGET_IXON      0002000
  58#define TARGET_IXANY     0004000
  59#define TARGET_IXOFF     0010000
  60#define TARGET_IMAXBEL   0020000
  61#define TARGET_IUTF8     0040000
  62
  63/* c_oflag bits */
  64#define TARGET_OPOST     0000001
  65#define TARGET_OLCUC     0000002
  66#define TARGET_ONLCR     0000004
  67#define TARGET_OCRNL     0000010
  68#define TARGET_ONOCR     0000020
  69#define TARGET_ONLRET    0000040
  70#define TARGET_OFILL     0000100
  71#define TARGET_OFDEL     0000200
  72#define TARGET_NLDLY     0000400
  73#define   TARGET_NL0     0000000
  74#define   TARGET_NL1     0000400
  75#define TARGET_CRDLY     0003000
  76#define   TARGET_CR0     0000000
  77#define   TARGET_CR1     0001000
  78#define   TARGET_CR2     0002000
  79#define   TARGET_CR3     0003000
  80#define TARGET_TABDLY    0014000
  81#define   TARGET_TAB0    0000000
  82#define   TARGET_TAB1    0004000
  83#define   TARGET_TAB2    0010000
  84#define   TARGET_TAB3    0014000
  85#define   TARGET_XTABS   0014000
  86#define TARGET_BSDLY     0020000
  87#define   TARGET_BS0     0000000
  88#define   TARGET_BS1     0020000
  89#define TARGET_VTDLY     0040000
  90#define   TARGET_VT0     0000000
  91#define   TARGET_VT1     0040000
  92#define TARGET_FFDLY     0100000
  93#define   TARGET_FF0     0000000
  94#define   TARGET_FF1     0100000
  95
  96/* c_cflag bit meaning */
  97#define TARGET_CBAUD     0010017
  98#define  TARGET_B0       0000000        /* hang up */
  99#define  TARGET_B50      0000001
 100#define  TARGET_B75      0000002
 101#define  TARGET_B110     0000003
 102#define  TARGET_B134     0000004
 103#define  TARGET_B150     0000005
 104#define  TARGET_B200     0000006
 105#define  TARGET_B300     0000007
 106#define  TARGET_B600     0000010
 107#define  TARGET_B1200    0000011
 108#define  TARGET_B1800    0000012
 109#define  TARGET_B2400    0000013
 110#define  TARGET_B4800    0000014
 111#define  TARGET_B9600    0000015
 112#define  TARGET_B19200   0000016
 113#define  TARGET_B38400   0000017
 114#define TARGET_EXTA      TARGET_B19200
 115#define TARGET_EXTB      TARGET_B38400
 116#define TARGET_CSIZE     0000060
 117#define   TARGET_CS5     0000000
 118#define   TARGET_CS6     0000020
 119#define   TARGET_CS7     0000040
 120#define   TARGET_CS8     0000060
 121#define TARGET_CSTOPB    0000100
 122#define TARGET_CREAD     0000200
 123#define TARGET_PARENB    0000400
 124#define TARGET_PARODD    0001000
 125#define TARGET_HUPCL     0002000
 126#define TARGET_CLOCAL    0004000
 127#define TARGET_CBAUDEX   0010000
 128#define    TARGET_BOTHER 0010000
 129#define    TARGET_B57600 0010001
 130#define   TARGET_B115200 0010002
 131#define   TARGET_B230400 0010003
 132#define   TARGET_B460800 0010004
 133#define   TARGET_B500000 0010005
 134#define   TARGET_B576000 0010006
 135#define   TARGET_B921600 0010007
 136#define  TARGET_B1000000 0010010
 137#define  TARGET_B1152000 0010011
 138#define  TARGET_B1500000 0010012
 139#define  TARGET_B2000000 0010013
 140#define  TARGET_B2500000 0010014
 141#define  TARGET_B3000000 0010015
 142#define  TARGET_B3500000 0010016
 143#define  TARGET_B4000000 0010017
 144#define TARGET_CIBAUD    002003600000    /* input baud rate */
 145#define TARGET_CMSPAR    010000000000    /* mark or space (stick) parity */
 146#define TARGET_CRTSCTS   020000000000    /* flow control */
 147
 148#define TARGET_IBSHIFT   16        /* Shift from CBAUD to CIBAUD */
 149
 150/* c_lflag bits */
 151#define TARGET_ISIG      0000001
 152#define TARGET_ICANON    0000002
 153#define TARGET_XCASE     0000004
 154#define TARGET_ECHO      0000010
 155#define TARGET_ECHOE     0000020
 156#define TARGET_ECHOK     0000040
 157#define TARGET_ECHONL    0000100
 158#define TARGET_NOFLSH    0000200
 159#define TARGET_TOSTOP    0000400
 160#define TARGET_ECHOCTL   0001000
 161#define TARGET_ECHOPRT   0002000
 162#define TARGET_ECHOKE    0004000
 163#define TARGET_FLUSHO    0010000
 164#define TARGET_PENDIN    0040000
 165#define TARGET_IEXTEN    0100000
 166#define TARGET_EXTPROC   0200000
 167
 168/* tcflow() and TCXONC use these */
 169#define TARGET_TCOOFF    0
 170#define TARGET_TCOON     1
 171#define TARGET_TCIOFF    2
 172#define TARGET_TCION     3
 173
 174/* tcflush() and TCFLSH use these */
 175#define TARGET_TCIFLUSH  0
 176#define TARGET_TCOFLUSH  1
 177#define TARGET_TCIOFLUSH 2
 178
 179/* tcsetattr uses these */
 180#define TARGET_TCSANOW   0
 181#define TARGET_TCSADRAIN 1
 182#define TARGET_TCSAFLUSH 2
 183
 184/* From asm-generic/ioctls.h, which is used by tilegx */
 185
 186#define TARGET_TCGETS                   0x5401
 187#define TARGET_TCSETS                   0x5402
 188#define TARGET_TCSETSW                  0x5403
 189#define TARGET_TCSETSF                  0x5404
 190#define TARGET_TCGETA                   0x5405
 191#define TARGET_TCSETA                   0x5406
 192#define TARGET_TCSETAW                  0x5407
 193#define TARGET_TCSETAF                  0x5408
 194#define TARGET_TCSBRK                   0x5409
 195#define TARGET_TCXONC                   0x540A
 196#define TARGET_TCFLSH                   0x540B
 197#define TARGET_TIOCEXCL                 0x540C
 198#define TARGET_TIOCNXCL                 0x540D
 199#define TARGET_TIOCSCTTY                0x540E
 200#define TARGET_TIOCGPGRP                0x540F
 201#define TARGET_TIOCSPGRP                0x5410
 202#define TARGET_TIOCOUTQ                 0x5411
 203#define TARGET_TIOCSTI                  0x5412
 204#define TARGET_TIOCGWINSZ               0x5413
 205#define TARGET_TIOCSWINSZ               0x5414
 206#define TARGET_TIOCMGET                 0x5415
 207#define TARGET_TIOCMBIS                 0x5416
 208#define TARGET_TIOCMBIC                 0x5417
 209#define TARGET_TIOCMSET                 0x5418
 210#define TARGET_TIOCGSOFTCAR             0x5419
 211#define TARGET_TIOCSSOFTCAR             0x541A
 212#define TARGET_FIONREAD                 0x541B
 213#define TARGET_TIOCINQ                  TARGET_FIONREAD
 214#define TARGET_TIOCLINUX                0x541C
 215#define TARGET_TIOCCONS                 0x541D
 216#define TARGET_TIOCGSERIAL              0x541E
 217#define TARGET_TIOCSSERIAL              0x541F
 218#define TARGET_TIOCPKT                  0x5420
 219#define TARGET_FIONBIO                  0x5421
 220#define TARGET_TIOCNOTTY                0x5422
 221#define TARGET_TIOCSETD                 0x5423
 222#define TARGET_TIOCGETD                 0x5424
 223#define TARGET_TCSBRKP                  0x5425
 224#define TARGET_TIOCSBRK                 0x5427
 225#define TARGET_TIOCCBRK                 0x5428
 226#define TARGET_TIOCGSID                 0x5429
 227#define TARGET_TCGETS2                  TARGET_IOR('T', 0x2A, struct termios2)
 228#define TARGET_TCSETS2                  TARGET_IOW('T', 0x2B, struct termios2)
 229#define TARGET_TCSETSW2                 TARGET_IOW('T', 0x2C, struct termios2)
 230#define TARGET_TCSETSF2                 TARGET_IOW('T', 0x2D, struct termios2)
 231#define TARGET_TIOCGRS485               0x542E
 232#define TARGET_TIOCSRS485               0x542F
 233#define TARGET_TIOCGPTN                 TARGET_IOR('T', 0x30, unsigned int)
 234#define TARGET_TIOCSPTLCK               TARGET_IOW('T', 0x31, int)
 235#define TARGET_TIOCGDEV                 TARGET_IOR('T', 0x32, unsigned int)
 236#define TARGET_TCGETX                   0x5432
 237#define TARGET_TCSETX                   0x5433
 238#define TARGET_TCSETXF                  0x5434
 239#define TARGET_TCSETXW                  0x5435
 240#define TARGET_TIOCSIG                  TARGET_IOW('T', 0x36, int)
 241#define TARGET_TIOCVHANGUP              0x5437
 242#define TARGET_TIOCGPKT                 TARGET_IOR('T', 0x38, int)
 243#define TARGET_TIOCGPTLCK               TARGET_IOR('T', 0x39, int)
 244#define TARGET_TIOCGEXCL                TARGET_IOR('T', 0x40, int)
 245#define TARGET_TIOCGPTPEER              TARGET_IO('T', 0x41)
 246
 247#define TARGET_FIONCLEX                 0x5450
 248#define TARGET_FIOCLEX                  0x5451
 249#define TARGET_FIOASYNC                 0x5452
 250#define TARGET_TIOCSERCONFIG            0x5453
 251#define TARGET_TIOCSERGWILD             0x5454
 252#define TARGET_TIOCSERSWILD             0x5455
 253#define TARGET_TIOCGLCKTRMIOS           0x5456
 254#define TARGET_TIOCSLCKTRMIOS           0x5457
 255#define TARGET_TIOCSERGSTRUCT           0x5458
 256#define TARGET_TIOCSERGETLSR            0x5459
 257#define TARGET_TIOCSERGETMULTI          0x545A
 258#define TARGET_TIOCSERSETMULTI          0x545B
 259
 260#define TARGET_TIOCMIWAIT               0x545C
 261#define TARGET_TIOCGICOUNT              0x545D
 262#define TARGET_FIOQSIZE                 0x5460
 263
 264#define TARGET_TIOCPKT_DATA             0
 265#define TARGET_TIOCPKT_FLUSHREAD        1
 266#define TARGET_TIOCPKT_FLUSHWRITE       2
 267#define TARGET_TIOCPKT_STOP             4
 268#define TARGET_TIOCPKT_START            8
 269#define TARGET_TIOCPKT_NOSTOP           16
 270#define TARGET_TIOCPKT_DOSTOP           32
 271#define TARGET_TIOCPKT_IOCTL            64
 272
 273#define TARGET_TIOCSER_TEMT             0x01
 274
 275#endif
 276