linux-user: Add termios2 support to sh4 target
Signed-off-by: Luca Bonissi <qemu@bonslack.org> Link: https://lore.kernel.org/qemu-devel/642b32de-2985-45d2-bbdf-c0b2e3ea0551@bonslack.org Reviewed-by: Helge Deller <deller@gmx.de> (cherry picked from commit afbe0ff81c29d674b9c18a588bcaab34ddcb8a7b) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
parent
ce78d40265
commit
c1fac5fbfe
1 changed files with 34 additions and 12 deletions
|
|
@ -18,6 +18,28 @@ struct target_termios {
|
|||
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 characters */
|
||||
#define TARGET_VINTR 0
|
||||
|
|
@ -251,14 +273,17 @@ struct target_termios {
|
|||
#define TARGET_TIOCNOTTY TARGET_IO('T', 34) /* 0x5422 */
|
||||
#define TARGET_TIOCSETD TARGET_IOW('T', 35, int) /* 0x5423 */
|
||||
#define TARGET_TIOCGETD TARGET_IOR('T', 36, int) /* 0x5424 */
|
||||
#define TARGET_TCSBRKP TARGET_IOW('T', 37, int) /* 0x5425 */ /* Needed for POSIX tcse
|
||||
ndbreak() */
|
||||
#define TARGET_TCSBRKP TARGET_IOW('T', 37, int) /* 0x5425 */ /* Needed for POSIX tcsendbreak() */
|
||||
#define TARGET_TIOCSBRK TARGET_IO('T', 39) /* 0x5427 */ /* BSD compatibility */
|
||||
#define TARGET_TIOCCBRK TARGET_IO('T', 40) /* 0x5428 */ /* BSD compatibility */
|
||||
#define TARGET_TIOCGSID TARGET_IOR('T', 41, pid_t) /* 0x5429 */ /* Return the session
|
||||
ID of FD */
|
||||
#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-m
|
||||
ux device) */
|
||||
#define TARGET_TIOCGSID TARGET_IOR('T', 41, pid_t) /* 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 TARGET_IOR('T', 0x2E, struct serial_rs485)
|
||||
#define TARGET_TIOCSRS485 TARGET_IOWR('T', 0x2F, struct serial_rs485)
|
||||
#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 */
|
||||
|
||||
|
|
@ -270,8 +295,7 @@ ux device) */
|
|||
#define TARGET_TIOCSLCKTRMIOS 0x5457
|
||||
#define TARGET_TIOCSERGSTRUCT TARGET_IOR('T', 88, int) /* 0x5458 */ /* For d
|
||||
ebugging only */
|
||||
#define TARGET_TIOCSERGETLSR TARGET_IOR('T', 89, unsigned int) /* 0x5459 */ /* Get line sta
|
||||
tus register */
|
||||
#define TARGET_TIOCSERGETLSR TARGET_IOR('T', 89, unsigned int) /* 0x5459 */ /* Get line status register */
|
||||
/* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */
|
||||
# define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */
|
||||
#define TARGET_TIOCSERGETMULTI TARGET_IOR('T', 90, int) /* 0x545A
|
||||
|
|
@ -279,9 +303,7 @@ tus register */
|
|||
#define TARGET_TIOCSERSETMULTI TARGET_IOW('T', 91, int) /* 0x545B
|
||||
*/ /* Set multiport config */
|
||||
|
||||
#define TARGET_TIOCMIWAIT TARGET_IO('T', 92) /* 0x545C */ /* wait for a change on
|
||||
serial input line(s) */
|
||||
#define TARGET_TIOCGICOUNT TARGET_IOR('T', 93, int) /* 0x545D */ /* read
|
||||
serial port inline interrupt counts */
|
||||
#define TARGET_TIOCMIWAIT TARGET_IO('T', 92) /* 0x545C */ /* wait for a change on serial input line(s) */
|
||||
#define TARGET_TIOCGICOUNT TARGET_IOR('T', 93, int) /* 0x545D */ /* read serial port inline interrupt counts */
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue