Vernon Sauder <vernoninhand@xxxxxxxxx> writes: > From: Vernon Sauder <vsauder@xxxxxxxxxx> > > > Signed-off-by: Vernon Sauder <vsauder@xxxxxxxxxx> > --- > drivers/usb/gadget/pxa27x_udc.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/usb/gadget/pxa27x_udc.c b/drivers/usb/gadget/pxa27x_udc.c > index 02aa3ea..be8e895 100644 > --- a/drivers/usb/gadget/pxa27x_udc.c > +++ b/drivers/usb/gadget/pxa27x_udc.c > @@ -2107,10 +2107,10 @@ static void irq_handle_data(int irq, struct pxa_udc *udc) > } > > for (i = 16; udcisr1 != 0 && i < 24; udcisr1 >>= 2, i++) { > - udc_writel(udc, UDCISR1, UDCISR_INT(i - 16, UDCISR_INT_MASK)); > if (!(udcisr1 & UDCISR_INT_MASK)) > continue; > > + udc_writel(udc, UDCISR1, UDCISR_INT(i - 16, UDCISR_INT_MASK)); > ep = &udc->pxa_ep[i]; > ep->stats.irqs++; > handle_ep(ep); NAK. This prevents endless loop of interrupts from the udc, even if endpoint configuration is broken. This is a safety barrier I don't want to remove. The idea is after interrupt handling is done, no pending interrupt remains. Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html