diff --git a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c index c294088d7b8b89f0a80665e05e3225f972f6787c..6d874cb6a4487a4c215389ce29a36da70fdc74ac 100644 --- a/drivers/usb/host/uhci-hcd.c +++ b/drivers/usb/host/uhci-hcd.c @@ -880,12 +880,12 @@ static int uhci_submit_control(struct uhci_hcd *uhci, struct urb *urb) urbp->qh = qh; qh->urbp = urbp; + uhci_insert_tds_in_qh(qh, urb, UHCI_PTR_BREADTH); + /* Low speed transfers get a different queue, and won't hog the bus */ - if (urb->dev->speed == USB_SPEED_LOW) { - uhci_insert_tds_in_qh(qh, urb, UHCI_PTR_DEPTH); + if (urb->dev->speed == USB_SPEED_LOW) uhci_insert_qh(uhci, uhci->skel_ls_control_qh, urb); - } else { - uhci_insert_tds_in_qh(qh, urb, UHCI_PTR_BREADTH); + else { uhci_insert_qh(uhci, uhci->skel_hs_control_qh, urb); uhci_inc_fsbr(uhci, urb); }