regulator: core: Use the power efficient workqueue for delayed powerdown
authorMark Brown <broonie@linaro.org>
Thu, 18 Jul 2013 10:52:04 +0000 (11:52 +0100)
committerMark Brown <broonie@linaro.org>
Thu, 18 Jul 2013 11:01:51 +0000 (12:01 +0100)
There is no need to use a normal per-CPU workqueue for delayed power downs
as they're not timing or performance critical and waking up a core for them
would defeat some of the point.

Signed-off-by: Mark Brown <broonie@linaro.org>
Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Acked-by: Liam Girdwood <liam.r.girdwood@intel.com>
drivers/regulator/core.c

index 1510333bcf0dccc1bf780d168de339f2d54a58dc..f49c6615dc3724330604b98d593ac02fc6770abf 100644 (file)
@@ -1890,8 +1890,9 @@ int regulator_disable_deferred(struct regulator *regulator, int ms)
        rdev->deferred_disables++;
        mutex_unlock(&rdev->mutex);
 
-       ret = schedule_delayed_work(&rdev->disable_work,
-                                   msecs_to_jiffies(ms));
+       ret = queue_delayed_work(system_power_efficient_wq,
+                                &rdev->disable_work,
+                                msecs_to_jiffies(ms));
        if (ret < 0)
                return ret;
        else