Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 35b0dfa1 authored by Mayank Rana's avatar Mayank Rana Committed by Hemant Kumar
Browse files

usb: qdss: Don't STARTXFER with usb_ep_enable() with USB BAM endpoint



USB BAM related endpoint's TRB ring is configured with platform specific
usb_ep_queue() API which also does STARTXFER with CMDIOC set. Current
code performs STARTXFER (without CMDIOC set) with usb_ep_enable() which
results into performing 2 times STARTXFER with USB BAM endpoint. Fix
this issue by endless flag with USB BAM endpoint and avoiding STARTXFER
with usb_ep_enable() for USB BAM endpoint.

Change-Id: Ifad1c9b3dd63c46d590f0552c452f238fde76161
Signed-off-by: default avatarMayank Rana <mrana@codeaurora.org>
Signed-off-by: default avatarHemant Kumar <hemantk@codeaurora.org>
parent 1fbcd4d0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -796,7 +796,7 @@ static int __dwc3_gadget_ep_enable(struct dwc3_ep *dep, unsigned int action)
	 * Issue StartTransfer here with no-op TRB so we can always rely on No
	 * Response Update Transfer command.
	 */
	if (usb_endpoint_xfer_bulk(desc) ||
	if ((usb_endpoint_xfer_bulk(desc) && !dep->endpoint.endless) ||
			usb_endpoint_xfer_int(desc)) {
		struct dwc3_gadget_ep_cmd_params params;
		struct dwc3_trb	*trb;