No need to verify the interface layout when doing
interface number based matching.  We can safely trust
the device ID table in this case.

This allows the driver to support any USB interface
layout for non-Gobi 1k/2k+ devices.

Signed-off-by: Bjørn Mork <bj...@mork.no>
---
 drivers/usb/serial/qcserial.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c
index a9c4dc4..90395c7 100644
--- a/drivers/usb/serial/qcserial.c
+++ b/drivers/usb/serial/qcserial.c
@@ -165,6 +165,13 @@ static int qcprobe(struct usb_serial *serial, const struct 
usb_device_id *id)
 
        }
 
+       /* allow any number of interfaces when doing direct interface match */
+       if (id->match_flags & USB_DEVICE_ID_MATCH_INT_NUMBER) {
+               dev_dbg(dev, "Generic Qualcomm serial interface found\n");
+               altsetting = 0;
+               goto done;
+       }
+
        if (nintf < 3 || nintf > 4) {
                dev_err(dev, "unknown number of interfaces: %d\n", nintf);
                goto done;
-- 
1.7.10.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to