Commit 64423330 authored by Johannes Erdfelt's avatar Johannes Erdfelt Committed by Greg Kroah-Hartman

[PATCH] 2.5 uhci breadth first traversal for low speed

Woops, my fault. I forgot to send you this patch which needs to be
applied before the big one.

It's from Dan as well and switches low speed control to use breadth
first traversal to make it more fair.

  Don't make low speed control use depth first. That isn't
  particularly fair. Thanks to Dan Streetman for bringing
  this up and the original patch.
parent bd00d879
...@@ -880,12 +880,12 @@ static int uhci_submit_control(struct uhci_hcd *uhci, struct urb *urb) ...@@ -880,12 +880,12 @@ static int uhci_submit_control(struct uhci_hcd *uhci, struct urb *urb)
urbp->qh = qh; urbp->qh = qh;
qh->urbp = urbp; 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 */ /* Low speed transfers get a different queue, and won't hog the bus */
if (urb->dev->speed == USB_SPEED_LOW) { if (urb->dev->speed == USB_SPEED_LOW)
uhci_insert_tds_in_qh(qh, urb, UHCI_PTR_DEPTH);
uhci_insert_qh(uhci, uhci->skel_ls_control_qh, urb); uhci_insert_qh(uhci, uhci->skel_ls_control_qh, urb);
} else { else {
uhci_insert_tds_in_qh(qh, urb, UHCI_PTR_BREADTH);
uhci_insert_qh(uhci, uhci->skel_hs_control_qh, urb); uhci_insert_qh(uhci, uhci->skel_hs_control_qh, urb);
uhci_inc_fsbr(uhci, urb); uhci_inc_fsbr(uhci, urb);
} }
......
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