aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MAINTAINERS14
-rw-r--r--drivers/usb/serial/ftdi_sio.c7
-rw-r--r--drivers/usb/serial/option.c26
3 files changed, 26 insertions, 21 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 3f2e171047b9..9b9d7eac2ced 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -9410,12 +9410,6 @@ S: Maintained
9410F: drivers/usb/host/isp116x* 9410F: drivers/usb/host/isp116x*
9411F: include/linux/usb/isp116x.h 9411F: include/linux/usb/isp116x.h
9412 9412
9413USB KAWASAKI LSI DRIVER
9414M: Oliver Neukum <oliver@neukum.org>
9415L: linux-usb@vger.kernel.org
9416S: Maintained
9417F: drivers/usb/serial/kl5kusb105.*
9418
9419USB MASS STORAGE DRIVER 9413USB MASS STORAGE DRIVER
9420M: Matthew Dharm <mdharm-usb@one-eyed-alien.net> 9414M: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
9421L: linux-usb@vger.kernel.org 9415L: linux-usb@vger.kernel.org
@@ -9443,12 +9437,6 @@ S: Maintained
9443F: Documentation/usb/ohci.txt 9437F: Documentation/usb/ohci.txt
9444F: drivers/usb/host/ohci* 9438F: drivers/usb/host/ohci*
9445 9439
9446USB OPTION-CARD DRIVER
9447M: Matthias Urlichs <smurf@smurf.noris.de>
9448L: linux-usb@vger.kernel.org
9449S: Maintained
9450F: drivers/usb/serial/option.c
9451
9452USB PEGASUS DRIVER 9440USB PEGASUS DRIVER
9453M: Petko Manolov <petkan@nucleusys.com> 9441M: Petko Manolov <petkan@nucleusys.com>
9454L: linux-usb@vger.kernel.org 9442L: linux-usb@vger.kernel.org
@@ -9481,7 +9469,7 @@ S: Maintained
9481F: drivers/net/usb/rtl8150.c 9469F: drivers/net/usb/rtl8150.c
9482 9470
9483USB SERIAL SUBSYSTEM 9471USB SERIAL SUBSYSTEM
9484M: Johan Hovold <jhovold@gmail.com> 9472M: Johan Hovold <johan@kernel.org>
9485L: linux-usb@vger.kernel.org 9473L: linux-usb@vger.kernel.org
9486S: Maintained 9474S: Maintained
9487F: Documentation/usb/usb-serial.txt 9475F: Documentation/usb/usb-serial.txt
diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index edf3b124583c..115662c16dcc 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -1566,14 +1566,17 @@ static void ftdi_set_max_packet_size(struct usb_serial_port *port)
1566 struct usb_device *udev = serial->dev; 1566 struct usb_device *udev = serial->dev;
1567 1567
1568 struct usb_interface *interface = serial->interface; 1568 struct usb_interface *interface = serial->interface;
1569 struct usb_endpoint_descriptor *ep_desc = &interface->cur_altsetting->endpoint[1].desc; 1569 struct usb_endpoint_descriptor *ep_desc;
1570 1570
1571 unsigned num_endpoints; 1571 unsigned num_endpoints;
1572 int i; 1572 unsigned i;
1573 1573
1574 num_endpoints = interface->cur_altsetting->desc.bNumEndpoints; 1574 num_endpoints = interface->cur_altsetting->desc.bNumEndpoints;
1575 dev_info(&udev->dev, "Number of endpoints %d\n", num_endpoints); 1575 dev_info(&udev->dev, "Number of endpoints %d\n", num_endpoints);
1576 1576
1577 if (!num_endpoints)
1578 return;
1579
1577 /* NOTE: some customers have programmed FT232R/FT245R devices 1580 /* NOTE: some customers have programmed FT232R/FT245R devices
1578 * with an endpoint size of 0 - not good. In this case, we 1581 * with an endpoint size of 0 - not good. In this case, we
1579 * want to override the endpoint descriptor setting and use a 1582 * want to override the endpoint descriptor setting and use a
diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c
index 59c3108cc136..ac73f49cd9f0 100644
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -352,6 +352,9 @@ static void option_instat_callback(struct urb *urb);
352/* Zoom */ 352/* Zoom */
353#define ZOOM_PRODUCT_4597 0x9607 353#define ZOOM_PRODUCT_4597 0x9607
354 354
355/* SpeedUp SU9800 usb 3g modem */
356#define SPEEDUP_PRODUCT_SU9800 0x9800
357
355/* Haier products */ 358/* Haier products */
356#define HAIER_VENDOR_ID 0x201e 359#define HAIER_VENDOR_ID 0x201e
357#define HAIER_PRODUCT_CE100 0x2009 360#define HAIER_PRODUCT_CE100 0x2009
@@ -372,8 +375,12 @@ static void option_instat_callback(struct urb *urb);
372/* Olivetti products */ 375/* Olivetti products */
373#define OLIVETTI_VENDOR_ID 0x0b3c 376#define OLIVETTI_VENDOR_ID 0x0b3c
374#define OLIVETTI_PRODUCT_OLICARD100 0xc000 377#define OLIVETTI_PRODUCT_OLICARD100 0xc000
378#define OLIVETTI_PRODUCT_OLICARD120 0xc001
379#define OLIVETTI_PRODUCT_OLICARD140 0xc002
375#define OLIVETTI_PRODUCT_OLICARD145 0xc003 380#define OLIVETTI_PRODUCT_OLICARD145 0xc003
381#define OLIVETTI_PRODUCT_OLICARD155 0xc004
376#define OLIVETTI_PRODUCT_OLICARD200 0xc005 382#define OLIVETTI_PRODUCT_OLICARD200 0xc005
383#define OLIVETTI_PRODUCT_OLICARD160 0xc00a
377#define OLIVETTI_PRODUCT_OLICARD500 0xc00b 384#define OLIVETTI_PRODUCT_OLICARD500 0xc00b
378 385
379/* Celot products */ 386/* Celot products */
@@ -1577,6 +1584,7 @@ static const struct usb_device_id option_ids[] = {
1577 { USB_DEVICE(LONGCHEER_VENDOR_ID, FOUR_G_SYSTEMS_PRODUCT_W14), 1584 { USB_DEVICE(LONGCHEER_VENDOR_ID, FOUR_G_SYSTEMS_PRODUCT_W14),
1578 .driver_info = (kernel_ulong_t)&four_g_w14_blacklist 1585 .driver_info = (kernel_ulong_t)&four_g_w14_blacklist
1579 }, 1586 },
1587 { USB_DEVICE_INTERFACE_CLASS(LONGCHEER_VENDOR_ID, SPEEDUP_PRODUCT_SU9800, 0xff) },
1580 { USB_DEVICE(LONGCHEER_VENDOR_ID, ZOOM_PRODUCT_4597) }, 1588 { USB_DEVICE(LONGCHEER_VENDOR_ID, ZOOM_PRODUCT_4597) },
1581 { USB_DEVICE(LONGCHEER_VENDOR_ID, IBALL_3_5G_CONNECT) }, 1589 { USB_DEVICE(LONGCHEER_VENDOR_ID, IBALL_3_5G_CONNECT) },
1582 { USB_DEVICE(HAIER_VENDOR_ID, HAIER_PRODUCT_CE100) }, 1590 { USB_DEVICE(HAIER_VENDOR_ID, HAIER_PRODUCT_CE100) },
@@ -1611,15 +1619,21 @@ static const struct usb_device_id option_ids[] = {
1611 { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC25_MDMNET) }, 1619 { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC25_MDMNET) },
1612 { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC28_MDM) }, /* HC28 enumerates with Siemens or Cinterion VID depending on FW revision */ 1620 { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC28_MDM) }, /* HC28 enumerates with Siemens or Cinterion VID depending on FW revision */
1613 { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC28_MDMNET) }, 1621 { USB_DEVICE(SIEMENS_VENDOR_ID, CINTERION_PRODUCT_HC28_MDMNET) },
1614 1622 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD100),
1615 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD100) }, 1623 .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
1624 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD120),
1625 .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
1626 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD140),
1627 .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
1616 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD145) }, 1628 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD145) },
1629 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD155),
1630 .driver_info = (kernel_ulong_t)&net_intf6_blacklist },
1617 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD200), 1631 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD200),
1618 .driver_info = (kernel_ulong_t)&net_intf6_blacklist 1632 .driver_info = (kernel_ulong_t)&net_intf6_blacklist },
1619 }, 1633 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD160),
1634 .driver_info = (kernel_ulong_t)&net_intf6_blacklist },
1620 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD500), 1635 { USB_DEVICE(OLIVETTI_VENDOR_ID, OLIVETTI_PRODUCT_OLICARD500),
1621 .driver_info = (kernel_ulong_t)&net_intf4_blacklist 1636 .driver_info = (kernel_ulong_t)&net_intf4_blacklist },
1622 },
1623 { USB_DEVICE(CELOT_VENDOR_ID, CELOT_PRODUCT_CT680M) }, /* CT-650 CDMA 450 1xEVDO modem */ 1637 { USB_DEVICE(CELOT_VENDOR_ID, CELOT_PRODUCT_CT680M) }, /* CT-650 CDMA 450 1xEVDO modem */
1624 { USB_DEVICE_AND_INTERFACE_INFO(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_GT_B3730, USB_CLASS_CDC_DATA, 0x00, 0x00) }, /* Samsung GT-B3730 LTE USB modem.*/ 1638 { USB_DEVICE_AND_INTERFACE_INFO(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_GT_B3730, USB_CLASS_CDC_DATA, 0x00, 0x00) }, /* Samsung GT-B3730 LTE USB modem.*/
1625 { USB_DEVICE(YUGA_VENDOR_ID, YUGA_PRODUCT_CEM600) }, 1639 { USB_DEVICE(YUGA_VENDOR_ID, YUGA_PRODUCT_CEM600) },