usb: dwc3: gadget: Handle erratic error event only once
DWC3 databook suggests that upon receiving erratic error event
software should reset the controller. The way in which the
driver currently handles interrupts by offloading event processing
to a threaded handler could result in a long sequence of received
erratic errors in the event queue. dwc3_gadget_interrupt() could
then end up processing a large number of the same event unnecessarily.
In the case of dwc3-msm, this results in KERN_INFO messages flooding
the console. Fix this by only handling erratic error once. Add
a state variable to keep track of when it is seen, and clear it
once a non-error event is processed.
Change-Id: I5deeb2a614f9002867472a0e4aa26a61f0413ceb
Signed-off-by:
Jack Pham <jackp@codeaurora.org>
Loading
Please register or sign in to comment