It seems that the CDC-ACM driver can get stuck in a throttling
condition.

The proposed patch fixes this by resetting the acm->throttle flag at
device open time. This patch was tested on i386, ohci-hcd with a custom
USB device and appears to fix the problem.

Signed-off-by: Joris van Rantijk <[EMAIL PROTECTED]>


diff -ur -U5 linux-2.6.19.2-orig/drivers/usb/class/cdc-acm.c 
linux-2.6.19.2/drivers/usb/class/cdc-acm.c
--- linux-2.6.19.2-orig/drivers/usb/class/cdc-acm.c     2007-01-10 
20:10:37.000000000 +0100
+++ linux-2.6.19.2/drivers/usb/class/cdc-acm.c  2007-02-02 22:58:45.000000000 
+0100
@@ -478,10 +478,12 @@
        }
        for (i = 0; i < acm->rx_buflimit; i++) {
                list_add(&(acm->rb[i].list), &acm->spare_read_bufs);
        }
 
+       acm->throttle = 0;
+
        tasklet_schedule(&acm->urb_task);
 
 done:
 err_out:
        mutex_unlock(&open_mutex);

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to