| From 049255f51644c1105775af228396d187402a5934 Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= <bjorn@mork.no> |
| Date: Thu, 28 Aug 2014 14:11:23 +0200 |
| Subject: USB: sierra: avoid CDC class functions on "68A3" devices |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= <bjorn@mork.no> |
| |
| commit 049255f51644c1105775af228396d187402a5934 upstream. |
| |
| Sierra Wireless Direct IP devices using the 68A3 product ID |
| can be configured for modes including a CDC ECM class function. |
| The known example uses interface numbers 12 and 13 for the ECM |
| control and data interfaces respectively, consistent with CDC |
| MBIM function interface numbering on other Sierra devices. |
| |
| It seems cleaner to restrict this driver to the ff/ff/ff |
| vendor specific interfaces rather than increasing the already |
| long interface number blacklist. This should be more future |
| proof if Sierra adds more class functions using interface |
| numbers not yet in the blacklist. |
| |
| Signed-off-by: BjΓΈrn Mork <bjorn@mork.no> |
| Signed-off-by: Johan Hovold <johan@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/usb/serial/sierra.c | 6 ++++-- |
| 1 file changed, 4 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/usb/serial/sierra.c |
| +++ b/drivers/usb/serial/sierra.c |
| @@ -282,14 +282,16 @@ static const struct usb_device_id id_tab |
| /* Sierra Wireless HSPA Non-Composite Device */ |
| { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x6892, 0xFF, 0xFF, 0xFF)}, |
| { USB_DEVICE(0x1199, 0x6893) }, /* Sierra Wireless Device */ |
| - { USB_DEVICE(0x1199, 0x68A3), /* Sierra Wireless Direct IP modems */ |
| + /* Sierra Wireless Direct IP modems */ |
| + { USB_DEVICE_AND_INTERFACE_INFO(0x1199, 0x68A3, 0xFF, 0xFF, 0xFF), |
| .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist |
| }, |
| /* AT&T Direct IP LTE modems */ |
| { USB_DEVICE_AND_INTERFACE_INFO(0x0F3D, 0x68AA, 0xFF, 0xFF, 0xFF), |
| .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist |
| }, |
| - { USB_DEVICE(0x0f3d, 0x68A3), /* Airprime/Sierra Wireless Direct IP modems */ |
| + /* Airprime/Sierra Wireless Direct IP modems */ |
| + { USB_DEVICE_AND_INTERFACE_INFO(0x0F3D, 0x68A3, 0xFF, 0xFF, 0xFF), |
| .driver_info = (kernel_ulong_t)&direct_ip_interface_blacklist |
| }, |
| |