On Fri, 16 Sep 2005, Franck wrote: > I now have the log with usb storage debug messages. During device > scanning, the host controller is returning a "data error" status every > time the usb-storage layer issue an IN command. Unfortunately I don't > know exactly what "data error" status means....the datasheet is so > poor :(
And sometimes the hardware doesn't distinguish among various kinds of errors. > After 3 retries, I give back the URB to the mass-storage driver. I > indicate an error by setting urb->status to -EPROTO (I don't if it's > the correct value...). That's a good value to use for an unknown low-level error. > Then the mass-storage driver detect the error > and reset the device, wait for 6 seconds and retries the transfer. > This time the transfer succesfully finishes ! Eventually a new > transfer is issued and the same scenario is occuring. I attached the > log corresponding to one buggy sequence. Maybe something in your driver doesn't get reset properly when an URB finishes. That could cause the first bulk-IN transfer to succeed and the second to fail. In your log, there's something strange about the control transfers. They don't have a Data stage, only Setup and Status. So the token for the Status stage should be an IN, but the log lists it as an OUT. > Another weird point. When I disable debug log, the device > configuration fails ! Still because of data error. The only difference > is that the hcd is running faster... Don't think I can help you there. You'll have to track that down by yourself! Alan Stern ------------------------------------------------------- SF.Net email is sponsored by: Tame your development challenges with Apache's Geronimo App Server. Download it for free - -and be entered to win a 42" plasma tv or your very own Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel