Loading drivers/usb/dwc3/gadget.c +7 −14 Original line number Diff line number Diff line Loading @@ -3885,20 +3885,6 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3_event_buffer *evt) if (dwc->err_evt_seen) return IRQ_HANDLED; /* Controller is being halted, ignore the interrupts */ if (!dwc->pullups_connected) { /* * Even with controller halted, there is a possibility * that the interrupt line is kept asserted. * As per the databook (3.00A - 6.3.57) read the GEVNTCOUNT * to ensure that the interrupt line is de-asserted. */ count = dwc3_readl(dwc->regs, DWC3_GEVNTCOUNT(0)); count &= DWC3_GEVNTCOUNT_MASK; dbg_event(0xFF, "NO_PULLUP", count); return IRQ_HANDLED; } /* * With PCIe legacy interrupt, test shows that top-half irq handler can * be called again after HW interrupt deassertion. Check if bottom-half Loading @@ -3913,6 +3899,13 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3_event_buffer *evt) if (!count) return IRQ_NONE; /* Controller is halted; ignore new/pending events */ if (!dwc->pullups_connected) { dwc3_writel(dwc->regs, DWC3_GEVNTCOUNT(0), count); dbg_event(0xFF, "NO_PULLUP", count); return IRQ_HANDLED; } if (count > evt->length) { dbg_event(0xFF, "HUGE_EVCNT", count); /* Loading Loading
drivers/usb/dwc3/gadget.c +7 −14 Original line number Diff line number Diff line Loading @@ -3885,20 +3885,6 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3_event_buffer *evt) if (dwc->err_evt_seen) return IRQ_HANDLED; /* Controller is being halted, ignore the interrupts */ if (!dwc->pullups_connected) { /* * Even with controller halted, there is a possibility * that the interrupt line is kept asserted. * As per the databook (3.00A - 6.3.57) read the GEVNTCOUNT * to ensure that the interrupt line is de-asserted. */ count = dwc3_readl(dwc->regs, DWC3_GEVNTCOUNT(0)); count &= DWC3_GEVNTCOUNT_MASK; dbg_event(0xFF, "NO_PULLUP", count); return IRQ_HANDLED; } /* * With PCIe legacy interrupt, test shows that top-half irq handler can * be called again after HW interrupt deassertion. Check if bottom-half Loading @@ -3913,6 +3899,13 @@ static irqreturn_t dwc3_check_event_buf(struct dwc3_event_buffer *evt) if (!count) return IRQ_NONE; /* Controller is halted; ignore new/pending events */ if (!dwc->pullups_connected) { dwc3_writel(dwc->regs, DWC3_GEVNTCOUNT(0), count); dbg_event(0xFF, "NO_PULLUP", count); return IRQ_HANDLED; } if (count > evt->length) { dbg_event(0xFF, "HUGE_EVCNT", count); /* Loading