diff options
author | Vijaya Kumar Kilari <vijay.kilari@stericsson.com> | 2011-09-13 11:30:37 +0530 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@stericsson.com> | 2012-05-22 10:59:15 +0200 |
commit | a68f4be898c38ad653403f1f42bf87d8c2165530 (patch) | |
tree | fdb667d07c27f90a75a75e2559f9acf9a02a6cf1 /drivers | |
parent | 244cbcf37ec5c6c9e8c1583c33940106988237c4 (diff) |
U5500: Add VAPE as supply regulator for EPODS
Added VAPE as supply regulator for MM EPODS.
Avoids ApSleep when EPOD regulators are ON
ST-Ericsson Linux next: -
ST-Ericsson ID: 356729
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I283f99f4174bc316fd7b81d81b654112ecec3f3d
Signed-off-by: Vijaya Kumar Kilari <vijay.kilari@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/30723
Reviewed-by: Rabin VINCENT <rabin.vincent@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/35851
Tested-by: Rabin VINCENT <rabin.vincent@stericsson.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/mfd/db5500-prcmu.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/drivers/mfd/db5500-prcmu.c b/drivers/mfd/db5500-prcmu.c index 55560abe001..2633b728ada 100644 --- a/drivers/mfd/db5500-prcmu.c +++ b/drivers/mfd/db5500-prcmu.c @@ -1995,6 +1995,16 @@ static struct regulator_consumer_supply db5500_esram12_consumers[] = { .num_consumer_supplies = ARRAY_SIZE(db5500_##lower##_consumers),\ } +#define DB5500_REGULATOR_SWITCH_VAPE(lower, upper) \ +[DB5500_REGULATOR_SWITCH_##upper] = { \ + .supply_regulator = "db5500-vape", \ + .constraints = { \ + .valid_ops_mask = REGULATOR_CHANGE_STATUS, \ + }, \ + .consumer_supplies = db5500_##lower##_consumers, \ + .num_consumer_supplies = ARRAY_SIZE(db5500_##lower##_consumers),\ +} \ + static struct regulator_init_data db5500_regulators[DB5500_NUM_REGULATORS] = { [DB5500_REGULATOR_VAPE] = { .constraints = { @@ -2003,10 +2013,14 @@ static struct regulator_init_data db5500_regulators[DB5500_NUM_REGULATORS] = { .consumer_supplies = db5500_vape_consumers, .num_consumer_supplies = ARRAY_SIZE(db5500_vape_consumers), }, - DB5500_REGULATOR_SWITCH(sga, SGA), - DB5500_REGULATOR_SWITCH(hva, HVA), - DB5500_REGULATOR_SWITCH(sia, SIA), - DB5500_REGULATOR_SWITCH(disp, DISP), + DB5500_REGULATOR_SWITCH_VAPE(sga, SGA), + DB5500_REGULATOR_SWITCH_VAPE(hva, HVA), + DB5500_REGULATOR_SWITCH_VAPE(sia, SIA), + DB5500_REGULATOR_SWITCH_VAPE(disp, DISP), + /* + * ESRAM12 is put in retention by the firmware when VAPE is + * turned off so there's no need to hold VAPE. + */ DB5500_REGULATOR_SWITCH(esram12, ESRAM12), }; |