aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mfd
diff options
context:
space:
mode:
authorLaxman Dewangan <ldewangan@nvidia.com>2012-01-28 04:37:57 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-01-30 08:31:01 -0500
commit1e0c66f49762fa1866ab20b1feb6e86a9aa4838f (patch)
tree9828db399f8826e4a2c7329f5179c2d5bddee255 /include/linux/mfd
parent2343933921efd553dea888fc844abb653824c4c8 (diff)
regulator: tps65910: Sleep control through external inputs
Add support for sleep controls of different regulator through external inputs EN1, EN2 or EN3. Each regulator's output will be active when its external input is high and turns to OFF/Low power mode when its external input is low. The configuration parameters for sleep control is provided through board specific platform data. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include/linux/mfd')
-rw-r--r--include/linux/mfd/tps65910.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/mfd/tps65910.h b/include/linux/mfd/tps65910.h
index d0cb12eba402..fa6c6bf7a54d 100644
--- a/include/linux/mfd/tps65910.h
+++ b/include/linux/mfd/tps65910.h
@@ -768,6 +768,13 @@
768/* Max number of TPS65910/11 regulators */ 768/* Max number of TPS65910/11 regulators */
769#define TPS65910_NUM_REGS 13 769#define TPS65910_NUM_REGS 13
770 770
771/* External sleep controls through EN1/EN2/EN3 inputs*/
772#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN1 0x1
773#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN2 0x2
774#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN3 0x4
775/* TPS65911 names the EN3 signal as SLEEP */
776#define TPS65911_SLEEP_CONTROL_EXT_INPUT_SLEEP 0x4
777
771/** 778/**
772 * struct tps65910_board 779 * struct tps65910_board
773 * Board platform data may be used to initialize regulators. 780 * Board platform data may be used to initialize regulators.
@@ -779,6 +786,7 @@ struct tps65910_board {
779 int irq_base; 786 int irq_base;
780 int vmbch_threshold; 787 int vmbch_threshold;
781 int vmbch2_threshold; 788 int vmbch2_threshold;
789 unsigned long regulator_ext_sleep_control[TPS65910_NUM_REGS];
782 struct regulator_init_data *tps65910_pmic_init_data[TPS65910_NUM_REGS]; 790 struct regulator_init_data *tps65910_pmic_init_data[TPS65910_NUM_REGS];
783}; 791};
784 792