MLK-16065-16 usb: cdns3: gadget: fix no one handled interrupt issue
authorPeter Chen <peter.chen@nxp.com>
Wed, 2 Aug 2017 07:04:02 +0000 (15:04 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 20:36:40 +0000 (15:36 -0500)
If there are too many interrupts for non-control ep, the
no-one handled interrupt issue will occur due to without
return IRQ_HANDLED for them.

Signed-off-by: Peter Chen <peter.chen@nxp.com>
drivers/usb/cdns3/gadget.c

index 5bf1409..09416c3 100644 (file)
@@ -1183,6 +1183,7 @@ static irqreturn_t cdns_irq_handler_thread(struct cdns3 *cdns)
                cdns_check_ep_interrupt_proceed(
                                usb_ss->eps[CAST_EP_REG_POS_TO_INDEX(bit_pos)]);
                reg &= ~bit_mask;
+               ret = IRQ_HANDLED;
        } while (reg);
 
 irqend: