Răsfoiți Sursa

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>
Mark Brown 14 ani în urmă
părinte
comite
e99c4309fb
1 a modificat fișierele cu 1 adăugiri și 3 ștergeri
  1. 1 3
      drivers/usb/otg/msm_otg.c

+ 1 - 3
drivers/usb/otg/msm_otg.c

@@ -93,11 +93,9 @@ static int msm_hsusb_init_vddcx(struct msm_otg *motg, int init)
 	} else {
 	} else {
 		ret = regulator_set_voltage(hsusb_vddcx, 0,
 		ret = regulator_set_voltage(hsusb_vddcx, 0,
 			USB_PHY_VDD_DIG_VOL_MAX);
 			USB_PHY_VDD_DIG_VOL_MAX);
-		if (ret) {
+		if (ret)
 			dev_err(motg->otg.dev, "unable to set the voltage "
 			dev_err(motg->otg.dev, "unable to set the voltage "
 					"for hsusb vddcx\n");
 					"for hsusb vddcx\n");
-			return ret;
-		}
 		ret = regulator_disable(hsusb_vddcx);
 		ret = regulator_disable(hsusb_vddcx);
 		if (ret)
 		if (ret)
 			dev_err(motg->otg.dev, "unable to disable hsusb vddcx\n");
 			dev_err(motg->otg.dev, "unable to disable hsusb vddcx\n");