aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/usb
diff options
context:
space:
mode:
authorAndrew Bird (Sphere Systems) <ajb@spheresystems.co.uk>2012-05-18 23:56:07 -0400
committerDavid S. Miller <davem@davemloft.net>2012-05-19 18:47:48 -0400
commit68d8318bfc81ebd83e568b2a17b3bca5eec123f5 (patch)
tree00d3744c8361082d6b625e1c5f8ceeeefc368cf1 /drivers/net/usb
parentec16439e173aaf56f62bd8e175e976fbd452497b (diff)
net: cdc_ether: Add ZTE WWAN matches before generic Ethernet
Some ZTE WWAN devices have generic CDC Ether descriptors. Add those into the whitelist so that we get FLAG_WWAN on the interface Signed-off-by: Andrew Bird <ajb@spheresystems.co.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/usb')
-rw-r--r--drivers/net/usb/cdc_ether.c56
1 files changed, 56 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c
index 425e201f597..fffee6aee8b 100644
--- a/drivers/net/usb/cdc_ether.c
+++ b/drivers/net/usb/cdc_ether.c
@@ -486,6 +486,7 @@ static const struct driver_info wwan_info = {
486 486
487#define HUAWEI_VENDOR_ID 0x12D1 487#define HUAWEI_VENDOR_ID 0x12D1
488#define NOVATEL_VENDOR_ID 0x1410 488#define NOVATEL_VENDOR_ID 0x1410
489#define ZTE_VENDOR_ID 0x19D2
489 490
490static const struct usb_device_id products [] = { 491static const struct usb_device_id products [] = {
491/* 492/*
@@ -618,6 +619,61 @@ static const struct usb_device_id products [] = {
618 .bInterfaceProtocol = USB_CDC_PROTO_NONE, 619 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
619 .driver_info = (unsigned long)&wwan_info, 620 .driver_info = (unsigned long)&wwan_info,
620}, { 621}, {
622 /* ZTE (Vodafone) K3805-Z */
623 .match_flags = USB_DEVICE_ID_MATCH_VENDOR
624 | USB_DEVICE_ID_MATCH_PRODUCT
625 | USB_DEVICE_ID_MATCH_INT_INFO,
626 .idVendor = ZTE_VENDOR_ID,
627 .idProduct = 0x1003,
628 .bInterfaceClass = USB_CLASS_COMM,
629 .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET,
630 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
631 .driver_info = (unsigned long)&wwan_info,
632}, {
633 /* ZTE (Vodafone) K3806-Z */
634 .match_flags = USB_DEVICE_ID_MATCH_VENDOR
635 | USB_DEVICE_ID_MATCH_PRODUCT
636 | USB_DEVICE_ID_MATCH_INT_INFO,
637 .idVendor = ZTE_VENDOR_ID,
638 .idProduct = 0x1015,
639 .bInterfaceClass = USB_CLASS_COMM,
640 .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET,
641 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
642 .driver_info = (unsigned long)&wwan_info,
643}, {
644 /* ZTE (Vodafone) K4510-Z */
645 .match_flags = USB_DEVICE_ID_MATCH_VENDOR
646 | USB_DEVICE_ID_MATCH_PRODUCT
647 | USB_DEVICE_ID_MATCH_INT_INFO,
648 .idVendor = ZTE_VENDOR_ID,
649 .idProduct = 0x1173,
650 .bInterfaceClass = USB_CLASS_COMM,
651 .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET,
652 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
653 .driver_info = (unsigned long)&wwan_info,
654}, {
655 /* ZTE (Vodafone) K3770-Z */
656 .match_flags = USB_DEVICE_ID_MATCH_VENDOR
657 | USB_DEVICE_ID_MATCH_PRODUCT
658 | USB_DEVICE_ID_MATCH_INT_INFO,
659 .idVendor = ZTE_VENDOR_ID,
660 .idProduct = 0x1177,
661 .bInterfaceClass = USB_CLASS_COMM,
662 .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET,
663 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
664 .driver_info = (unsigned long)&wwan_info,
665}, {
666 /* ZTE (Vodafone) K3772-Z */
667 .match_flags = USB_DEVICE_ID_MATCH_VENDOR
668 | USB_DEVICE_ID_MATCH_PRODUCT
669 | USB_DEVICE_ID_MATCH_INT_INFO,
670 .idVendor = ZTE_VENDOR_ID,
671 .idProduct = 0x1181,
672 .bInterfaceClass = USB_CLASS_COMM,
673 .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET,
674 .bInterfaceProtocol = USB_CDC_PROTO_NONE,
675 .driver_info = (unsigned long)&wwan_info,
676}, {
621 USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ETHERNET, 677 USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_ETHERNET,
622 USB_CDC_PROTO_NONE), 678 USB_CDC_PROTO_NONE),
623 .driver_info = (unsigned long) &cdc_info, 679 .driver_info = (unsigned long) &cdc_info,