aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mfd
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-01-25 16:19:10 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-25 16:19:10 -0500
commit15333539a9b3022656f815f643a77f6b054b335f (patch)
tree2c5eabbd1ba12a0bd33e8f10c32847f88567d681 /include/linux/mfd
parentbb1b64908f5a346b0654f02999e1a022a7e0c07d (diff)
parent07b19808486054f356dbf3495a277f51af062b35 (diff)
Merge tag 'regulator-v3.14-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
Pull regulator updates from Mark Brown: "A respin of the merges in the previous pull request with one extra fix. A quiet release for the regulator API, quite a large number of small improvements all over but other than the addition of new drivers for the AS3722 and MAX14577 there is nothing of substantial non-local impact" * tag 'regulator-v3.14-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (47 commits) regulator: pfuze100-regulator: Improve dev_info() message regulator: pfuze100-regulator: Fix some checkpatch complaints regulator: twl: Fix checkpatch issue regulator: core: Fix checkpatch issue regulator: anatop-regulator: Remove unneeded memset() regulator: s5m8767: Update LDO index in s5m8767-regulator.txt regulator: as3722: set enable time for SD0/1/6 regulator: as3722: detect SD0 low-voltage mode regulator: tps62360: Fix up a pointer-integer size mismatch warning regulator: anatop-regulator: Remove unneeded kstrdup() regulator: act8865: Fix build error when !OF regulator: act8865: register all regulators regardless of how many are used regulator: wm831x-dcdc: Remove unneeded 'err' label regulator: anatop-regulator: Add MODULE_ALIAS() regulator: act8865: fix incorrect devm_kzalloc for act8865 regulator: act8865: Remove set_suspend_[en|dis]able implementation regulator: act8865: Remove unneeded regulator_unregister() calls regulator: s2mps11: Clean up redundant code regulator: tps65910: Simplify setting enable_mask for regulators regulator: act8865: add device tree binding doc ...
Diffstat (limited to 'include/linux/mfd')
-rw-r--r--include/linux/mfd/as3722.h4
-rw-r--r--include/linux/mfd/samsung/core.h6
-rw-r--r--include/linux/mfd/samsung/s5m8767.h18
-rw-r--r--include/linux/mfd/tps65910.h5
4 files changed, 23 insertions, 10 deletions
diff --git a/include/linux/mfd/as3722.h b/include/linux/mfd/as3722.h
index f654a7a42260..8d43e9f2a842 100644
--- a/include/linux/mfd/as3722.h
+++ b/include/linux/mfd/as3722.h
@@ -151,6 +151,7 @@
151#define AS3722_ASIC_ID1_REG 0x90 151#define AS3722_ASIC_ID1_REG 0x90
152#define AS3722_ASIC_ID2_REG 0x91 152#define AS3722_ASIC_ID2_REG 0x91
153#define AS3722_LOCK_REG 0x9E 153#define AS3722_LOCK_REG 0x9E
154#define AS3722_FUSE7_REG 0xA7
154#define AS3722_MAX_REGISTER 0xF4 155#define AS3722_MAX_REGISTER 0xF4
155 156
156#define AS3722_SD0_EXT_ENABLE_MASK 0x03 157#define AS3722_SD0_EXT_ENABLE_MASK 0x03
@@ -224,6 +225,7 @@
224#define AS3722_SD_VSEL_MASK 0x7F 225#define AS3722_SD_VSEL_MASK 0x7F
225#define AS3722_SD0_VSEL_MIN 0x01 226#define AS3722_SD0_VSEL_MIN 0x01
226#define AS3722_SD0_VSEL_MAX 0x5A 227#define AS3722_SD0_VSEL_MAX 0x5A
228#define AS3722_SD0_VSEL_LOW_VOL_MAX 0x6E
227#define AS3722_SD2_VSEL_MIN 0x01 229#define AS3722_SD2_VSEL_MIN 0x01
228#define AS3722_SD2_VSEL_MAX 0x7F 230#define AS3722_SD2_VSEL_MAX 0x7F
229 231
@@ -342,6 +344,8 @@
342#define AS3722_EXT_CONTROL_ENABLE2 0x2 344#define AS3722_EXT_CONTROL_ENABLE2 0x2
343#define AS3722_EXT_CONTROL_ENABLE3 0x3 345#define AS3722_EXT_CONTROL_ENABLE3 0x3
344 346
347#define AS3722_FUSE7_SD0_LOW_VOLTAGE BIT(4)
348
345/* Interrupt IDs */ 349/* Interrupt IDs */
346enum as3722_irq { 350enum as3722_irq {
347 AS3722_IRQ_LID, 351 AS3722_IRQ_LID,
diff --git a/include/linux/mfd/samsung/core.h b/include/linux/mfd/samsung/core.h
index cab2dd279076..41c9bde410c5 100644
--- a/include/linux/mfd/samsung/core.h
+++ b/include/linux/mfd/samsung/core.h
@@ -59,12 +59,6 @@ int sec_irq_init(struct sec_pmic_dev *sec_pmic);
59void sec_irq_exit(struct sec_pmic_dev *sec_pmic); 59void sec_irq_exit(struct sec_pmic_dev *sec_pmic);
60int sec_irq_resume(struct sec_pmic_dev *sec_pmic); 60int sec_irq_resume(struct sec_pmic_dev *sec_pmic);
61 61
62extern int sec_reg_read(struct sec_pmic_dev *sec_pmic, u8 reg, void *dest);
63extern int sec_bulk_read(struct sec_pmic_dev *sec_pmic, u8 reg, int count, u8 *buf);
64extern int sec_reg_write(struct sec_pmic_dev *sec_pmic, u8 reg, u8 value);
65extern int sec_bulk_write(struct sec_pmic_dev *sec_pmic, u8 reg, int count, u8 *buf);
66extern int sec_reg_update(struct sec_pmic_dev *sec_pmic, u8 reg, u8 val, u8 mask);
67
68struct sec_platform_data { 62struct sec_platform_data {
69 struct sec_regulator_data *regulators; 63 struct sec_regulator_data *regulators;
70 struct sec_opmode_data *opmode; 64 struct sec_opmode_data *opmode;
diff --git a/include/linux/mfd/samsung/s5m8767.h b/include/linux/mfd/samsung/s5m8767.h
index 306a95fc558c..2ab0b0f03641 100644
--- a/include/linux/mfd/samsung/s5m8767.h
+++ b/include/linux/mfd/samsung/s5m8767.h
@@ -183,6 +183,22 @@ enum s5m8767_regulators {
183 S5M8767_REG_MAX, 183 S5M8767_REG_MAX,
184}; 184};
185 185
186#define S5M8767_ENCTRL_SHIFT 6 186#define S5M8767_ENCTRL_SHIFT 6
187#define S5M8767_ENCTRL_MASK (0x3 << S5M8767_ENCTRL_SHIFT)
188
189/*
190 * Values for BUCK_RAMP field in DVS_RAMP register, matching raw values
191 * in mV/us.
192 */
193enum s5m8767_dvs_buck_ramp_values {
194 S5M8767_DVS_BUCK_RAMP_5 = 0x4,
195 S5M8767_DVS_BUCK_RAMP_10 = 0x9,
196 S5M8767_DVS_BUCK_RAMP_12_5 = 0xb,
197 S5M8767_DVS_BUCK_RAMP_25 = 0xd,
198 S5M8767_DVS_BUCK_RAMP_50 = 0xe,
199 S5M8767_DVS_BUCK_RAMP_100 = 0xf,
200};
201#define S5M8767_DVS_BUCK_RAMP_SHIFT 4
202#define S5M8767_DVS_BUCK_RAMP_MASK (0xf << S5M8767_DVS_BUCK_RAMP_SHIFT)
187 203
188#endif /* __LINUX_MFD_S5M8767_H */ 204#endif /* __LINUX_MFD_S5M8767_H */
diff --git a/include/linux/mfd/tps65910.h b/include/linux/mfd/tps65910.h
index 20e433e551e3..16c2335c2856 100644
--- a/include/linux/mfd/tps65910.h
+++ b/include/linux/mfd/tps65910.h
@@ -358,8 +358,6 @@
358/*Register BBCH (0x80) register.RegisterDescription */ 358/*Register BBCH (0x80) register.RegisterDescription */
359#define BBCH_BBSEL_MASK 0x06 359#define BBCH_BBSEL_MASK 0x06
360#define BBCH_BBSEL_SHIFT 1 360#define BBCH_BBSEL_SHIFT 1
361#define BBCH_BBCHEN_MASK 0x01
362#define BBCH_BBCHEN_SHIFT 0
363 361
364 362
365/*Register DCDCCTRL (0x80) register.RegisterDescription */ 363/*Register DCDCCTRL (0x80) register.RegisterDescription */
@@ -833,6 +831,7 @@
833#define TPS65910_REG_VAUX2 10 831#define TPS65910_REG_VAUX2 10
834#define TPS65910_REG_VAUX33 11 832#define TPS65910_REG_VAUX33 11
835#define TPS65910_REG_VMMC 12 833#define TPS65910_REG_VMMC 12
834#define TPS65910_REG_VBB 13
836 835
837#define TPS65911_REG_VDDCTRL 4 836#define TPS65911_REG_VDDCTRL 4
838#define TPS65911_REG_LDO1 5 837#define TPS65911_REG_LDO1 5
@@ -845,7 +844,7 @@
845#define TPS65911_REG_LDO8 12 844#define TPS65911_REG_LDO8 12
846 845
847/* Max number of TPS65910/11 regulators */ 846/* Max number of TPS65910/11 regulators */
848#define TPS65910_NUM_REGS 13 847#define TPS65910_NUM_REGS 14
849 848
850/* External sleep controls through EN1/EN2/EN3/SLEEP inputs */ 849/* External sleep controls through EN1/EN2/EN3/SLEEP inputs */
851#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN1 0x1 850#define TPS65910_SLEEP_CONTROL_EXT_INPUT_EN1 0x1