summaryrefslogtreecommitdiff
path: root/drivers/regulator/core.c
diff options
context:
space:
mode:
authorSaravana Kannan <skannan@codeaurora.org>2014-04-24 03:10:50 +0400
committerMark Brown <broonie@linaro.org>2014-06-01 22:16:12 +0400
commitfd482a3e3e20cddfb6d775ec0382f98a92b8a25e (patch)
treed6ea01b6e44fd0c71645c3b252140df17a73dd40 /drivers/regulator/core.c
parente953583456005823d7c20fefe5212f0f60a93fb6 (diff)
downloadlinux-fd482a3e3e20cddfb6d775ec0382f98a92b8a25e.tar.xz
regulator: core: Disable unused regulators after deferred probing is done
regulator_init_complete does a scan of regulators which dont have always-on or consumers are automatically disabled as being unused. However, with deferred probing, late_initcall() is too soon to declare a regulator as unused as the regulator itself might not have registered due to defferal - Example: A regulator deffered due to i2bus not available which in turn is deffered due to pinctrl availability. Since deferred probing is done in late_initcall(), do the cleanup of unused regulators by regulator_init_complete in late_initcall_sync instead of late_initcall. Cc: Liam Girdwood <lgirdwood@gmail.com> Cc: Mark Brown <broonie@kernel.org> Cc: Markus Pargmann <mpa@pengutronix.de> Signed-off-by: Saravana Kannan <skannan@codeaurora.org> [nm@ti.com: minor rewording] Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers/regulator/core.c')
-rw-r--r--drivers/regulator/core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index e3cb9b66731f..236ca3f1df73 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -3871,4 +3871,4 @@ unlock:
return 0;
}
-late_initcall(regulator_init_complete);
+late_initcall_sync(regulator_init_complete);