From 026280fcfa2b2e78d85b36cb04b2e6d0bc300f0a Mon Sep 17 00:00:00 2001 From: Pratham Pratap Date: Tue, 19 May 2020 00:33:19 +0530 Subject: [PATCH] usb: phy: snps: Return error if driver fails to enable power Currently driver is not returning any error from the error handling path if driver fails to enable power for PHY. This patch adds a check and returns error if the driver actually fails to set_voltage or fails to enable a particular regulator. Change-Id: I5427690602b6152151adee71c6388ce836ab90c6 Signed-off-by: Pratham Pratap --- drivers/usb/phy/phy-msm-snps-hs.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/usb/phy/phy-msm-snps-hs.c b/drivers/usb/phy/phy-msm-snps-hs.c index 342fbb2ff90c..f1fef3c48c96 100644 --- a/drivers/usb/phy/phy-msm-snps-hs.c +++ b/drivers/usb/phy/phy-msm-snps-hs.c @@ -275,6 +275,12 @@ put_vdd_lpm: ret = regulator_set_load(phy->vdd, 0); if (ret < 0) dev_err(phy->phy.dev, "Unable to set LPM of vdd\n"); + /* Return from here based on power_enabled. If it is not set + * then return -EINVAL since either set_voltage or + * regulator_enable failed + */ + if (!phy->power_enabled) + return -EINVAL; err_vdd: phy->power_enabled = false; dev_dbg(phy->phy.dev, "HSUSB PHY's regulators are turned OFF.\n");