On Tue, 21 Jan 2014, Felipe Balbi wrote: > Hi, > > On Tue, Jan 21, 2014 at 01:06:19PM -0500, Alan Stern wrote: > > > You could try to differentiate between an endpoint halt that requires a > > > manual cleanup, and ones that the upper layer should handle, perhaps by > > > adding a new EP_HALTED_MANUAL flag. The driver could accept URBs for > > > the manual cleanup case, and reject URBs with -EPIPE for the ones the > > > upper layers should handle. > > > > That should not be necessary. The HCD should always accept URB > > submissions. Nothing will get sent to the device until the HCD clears > > any host-side halts, but the upper layers don't worry about that > > because the HCD takes care of it automatically. > > > > Contrariwise, the upper layers are responsible for clearing device-side > > halts. The HCD should ignore that end of things as much as it can. > > right, but there's still the bug that usb_submit_urb() times out with > xhci and it doesn't with ehci. So there _is_ a bug in xhci. Oh, definitely. I was just trying to help make sure that the bug wasn't "fixed" incorrectly. Alan Stern -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html