>> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c 
>> index 173f532..88eed49 100644
>> --- a/drivers/usb/dwc3/gadget.c
>> +++ b/drivers/usb/dwc3/gadget.c
>> @@ -2394,7 +2394,7 @@ static int dwc3_gadget_ep_reclaim_completed_trb(struct 
>> dwc3_ep *dep,
>>      if (event->status & DEPEVT_STATUS_SHORT && !chain)
>>              return 1;
>>  
>> -    if (event->status & DEPEVT_STATUS_IOC)
>> +    if (event->status & DEPEVT_STATUS_IOC && !chain)
>>              return 1;
>
> This will break the situation when we have more SGs than available TRBs. In 
> that case we set IOC before the last so we have time to update transfer to 
> append more TRBs.
What's your opinion on https://patchwork.kernel.org/patch/10640137/? Checking 
condition "(event->status & DEPEVT_STATUS_IOC) && (trb->ctrl & 
DWC3_TRB_CTRL_IOC)"
won't cause problem handling TRB shortage cases, right?

> Please, send me tracepoints
I sent you the tracepoints last Friday, any new findings?

Reply via email to