It seems odd that this driver explicitly enables the vddcx regulator
on probe along with the other regulators, but doesn't disable it
again when the device is removed.

This changes the remove callback to handle all three regulators the
same way and disable them in the end.

Signed-off-by: Arnd Bergmann <a...@arndb.de>
---
 drivers/usb/phy/phy-msm-usb.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/usb/phy/phy-msm-usb.c b/drivers/usb/phy/phy-msm-usb.c
index 570fd3433937..48fe48e5bf6d 100644
--- a/drivers/usb/phy/phy-msm-usb.c
+++ b/drivers/usb/phy/phy-msm-usb.c
@@ -2030,8 +2030,7 @@ static int msm_otg_remove(struct platform_device *pdev)
        clk_disable_unprepare(motg->clk);
        if (!IS_ERR(motg->core_clk))
                clk_disable_unprepare(motg->core_clk);
-       /* vddcx is left active */
-       regulator_bulk_disable(2, &motg->regulators[V3P3]);
+       regulator_bulk_disable(ARRAY_SIZE(motg->regulators), motg->regulators);
 
        pm_runtime_set_suspended(&pdev->dev);
 
-- 
2.7.0

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to