USB: ti_usb_3410_5052: fix dynamic-id matching
The driver failed to take the dynamic ids into account when determining the device type and therefore all devices were detected as 2-port devices when using the dynamic-id interface. Match on the usb-serial-driver field instead of doing redundant id-table searches. Reported-by: Anders Hammarquist <iko@iko.pp.se> Cc: stable <stable@vger.kernel.org> Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
94190301ff
commit
1fad56424f
|
@ -371,7 +371,7 @@ static int ti_startup(struct usb_serial *serial)
|
||||||
usb_set_serial_data(serial, tdev);
|
usb_set_serial_data(serial, tdev);
|
||||||
|
|
||||||
/* determine device type */
|
/* determine device type */
|
||||||
if (usb_match_id(serial->interface, ti_id_table_3410))
|
if (serial->type == &ti_1port_device)
|
||||||
tdev->td_is_3410 = 1;
|
tdev->td_is_3410 = 1;
|
||||||
dev_dbg(&dev->dev, "%s - device type is %s\n", __func__,
|
dev_dbg(&dev->dev, "%s - device type is %s\n", __func__,
|
||||||
tdev->td_is_3410 ? "3410" : "5052");
|
tdev->td_is_3410 ? "3410" : "5052");
|
||||||
|
|
Loading…
Reference in a new issue