Commit 25fe0c9d authored by David Brownell's avatar David Brownell Committed by Greg Kroah-Hartman

[PATCH] USB: usb root hubs need longer timeout

Root hubs should use 50 msec timeouts, not 10 msec.  This will
if nothing else eliminate some messages when using EHCI, which
insists on the whole timeout!
parent 7fbcc184
......@@ -708,6 +708,7 @@ static int hub_port_status(struct usb_device *dev, int port,
#define HUB_RESET_TRIES 5
#define HUB_PROBE_TRIES 2
#define HUB_ROOT_RESET_TIME 50 /* times are in msec */
#define HUB_SHORT_RESET_TIME 10
#define HUB_LONG_RESET_TIME 200
#define HUB_RESET_TIMEOUT 500
......@@ -903,6 +904,12 @@ static void hub_port_connect_change(struct usb_hub *hubstate, int port,
return;
}
/* root hub ports have a slightly longer reset period
* (from USB 2.0 spec, section 7.1.7.5)
*/
if (!hub->parent)
delay = HUB_ROOT_RESET_TIME;
/* Some low speed devices have problems with the quick delay, so */
/* be a bit pessimistic with those devices. RHbug #23670 */
if (portstatus & USB_PORT_STAT_LOW_SPEED)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment