Message ID | 20230504000129.728316-1-royluo@google.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 2f28c3c9c34742d501b623acf8ebfe3a7faed8a3 |
Headers | show |
Series | [v2] usb: dwc3: Add error logs for unknown endpoint events | expand |
On Thu, May 04, 2023, Roy Luo wrote: > In cases where the controller somehow fails to write to event buffer > memory (e.g. due to incorrect MMU config), the driver would receive > all-zero dwc3 events. However, the abnormal event is silently dropped > as a regular ep0out event. > Add error logs when an unknown endpoint event is received to highlight > the anomaly. > > Signed-off-by: Roy Luo <royluo@google.com> > --- > drivers/usb/dwc3/ep0.c | 3 +++ > drivers/usb/dwc3/gadget.c | 3 +++ > 2 files changed, 6 insertions(+) > > diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c > index 953b752a5052..b94243237293 100644 > --- a/drivers/usb/dwc3/ep0.c > +++ b/drivers/usb/dwc3/ep0.c > @@ -1207,5 +1207,8 @@ void dwc3_ep0_interrupt(struct dwc3 *dwc, > dep->flags &= ~DWC3_EP_TRANSFER_STARTED; > } > break; > + default: > + dev_err(dwc->dev, "unknown endpoint event %d\n", event->endpoint_event); > + break; > } > } > diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c > index c0ca4d12f95d..7163d5d0eea0 100644 > --- a/drivers/usb/dwc3/gadget.c > +++ b/drivers/usb/dwc3/gadget.c > @@ -3803,6 +3803,9 @@ static void dwc3_endpoint_interrupt(struct dwc3 *dwc, > break; > case DWC3_DEPEVT_RXTXFIFOEVT: > break; > + default: > + dev_err(dwc->dev, "unknown endpoint event %d\n", event->endpoint_event); > + break; > } > } > > > base-commit: c8c655c34e33544aec9d64b660872ab33c29b5f1 > -- > 2.40.1.495.gc816e09b53d-goog > Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com> Thanks, Thinh
diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c index 953b752a5052..b94243237293 100644 --- a/drivers/usb/dwc3/ep0.c +++ b/drivers/usb/dwc3/ep0.c @@ -1207,5 +1207,8 @@ void dwc3_ep0_interrupt(struct dwc3 *dwc, dep->flags &= ~DWC3_EP_TRANSFER_STARTED; } break; + default: + dev_err(dwc->dev, "unknown endpoint event %d\n", event->endpoint_event); + break; } } diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index c0ca4d12f95d..7163d5d0eea0 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -3803,6 +3803,9 @@ static void dwc3_endpoint_interrupt(struct dwc3 *dwc, break; case DWC3_DEPEVT_RXTXFIFOEVT: break; + default: + dev_err(dwc->dev, "unknown endpoint event %d\n", event->endpoint_event); + break; } }
In cases where the controller somehow fails to write to event buffer memory (e.g. due to incorrect MMU config), the driver would receive all-zero dwc3 events. However, the abnormal event is silently dropped as a regular ep0out event. Add error logs when an unknown endpoint event is received to highlight the anomaly. Signed-off-by: Roy Luo <royluo@google.com> --- drivers/usb/dwc3/ep0.c | 3 +++ drivers/usb/dwc3/gadget.c | 3 +++ 2 files changed, 6 insertions(+) base-commit: c8c655c34e33544aec9d64b660872ab33c29b5f1