Hi,
Matthew found a bug in the usb interrupt submission, which was caused by
wrong data toggle. This patch corrects that for usb-uhci.

Please apply to 2.3.99-preX.
-- 
        Bye
         Georg Acher, [EMAIL PROTECTED]         
         http://www.in.tum.de/~acher/
          "Oh no, not again !" The bowl of petunias          
--- linux/drivers/usb-uhci.c    Wed Mar 22 19:38:49 2000
+++ linux.afs/drivers/usb/usb-uhci.c    Thu Mar 23 10:46:32 2000
@@ -1004,8 +1004,11 @@
                urb_priv = urb->hcpriv;
 
                switch (usb_pipetype (urb->pipe)) {
-               case PIPE_ISOCHRONOUS:
+
                case PIPE_INTERRUPT:
+                       usb_dotoggle (urb->dev, usb_pipeendpoint (urb->pipe), 
+usb_pipeout (urb->pipe));
+
+               case PIPE_ISOCHRONOUS:
                        uhci_clean_iso_step1(s, urb_priv);
                        uhci_wait_ms(1);
                        uhci_clean_iso_step2(s, urb_priv);
@@ -1133,8 +1136,10 @@
                urb_priv = (urb_priv_t*)urb->hcpriv;
 
                switch (usb_pipetype (urb->pipe)) {
-               case PIPE_ISOCHRONOUS:
                case PIPE_INTERRUPT:
+                       usb_dotoggle (urb->dev, usb_pipeendpoint (urb->pipe), 
+usb_pipeout (urb->pipe));         
+
+               case PIPE_ISOCHRONOUS:
                        uhci_clean_iso_step1 (s, urb_priv);
                        break;
 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to