aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2012-05-07 00:24:51 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-05-21 12:40:02 -0400
commit21c39e1874caf8f3e023828e5ce3951af5816e7e (patch)
tree736a679499d3d4ff0ef11bc81c458896f8c19ee2
parentf95a1b62307a0504cdc9158c88ec0b9482cce7cb (diff)
cdc_ether: add Novatel USB551L device IDs for FLAG_WWAN
commit 4e6304b8420aba5311ba21fd68dab2924ae4d91a upstream. Needs to be tagged with FLAG_WWAN, which since it has generic descriptors, won't happen if we don't override the generic driver info. Cc: Oliver Neukum <oliver@neukum.org> Cc: stable@vger.kernel.org Signed-off-by: Dan Williams <dcbw@redhat.com> Acked-by: Oliver Neukum <oliver@neukum.org> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/usb/cdc_ether.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c
index 6d1461f94e8..544c309e0d9 100644
--- a/drivers/net/usb/cdc_ether.c
+++ b/drivers/net/usb/cdc_ether.c
@@ -482,6 +482,7 @@ static const struct driver_info wwan_info = {
482/*-------------------------------------------------------------------------*/ 482/*-------------------------------------------------------------------------*/
483 483
484#define HUAWEI_VENDOR_ID 0x12D1 484#define HUAWEI_VENDOR_ID 0x12D1
485#define NOVATEL_VENDOR_ID 0x1410
485 486
486static const struct usb_device_id products [] = { 487static const struct usb_device_id products [] = {
487/* 488/*
@@ -599,6 +600,21 @@ static const struct usb_device_id products [] = {
599 * because of bugs/quirks in a given product (like Zaurus, above). 600 * because of bugs/quirks in a given product (like Zaurus, above).
600 */ 601 */
601{ 602{
603 /* Novatel USB551L */
604 /* This match must come *before* the generic CDC-ETHER match so that
605 * we get FLAG_WWAN set on the device, since it's descriptors are
606 * generic CDC-ETHER.
607 */
608 .match_flags = USB_DEVICE_ID_MATCH_VENDOR
609 | USB_DEVICE_ID_MATCH_PRODUCT
610 | USB_DEVICE_ID_MATCH_INT_INFO,
611 .idVendor = NOVATEL_VENDOR_ID,
612 .idProduct = 0xB001,
613 .bInterfaceClass = USB_CLASS_COMM,
614 .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET,
615 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
616 .driver_info = (unsigned long)&wwan_info,
617}, {
602 USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ETHERNET, 618 USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ETHERNET,
603 USB_CDC_PROTO_NONE), 619 USB_CDC_PROTO_NONE),
604 .driver_info = (unsigned long) &cdc_info, 620 .driver_info = (unsigned long) &cdc_info,