From: Peter Chen Date: Tue, 1 Sep 2020 02:33:50 +0000 (+0800) Subject: usb: cdns3: gadget: clear the interrupt status when disconnect the host X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0eeda059956d57b16143cc1dd0aed7e5fc383d5d;p=linux.git usb: cdns3: gadget: clear the interrupt status when disconnect the host It is meaningless to handle any interrupts after disconnecting with host Signed-off-by: Peter Chen Signed-off-by: Felipe Balbi --- diff --git a/drivers/usb/cdns3/gadget.c b/drivers/usb/cdns3/gadget.c index 081447bf73134..4c939dad9c339 100644 --- a/drivers/usb/cdns3/gadget.c +++ b/drivers/usb/cdns3/gadget.c @@ -2739,10 +2739,13 @@ static int cdns3_gadget_pullup(struct usb_gadget *gadget, int is_on) { struct cdns3_device *priv_dev = gadget_to_cdns3_device(gadget); - if (is_on) + if (is_on) { writel(USB_CONF_DEVEN, &priv_dev->regs->usb_conf); - else + } else { + writel(~0, &priv_dev->regs->ep_ists); + writel(~0, &priv_dev->regs->usb_ists); writel(USB_CONF_DEVDS, &priv_dev->regs->usb_conf); + } return 0; }