usb: dwc3: gadget: ignore endpoint IRQs when endpoint is disabled
By the time we're disabling the endpoint, HW could already have posted more events to our event buffer. In that case, we will receive endpoint events for a disabled endpoint. In order to protect ourselves from that situation, we simply ignore endpoint interrupts whenever the endpoint is disabled. Tested-by: Pratyush Anand <pratyush.anand@st.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
Родитель
1e2360eada
Коммит
3336abb5b6
|
@ -1768,6 +1768,9 @@ static void dwc3_endpoint_interrupt(struct dwc3 *dwc,
|
|||
|
||||
dep = dwc->eps[epnum];
|
||||
|
||||
if (!(dep->flags & DWC3_EP_ENABLED))
|
||||
return;
|
||||
|
||||
dev_vdbg(dwc->dev, "%s: %s\n", dep->name,
|
||||
dwc3_ep_event_string(event->endpoint_event));
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче