]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commitdiff
regulator: pwm: Resume PWM regulator in noirq_early
authorAlex Frid <afrid@nvidia.com>
Wed, 15 Apr 2015 06:01:24 +0000 (23:01 -0700)
committerAleksandr Frid <afrid@nvidia.com>
Wed, 22 Apr 2015 18:54:03 +0000 (11:54 -0700)
Since commit 147ad19fc4c6737f9cc1ba220a498c3be81241d0 PWM regulator
is resumed early before devices resume. However, early resume is
still happens after noirq resume that includes synchronous power ON
of generic PM domains. When Tegra GPU is powered ON, it is taken out
of reset. If PWM regulator is not resumed at that time, GPU is taken
out of reset at minimum regulator voltage that may be below GPU
operational range. Hence, moved PWM regulator resume to noirq_early
callback.

Bug 1626199

Change-Id: If38d39c196f6e6f8c2b3bf7b90aea2b80765bbcb
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/731672
Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Tested-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
drivers/regulator/pwm-regulator.c

index fd6ee8da98e31f40d6688f4b56530b27e500bb94..04d41955f9b155db113adb70f026d56198bc1da8 100644 (file)
@@ -319,7 +319,7 @@ static int pwm_regulator_resume(struct device *dev)
 #endif
 static const struct dev_pm_ops pwm_regulator_pm_ops = {
 #ifdef CONFIG_PM_SLEEP
-       .resume_early = pwm_regulator_resume,
+       .resume_noirq_early = pwm_regulator_resume,
 #endif
 };