qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

termbits.h (10646B)


      1 /* from asm/termbits.h */
      2 
      3 #ifndef LINUX_USER_SH4_TERMBITS_H
      4 #define LINUX_USER_SH4_TERMBITS_H
      5 
      6 #define TARGET_NCCS 19
      7 
      8 typedef unsigned char   target_cc_t;        /* cc_t */
      9 typedef unsigned int    target_speed_t;     /* speed_t */
     10 typedef unsigned int    target_tcflag_t;    /* tcflag_t */
     11 
     12 struct target_termios {
     13     target_tcflag_t c_iflag;               /* input mode flags */
     14     target_tcflag_t c_oflag;               /* output mode flags */
     15     target_tcflag_t c_cflag;               /* control mode flags */
     16     target_tcflag_t c_lflag;               /* local mode flags */
     17     target_cc_t c_line;                    /* line discipline */
     18     target_cc_t c_cc[TARGET_NCCS];         /* control characters */
     19 };
     20 
     21 
     22 /* c_cc characters */
     23 #define TARGET_VINTR 0
     24 #define TARGET_VQUIT 1
     25 #define TARGET_VERASE 2
     26 #define TARGET_VKILL 3
     27 #define TARGET_VEOF 4
     28 #define TARGET_VTIME 5
     29 #define TARGET_VMIN 6
     30 #define TARGET_VSWTC 7
     31 #define TARGET_VSTART 8
     32 #define TARGET_VSTOP 9
     33 #define TARGET_VSUSP 10
     34 #define TARGET_VEOL 11
     35 #define TARGET_VREPRINT 12
     36 #define TARGET_VDISCARD 13
     37 #define TARGET_VWERASE 14
     38 #define TARGET_VLNEXT 15
     39 #define TARGET_VEOL2 16
     40 
     41 /* c_iflag bits */
     42 #define TARGET_IGNBRK	0000001
     43 #define TARGET_BRKINT	0000002
     44 #define TARGET_IGNPAR	0000004
     45 #define TARGET_PARMRK	0000010
     46 #define TARGET_INPCK	0000020
     47 #define TARGET_ISTRIP	0000040
     48 #define TARGET_INLCR	0000100
     49 #define TARGET_IGNCR	0000200
     50 #define TARGET_ICRNL	0000400
     51 #define TARGET_IUCLC	0001000
     52 #define TARGET_IXON	0002000
     53 #define TARGET_IXANY	0004000
     54 #define TARGET_IXOFF	0010000
     55 #define TARGET_IMAXBEL	0020000
     56 #define TARGET_IUTF8	0040000
     57 
     58 /* c_oflag bits */
     59 #define TARGET_OPOST	0000001
     60 #define TARGET_OLCUC	0000002
     61 #define TARGET_ONLCR	0000004
     62 #define TARGET_OCRNL	0000010
     63 #define TARGET_ONOCR	0000020
     64 #define TARGET_ONLRET	0000040
     65 #define TARGET_OFILL	0000100
     66 #define TARGET_OFDEL	0000200
     67 #define TARGET_NLDLY	0000400
     68 #define TARGET_NL0	0000000
     69 #define TARGET_NL1	0000400
     70 #define TARGET_CRDLY	0003000
     71 #define TARGET_CR0	0000000
     72 #define TARGET_CR1	0001000
     73 #define TARGET_CR2	0002000
     74 #define TARGET_CR3	0003000
     75 #define TARGET_TABDLY	0014000
     76 #define TARGET_TAB0	0000000
     77 #define TARGET_TAB1	0004000
     78 #define TARGET_TAB2	0010000
     79 #define TARGET_TAB3	0014000
     80 #define TARGET_XTABS	0014000
     81 #define TARGET_BSDLY	0020000
     82 #define TARGET_BS0	0000000
     83 #define TARGET_BS1	0020000
     84 #define TARGET_VTDLY	0040000
     85 #define TARGET_VT0	0000000
     86 #define TARGET_VT1	0040000
     87 #define TARGET_FFDLY	0100000
     88 #define TARGET_FF0	0000000
     89 #define TARGET_FF1	0100000
     90 
     91 /* c_cflag bit meaning */
     92 #define TARGET_CBAUD	0010017
     93 #define TARGET_B0	0000000		/* hang up */
     94 #define TARGET_B50	0000001
     95 #define TARGET_B75	0000002
     96 #define TARGET_B110	0000003
     97 #define TARGET_B134	0000004
     98 #define TARGET_B150	0000005
     99 #define TARGET_B200	0000006
    100 #define TARGET_B300	0000007
    101 #define TARGET_B600	0000010
    102 #define TARGET_B1200	0000011
    103 #define TARGET_B1800	0000012
    104 #define TARGET_B2400	0000013
    105 #define TARGET_B4800	0000014
    106 #define TARGET_B9600	0000015
    107 #define TARGET_B19200	0000016
    108 #define TARGET_B38400	0000017
    109 #define TARGET_EXTA B19200
    110 #define TARGET_EXTB B38400
    111 #define TARGET_CSIZE	0000060
    112 #define TARGET_CS5	0000000
    113 #define TARGET_CS6	0000020
    114 #define TARGET_CS7	0000040
    115 #define TARGET_CS8	0000060
    116 #define TARGET_CSTOPB	0000100
    117 #define TARGET_CREAD	0000200
    118 #define TARGET_PARENB	0000400
    119 #define TARGET_PARODD	0001000
    120 #define TARGET_HUPCL	0002000
    121 #define TARGET_CLOCAL	0004000
    122 #define TARGET_CBAUDEX 0010000
    123 #define TARGET_B57600 0010001
    124 #define TARGET_B115200 0010002
    125 #define TARGET_B230400 0010003
    126 #define TARGET_B460800 0010004
    127 #define TARGET_B500000 0010005
    128 #define TARGET_B576000 0010006
    129 #define TARGET_B921600 0010007
    130 #define TARGET_B1000000 0010010
    131 #define TARGET_B1152000 0010011
    132 #define TARGET_B1500000 0010012
    133 #define TARGET_B2000000 0010013
    134 #define TARGET_B2500000 0010014
    135 #define TARGET_B3000000 0010015
    136 #define TARGET_B3500000 0010016
    137 #define TARGET_B4000000 0010017
    138 #define TARGET_CIBAUD	  002003600000	/* input baud rate (not used) */
    139 #define TARGET_CMSPAR	  010000000000		/* mark or space (stick) parity */
    140 #define TARGET_CRTSCTS	  020000000000		/* flow control */
    141 
    142 /* c_lflag bits */
    143 #define TARGET_ISIG	0000001
    144 #define TARGET_ICANON	0000002
    145 #define TARGET_XCASE	0000004
    146 #define TARGET_ECHO	0000010
    147 #define TARGET_ECHOE	0000020
    148 #define TARGET_ECHOK	0000040
    149 #define TARGET_ECHONL	0000100
    150 #define TARGET_NOFLSH	0000200
    151 #define TARGET_TOSTOP	0000400
    152 #define TARGET_ECHOCTL	0001000
    153 #define TARGET_ECHOPRT	0002000
    154 #define TARGET_ECHOKE	0004000
    155 #define TARGET_FLUSHO	0010000
    156 #define TARGET_PENDIN	0040000
    157 #define TARGET_IEXTEN	0100000
    158 #define TARGET_EXTPROC  0200000
    159 
    160 
    161 /* tcflow() and TCXONC use these */
    162 #define TARGET_TCOOFF		0
    163 #define TARGET_TCOON		1
    164 #define TARGET_TCIOFF		2
    165 #define TARGET_TCION		3
    166 
    167 /* tcflush() and TCFLSH use these */
    168 #define TARGET_TCIFLUSH	0
    169 #define TARGET_TCOFLUSH	1
    170 #define TARGET_TCIOFLUSH	2
    171 
    172 /* tcsetattr uses these */
    173 #define TARGET_TCSANOW		0
    174 #define TARGET_TCSADRAIN	1
    175 #define TARGET_TARGET_TCSAFLUSH	2
    176 
    177 /* ioctl */
    178 #define TARGET_FIOCLEX         TARGET_IO('f', 1)
    179 #define TARGET_FIONCLEX        TARGET_IO('f', 2)
    180 #define TARGET_FIOASYNC        TARGET_IOW('f', 125, int)
    181 #define TARGET_FIONBIO         TARGET_IOW('f', 126, int)
    182 #define TARGET_FIONREAD        TARGET_IOR('f', 127, int)
    183 #define TARGET_TIOCINQ         TARGET_FIONREAD
    184 #define TARGET_FIOQSIZE        TARGET_IOR('f', 128, loff_t)
    185 #define TARGET_TCGETS          0x5401
    186 #define TARGET_TCSETS          0x5402
    187 #define TARGET_TCSETSW         0x5403
    188 #define TARGET_TCSETSF         0x5404
    189 #define TARGET_TCGETA          TARGET_IOR('t', 23, struct termio)
    190 #define TARGET_TIOCSWINSZ      TARGET_IOW('t', 103, struct winsize)
    191 #define TARGET_TIOCGWINSZ      TARGET_IOR('t', 104, struct winsize)
    192 #define TARGET_TIOCSTART       TARGET_IO('t', 110)           /* start output, like ^Q */
    193 #define TARGET_TIOCSTOP        TARGET_IO('t', 111)           /* stop output, like ^S */
    194 #define TARGET_TIOCOUTQ        TARGET_IOR('t', 115, int)     /* output queue size */
    195 
    196 #define TARGET_TIOCSPGRP       TARGET_IOW('t', 118, int)
    197 #define TARGET_TIOCGPGRP       TARGET_IOR('t', 119, int)
    198 
    199 #define TARGET_TCSETA          TARGET_IOW('t', 24, struct termio)
    200 #define TARGET_TCSETAW         TARGET_IOW('t', 25, struct termio)
    201 #define TARGET_TCSETAF         TARGET_IOW('t', 28, struct termio)
    202 #define TARGET_TCSBRK          TARGET_IO('t', 29)
    203 #define TARGET_TCXONC          TARGET_IO('t', 30)
    204 #define TARGET_TCFLSH          TARGET_IO('t', 31)
    205 
    206 #define TARGET_TIOCSWINSZ      TARGET_IOW('t', 103, struct winsize)
    207 #define TARGET_TIOCGWINSZ      TARGET_IOR('t', 104, struct winsize)
    208 #define TARGET_TIOCSTART       TARGET_IO('t', 110)           /* start output, like ^Q */
    209 #define TARGET_TIOCSTOP        TARGET_IO('t', 111)           /* stop output, like ^S */
    210 #define TARGET_TIOCOUTQ        TARGET_IOR('t', 115, int)     /* output queue size */
    211 
    212 #define TARGET_TIOCSPGRP       TARGET_IOW('t', 118, int)
    213 #define TARGET_TIOCGPGRP       TARGET_IOR('t', 119, int)
    214 #define TARGET_TIOCEXCL        TARGET_IO('T', 12) /* 0x540C */
    215 #define TARGET_TIOCNXCL        TARGET_IO('T', 13) /* 0x540D */
    216 #define TARGET_TIOCSCTTY       TARGET_IO('T', 14) /* 0x540E */
    217 
    218 #define TARGET_TIOCSTI         TARGET_IOW('T', 18, char) /* 0x5412 */
    219 #define TARGET_TIOCMGET        TARGET_IOR('T', 21, unsigned int) /* 0x5415 */
    220 #define TARGET_TIOCMBIS        TARGET_IOW('T', 22, unsigned int) /* 0x5416 */
    221 #define TARGET_TIOCMBIC        TARGET_IOW('T', 23, unsigned int) /* 0x5417 */
    222 #define TARGET_TIOCMSET        TARGET_IOW('T', 24, unsigned int) /* 0x5418 */
    223 #define TARGET_TIOCM_LE       0x001
    224 #define TARGET_TIOCM_DTR      0x002
    225 #define TARGET_TIOCM_RTS      0x004
    226 #define TARGET_TIOCM_ST       0x008
    227 #define TARGET_TIOCM_SR       0x010
    228 #define TARGET_TIOCM_CTS      0x020
    229 #define TARGET_TIOCM_CAR      0x040
    230 #define TARGET_TIOCM_RNG      0x080
    231 #define TARGET_TIOCM_DSR      0x100
    232 #define TARGET_TIOCM_CD       TARGET_TIOCM_CAR
    233 #define TARGET_TIOCM_RI       TARGET_TIOCM_RNG
    234 
    235 #define TARGET_TIOCGSOFTCAR    TARGET_IOR('T', 25, unsigned int) /* 0x5419 */
    236 #define TARGET_TIOCSSOFTCAR    TARGET_IOW('T', 26, unsigned int) /* 0x541A */
    237 #define TARGET_TIOCLINUX       TARGET_IOW('T', 28, char) /* 0x541C */
    238 #define TARGET_TIOCCONS        TARGET_IO('T', 29) /* 0x541D */
    239 #define TARGET_TIOCGSERIAL     TARGET_IOR('T', 30, int) /* 0x541E */
    240 #define TARGET_TIOCSSERIAL     TARGET_IOW('T', 31, int) /* 0x541F */
    241 #define TARGET_TIOCPKT         TARGET_IOW('T', 32, int) /* 0x5420 */
    242 #define TARGET_TIOCPKT_DATA            0
    243 #define TARGET_TIOCPKT_FLUSHREAD       1
    244 #define TARGET_TIOCPKT_FLUSHWRITE      2
    245 #define TARGET_TIOCPKT_STOP            4
    246 #define TARGET_TIOCPKT_START           8
    247 #define TARGET_TIOCPKT_NOSTOP         16
    248 #define TARGET_TIOCPKT_DOSTOP         32
    249 
    250 
    251 #define TARGET_TIOCNOTTY       TARGET_IO('T', 34) /* 0x5422 */
    252 #define TARGET_TIOCSETD        TARGET_IOW('T', 35, int) /* 0x5423 */
    253 #define TARGET_TIOCGETD        TARGET_IOR('T', 36, int) /* 0x5424 */
    254 #define TARGET_TCSBRKP         TARGET_IOW('T', 37, int) /* 0x5425 */ /* Needed for POSIX tcse
    255 ndbreak() */
    256 #define TARGET_TIOCSBRK        TARGET_IO('T', 39) /* 0x5427 */ /* BSD compatibility */
    257 #define TARGET_TIOCCBRK        TARGET_IO('T', 40) /* 0x5428 */ /* BSD compatibility */
    258 #define TARGET_TIOCGSID        TARGET_IOR('T', 41, pid_t) /* 0x5429 */ /* Return the session
    259 ID of FD */
    260 #define TARGET_TIOCGPTN        TARGET_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-m
    261 ux device) */
    262 #define TARGET_TIOCSPTLCK      TARGET_IOW('T',0x31, int)  /* Lock/unlock Pty */
    263 #define TARGET_TIOCGPTPEER     TARGET_IO('T', 0x41) /* Safely open the slave */
    264 
    265 
    266 #define TARGET_TIOCSERCONFIG   TARGET_IO('T', 83) /* 0x5453 */
    267 #define TARGET_TIOCSERGWILD    TARGET_IOR('T', 84,  int) /* 0x5454 */
    268 #define TARGET_TIOCSERSWILD    TARGET_IOW('T', 85,  int) /* 0x5455 */
    269 #define TARGET_TIOCGLCKTRMIOS  0x5456
    270 #define TARGET_TIOCSLCKTRMIOS  0x5457
    271 #define TARGET_TIOCSERGSTRUCT  TARGET_IOR('T', 88, int) /* 0x5458 */ /* For d
    272 ebugging only */
    273 #define TARGET_TIOCSERGETLSR   TARGET_IOR('T', 89, unsigned int) /* 0x5459 */ /* Get line sta
    274 tus register */
    275   /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
    276 # define TARGET_TIOCSER_TEMT   0x01   /* Transmitter physically empty */
    277 #define TARGET_TIOCSERGETMULTI TARGET_IOR('T', 90, int) /* 0x545A
    278 */ /* Get multiport config  */
    279 #define TARGET_TIOCSERSETMULTI TARGET_IOW('T', 91, int) /* 0x545B
    280 */ /* Set multiport config */
    281 
    282 #define TARGET_TIOCMIWAIT      TARGET_IO('T', 92) /* 0x545C */       /* wait for a change on
    283 serial input line(s) */
    284 #define TARGET_TIOCGICOUNT     TARGET_IOR('T', 93, int) /* 0x545D */ /* read
    285 serial port inline interrupt counts */
    286 
    287 #endif