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 |
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 --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 */
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(-)