regulator: core: Don't double-disable supplies in regulator_disable_deferred()
authorDouglas Anderson <dianders@chromium.org>
Tue, 20 Nov 2018 00:26:50 +0000 (16:26 -0800)
committerMark Brown <broonie@kernel.org>
Tue, 20 Nov 2018 17:07:50 +0000 (17:07 +0000)
In the commit f8702f9e4aa7 ("regulator: core: Use ww_mutex for
regulators locking") disabling of the supply was moved into
_regulator_disable().  That means regulator_disable_work() shouldn't
be disabling since that double-disables the supply.

Fixes: f8702f9e4aa7 ("regulator: core: Use ww_mutex for regulators locking")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/core.c

index f937a33..cfc2b8f 100644 (file)
@@ -2670,16 +2670,6 @@ static void regulator_disable_work(struct work_struct *work)
                regulator_balance_voltage(rdev, PM_SUSPEND_ON);
 
        regulator_unlock_dependent(rdev, &ww_ctx);
-
-       if (rdev->supply) {
-               for (i = 0; i < count; i++) {
-                       ret = regulator_disable(rdev->supply);
-                       if (ret != 0) {
-                               rdev_err(rdev,
-                                        "Supply disable failed: %d\n", ret);
-                       }
-               }
-       }
 }
 
 /**