aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/core/hub.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index b97110ca352d..d73ce262c365 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -101,6 +101,15 @@ module_param (blinkenlights, bool, S_IRUGO);
101MODULE_PARM_DESC (blinkenlights, "true to cycle leds on hubs"); 101MODULE_PARM_DESC (blinkenlights, "true to cycle leds on hubs");
102 102
103/* 103/*
104 * Device SATA8000 FW1.0 from DATAST0R Technology Corp requires about
105 * 10 seconds to send reply for the initial 64-byte descriptor request.
106 */
107/* define initial 64-byte descriptor request timeout in milliseconds */
108static int initial_descriptor_timeout = USB_CTRL_GET_TIMEOUT;
109module_param(initial_descriptor_timeout, int, S_IRUGO|S_IWUSR);
110MODULE_PARM_DESC(initial_descriptor_timeout, "initial 64-byte descriptor request timeout in milliseconds (default 5000 - 5.0 seconds)");
111
112/*
104 * As of 2.6.10 we introduce a new USB device initialization scheme which 113 * As of 2.6.10 we introduce a new USB device initialization scheme which
105 * closely resembles the way Windows works. Hopefully it will be compatible 114 * closely resembles the way Windows works. Hopefully it will be compatible
106 * with a wider range of devices than the old scheme. However some previously 115 * with a wider range of devices than the old scheme. However some previously
@@ -2538,7 +2547,7 @@ hub_port_init (struct usb_hub *hub, struct usb_device *udev, int port1,
2538 USB_REQ_GET_DESCRIPTOR, USB_DIR_IN, 2547 USB_REQ_GET_DESCRIPTOR, USB_DIR_IN,
2539 USB_DT_DEVICE << 8, 0, 2548 USB_DT_DEVICE << 8, 0,
2540 buf, GET_DESCRIPTOR_BUFSIZE, 2549 buf, GET_DESCRIPTOR_BUFSIZE,
2541 USB_CTRL_GET_TIMEOUT); 2550 initial_descriptor_timeout);
2542 switch (buf->bMaxPacketSize0) { 2551 switch (buf->bMaxPacketSize0) {
2543 case 8: case 16: case 32: case 64: case 255: 2552 case 8: case 16: case 32: case 64: case 255:
2544 if (buf->bDescriptorType == 2553 if (buf->bDescriptorType ==