usb: dwc3: gadget: skip Set/Clear Halt when invalid
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 19 Jan 2017 11:38:42 +0000 (13:38 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 5 Jun 2017 20:13:44 +0000 (21:13 +0100)
commit29c49277513d3d13a7c5a4f67fc34d3034c27826
tree50cee9e0e6e683cf8af03b868e6a8a904d7de9a0
parent80ffaf9e0e91fb429ee1d14f69f05bbe29b4d137
usb: dwc3: gadget: skip Set/Clear Halt when invalid

commit ffb80fc672c3a7b6afd0cefcb1524fb99917b2f3 upstream.

At least macOS seems to be sending
ClearFeature(ENDPOINT_HALT) to endpoints which
aren't Halted. This makes DWC3's CLEARSTALL command
time out which causes several issues for the driver.

Instead, let's just return 0 and bail out early.

Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/usb/dwc3/gadget.c