在 2025-10-31星期五的 14:26 +0100,Luca Bonissi写道:
> > From 2aa0a13da0da6e3a804359f24cc1298b97cda45c Mon Sep 17 00:00:00
> > 2001
> From: Luca Bonissi <[email protected]>
> Date: Fri, 31 Oct 2025 13:31:36 +0100
> Subject: [PATCH 5/7] Add termios2 support to ppc target
>
> Signed-off-by: Luca Bonissi <[email protected]>
> ---
> linux-user/ppc/termbits.h | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/linux-user/ppc/termbits.h b/linux-user/ppc/termbits.h
> index eb226e0999..ae6ee8897c 100644
> --- a/linux-user/ppc/termbits.h
> +++ b/linux-user/ppc/termbits.h
> @@ -20,6 +20,28 @@ struct target_termios {
> target_speed_t c_ospeed; /* output speed */
> };
>
> +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_cc[TARGET_NCCS]; /* control characters */
> + target_cc_t c_line; /* line discipline */
> + 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_cc[TARGET_NCCS]; /* control characters */
> + target_cc_t c_line; /* line discipline */
> + target_speed_t c_ispeed; /* input speed */
> + target_speed_t c_ospeed; /* output speed */
> +};
> +
Well your this patch seems to be introducing non-needed things for
PowerPC?
All 3 structures are the same here, and PPC never has a termios2
interface (except inside the internal of glibc).
> /* c_cc character offsets */
> #define TARGET_VINTR 0
> #define TARGET_VQUIT 1
> @@ -225,6 +247,8 @@ struct target_termios {
> #define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */
> #define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */
> #define TARGET_TIOCGSID 0x5429 /* Return the session ID of
> FD */
> +#define TARGET_TIOCGRS485 0x542e
> +#define TARGET_TIOCSRS485 0x542f
I don't think these two IOCTL's are related here.
Well they're missing, but they're not implemented either.
> #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 */