Re: [PATCH v4 5/9] usb: dwc3: Avoid unmapping USB requests if endxfer is not complete

From: Wesley Cheng
Date: Tue Aug 30 2022 - 14:14:17 EST


Hi Greg,

On 8/30/2022 7:08 AM, Greg KH wrote:
On Wed, Aug 17, 2022 at 11:23:55AM -0700, Wesley Cheng wrote:
If DWC3_EP_DELAYED_STOP is set during stop active transfers, then do not
continue attempting to unmap request buffers during dwc3_remove_requests().
This can lead to SMMU faults, as the controller has not stopped the
processing of the TRB. Defer this sequence to the EP0 out start, which
ensures that there are no pending SETUP transactions before issuing the
endxfer.

Reviewed-by: Thinh Nguyen <Thinh.Nguyen@xxxxxxxxxxxx>
Signed-off-by: Wesley Cheng <quic_wcheng@xxxxxxxxxxx>
---
drivers/usb/dwc3/core.h | 3 +++
drivers/usb/dwc3/ep0.c | 5 ++++-
drivers/usb/dwc3/gadget.c | 6 +++++-
3 files changed, 12 insertions(+), 2 deletions(-)


This commit does not apply to my usb-testing branch. I've taken the
first 4, please rebase and resend the rest.


Sure resubmit it later today. Sorry about that and thanks for the heads up.

Thanks
Wesley Cheng