On Tue, Jul 21, 2015 at 09:29:17AM -0500, Felipe Balbi wrote:
> From: John Youn <[email protected]>
> 
> This fixes an issue introduced in commit b23c843992b6 (usb: dwc3:
> gadget: fix DEPSTARTCFG for non-EP0 EPs) that made sure we would
> only use DEPSTARTCFG once per SetConfig.
> 
> The trick is that we should use one DEPSTARTCFG per SetConfig *OR*
> SetInterface. SetInterface was completely missed from the original
> patch.
> 
> This problem became aparent after commit 76e838c9f776 (usb: dwc3:
> gadget: return error if command sent to DEPCMD register fails)
> added checking of the return status of device endpoint commands.
> 
> 'Set Endpoint Transfer Resource' command was caught failing
> occasionally. This is because the Transfer Resource
> Index was not getting reset during a SET_INTERFACE request.
> 
> Finally, to fix the issue, was we have to do is make sure that
> our start_config_issued flag gets reset whenever we receive a
> SetInterface request.
> 
> To verify the problem (and its fix), all we have to do is run
> test 9 from testusb with 'testusb -t 9 -s 2048 -a -c 5000'.
> 
> Fixes: b23c843992b6 (usb: dwc3: gadget: fix DEPSTARTCFG for non-EP0 EPs)
> Cc: <[email protected]> # v3.2+
> Signed-off-by: John Youn <[email protected]>
> Signed-off-by: Felipe Balbi <[email protected]>

Felipe, I've verified it in my side. :)

ray@hr-slim:~/linux-usb$ sudo ./tools/usb/testusb -D /dev/bus/usb/002/004 -t 9 
-s 2048 -a -c 5000
unknown speed   /dev/bus/usb/002/004    0
/dev/bus/usb/002/004 test 9,   15.300784 secs

Tested-by: Huang Rui <[email protected]>
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to