summaryrefslogtreecommitdiff
path: root/drivers/usb/dwc3/gadget.c
diff options
context:
space:
mode:
authorMayank Rana <mrana@codeaurora.org>2015-09-28 20:01:21 -0700
committerHemant Kumar <hemantk@codeaurora.org>2016-09-12 15:43:55 -0700
commitef529d5647ef2d4fe7f004d78b41e365dbe55178 (patch)
tree8eb223f991ebf0a8c2dd98e5939a843930769a8e /drivers/usb/dwc3/gadget.c
parent9c8924dbaadbb194f6d0bf30fa7fafde20ec096c (diff)
Revert "usb: dwc3: fix TRB completion when multiple TRBs are started"
commit 0b93a4c838fa ("usb: dwc3: fix TRB completion when multiple TRBs are started") enables XFERINPROGRESS event with all endpoint type except control endpoint. Currently we are not using XFERINPROGRESS for queuing next request and depends on XFERNOTREADY event only. Change-Id: I833c2311c5af48fd15f2813df9cc83c3471c4f94 Signed-off-by: Mayank Rana <mrana@codeaurora.org>
Diffstat (limited to 'drivers/usb/dwc3/gadget.c')
-rw-r--r--drivers/usb/dwc3/gadget.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index d90df256796c..3d96a8bef5f0 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -539,7 +539,7 @@ static int dwc3_gadget_set_ep_config(struct dwc3 *dwc, struct dwc3_ep *dep,
dep->stream_capable = true;
}
- if (!usb_endpoint_xfer_control(desc))
+ if (usb_endpoint_xfer_isoc(desc))
params.param1 |= DWC3_DEPCFG_XFER_IN_PROGRESS_EN;
/*
@@ -2564,6 +2564,12 @@ static void dwc3_endpoint_interrupt(struct dwc3 *dwc,
break;
case DWC3_DEPEVT_XFERINPROGRESS:
dep->dbg_ep_events.xferinprogress++;
+ if (!usb_endpoint_xfer_isoc(dep->endpoint.desc)) {
+ dev_dbg(dwc->dev, "%s is not an Isochronous endpoint\n",
+ dep->name);
+ return;
+ }
+
dwc3_endpoint_transfer_complete(dwc, dep, event);
break;
case DWC3_DEPEVT_XFERNOTREADY: