]> www.infradead.org Git - users/dwmw2/linux.git/commit
usb: dwc3: gadget: Properly handle failed kick_transfer
authorThinh Nguyen <Thinh.Nguyen@synopsys.com>
Sun, 29 Mar 2020 23:12:57 +0000 (16:12 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 24 Jun 2020 15:48:40 +0000 (17:48 +0200)
commit50affa2a092dc7d26ab75d901fe6b137d3f41424
tree9ac6ca3dec129e9f7c5a3ada6fdc389c463f0fd8
parent26b36d7977327029985202743d2f79a54d0059be
usb: dwc3: gadget: Properly handle failed kick_transfer

[ Upstream commit 8d99087c2db863c5fa3a4a1f3cb82b3a493705ca ]

If dwc3 fails to issue START_TRANSFER/UPDATE_TRANSFER command, then we
should properly end an active transfer and give back all the started
requests. However if it's for an isoc endpoint, the failure maybe due to
bus-expiry status. In this case, don't give back the requests and wait
for the next retry.

Fixes: 72246da40f37 ("usb: Introduce DesignWare USB3 DRD Driver")
Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/usb/dwc3/gadget.c