diff options
author | Sanket Parmar <[email protected]> | 2019-10-29 12:24:41 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <[email protected]> | 2019-10-30 12:52:13 +0100 |
commit | f5c8d290634a470600e1ce61733ec54d05a897e8 (patch) | |
tree | 748724238ae3f416260c58e8422a946f05616e80 | |
parent | 84968291d7924261c6a0624b9a72f952398e258b (diff) |
usb: cdns3: gadget: reset EP_CLAIMED flag while unloading
EP_CLAIMED flag is used to track the claimed endpoints. While unloading the
module, Reset EP_CLAIMED flag for all enabled endpoints. So that it can be
reused.
Signed-off-by: Sanket Parmar <[email protected]>
Acked-by: Peter Chen <[email protected]>
Reviewed-by: Roger Quadros <[email protected]>
Acked-by: Felipe Balbi <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
-rw-r--r-- | drivers/usb/cdns3/gadget.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/cdns3/gadget.c b/drivers/usb/cdns3/gadget.c index d9e7f2d06098..8421fc028c40 100644 --- a/drivers/usb/cdns3/gadget.c +++ b/drivers/usb/cdns3/gadget.c @@ -2379,6 +2379,8 @@ static int cdns3_gadget_udc_stop(struct usb_gadget *gadget) writel(EP_CMD_EPRST, &priv_dev->regs->ep_cmd); readl_poll_timeout_atomic(&priv_dev->regs->ep_cmd, val, !(val & EP_CMD_EPRST), 1, 100); + + priv_ep->flags &= ~EP_CLAIMED; } /* disable interrupt for device */ |