diff mbox series

[v2,7/7] USB: cdc-acm: add other non-standard xr_serial models to ignore list

Message ID 5155887a764cbc11f8da0217fe08a24a77d120b4.1616571453.git.mchehab+huawei@kernel.org (mailing list archive)
State New, archived
Headers show
Series Add support for the other MaxLinear/Exar UARTs | expand

Commit Message

Mauro Carvalho Chehab March 24, 2021, 7:41 a.m. UTC
Now that the xr_serial got support for other models, add their
USB IDs as well, as those devices won't work with the standard
CDC driver.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
 drivers/usb/class/cdc-acm.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

Comments

Johan Hovold March 30, 2021, 3:14 p.m. UTC | #1
On Wed, Mar 24, 2021 at 08:41:11AM +0100, Mauro Carvalho Chehab wrote:
> Now that the xr_serial got support for other models, add their
> USB IDs as well, as those devices won't work with the standard
> CDC driver.

As far as I understand these devices should work also with the standard
class driver, but the problem is that your development board is broken
in that CTS isn't wired up properly so that TX is stalled (I even
verified that in the schematics).

Sure, there are other features available in custom-driver mode, but
still funny (sad?) if all that would really have been needed was a tiny
bit of led. :)

I kept this commit but updated the commit message and cleaned up the
entries below somewhat.

> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
> ---
>  drivers/usb/class/cdc-acm.c | 17 ++++++++++++++---
>  1 file changed, 14 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
> index 39ddb5585ded..839b80093478 100644
> --- a/drivers/usb/class/cdc-acm.c
> +++ b/drivers/usb/class/cdc-acm.c
> @@ -1902,9 +1902,20 @@ static const struct usb_device_id acm_ids[] = {
>  #endif
>  
>  #if IS_ENABLED(CONFIG_USB_SERIAL_XR)
> -	{ USB_DEVICE(0x04e2, 0x1410),   /* Ignore XR21V141X USB to Serial converter */
> -	.driver_info = IGNORE_DEVICE,
> -	},
> +	/* Ignore MaxLinear/Exar USB UARTs and USB UART bridges */
> +	{ USB_DEVICE(0x04e2, 0x1400), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1401), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1402), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1403), .driver_info = IGNORE_DEVICE,},
> +
> +	{ USB_DEVICE(0x04e2, 0x1410), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1411), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1412), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1414), .driver_info = IGNORE_DEVICE,},
> +
> +	{ USB_DEVICE(0x04e2, 0x1420), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1422), .driver_info = IGNORE_DEVICE,},
> +	{ USB_DEVICE(0x04e2, 0x1424), .driver_info = IGNORE_DEVICE,},
>  #endif
>  
>  	/*Samsung phone in firmware update mode */

Johan
diff mbox series

Patch

diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
index 39ddb5585ded..839b80093478 100644
--- a/drivers/usb/class/cdc-acm.c
+++ b/drivers/usb/class/cdc-acm.c
@@ -1902,9 +1902,20 @@  static const struct usb_device_id acm_ids[] = {
 #endif
 
 #if IS_ENABLED(CONFIG_USB_SERIAL_XR)
-	{ USB_DEVICE(0x04e2, 0x1410),   /* Ignore XR21V141X USB to Serial converter */
-	.driver_info = IGNORE_DEVICE,
-	},
+	/* Ignore MaxLinear/Exar USB UARTs and USB UART bridges */
+	{ USB_DEVICE(0x04e2, 0x1400), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1401), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1402), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1403), .driver_info = IGNORE_DEVICE,},
+
+	{ USB_DEVICE(0x04e2, 0x1410), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1411), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1412), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1414), .driver_info = IGNORE_DEVICE,},
+
+	{ USB_DEVICE(0x04e2, 0x1420), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1422), .driver_info = IGNORE_DEVICE,},
+	{ USB_DEVICE(0x04e2, 0x1424), .driver_info = IGNORE_DEVICE,},
 #endif
 
 	/*Samsung phone in firmware update mode */