]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
usb: musb: blackfin: call gpio_free() on error path in musb_platform_init()
authorSergei Shtylyov <sshtylyov@ru.mvista.com>
Wed, 29 Sep 2010 06:54:31 +0000 (09:54 +0300)
committerPaul Gortmaker <paul.gortmaker@windriver.com>
Thu, 6 Jan 2011 23:08:24 +0000 (18:08 -0500)
commit 00be545e49d83485d49a598d3b7e090088934be8 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
drivers/usb/musb/blackfin.c

index ec8d324237f6814e2e8947b06ef00ea92b67bf5e..6a9e891ee67a31be57a3a5ef8365a31a0d37e9d6 100644 (file)
@@ -289,8 +289,10 @@ int __init musb_platform_init(struct musb *musb)
 
        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);