aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-05-15 09:55:58 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2011-05-17 11:20:23 -0700
commite99c4309fb064604a957d9c1a8d2d4a9ff19cf5e (patch)
treee171895f35ec73bd77f0093f8808440548838fee /drivers/usb
parentUSB: OTG: msm: Allow the widest possible range for VDDCX when removing (diff)
downloadlinux-dev-e99c4309fb064604a957d9c1a8d2d4a9ff19cf5e.tar.xz
linux-dev-e99c4309fb064604a957d9c1a8d2d4a9ff19cf5e.zip
USB: OTG: msm: Free VCCCX regulator even if we can't set the voltage
If for some reason we fail to set the voltage range for the VDDCX regulator when removing it's better to still disable and free the regulator as that avoids leaking a reference to it and is likely to ensure that it's turned off completely. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/otg/msm_otg.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/usb/otg/msm_otg.c b/drivers/usb/otg/msm_otg.c
index db69b2ac9264..b276f8fcdeba 100644
--- a/drivers/usb/otg/msm_otg.c
+++ b/drivers/usb/otg/msm_otg.c
@@ -93,11 +93,9 @@ static int msm_hsusb_init_vddcx(struct msm_otg *motg, int init)
} else {
ret = regulator_set_voltage(hsusb_vddcx, 0,
USB_PHY_VDD_DIG_VOL_MAX);
- if (ret) {
+ if (ret)
dev_err(motg->otg.dev, "unable to set the voltage "
"for hsusb vddcx\n");
- return ret;
- }
ret = regulator_disable(hsusb_vddcx);
if (ret)
dev_err(motg->otg.dev, "unable to disable hsusb vddcx\n");