diff options
author | Sergei Shtylyov <sshtylyov@ru.mvista.com> | 2010-09-29 08:54:31 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-10-22 19:21:59 +0200 |
commit | 00be545e49d83485d49a598d3b7e090088934be8 (patch) | |
tree | 6016ade32ace6be1c22d1c2adc989abced26d787 /drivers/usb/musb | |
parent | usb: musb: blackfin: call usb_nop_xceiv_unregister() in musb_platform_exit() (diff) | |
download | linux-00be545e49d83485d49a598d3b7e090088934be8.tar.xz linux-00be545e49d83485d49a598d3b7e090088934be8.zip |
usb: musb: blackfin: call gpio_free() on error path in musb_platform_init()
Blackfin's musb_platform_init() needs to call gpio_free() for error cleanup iff
otg_get_transceiver() call returns NULL.
Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/musb')
-rw-r--r-- | drivers/usb/musb/blackfin.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/musb/blackfin.c b/drivers/usb/musb/blackfin.c index 4fa25553c450..611a9d274363 100644 --- a/drivers/usb/musb/blackfin.c +++ b/drivers/usb/musb/blackfin.c @@ -342,8 +342,10 @@ int __init musb_platform_init(struct musb *musb, void *board_data) usb_nop_xceiv_register(); musb->xceiv = otg_get_transceiver(); - if (!musb->xceiv) + if (!musb->xceiv) { + gpio_free(musb->config->gpio_vrsel); return -ENODEV; + } if (ANOMALY_05000346) { bfin_write_USB_APHY_CALIB(ANOMALY_05000346_value); |