OSDN Git Service

USB: cdc-acm: add more Maxlinear/Exar models to ignore list
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 12 Apr 2021 09:55:57 +0000 (11:55 +0200)
committerJohan Hovold <johan@kernel.org>
Tue, 13 Apr 2021 16:37:22 +0000 (18:37 +0200)
Now that the xr_serial got support for other models, add their USB IDs
as well.

The Maxlinear/Exar USB UARTs can be used in either ACM mode using the
cdc-acm driver or in "custom driver" mode in which further features such
as hardware and software flow control, GPIO control and in-band
line-status reporting are available.

In ACM mode the device always enables RTS/CTS flow control, something
which could prevent transmission in case the CTS input isn't wired up
correctly.

Ensure that cdc_acm will not bind to these devices if the custom
USB-serial driver is enabled.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Link: https://lore.kernel.org/r/5155887a764cbc11f8da0217fe08a24a77d120b4.1616571453.git.mchehab+huawei@kernel.org
[ johan: rewrite commit message, clean up entries ]
Cc: Oliver Neukum <oneukum@suse.com>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
drivers/usb/class/cdc-acm.c

index 39ddb55..2e43a03 100644 (file)
@@ -1902,9 +1902,17 @@ 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,
-       },
+       { 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 */