[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87zi6bp59h.fsf@linux.intel.com>
Date: Fri, 22 Dec 2017 09:54:02 +0200
From: Felipe Balbi <balbi@...nel.org>
To: Lipengcheng <lpc.li@...ilicon.com>
Cc: "linux-usb\@vger.kernel.org" <linux-usb@...r.kernel.org>,
"linux-kernel\@vger.kernel.org" <linux-kernel@...r.kernel.org>,
Lipengcheng <lpc.li@...ilicon.com>
Subject: Re: [PATCH] usb: dwc3: gadget:Core consumes a trb software to fill a trb, in ISO
Hi,
Lipengcheng <lpc.li@...ilicon.com> writes:
> Iso transmission, the current process is that all trb(HWO=1) is handled.
> Then core generate DWC3_DEPEVT_XFERNOTREADY event, Software begin refill
> trb, this will produce 0 length package, the patch is to achieve the core
> consumes a trb, and then the software fill a trb. Normally, there will never
> be DWC3_DEPEVT_XFERNOTREADY event and 0-length packet.
>
> Signed-off-by: l00229106 <lpc.li@...ilicon.com>
who is 100229106??
> ---
> drivers/usb/dwc3/gadget.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
> index 981fd98..1e6c42e 100644
> --- a/drivers/usb/dwc3/gadget.c
> +++ b/drivers/usb/dwc3/gadget.c
> @@ -2420,7 +2420,7 @@ static void dwc3_endpoint_transfer_complete(struct dwc3 *dwc,
> if (!dep->endpoint.desc)
> return;
>
> - if (!usb_endpoint_xfer_isoc(dep->endpoint.desc))
> + if (!usb_endpoint_xfer_isoc(dep->endpoint.desc) || (dep->flags & DWC3_EP_TRANSFER_STARTED))
this is wrong. isoc endpoints should NEVER be prestarted.
--
balbi
Powered by blists - more mailing lists