linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] usb: dwc3: gadget: Remove incomplete check
@ 2020-03-06  3:44 Thinh Nguyen
  2020-03-15  9:19 ` Felipe Balbi
  0 siblings, 1 reply; 13+ messages in thread
From: Thinh Nguyen @ 2020-03-06  3:44 UTC (permalink / raw)
  To: Felipe Balbi, Greg Kroah-Hartman, linux-usb; +Cc: John Youn, Thinh Nguyen

We only care to resume transfer for SG because the request maybe
partially completed. dwc3_gadget_ep_request_completed() doesn't check
that of a request, at least not fully.

1) It doesn't account for OUT direction.
2) It doesn't account for isoc. For isoc, a request maybe completed with
partial data.

Remove this check.

Fixes: e0c42ce590fe ("usb: dwc3: gadget: simplify IOC handling")
Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
---
 drivers/usb/dwc3/gadget.c | 15 +--------------
 1 file changed, 1 insertion(+), 14 deletions(-)

diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 39c92df6e188..9f46c8bc1114 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -2506,18 +2506,6 @@ static int dwc3_gadget_ep_reclaim_trb_linear(struct dwc3_ep *dep,
 			event, status, false);
 }
 
-static bool dwc3_gadget_ep_request_completed(struct dwc3_request *req)
-{
-	/*
-	 * For OUT direction, host may send less than the setup
-	 * length. Return true for all OUT requests.
-	 */
-	if (!req->direction)
-		return true;
-
-	return req->request.actual == req->request.length;
-}
-
 static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep,
 		const struct dwc3_event_depevt *event,
 		struct dwc3_request *req, int status)
@@ -2539,8 +2527,7 @@ static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep,
 
 	req->request.actual = req->request.length - req->remaining;
 
-	if (!dwc3_gadget_ep_request_completed(req) ||
-			req->num_pending_sgs) {
+	if (req->num_pending_sgs) {
 		__dwc3_gadget_kick_transfer(dep);
 		goto out;
 	}
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2020-03-31  8:39 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-06  3:44 [PATCH] usb: dwc3: gadget: Remove incomplete check Thinh Nguyen
2020-03-15  9:19 ` Felipe Balbi
2020-03-16  0:33   ` Thinh Nguyen
2020-03-16  7:00     ` Felipe Balbi
2020-03-16 20:37       ` Thinh Nguyen
2020-03-29  8:03         ` Felipe Balbi
2020-03-29 23:44           ` Thinh Nguyen
2020-03-30  8:26             ` Felipe Balbi
2020-03-30 19:30               ` Thinh Nguyen
2020-03-30 21:34                 ` Felipe Balbi
2020-03-31  1:47                   ` Thinh Nguyen
2020-03-31  8:12                     ` Felipe Balbi
2020-03-31  8:39                       ` Thinh Nguyen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).