RE: [PATCH] usb: dwc2: gadget: Fix issue in dwc2_gadget_start_isoc()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Minas:

>-----Original Message-----
>From: linux-usb-owner@xxxxxxxxxxxxxxx
>[mailto:linux-usb-owner@xxxxxxxxxxxxxxx] On Behalf Of Minas Harutyunyan
>Sent: Tuesday, June 12, 2018 4:37 PM
>To: Felipe Balbi <balbi@xxxxxxxxxx>; Greg Kroah-Hartman
><gregkh@xxxxxxxxxxxxxxxxxxx>; Minas Harutyunyan
><Minas.Harutyunyan@xxxxxxxxxxxx>; linux-usb@xxxxxxxxxxxxxxx
>Cc: John Youn <John.Youn@xxxxxxxxxxxx>
>Subject: [PATCH] usb: dwc2: gadget: Fix issue in dwc2_gadget_start_isoc()
>
>In case of requests queue is empty reset EP target_frame to initial value.
>
>This allow restarting ISOC traffic in case when function driver queued
>requests with interruptions.
>
>Signed-off-by: Minas Harutyunyan <hminas@xxxxxxxxxxxx>
>---
> drivers/usb/dwc2/gadget.c | 1 +
> 1 file changed, 1 insertion(+)
>
>diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c index
>7a5e265f48f7..24d23025be77 100644
>--- a/drivers/usb/dwc2/gadget.c
>+++ b/drivers/usb/dwc2/gadget.c
>@@ -891,6 +891,7 @@ static void dwc2_gadget_start_isoc_ddma(struct
>dwc2_hsotg_ep *hs_ep)
> 	struct dwc2_dma_desc *desc;
>
> 	if (list_empty(&hs_ep->queue)) {
>+		hs_ep->target_frame = TARGET_FRAME_INITIAL;
> 		dev_dbg(hsotg->dev, "%s: No requests in queue\n", __func__);
> 		return;
> 	}
>--
Tested-by: Zeng Tao <prime.zeng@xxxxxxxxxxxxx>

I have tested it on my platform using webcam gadget application.

Regards
Zengtao 


>2.11.0
>
>--
>To unsubscribe from this list: send the line "unsubscribe linux-usb" in the
>body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at
>http://vger.kernel.org/majordomo-info.html
��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux