cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

termbits.h (10640B)


      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
      8typedef unsigned char   target_cc_t;        /* cc_t */
      9typedef unsigned int    target_speed_t;     /* speed_t */
     10typedef unsigned int    target_tcflag_t;    /* tcflag_t */
     11
     12struct 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
    255ndbreak() */
    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
    259ID of FD */
    260#define TARGET_TIOCGPTN        TARGET_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-m
    261ux 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
    272ebugging only */
    273#define TARGET_TIOCSERGETLSR   TARGET_IOR('T', 89, unsigned int) /* 0x5459 */ /* Get line sta
    274tus register */
    275  /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
    276# define 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
    283serial input line(s) */
    284#define TARGET_TIOCGICOUNT     TARGET_IOR('T', 93, int) /* 0x545D */ /* read
    285serial port inline interrupt counts */
    286
    287#endif