On Wed, 28 Sep 2011, Felipe Balbi wrote: > > > first hunk will prevent that flag from ever being cleared, no ? > > > According to documentation > > > include/linux/usb/gadget.h::usb_gadget_set_wedge(), it should prevent > > > ClearFeature(HALT) from succeding, but gadget driver still should be > > > able to clear that flag. > > > > > > Unless I'm missing something, I think your first hunk is also wrong, as > > > it would prevent WEDGE and STALL flags from ever being cleared after > > > they are set. > > > > No, that is correct. Once the WEDGE flag is set, the only way to clear > > it is by doing something drastic, like resetting the gadget or > > disabling and re-enabling the endpoint (as in Set-Interface or > > Set-Config). > > > > This is the required behavior for the Mass Storage bulk-only transport > > class, as described in section 6.6.1 of that spec. > > Sorry but what's correct ? My rationale or original patch ? Sorry for being unclear. I'm not sure about the first hunk; it depends on how other parts of the driver are written. I meant that the WEDGE and STALL _should_ be prevented from ever being cleared (by a Clear-Feature request from the host) after WEDGE is set. Alan Stern -- 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