> Are you using an invalid endpoint? You're right, MxPS is not zero in > any of those, but since it parsed alright, there's no reason why > dev->exmaxpacketin/out should be 0.
It is not clear at all why dev->epmaxpacketin/out should be anything but 0. This array is never initialized as far as I can see. More precisely, the value for endpoint 0 is set in usb_new_device(). Values for other endpoints only in usb_set_maxpacket() [which has the comment "hub-only!!"]. And usb_set_maxpacket() is called only by hub.c:usb_reset_device() and core/usb.c:usb_set_interface() and usb_set_configuration(). >From the comments it looks like usb_set_interface() and usb_set_configuration() are called only in non-default situations. In any case, usb_set_interface() is not called in usb-storage, and usb_set_configuration() only in some very ugly, kludgy #ifdef CONFIG_USB_STORAGE_SDDR09 - part of storage/usb.c. So, at least in usb-storage, it seems that epmaxpacket* will be valid only by accident. It also looks like storage/usb.c picks an essentially random endpoint to use, ignoring all others. Let me cc Matt so that he can comment. Andries _______________________________________________________________ Have big pipes? SourceForge.net is looking for download mirrors. We supply the hardware. You get the recognition. Email Us: [EMAIL PROTECTED] _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel