diff options
| author | Johan Hovold <johan@kernel.org> | 2025-11-10 12:12:07 +0100 |
|---|---|---|
| committer | Johan Hovold <johan@kernel.org> | 2025-11-17 11:23:15 +0100 |
| commit | 73de1ddaf4e6f851eb3f67751c3aadb62229094b (patch) | |
| tree | 82309238db621085e2b29a1e33c2dc74b1c3b774 | |
| parent | 448016e3265410ee61006da1ffa3478854baba4b (diff) | |
USB: serial: ftdi_sio: rewrite 8u2232c quirk
Rewrite the 8u2232c quirk to avoid the manufacturer and product string
comparisons for the second port which will always be bound.
Signed-off-by: Johan Hovold <johan@kernel.org>
| -rw-r--r-- | drivers/usb/serial/ftdi_sio.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c index 05b3c558d1e2..3f224e3c3322 100644 --- a/drivers/usb/serial/ftdi_sio.c +++ b/drivers/usb/serial/ftdi_sio.c @@ -2302,16 +2302,21 @@ static int ftdi_jtag_probe(struct usb_serial *serial) static int ftdi_8u2232c_probe(struct usb_serial *serial) { + struct usb_interface *intf = serial->interface; struct usb_device *udev = serial->dev; + int ifnum = intf->cur_altsetting->desc.bInterfaceNumber; - if (udev->manufacturer && !strcmp(udev->manufacturer, "CALAO Systems")) - return ftdi_jtag_probe(serial); + if (ifnum == 0) { + if (udev->manufacturer && + !strcmp(udev->manufacturer, "CALAO Systems")) + return -ENODEV; - if (udev->product && - (!strcmp(udev->product, "Arrow USB Blaster") || - !strcmp(udev->product, "BeagleBone/XDS100V2") || - !strcmp(udev->product, "SNAP Connect E10"))) - return ftdi_jtag_probe(serial); + if (udev->product && + (!strcmp(udev->product, "Arrow USB Blaster") || + !strcmp(udev->product, "BeagleBone/XDS100V2") || + !strcmp(udev->product, "SNAP Connect E10"))) + return -ENODEV; + } return 0; } |
