usb: dwc3: Add error logs for unknown endpoint events
authorRoy Luo <royluo@google.com>
Thu, 4 May 2023 00:01:29 +0000 (00:01 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 13 May 2023 09:57:30 +0000 (18:57 +0900)
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>
Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Link: https://lore.kernel.org/r/20230504000129.728316-1-royluo@google.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/dwc3/ep0.c
drivers/usb/dwc3/gadget.c

index 953b752..b942432 100644 (file)
@@ -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;
        }
 }
index c0ca4d1..7163d5d 100644 (file)
@@ -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;
        }
 }