summaryrefslogtreecommitdiffstats
path: root/drivers/regulator/twl-regulator.c
diff options
context:
space:
mode:
authorJuha Keski-Saari2009-12-16 14:27:56 +0100
committerLiam Girdwood2009-12-17 11:27:28 +0100
commit205e5cd3d933a9ea7b75630355c8f8ec5ef16f6c (patch)
tree0cfe324c79e3afb39b070f93570b97c168897071 /drivers/regulator/twl-regulator.c
parenttwl-regulator: Add all twl4030 regulators to twlreg_info (diff)
downloadkernel-qcow2-linux-205e5cd3d933a9ea7b75630355c8f8ec5ef16f6c.tar.gz
kernel-qcow2-linux-205e5cd3d933a9ea7b75630355c8f8ec5ef16f6c.tar.xz
kernel-qcow2-linux-205e5cd3d933a9ea7b75630355c8f8ec5ef16f6c.zip
twl-regulator: Define critical regulators as always_on
Defines VIO, VDD1, VDD2, VPLL1 and VINT* regulators as always_on by default since they are critical to TWL and its master's functionality and should be on in all cases where RegFW is used Signed-off-by: Juha Keski-Saari <ext-juha.1.keski-saari@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'drivers/regulator/twl-regulator.c')
-rw-r--r--drivers/regulator/twl-regulator.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/regulator/twl-regulator.c b/drivers/regulator/twl-regulator.c
index 43d7494fbd8e..aadf4cfe354e 100644
--- a/drivers/regulator/twl-regulator.c
+++ b/drivers/regulator/twl-regulator.c
@@ -533,6 +533,19 @@ static int twlreg_probe(struct platform_device *pdev)
c->valid_ops_mask &= REGULATOR_CHANGE_VOLTAGE
| REGULATOR_CHANGE_MODE
| REGULATOR_CHANGE_STATUS;
+ switch (pdev->id) {
+ case TWL4030_REG_VIO:
+ case TWL4030_REG_VDD1:
+ case TWL4030_REG_VDD2:
+ case TWL4030_REG_VPLL1:
+ case TWL4030_REG_VINTANA1:
+ case TWL4030_REG_VINTANA2:
+ case TWL4030_REG_VINTDIG:
+ c->always_on = true;
+ break;
+ default:
+ break;
+ }
rdev = regulator_register(&info->desc, &pdev->dev, initdata, info);
if (IS_ERR(rdev)) {