RE: [PATCH] usb: dwc3: gadget: fix miss isoc issue introduced by IRQ latency

From: Felipe Balbi
Date: Fri Dec 14 2018 - 06:24:01 EST



Hi,

"Zengtao (B)" <prime.zeng@xxxxxxxxxxxxx> writes:
>>-----Original Message-----
>>From: Felipe Balbi [mailto:balbi@xxxxxxxxxx]
>>Sent: Friday, December 14, 2018 4:52 PM
>>To: Zengtao (B) <prime.zeng@xxxxxxxxxxxxx>
>>Cc: liangshengjun <liangshengjun@xxxxxxxxxxxxx>; Zengtao (B)
>><prime.zeng@xxxxxxxxxxxxx>; Greg Kroah-Hartman
>><gregkh@xxxxxxxxxxxxxxxxxxx>; linux-usb@xxxxxxxxxxxxxxx;
>>linux-kernel@xxxxxxxxxxxxxxx
>>Subject: Re: [PATCH] usb: dwc3: gadget: fix miss isoc issue introduced by
>>IRQ latency
>>
>>* PGP Signed by an unknown key
>>
>>Zeng Tao <prime.zeng@xxxxxxxxxxxxx> writes:
>>
>>> If it's a busy system, some times when we start an isoc transfer, the
>>> framenumber get from the event buffer may be already elasped, in this
>>> case, we will get all the packets dropped due to miss isoc. And we
>>> turn into transfer nothing, to fix this issue, we need to fix the
>>> framenumber to make sure that it's not out of date.
>>>
>>> Signed-off-by: Liang Shengjun <liangshengjun@xxxxxxxxxxxxx>
>>> Signed-off-by: Zeng Tao <prime.zeng@xxxxxxxxxxxxx>
>>
>>There's a patch going upstream already doing this:
>>
>>https://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git/commit/?h
>>=next&id=d53701067f048b8b11635e964b6d3bd9a248c622
>>
>
> Sorry, I think I missed to update to the latest version. But I think my
> patch is more efficient. Because I just sync the frame from the HW, it
> won't fail and there is no need to extra tries.
>
> What do you think about it?

the 14 bits you use for your check is not representative of the actual
micro-frame you're currently in. Thinh explained that in the discussion
we had until we came to the patch I pointed you to above. Please look at
the mailing list archives for details.

--
balbi

Attachment: signature.asc
Description: PGP signature