[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response
From: |
Samuel Thibault |
Subject: |
Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response |
Date: |
Mon, 26 Oct 2020 10:54:50 +0100 |
User-agent: |
NeoMutt/20170609 (1.8.3) |
Hello,
(Cc-ing Aurelien who introduced the support for modem control, and Jason
who added the missing THRE and TEMT flags).
Mark Cave-Ayland, le lun. 26 oct. 2020 08:34:00 +0000, a ecrit:
> The FTDI_GET_MDM_ST response should only return a single byte indicating the
> modem status with bit 0 cleared (as documented in the Linux ftdi_sio.h header
> file).
>
> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
> ---
> hw/usb/dev-serial.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/hw/usb/dev-serial.c b/hw/usb/dev-serial.c
> index 4c374d0790..fa734bcf54 100644
> --- a/hw/usb/dev-serial.c
> +++ b/hw/usb/dev-serial.c
> @@ -360,9 +360,8 @@ static void usb_serial_handle_control(USBDevice *dev,
> USBPacket *p,
> /* TODO: TX ON/OFF */
> break;
> case VendorDeviceRequest | FTDI_GET_MDM_ST:
> - data[0] = usb_get_modem_lines(s) | 1;
> - data[1] = FTDI_THRE | FTDI_TEMT;
> - p->actual_length = 2;
> + data[0] = usb_get_modem_lines(s);
> + p->actual_length = 1;
Err, but Linux' drivers/usb/serial/ftdi_sio.c:ftdi_process_packet()
contradicts this:
if (len < 2) {
dev_dbg(&port->dev, "malformed packet\n");
return 0;
}
status = buf[0] & FTDI_STATUS_B0_MASK;
if (status != priv->prev_status) {
char diff_status = status ^ priv->prev_status;
if (diff_status & FTDI_RS0_CTS)
port->icount.cts++;
[...]
/* save if the transmitter is empty or not */
if (buf[1] & FTDI_RS_TEMT)
priv->transmit_empty = 1;
else
priv->transmit_empty = 0;
Did you actually get an issue with seeing this packet contain two bytes?
Samuel
- Re: [PATCH 5/9] dev-serial: replace DeviceOutVendor/DeviceInVendor with equivalent macros from usb.h, (continued)
- [PATCH 6/9] dev-serial: add always-plugged property to ensure USB device is always attached, Mark Cave-Ayland, 2020/10/26
- [PATCH 7/9] dev-serial: add support for setting data_bits in QEMUSerialSetParams, Mark Cave-Ayland, 2020/10/26
- [PATCH 9/9] dev-serial: store flow control and xon/xoff characters, Mark Cave-Ayland, 2020/10/26
- [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Mark Cave-Ayland, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response,
Samuel Thibault <=
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Mark Cave-Ayland, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Samuel Thibault, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Jason Andryuk, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Mark Cave-Ayland, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Jason Andryuk, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Samuel Thibault, 2020/10/26
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Mark Cave-Ayland, 2020/10/27
- Re: [PATCH 8/9] dev-serial: fix FTDI_GET_MDM_ST response, Jason Andryuk, 2020/10/27
Re: [PATCH 0/9] dev-serial: minor fixes and improvements, Samuel Thibault, 2020/10/26