summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorLaxman Dewangan <ldewangan@nvidia.com>2012-01-28 15:07:57 +0530
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-02-13 06:59:18 -0800
commit2b4ee6d7eae39d7805a30fbfcfdeaeb0e32cc719 (patch)
tree6db8b8edea0570d902315fb24f096724189b6032 /include/linux
parentd8da7c86f7da11ba2f56fa8c4b429c60d3db6ab0 (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> cherry picked from mainline 1e0c66f49762fa1866ab20b1feb6e86a9aa4838f Change-Id: Ie8256fae45c21f08b2d101efebca004cb32963a0 Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-on: http://git-master/r/79181 Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'include/linux')
-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 @@
/* Max number of TPS65910/11 regulators */
#define TPS65910_NUM_REGS 13
+/* External sleep controls through EN1/EN2/EN3 inputs*/
+#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN1 0x1
+#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN2 0x2
+#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN3 0x4
+/* TPS65911 names the EN3 signal as SLEEP */
+#define TPS65911_SLEEP_CONTROL_EXT_INPUT_SLEEP 0x4
+
/**
* struct tps65910_board
* Board platform data may be used to initialize regulators.
@@ -779,6 +786,7 @@ struct tps65910_board {
int irq_base;
int vmbch_threshold;
int vmbch2_threshold;
+ unsigned long regulator_ext_sleep_control[TPS65910_NUM_REGS];
struct regulator_init_data *tps65910_pmic_init_data[TPS65910_NUM_REGS];
};