Greg:

I'm not sure what this piece of code is doing in the UHCI driver.  It 
looks like someone envisioned queuing several URBs for the same endpoint 
simultaneously.  Anyway, the driver can't do that and this code can never 
run.

Please apply.

Alan Stern



===== drivers/usb/host/uhci-hcd.c 1.101 vs edited =====
--- 1.101/drivers/usb/host/uhci-hcd.c   Fri Mar 26 10:19:10 2004
+++ edited/drivers/usb/host/uhci-hcd.c  Fri Apr 16 11:02:37 2004
@@ -332,17 +332,7 @@
        /* Grab the last QH */
        lqh = list_entry(skelqh->list.prev, struct uhci_qh, list);
 
-       /*
-        * Patch this endpoint's URB's QHs to point to the next skelqh:
-        *    skelqh --> ... lqh --> newqh --> next skelqh
-        * Do this first, so the HC always sees the right QH after this one.
-        */
-       list_for_each (tmp, &urbp->queue_list) {
-               struct urb_priv *turbp =
-                       list_entry(tmp, struct urb_priv, queue_list);
-
-               turbp->qh->link = lqh->link;
-       }
+       /* Point to the next skelqh */
        urbp->qh->link = lqh->link;
        wmb();                          /* Ordering is important */
 



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to