aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarius B. Kotsbak <marius@kotsbak.com>2011-03-21 18:27:21 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-04-29 20:05:06 -0400
commit15b2f3204a5c878c32939094775fb7349f707263 (patch)
tree2d10528af15993b74ce74e53e8757895bb043619
parentd771d8aa37805f5bf75808b12b737f39ee97f5d4 (diff)
Bind only modem AT command endpoint to option module.
Network interface is handled by upcoming gt_b3730 module. Removed "GT-B3710" from comment, it is another modem with another USB ID. Signed-off-by: Marius B. Kotsbak <marius@kotsbak.com> Cc: stable <stable@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/usb/serial/option.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index d77ff0435896..4001f7630a54 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -972,7 +972,7 @@ static const struct usb_device_id option_ids[] = {
972 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD100) }, 972 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD100) },
973 { USB_DEVICE(CELOT_VENDOR_ID, CELOT_PRODUCT_CT680M) }, /* CT-650 CDMA 450 1xEVDO modem */ 973 { USB_DEVICE(CELOT_VENDOR_ID, CELOT_PRODUCT_CT680M) }, /* CT-650 CDMA 450 1xEVDO modem */
974 { USB_DEVICE(ONDA_VENDOR_ID, ONDA_MT825UP) }, /* ONDA MT825UP modem */ 974 { USB_DEVICE(ONDA_VENDOR_ID, ONDA_MT825UP) }, /* ONDA MT825UP modem */
975 { USB_DEVICE_AND_INTERFACE_INFO(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_GT_B3730, USB_CLASS_CDC_DATA, 0x00, 0x00) }, /* Samsung GT-B3730/GT-B3710 LTE USB modem.*/ 975 { USB_DEVICE_AND_INTERFACE_INFO(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_GT_B3730, USB_CLASS_CDC_DATA, 0x00, 0x00) }, /* Samsung GT-B3730 LTE USB modem.*/
976 { } /* Terminating entry */ 976 { } /* Terminating entry */
977}; 977};
978MODULE_DEVICE_TABLE(usb, option_ids); 978MODULE_DEVICE_TABLE(usb, option_ids);
@@ -1109,6 +1109,12 @@ static int option_probe(struct usb_serial *serial,
1109 serial->interface->cur_altsetting->desc.bInterfaceNumber == 1) 1109 serial->interface->cur_altsetting->desc.bInterfaceNumber == 1)
1110 return -ENODEV; 1110 return -ENODEV;
1111 1111
1112 /* Don't bind network interface on Samsung GT-B3730, it is handled by a separate module */
1113 if (serial->dev->descriptor.idVendor == SAMSUNG_VENDOR_ID &&
1114 serial->dev->descriptor.idProduct == SAMSUNG_PRODUCT_GT_B3730 &&
1115 serial->interface->cur_altsetting->desc.bInterfaceClass != USB_CLASS_CDC_DATA)
1116 return -ENODEV;
1117
1112 data = serial->private = kzalloc(sizeof(struct usb_wwan_intf_private), GFP_KERNEL); 1118 data = serial->private = kzalloc(sizeof(struct usb_wwan_intf_private), GFP_KERNEL);
1113 1119
1114 if (!data) 1120 if (!data)