Greetings linux-usb, I've been having problems for about a month with a driver I wrote for a USB device, first in Windows using UMDF, and now as a Linux kernel module. In short, at certain points in the driver, usb_bulk_msg(), usb_submit_urb(), etc. return -75, (-EOVERFLOW) which has been associated with unexpected extra data. ('babble') In order to address these problems I need a good way to 'clear' all data sent by the device through the input bulk endpoint. Currently I have a function that basically calls usb_bulk_msg(), reading in wMaxPacketSize bytes at a time until the length of the read reported does not match this maximum packet size. (typically 512) This fixes some problems, but usage of the input endpoint immediately following this 'flush' function (for data that's requested after the flush takes place) fails with -75. In UMDF, there's a method called IWDFUsbTargetPipe::Flush() that wipes data from the fifo buffer associated with the USB endpoint: http://msdn.microsoft.com/en-us/library/dd184035.aspx I'm not sure if usbcore performs buffering, or if the USB host controller does this, or what is going on, but does the Linux USB subsystem include similar functionality, allowing a bulk input to be 'wiped' of data, or 'reset'? - Lucas -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html