Le 23/07/2020 à 23:02, Filip Bozuta a écrit : > This patch introduces a generic 'termbits.h' file for following > archs: 'aarch64', 'arm', 'i386, 'm68k', 'microblaze', 'nios2', > 'openrisc', 'riscv', 's390x', 'x86_64'. > > Since all of these archs have the same termios flag values and > same ioctl_tty numbers, there is no need for a separate 'termbits.h' > file for each one of them. For that reason one generic 'termbits.h' > file was added for all of them and an '#include' directive was > added for this generic file in every arch 'termbits.h' file. > > Also, some of the flag values that were missing were added in this > generic file so that it matches the generic 'termibts.h' and 'ioctls.h' > files from the kernel: 'asm-generic/termbits.h' and 'asm-generic/ioctls.h'. > > Signed-off-by: Filip Bozuta <filip.boz...@syrmia.com> > --- > linux-user/aarch64/termbits.h | 228 +--------------------- > linux-user/arm/termbits.h | 223 +--------------------- > linux-user/generic/termbits.h | 318 +++++++++++++++++++++++++++++++ > linux-user/i386/termbits.h | 233 +--------------------- > linux-user/m68k/termbits.h | 234 +---------------------- > linux-user/microblaze/termbits.h | 220 +-------------------- > linux-user/nios2/termbits.h | 228 +--------------------- > linux-user/openrisc/termbits.h | 302 +---------------------------- > linux-user/riscv/termbits.h | 228 +--------------------- > linux-user/s390x/termbits.h | 289 +--------------------------- > linux-user/tilegx/termbits.h | 276 +-------------------------- > linux-user/x86_64/termbits.h | 254 +----------------------- > 12 files changed, 329 insertions(+), 2704 deletions(-) > create mode 100644 linux-user/generic/termbits.h > > diff --git a/linux-user/aarch64/termbits.h b/linux-user/aarch64/termbits.h > index 0ab448d090..b1d4f4fedb 100644 > --- a/linux-user/aarch64/termbits.h > +++ b/linux-user/aarch64/termbits.h > @@ -1,227 +1 @@ > -/* from asm/termbits.h */ > -/* NOTE: exactly the same as i386 */ > - > -#ifndef LINUX_USER_AARCH64_TERMBITS_H > -#define LINUX_USER_AARCH64_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) > - /* Get Pty Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) > - /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) > - /* Safely open the slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be > adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C > - /* wait for a change on serial input line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D > - /* read serial port inline interrupt counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/arm/termbits.h b/linux-user/arm/termbits.h > index e555cff105..b1d4f4fedb 100644 > --- a/linux-user/arm/termbits.h > +++ b/linux-user/arm/termbits.h > @@ -1,222 +1 @@ > -/* from asm/termbits.h */ > -/* NOTE: exactly the same as i386 */ > - > -#ifndef LINUX_USER_ARM_TERMBITS_H > -#define LINUX_USER_ARM_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX > tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty > Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the > slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input > line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt > counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/generic/termbits.h b/linux-user/generic/termbits.h > new file mode 100644 > index 0000000000..6675e0d1ab > --- /dev/null > +++ b/linux-user/generic/termbits.h > @@ -0,0 +1,318 @@ > +/* Derived from asm-generic/termbits.h */ > + > +#ifndef GENERIC_TERMBITS_H > +#define GENERIC_TERMBITS_H > + > +typedef unsigned char target_cc_t; /* cc_t */ > +typedef unsigned int target_speed_t; /* speed_t */ > +typedef unsigned int target_tcflag_t; /* tcflag_t */ > + > +#define TARGET_NCCS 19 > + > +struct target_termios { > + target_tcflag_t c_iflag; /* input mode flags */ > + target_tcflag_t c_oflag; /* output mode flags */ > + target_tcflag_t c_cflag; /* control mode flags */ > + target_tcflag_t c_lflag; /* local mode flags */ > + target_cc_t c_line; /* line discipline */ > + target_cc_t c_cc[TARGET_NCCS]; /* control characters */ > +}; > + > +struct target_termios2 { > + target_tcflag_t c_iflag; /* input mode flags */ > + target_tcflag_t c_oflag; /* output mode flags */ > + target_tcflag_t c_cflag; /* control mode flags */ > + target_tcflag_t c_lflag; /* local mode flags */ > + target_cc_t c_line; /* line discipline */ > + target_cc_t c_cc[TARGET_NCCS]; /* control characters */ > + target_speed_t c_ispeed; /* input speed */ > + target_speed_t c_ospeed; /* output speed */ > +}; > + > +struct target_ktermios { > + target_tcflag_t c_iflag; /* input mode flags */ > + target_tcflag_t c_oflag; /* output mode flags */ > + target_tcflag_t c_cflag; /* control mode flags */ > + target_tcflag_t c_lflag; /* local mode flags */ > + target_cc_t c_line; /* line discipline */ > + target_cc_t c_cc[TARGET_NCCS]; /* control characters */ > + target_speed_t c_ispeed; /* input speed */ > + target_speed_t c_ospeed; /* output speed */ > +}; > + > +/* c_cc character offsets */ > +#define TARGET_VINTR 0 > +#define TARGET_VQUIT 1 > +#define TARGET_VERASE 2 > +#define TARGET_VKILL 3 > +#define TARGET_VEOF 4 > +#define TARGET_VTIME 5 > +#define TARGET_VMIN 6 > +#define TARGET_VSWTC 7 > +#define TARGET_VSTART 8 > +#define TARGET_VSTOP 9 > +#define TARGET_VSUSP 10 > +#define TARGET_VEOL 11 > +#define TARGET_VREPRINT 12 > +#define TARGET_VDISCARD 13 > +#define TARGET_VWERASE 14 > +#define TARGET_VLNEXT 15 > +#define TARGET_VEOL2 16 > + > +/* c_iflag bits */ > +#define TARGET_IGNBRK 0000001 > +#define TARGET_BRKINT 0000002 > +#define TARGET_IGNPAR 0000004 > +#define TARGET_PARMRK 0000010 > +#define TARGET_INPCK 0000020 > +#define TARGET_ISTRIP 0000040 > +#define TARGET_INLCR 0000100 > +#define TARGET_IGNCR 0000200 > +#define TARGET_ICRNL 0000400 > +#define TARGET_IUCLC 0001000 > +#define TARGET_IXON 0002000 > +#define TARGET_IXANY 0004000 > +#define TARGET_IXOFF 0010000 > +#define TARGET_IMAXBEL 0020000 > +#define TARGET_IUTF8 0040000 > + > +/* c_oflag bits */ > +#define TARGET_OPOST 0000001 > +#define TARGET_OLCUC 0000002 > +#define TARGET_ONLCR 0000004 > +#define TARGET_OCRNL 0000010 > +#define TARGET_ONOCR 0000020 > +#define TARGET_ONLRET 0000040 > +#define TARGET_OFILL 0000100 > +#define TARGET_OFDEL 0000200 > +#define TARGET_NLDLY 0000400 > +#define TARGET_NL0 0000000 > +#define TARGET_NL1 0000400 > +#define TARGET_CRDLY 0003000 > +#define TARGET_CR0 0000000 > +#define TARGET_CR1 0001000 > +#define TARGET_CR2 0002000 > +#define TARGET_CR3 0003000 > +#define TARGET_TABDLY 0014000 > +#define TARGET_TAB0 0000000 > +#define TARGET_TAB1 0004000 > +#define TARGET_TAB2 0010000 > +#define TARGET_TAB3 0014000 > +#define TARGET_XTABS 0014000 > +#define TARGET_BSDLY 0020000 > +#define TARGET_BS0 0000000 > +#define TARGET_BS1 0020000 > +#define TARGET_VTDLY 0040000 > +#define TARGET_VT0 0000000 > +#define TARGET_VT1 0040000 > +#define TARGET_FFDLY 0100000 > +#define TARGET_FF0 0000000 > +#define TARGET_FF1 0100000 > + > +/* c_cflag bit meaning */ > +#define TARGET_CBAUD 0010017 > +#define TARGET_B0 0000000 /* hang up */ > +#define TARGET_B50 0000001 > +#define TARGET_B75 0000002 > +#define TARGET_B110 0000003 > +#define TARGET_B134 0000004 > +#define TARGET_B150 0000005 > +#define TARGET_B200 0000006 > +#define TARGET_B300 0000007 > +#define TARGET_B600 0000010 > +#define TARGET_B1200 0000011 > +#define TARGET_B1800 0000012 > +#define TARGET_B2400 0000013 > +#define TARGET_B4800 0000014 > +#define TARGET_B9600 0000015 > +#define TARGET_B19200 0000016 > +#define TARGET_B38400 0000017 > +#define TARGET_EXTA TARGET_B19200 > +#define TARGET_EXTB TARGET_B38400 > +#define TARGET_CSIZE 0000060 > +#define TARGET_CS5 0000000 > +#define TARGET_CS6 0000020 > +#define TARGET_CS7 0000040 > +#define TARGET_CS8 0000060 > +#define TARGET_CSTOPB 0000100 > +#define TARGET_CREAD 0000200 > +#define TARGET_PARENB 0000400 > +#define TARGET_PARODD 0001000 > +#define TARGET_HUPCL 0002000 > +#define TARGET_CLOCAL 0004000 > +#define TARGET_CBAUDEX 0010000 > +#define TARGET_BOTHER 0010000 > +#define TARGET_B57600 0010001 > +#define TARGET_B115200 0010002 > +#define TARGET_B230400 0010003 > +#define TARGET_B460800 0010004 > +#define TARGET_B500000 0010005 > +#define TARGET_B576000 0010006 > +#define TARGET_B921600 0010007 > +#define TARGET_B1000000 0010010 > +#define TARGET_B1152000 0010011 > +#define TARGET_B1500000 0010012 > +#define TARGET_B2000000 0010013 > +#define TARGET_B2500000 0010014 > +#define TARGET_B3000000 0010015 > +#define TARGET_B3500000 0010016 > +#define TARGET_B4000000 0010017 > +#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > +#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > +#define TARGET_CRTSCTS 020000000000 /* flow control */ > + > +#define TARGET_IBSHIFT 16 /* Shift from CBAUD to CIBAUD */ > + > +/* c_lflag bits */ > +#define TARGET_ISIG 0000001 > +#define TARGET_ICANON 0000002 > +#define TARGET_XCASE 0000004 > +#define TARGET_ECHO 0000010 > +#define TARGET_ECHOE 0000020 > +#define TARGET_ECHOK 0000040 > +#define TARGET_ECHONL 0000100 > +#define TARGET_NOFLSH 0000200 > +#define TARGET_TOSTOP 0000400 > +#define TARGET_ECHOCTL 0001000 > +#define TARGET_ECHOPRT 0002000 > +#define TARGET_ECHOKE 0004000 > +#define TARGET_FLUSHO 0010000 > +#define TARGET_PENDIN 0040000 > +#define TARGET_IEXTEN 0100000 > +#define TARGET_EXTPROC 0200000 > + > +/* tcflow() and TCXONC use these */ > +#define TARGET_TCOOFF 0 > +#define TARGET_TCOON 1 > +#define TARGET_TCIOFF 2 > +#define TARGET_TCION 3 > + > +/* tcflush() and TCFLSH use these */ > +#define TARGET_TCIFLUSH 0 > +#define TARGET_TCOFLUSH 1 > +#define TARGET_TCIOFLUSH 2 > + > +/* tcsetattr uses these */ > +#define TARGET_TCSANOW 0 > +#define TARGET_TCSADRAIN 1 > +#define TARGET_TCSAFLUSH 2 > + > +/* Derived from include/uapi/asm-generic/ioctls.h */ > + > +#define TARGET_TCGETS 0x5401 > +#define TARGET_TCSETS 0x5402 > +#define TARGET_TCSETSW 0x5403 > +#define TARGET_TCSETSF 0x5404 > +#define TARGET_TCGETA 0x5405 > +#define TARGET_TCSETA 0x5406 > +#define TARGET_TCSETAW 0x5407 > +#define TARGET_TCSETAF 0x5408 > +#define TARGET_TCSBRK 0x5409 > +#define TARGET_TCXONC 0x540A > +#define TARGET_TCFLSH 0x540B > + > +#define TARGET_TIOCEXCL 0x540C > +#define TARGET_TIOCNXCL 0x540D > +#define TARGET_TIOCSCTTY 0x540E > +#define TARGET_TIOCGPGRP 0x540F > +#define TARGET_TIOCSPGRP 0x5410 > +#define TARGET_TIOCOUTQ 0x5411 > +#define TARGET_TIOCSTI 0x5412 > +#define TARGET_TIOCGWINSZ 0x5413 > +#define TARGET_TIOCSWINSZ 0x5414 > +#define TARGET_TIOCMGET 0x5415 > +#define TARGET_TIOCMBIS 0x5416 > +#define TARGET_TIOCMBIC 0x5417 > +#define TARGET_TIOCMSET 0x5418 > +#define TARGET_TIOCGSOFTCAR 0x5419 > +#define TARGET_TIOCSSOFTCAR 0x541A > +#define TARGET_FIONREAD 0x541B > +#define TARGET_TIOCINQ TARGET_FIONREAD > +#define TARGET_TIOCLINUX 0x541C > +#define TARGET_TIOCCONS 0x541D > +#define TARGET_TIOCGSERIAL 0x541E > +#define TARGET_TIOCSSERIAL 0x541F > +#define TARGET_TIOCPKT 0x5420 > +#define TARGET_FIONBIO 0x5421 > +#define TARGET_TIOCNOTTY 0x5422 > +#define TARGET_TIOCSETD 0x5423 > +#define TARGET_TIOCGETD 0x5424 > +#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ > +#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > +#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > +#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > +#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > +#define TARGET_TCGETS2 TARGET_IOR('T', 0x2A, struct target_termios2) > +#define TARGET_TCSETS2 TARGET_IOW('T', 0x2B, struct target_termios2) > +#define TARGET_TCSETSW2 TARGET_IOW('T', 0x2C, struct target_termios2) > +#define TARGET_TCSETSF2 TARGET_IOW('T', 0x2D, struct target_termios2) > +#define TARGET_TIOCGRS485 0x542E > +#ifndef TARGET_TIOCSRS485 > +#define TARGET_TIOCSRS485 0x542F > +#endif > +/* Get Pty Number (of pty-mux device) */ > +#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) > +/* Lock/unlock Pty */ > +#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) > + > +/* Get primary device node of /dev/console */ > +#define TARGET_TIOCGDEV TARGET_IOR('T', 0x32, unsigned int) > +#define TARGET_TCGETX 0x5432 /* SYS5 TCGETX compatibility */ > +#define TARGET_TCSETX 0x5433 > +#define TARGET_TCSETXF 0x5434 > +#define TARGET_TCSETXW 0x5435 > +/* pty: generate signal */ > +#define TARGET_TIOCSIG TARGET_IOW('T', 0x36, int) > +#define TARGET_TIOCVHANGUP 0x5437 > +/* Get packet mode state */ > +#define TARGET_TIOCGPKT TARGET_IOR('T', 0x38, int) > +/* Get Pty lock state */ > +#define TARGET_TIOCGPTLCK TARGET_IOR('T', 0x39, int) > +/* Get exclusive mode state */ > +#define TARGET_TIOCGEXCL TARGET_IOR('T', 0x40, int) > +/* Safely open the slave */ > +#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) > +#define TARGET_TIOCGISO7816 TARGET_IOR('T', 0x42, struct serial_iso7816) > +#define TARGET_TIOCSISO7816 TARGET_IOWR('T', 0x43, struct serial_iso7816) > + > +#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted > */ > +#define TARGET_FIOCLEX 0x5451 > +#define TARGET_FIOASYNC 0x5452 > +#define TARGET_TIOCSERCONFIG 0x5453 > +#define TARGET_TIOCSERGWILD 0x5454 > +#define TARGET_TIOCSERSWILD 0x5455 > +#define TARGET_TIOCGLCKTRMIOS 0x5456 > +#define TARGET_TIOCSLCKTRMIOS 0x5457 > +#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > +#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > +#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > +#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > + > +/* wait for a change on serial input line(s) */ > +#define TARGET_TIOCMIWAIT 0x545C > +/* read serial port inline interrupt counts */ > +#define TARGET_TIOCGICOUNT 0x545D > +#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > +#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > + > +/* > + * Some arches already define TARGET_FIOQSIZE due to a historical > + * conflict with a Hayes modem-specific ioctl value. > + */ > +#ifndef TARGET_FIOQSIZE > +# define TARGET_FIOQSIZE 0x5460 > +#endif > + > +/* Used for packet mode */ > +#define TARGET_TIOCPKT_DATA 0 > +#define TARGET_TIOCPKT_FLUSHREAD 1 > +#define TARGET_TIOCPKT_FLUSHWRITE 2 > +#define TARGET_TIOCPKT_STOP 4 > +#define TARGET_TIOCPKT_START 8 > +#define TARGET_TIOCPKT_NOSTOP 16 > +#define TARGET_TIOCPKT_DOSTOP 32 > +#define TARGET_TIOCPKT_IOCTL 64 > + > +#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > + > +#endif > diff --git a/linux-user/i386/termbits.h b/linux-user/i386/termbits.h > index 88264bbde7..b1d4f4fedb 100644 > --- a/linux-user/i386/termbits.h > +++ b/linux-user/i386/termbits.h > @@ -1,232 +1 @@ > -/* from asm/termbits.h */ > - > -#ifndef LINUX_USER_I386_TERMBITS_H > -#define LINUX_USER_I386_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_B500000 0010005 > -#define TARGET_B576000 0010006 > -#define TARGET_B921600 0010007 > -#define TARGET_B1000000 0010010 > -#define TARGET_B1152000 0010011 > -#define TARGET_B1500000 0010012 > -#define TARGET_B2000000 0010013 > -#define TARGET_B2500000 0010014 > -#define TARGET_B3000000 0010015 > -#define TARGET_B3500000 0010016 > -#define TARGET_B4000000 0010017 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX > tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty > Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the > slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input > line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt > counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/m68k/termbits.h b/linux-user/m68k/termbits.h > index 23840aa968..b1d4f4fedb 100644 > --- a/linux-user/m68k/termbits.h > +++ b/linux-user/m68k/termbits.h > @@ -1,233 +1 @@ > -/* from asm/termbits.h */ > -/* NOTE: exactly the same as i386 */ > - > -#ifndef LINUX_USER_M68K_TERMBITS_H > -#define LINUX_USER_M68K_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_B500000 0010005 > -#define TARGET_B576000 0010006 > -#define TARGET_B921600 0010007 > -#define TARGET_B1000000 0010010 > -#define TARGET_B1152000 0010011 > -#define TARGET_B1500000 0010012 > -#define TARGET_B2000000 0010013 > -#define TARGET_B2500000 0010014 > -#define TARGET_B3000000 0010015 > -#define TARGET_B3500000 0010016 > -#define TARGET_B4000000 0010017 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX > tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty > Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the > slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input > line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt > counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/microblaze/termbits.h > b/linux-user/microblaze/termbits.h > index 17db8a4473..b1d4f4fedb 100644 > --- a/linux-user/microblaze/termbits.h > +++ b/linux-user/microblaze/termbits.h > @@ -1,219 +1 @@ > -/* from asm/termbits.h */ > - > -#ifndef LINUX_USER_MICROBLAZE_TERMBITS_H > -#define LINUX_USER_MICROBLAZE_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX > tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty > Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the > slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input > line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt > counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/nios2/termbits.h b/linux-user/nios2/termbits.h > index 425a2fe6ef..b1d4f4fedb 100644 > --- a/linux-user/nios2/termbits.h > +++ b/linux-user/nios2/termbits.h > @@ -1,227 +1 @@ > -/* from asm/termbits.h */ > -/* NOTE: exactly the same as i386 */ > - > -#ifndef LINUX_USER_NIOS2_TERMBITS_H > -#define LINUX_USER_NIOS2_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) > - /* Get Pty Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) > - /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) > - /* Safely open the slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be > adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C > - /* wait for a change on serial input line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D > - /* read serial port inline interrupt counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/openrisc/termbits.h b/linux-user/openrisc/termbits.h > index 7a635ffbc6..b1d4f4fedb 100644 > --- a/linux-user/openrisc/termbits.h > +++ b/linux-user/openrisc/termbits.h > @@ -1,301 +1 @@ > -#ifndef LINUX_USER_OPENRISC_TERMBITS_H > -#define LINUX_USER_OPENRISC_TERMBITS_H > - > -typedef unsigned char target_openrisc_cc; /*cc_t*/ > -typedef unsigned int target_openrisc_speed; /*speed_t*/ > -typedef unsigned int target_openrisc_tcflag; /*tcflag_t*/ > - > -#define TARGET_NCCS 19 > -struct target_termios { > - target_openrisc_tcflag c_iflag; /* input mode flags */ > - target_openrisc_tcflag c_oflag; /* output mode flags */ > - target_openrisc_tcflag c_cflag; /* control mode flags */ > - target_openrisc_tcflag c_lflag; /* local mode flags */ > - target_openrisc_cc c_line; /* line discipline */ > - target_openrisc_cc c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -struct target_termios2 { > - target_openrisc_tcflag c_iflag; /* input mode flags */ > - target_openrisc_tcflag c_oflag; /* output mode flags */ > - target_openrisc_tcflag c_cflag; /* control mode flags */ > - target_openrisc_tcflag c_lflag; /* local mode flags */ > - target_openrisc_cc c_line; /* line discipline */ > - target_openrisc_cc c_cc[TARGET_NCCS]; /* control characters */ > - target_openrisc_speed c_ispeed; /* input speed */ > - target_openrisc_speed c_ospeed; /* output speed */ > -}; > - > -struct target_termios3 { > - target_openrisc_tcflag c_iflag; /* input mode flags */ > - target_openrisc_tcflag c_oflag; /* output mode flags */ > - target_openrisc_tcflag c_cflag; /* control mode flags */ > - target_openrisc_tcflag c_lflag; /* local mode flags */ > - target_openrisc_cc c_line; /* line discipline */ > - target_openrisc_cc c_cc[TARGET_NCCS]; /* control characters */ > - target_openrisc_speed c_ispeed; /* input speed */ > - target_openrisc_speed c_ospeed; /* output speed */ > -}; > - > -/* c_cc characters */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_BOTHER 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_B500000 0010005 > -#define TARGET_B576000 0010006 > -#define TARGET_B921600 0010007 > -#define TARGET_B1000000 0010010 > -#define TARGET_B1152000 0010011 > -#define TARGET_B1500000 0010012 > -#define TARGET_B2000000 0010013 > -#define TARGET_B2500000 0010014 > -#define TARGET_B3000000 0010015 > -#define TARGET_B3500000 0010016 > -#define TARGET_B4000000 0010017 > -#define TARGET_CIBAUD 002003600000 /* input baud rate */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -#define TARGET_IBSHIFT 16 /* Shift from CBAUD to CIBAUD */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > -#define TARGET_EXTPROC 0200000 > - > -/* tcflow() and TCXONC use these */ > -#define TARGET_TCOOFF 0 > -#define TARGET_TCOON 1 > -#define TARGET_TCIOFF 2 > -#define TARGET_TCION 3 > - > -/* tcflush() and TCFLSH use these */ > -#define TARGET_TCIFLUSH 0 > -#define TARGET_TCOFLUSH 1 > -#define TARGET_TCIOFLUSH 2 > - > -/* tcsetattr uses these */ > -#define TARGET_TCSANOW 0 > -#define TARGET_TCSADRAIN 1 > -#define TARGET_TCSAFLUSH 2 > - > -/* ioctls */ > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TCGETS2 TARGET_IOR('T', 0x2A, struct termios2) > -#define TARGET_TCSETS2 TARGET_IOW('T', 0x2B, struct termios2) > -#define TARGET_TCSETSW2 TARGET_IOW('T', 0x2C, struct termios2) > -#define TARGET_TCSETSF2 TARGET_IOW('T', 0x2D, struct termios2) > -#define TARGET_TIOCGRS485 0x542E > -#ifndef TARGET_TIOCSRS485 > -#define TARGET_TIOCSRS485 0x542F > -#endif > -/* Get Pty Number (of pty-mux device) */ > -#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) > -/* Lock/unlock Pty */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) > -/* Safely open the slave */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) > -/* Get primary device node of /dev/console */ > -#define TARGET_TIOCGDEV TARGET_IOR('T', 0x32, unsigned int) > -#define TARGET_TCGETX 0x5432 /* SYS5 TCGETX compatibility */ > -#define TARGET_TCSETX 0x5433 > -#define TARGET_TCSETXF 0x5434 > -#define TARGET_TCSETXW 0x5435 > -/* pty: generate signal */ > -#define TARGET_TIOCSIG TARGET_IOW('T', 0x36, int) > -#define TARGET_TIOCVHANGUP 0x5437 > - > -#define TARGET_FIONCLEX 0x5450 > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -/* wait for a change on serial input line(s) */ > -#define TARGET_TIOCMIWAIT 0x545C > -/* read serial port inline interrupt counts */ > -#define TARGET_TIOCGICOUNT 0x545D > - > -/* > - * Some arches already define TARGET_FIOQSIZE due to a historical > - * conflict with a Hayes modem-specific ioctl value. > - */ > -#ifndef TARGET_FIOQSIZE > -#define TARGET_FIOQSIZE 0x5460 > -#endif > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > -#define TARGET_TIOCPKT_IOCTL 64 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/riscv/termbits.h b/linux-user/riscv/termbits.h > index 5e0af0dd3f..b1d4f4fedb 100644 > --- a/linux-user/riscv/termbits.h > +++ b/linux-user/riscv/termbits.h > @@ -1,227 +1 @@ > -/* from asm/termbits.h */ > -/* NOTE: exactly the same as i386 */ > - > -#ifndef LINUX_USER_RISCV_TERMBITS_H > -#define LINUX_USER_RISCV_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* c_cc character offsets */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* ioctls */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > - > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ > -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) > - /* Get Pty Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) > - /* Lock/unlock Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) > - /* Safely open the slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be > adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C > - /* wait for a change on serial input line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D > - /* read serial port inline interrupt counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/s390x/termbits.h b/linux-user/s390x/termbits.h > index 9affa8f41a..b1d4f4fedb 100644 > --- a/linux-user/s390x/termbits.h > +++ b/linux-user/s390x/termbits.h > @@ -1,288 +1 @@ > -/* > - * include/asm-s390/termbits.h > - * > - * S390 version > - * > - * Derived from "include/asm-i386/termbits.h" > - */ > - > -#ifndef LINUX_USER_S390X_TERMBITS_H > -#define LINUX_USER_S390X_TERMBITS_H > - > -#define TARGET_NCCS 19 > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -struct target_termios2 { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > - unsigned int c_ispeed; /* input speed */ > - unsigned int c_ospeed; /* output speed */ > -}; > - > -struct target_ktermios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > - unsigned int c_ispeed; /* input speed */ > - unsigned int c_ospeed; /* output speed */ > -}; > - > -/* c_cc characters */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_BOTHER 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_B500000 0010005 > -#define TARGET_B576000 0010006 > -#define TARGET_B921600 0010007 > -#define TARGET_B1000000 0010010 > -#define TARGET_B1152000 0010011 > -#define TARGET_B1500000 0010012 > -#define TARGET_B2000000 0010013 > -#define TARGET_B2500000 0010014 > -#define TARGET_B3000000 0010015 > -#define TARGET_B3500000 0010016 > -#define TARGET_B4000000 0010017 > -#define TARGET_CIBAUD 002003600000 /* input baud rate */ > -#define TARGET_CMSPAR 010000000000 /* mark or space > (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -#define TARGET_IBSHIFT 16 /* Shift from CBAUD to CIBAUD */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* tcflow() and TCXONC use these */ > -#define TARGET_TCOOFF 0 > -#define TARGET_TCOON 1 > -#define TARGET_TCIOFF 2 > -#define TARGET_TCION 3 > - > -/* tcflush() and TCFLSH use these */ > -#define TARGET_TCIFLUSH 0 > -#define TARGET_TCOFLUSH 1 > -#define TARGET_TCIOFLUSH 2 > - > -/* tcsetattr uses these */ > -#define TARGET_TCSANOW 0 > -#define TARGET_TCSADRAIN 1 > -#define TARGET_TCSAFLUSH 2 > - > -/* > - * include/asm-s390/ioctls.h > - * > - * S390 version > - * > - * Derived from "include/asm-i386/ioctls.h" > - */ > - > -/* 0x54 is just a magic number to make these relatively unique ('T') */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX > tcsendbreak() */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TCGETS2 _IOR('T',0x2A, struct termios2) > -#define TARGET_TCSETS2 _IOW('T',0x2B, struct termios2) > -#define TARGET_TCSETSW2 _IOW('T',0x2C, struct termios2) > -#define TARGET_TCSETSF2 _IOW('T',0x2D, struct termios2) > -#define TARGET_TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number > (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ > -#define TARGET_TIOCGDEV _IOR('T',0x32, unsigned int) /* Get real dev no > below /dev/console */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the > slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input > line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt > counts */ > -#define TARGET_FIOQSIZE 0x545E > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/tilegx/termbits.h b/linux-user/tilegx/termbits.h > index 966daec088..b1d4f4fedb 100644 > --- a/linux-user/tilegx/termbits.h > +++ b/linux-user/tilegx/termbits.h > @@ -1,275 +1 @@ > -#ifndef TILEGX_TERMBITS_H > -#define TILEGX_TERMBITS_H > - > -/* From asm-generic/termbits.h, which is used by tilegx */ > - > -#define TARGET_NCCS 19 > -struct target_termios { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -struct target_termios2 { > - unsigned int c_iflag; /* input mode flags */ > - unsigned int c_oflag; /* output mode flags */ > - unsigned int c_cflag; /* control mode flags */ > - unsigned int c_lflag; /* local mode flags */ > - unsigned char c_line; /* line discipline */ > - unsigned char c_cc[TARGET_NCCS]; /* control characters */ > - unsigned int c_ispeed; /* input speed */ > - unsigned int c_ospeed; /* output speed */ > -}; > - > -/* c_cc characters */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA TARGET_B19200 > -#define TARGET_EXTB TARGET_B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_BOTHER 0010000 > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_B500000 0010005 > -#define TARGET_B576000 0010006 > -#define TARGET_B921600 0010007 > -#define TARGET_B1000000 0010010 > -#define TARGET_B1152000 0010011 > -#define TARGET_B1500000 0010012 > -#define TARGET_B2000000 0010013 > -#define TARGET_B2500000 0010014 > -#define TARGET_B3000000 0010015 > -#define TARGET_B3500000 0010016 > -#define TARGET_B4000000 0010017 > -#define TARGET_CIBAUD 002003600000 /* input baud rate */ > -#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -#define TARGET_IBSHIFT 16 /* Shift from CBAUD to CIBAUD */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > -#define TARGET_EXTPROC 0200000 > - > -/* tcflow() and TCXONC use these */ > -#define TARGET_TCOOFF 0 > -#define TARGET_TCOON 1 > -#define TARGET_TCIOFF 2 > -#define TARGET_TCION 3 > - > -/* tcflush() and TCFLSH use these */ > -#define TARGET_TCIFLUSH 0 > -#define TARGET_TCOFLUSH 1 > -#define TARGET_TCIOFLUSH 2 > - > -/* tcsetattr uses these */ > -#define TARGET_TCSANOW 0 > -#define TARGET_TCSADRAIN 1 > -#define TARGET_TCSAFLUSH 2 > - > -/* From asm-generic/ioctls.h, which is used by tilegx */ > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ TARGET_FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 > -#define TARGET_TIOCSBRK 0x5427 > -#define TARGET_TIOCCBRK 0x5428 > -#define TARGET_TIOCGSID 0x5429 > -#define TARGET_TCGETS2 TARGET_IOR('T', 0x2A, struct > termios2) > -#define TARGET_TCSETS2 TARGET_IOW('T', 0x2B, struct > termios2) > -#define TARGET_TCSETSW2 TARGET_IOW('T', 0x2C, struct > termios2) > -#define TARGET_TCSETSF2 TARGET_IOW('T', 0x2D, struct > termios2) > -#define TARGET_TIOCGRS485 0x542E > -#define TARGET_TIOCSRS485 0x542F > -#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) > -#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) > -#define TARGET_TIOCGDEV TARGET_IOR('T', 0x32, unsigned int) > -#define TARGET_TCGETX 0x5432 > -#define TARGET_TCSETX 0x5433 > -#define TARGET_TCSETXF 0x5434 > -#define TARGET_TCSETXW 0x5435 > -#define TARGET_TIOCSIG TARGET_IOW('T', 0x36, int) > -#define TARGET_TIOCVHANGUP 0x5437 > -#define TARGET_TIOCGPKT TARGET_IOR('T', 0x38, int) > -#define TARGET_TIOCGPTLCK TARGET_IOR('T', 0x39, int) > -#define TARGET_TIOCGEXCL TARGET_IOR('T', 0x40, int) > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) > - > -#define TARGET_FIONCLEX 0x5450 > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 > -#define TARGET_TIOCSERGETLSR 0x5459 > -#define TARGET_TIOCSERGETMULTI 0x545A > -#define TARGET_TIOCSERSETMULTI 0x545B > - > -#define TARGET_TIOCMIWAIT 0x545C > -#define TARGET_TIOCGICOUNT 0x545D > -#define TARGET_FIOQSIZE 0x5460 > - > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > -#define TARGET_TIOCPKT_IOCTL 64 > - > -#define TARGET_TIOCSER_TEMT 0x01 > - > -#endif > +#include "../generic/termbits.h" > diff --git a/linux-user/x86_64/termbits.h b/linux-user/x86_64/termbits.h > index c8bb5996b1..b1d4f4fedb 100644 > --- a/linux-user/x86_64/termbits.h > +++ b/linux-user/x86_64/termbits.h > @@ -1,253 +1 @@ > -#ifndef LINUX_USER_X86_64_TERMBITS_H > -#define LINUX_USER_X86_64_TERMBITS_H > - > -#define TARGET_NCCS 19 > - > -typedef unsigned char target_cc_t; > -typedef unsigned int target_speed_t; > -typedef unsigned int target_tcflag_t; > -struct target_termios { > - target_tcflag_t c_iflag; /* input mode flags */ > - target_tcflag_t c_oflag; /* output mode flags */ > - target_tcflag_t c_cflag; /* control mode flags */ > - target_tcflag_t c_lflag; /* local mode flags */ > - target_cc_t c_line; /* line discipline */ > - target_cc_t c_cc[TARGET_NCCS]; /* control characters */ > -}; > - > -/* c_cc characters */ > -#define TARGET_VINTR 0 > -#define TARGET_VQUIT 1 > -#define TARGET_VERASE 2 > -#define TARGET_VKILL 3 > -#define TARGET_VEOF 4 > -#define TARGET_VTIME 5 > -#define TARGET_VMIN 6 > -#define TARGET_VSWTC 7 > -#define TARGET_VSTART 8 > -#define TARGET_VSTOP 9 > -#define TARGET_VSUSP 10 > -#define TARGET_VEOL 11 > -#define TARGET_VREPRINT 12 > -#define TARGET_VDISCARD 13 > -#define TARGET_VWERASE 14 > -#define TARGET_VLNEXT 15 > -#define TARGET_VEOL2 16 > - > -/* c_iflag bits */ > -#define TARGET_IGNBRK 0000001 > -#define TARGET_BRKINT 0000002 > -#define TARGET_IGNPAR 0000004 > -#define TARGET_PARMRK 0000010 > -#define TARGET_INPCK 0000020 > -#define TARGET_ISTRIP 0000040 > -#define TARGET_INLCR 0000100 > -#define TARGET_IGNCR 0000200 > -#define TARGET_ICRNL 0000400 > -#define TARGET_IUCLC 0001000 > -#define TARGET_IXON 0002000 > -#define TARGET_IXANY 0004000 > -#define TARGET_IXOFF 0010000 > -#define TARGET_IMAXBEL 0020000 > -#define TARGET_IUTF8 0040000 > - > -/* c_oflag bits */ > -#define TARGET_OPOST 0000001 > -#define TARGET_OLCUC 0000002 > -#define TARGET_ONLCR 0000004 > -#define TARGET_OCRNL 0000010 > -#define TARGET_ONOCR 0000020 > -#define TARGET_ONLRET 0000040 > -#define TARGET_OFILL 0000100 > -#define TARGET_OFDEL 0000200 > -#define TARGET_NLDLY 0000400 > -#define TARGET_NL0 0000000 > -#define TARGET_NL1 0000400 > -#define TARGET_CRDLY 0003000 > -#define TARGET_CR0 0000000 > -#define TARGET_CR1 0001000 > -#define TARGET_CR2 0002000 > -#define TARGET_CR3 0003000 > -#define TARGET_TABDLY 0014000 > -#define TARGET_TAB0 0000000 > -#define TARGET_TAB1 0004000 > -#define TARGET_TAB2 0010000 > -#define TARGET_TAB3 0014000 > -#define TARGET_XTABS 0014000 > -#define TARGET_BSDLY 0020000 > -#define TARGET_BS0 0000000 > -#define TARGET_BS1 0020000 > -#define TARGET_VTDLY 0040000 > -#define TARGET_VT0 0000000 > -#define TARGET_VT1 0040000 > -#define TARGET_FFDLY 0100000 > -#define TARGET_FF0 0000000 > -#define TARGET_FF1 0100000 > - > -/* c_cflag bit meaning */ > -#define TARGET_CBAUD 0010017 > -#define TARGET_B0 0000000 /* hang up */ > -#define TARGET_B50 0000001 > -#define TARGET_B75 0000002 > -#define TARGET_B110 0000003 > -#define TARGET_B134 0000004 > -#define TARGET_B150 0000005 > -#define TARGET_B200 0000006 > -#define TARGET_B300 0000007 > -#define TARGET_B600 0000010 > -#define TARGET_B1200 0000011 > -#define TARGET_B1800 0000012 > -#define TARGET_B2400 0000013 > -#define TARGET_B4800 0000014 > -#define TARGET_B9600 0000015 > -#define TARGET_B19200 0000016 > -#define TARGET_B38400 0000017 > -#define TARGET_EXTA B19200 > -#define TARGET_EXTB B38400 > -#define TARGET_CSIZE 0000060 > -#define TARGET_CS5 0000000 > -#define TARGET_CS6 0000020 > -#define TARGET_CS7 0000040 > -#define TARGET_CS8 0000060 > -#define TARGET_CSTOPB 0000100 > -#define TARGET_CREAD 0000200 > -#define TARGET_PARENB 0000400 > -#define TARGET_PARODD 0001000 > -#define TARGET_HUPCL 0002000 > -#define TARGET_CLOCAL 0004000 > -#define TARGET_CBAUDEX 0010000 > -#define TARGET_BOTHER 0010000 /* non standard rate */ > -#define TARGET_B57600 0010001 > -#define TARGET_B115200 0010002 > -#define TARGET_B230400 0010003 > -#define TARGET_B460800 0010004 > -#define TARGET_B500000 0010005 > -#define TARGET_B576000 0010006 > -#define TARGET_B921600 0010007 > -#define TARGET_B1000000 0010010 > -#define TARGET_B1152000 0010011 > -#define TARGET_B1500000 0010012 > -#define TARGET_B2000000 0010013 > -#define TARGET_B2500000 0010014 > -#define TARGET_B3000000 0010015 > -#define TARGET_B3500000 0010016 > -#define TARGET_B4000000 0010017 > -#define TARGET_CIBAUD 002003600000 /* input baud rate */ > -#define TARGET_CMSPAR 010000000000 /* mark or space > (stick) parity */ > -#define TARGET_CRTSCTS 020000000000 /* flow control */ > - > -#define TARGET_IBSHIFT 8 /* Shift from CBAUD to CIBAUD */ > - > -/* c_lflag bits */ > -#define TARGET_ISIG 0000001 > -#define TARGET_ICANON 0000002 > -#define TARGET_XCASE 0000004 > -#define TARGET_ECHO 0000010 > -#define TARGET_ECHOE 0000020 > -#define TARGET_ECHOK 0000040 > -#define TARGET_ECHONL 0000100 > -#define TARGET_NOFLSH 0000200 > -#define TARGET_TOSTOP 0000400 > -#define TARGET_ECHOCTL 0001000 > -#define TARGET_ECHOPRT 0002000 > -#define TARGET_ECHOKE 0004000 > -#define TARGET_FLUSHO 0010000 > -#define TARGET_PENDIN 0040000 > -#define TARGET_IEXTEN 0100000 > - > -/* tcflow() and TCXONC use these */ > -#define TARGET_TCOOFF 0 > -#define TARGET_TCOON 1 > -#define TARGET_TCIOFF 2 > -#define TARGET_TCION 3 > - > -/* tcflush() and TCFLSH use these */ > -#define TARGET_TCIFLUSH 0 > -#define TARGET_TCOFLUSH 1 > -#define TARGET_TCIOFLUSH 2 > - > -/* tcsetattr uses these */ > -#define TARGET_TCSANOW 0 > -#define TARGET_TCSADRAIN 1 > -#define TARGET_TCSAFLUSH 2 > - > -#define TARGET_TCGETS 0x5401 > -#define TARGET_TCSETS 0x5402 > -#define TARGET_TCSETSW 0x5403 > -#define TARGET_TCSETSF 0x5404 > -#define TARGET_TCGETA 0x5405 > -#define TARGET_TCSETA 0x5406 > -#define TARGET_TCSETAW 0x5407 > -#define TARGET_TCSETAF 0x5408 > -#define TARGET_TCSBRK 0x5409 > -#define TARGET_TCXONC 0x540A > -#define TARGET_TCFLSH 0x540B > -#define TARGET_TIOCEXCL 0x540C > -#define TARGET_TIOCNXCL 0x540D > -#define TARGET_TIOCSCTTY 0x540E > -#define TARGET_TIOCGPGRP 0x540F > -#define TARGET_TIOCSPGRP 0x5410 > -#define TARGET_TIOCOUTQ 0x5411 > -#define TARGET_TIOCSTI 0x5412 > -#define TARGET_TIOCGWINSZ 0x5413 > -#define TARGET_TIOCSWINSZ 0x5414 > -#define TARGET_TIOCMGET 0x5415 > -#define TARGET_TIOCMBIS 0x5416 > -#define TARGET_TIOCMBIC 0x5417 > -#define TARGET_TIOCMSET 0x5418 > -#define TARGET_TIOCGSOFTCAR 0x5419 > -#define TARGET_TIOCSSOFTCAR 0x541A > -#define TARGET_FIONREAD 0x541B > -#define TARGET_TIOCINQ FIONREAD > -#define TARGET_TIOCLINUX 0x541C > -#define TARGET_TIOCCONS 0x541D > -#define TARGET_TIOCGSERIAL 0x541E > -#define TARGET_TIOCSSERIAL 0x541F > -#define TARGET_TIOCPKT 0x5420 > -#define TARGET_FIONBIO 0x5421 > -#define TARGET_TIOCNOTTY 0x5422 > -#define TARGET_TIOCSETD 0x5423 > -#define TARGET_TIOCGETD 0x5424 > -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX > tcsendbreak() */ > -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ > -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ > -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ > -#define TARGET_TCGETS2 TARGET_IOR('T',0x2A, struct termios2) > -#define TARGET_TCSETS2 TARGET_IOW('T',0x2B, struct termios2) > -#define TARGET_TCSETSW2 TARGET_IOW('T',0x2C, struct termios2) > -#define TARGET_TCSETSF2 TARGET_IOW('T',0x2D, struct termios2) > -#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get > Pty Number (of pty-mux device) */ > -#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock > Pty */ > -#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the > slave */ > - > -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */ > -#define TARGET_FIOCLEX 0x5451 > -#define TARGET_FIOASYNC 0x5452 > -#define TARGET_TIOCSERCONFIG 0x5453 > -#define TARGET_TIOCSERGWILD 0x5454 > -#define TARGET_TIOCSERSWILD 0x5455 > -#define TARGET_TIOCGLCKTRMIOS 0x5456 > -#define TARGET_TIOCSLCKTRMIOS 0x5457 > -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ > -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ > -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ > -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ > - > -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input > line(s) */ > -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt > counts */ > -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ > -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ > -#define TARGET_FIOQSIZE 0x5460 > - > -/* Used for packet mode */ > -#define TARGET_TIOCPKT_DATA 0 > -#define TARGET_TIOCPKT_FLUSHREAD 1 > -#define TARGET_TIOCPKT_FLUSHWRITE 2 > -#define TARGET_TIOCPKT_STOP 4 > -#define TARGET_TIOCPKT_START 8 > -#define TARGET_TIOCPKT_NOSTOP 16 > -#define TARGET_TIOCPKT_DOSTOP 32 > - > -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ > - > -#endif > +#include "../generic/termbits.h" >
Applied to my linux-user-for-5.2 branch. Thanks, Laurent