Commit 630aa3cf authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman

[PATCH] USB: UHCI: No FSBR until device is configured

Some USB devices don't enumerate well with FSBR turned on.  This patch
keeps devices on the low-speed part of the schedule (which doesn't use
FSBR) until they have been fully configured.
Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 0c734622
...@@ -672,9 +672,9 @@ static int uhci_submit_control(struct uhci_hcd *uhci, struct urb *urb, struct ur ...@@ -672,9 +672,9 @@ static int uhci_submit_control(struct uhci_hcd *uhci, struct urb *urb, struct ur
/* Low-speed transfers get a different queue, and won't hog the bus. /* Low-speed transfers get a different queue, and won't hog the bus.
* Also, some devices enumerate better without FSBR; the easiest way * Also, some devices enumerate better without FSBR; the easiest way
* to do that is to put URBs on the low-speed queue while the device * to do that is to put URBs on the low-speed queue while the device
* is in the DEFAULT state. */ * isn't in the CONFIGURED state. */
if (urb->dev->speed == USB_SPEED_LOW || if (urb->dev->speed == USB_SPEED_LOW ||
urb->dev->state == USB_STATE_DEFAULT) urb->dev->state != USB_STATE_CONFIGURED)
skelqh = uhci->skel_ls_control_qh; skelqh = uhci->skel_ls_control_qh;
else { else {
skelqh = uhci->skel_fs_control_qh; skelqh = uhci->skel_fs_control_qh;
......
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