diff options
author | Rob Emanuele <rje@crystalfontz.com> | 2010-12-14 19:00:30 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-12-16 13:36:12 -0800 |
commit | 2c8245c4990e75d86ab30bb0af9bb90cbe04985d (patch) | |
tree | 464671dda8875a54056b1e18008d5a3da9f1cdab | |
parent | 6ef9fc657bd69c708ada2ee9fd3b2e13f7600a3d (diff) | |
download | op-kernel-dev-2c8245c4990e75d86ab30bb0af9bb90cbe04985d.zip op-kernel-dev-2c8245c4990e75d86ab30bb0af9bb90cbe04985d.tar.gz |
USB: atmel_usba_udc: fix freeing irq in usba_udc_remove()
Add a free_irq() call on vbus gpio when we remove udc so that the
vbus irq is properly released.
Signed-off-by: Rob Emanuele <rje@crystalfontz.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/usb/gadget/atmel_usba_udc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/gadget/atmel_usba_udc.c b/drivers/usb/gadget/atmel_usba_udc.c index 717ff65..e7c65a4 100644 --- a/drivers/usb/gadget/atmel_usba_udc.c +++ b/drivers/usb/gadget/atmel_usba_udc.c @@ -2057,8 +2057,10 @@ static int __exit usba_udc_remove(struct platform_device *pdev) usba_ep_cleanup_debugfs(&usba_ep[i]); usba_cleanup_debugfs(udc); - if (gpio_is_valid(udc->vbus_pin)) + if (gpio_is_valid(udc->vbus_pin)) { + free_irq(gpio_to_irq(udc->vbus_pin), udc); gpio_free(udc->vbus_pin); + } free_irq(udc->irq, udc); kfree(usba_ep); |