aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJavier Martinez Canillas <javier.martinez@collabora.co.uk>2014-11-11 07:04:44 -0500
committerMark Brown <broonie@kernel.org>2014-11-26 14:42:47 -0500
commit45fc84c668ba6cc08cbae74042be838bf9283d98 (patch)
tree9008bbdf25b53ebd9bd828d2093d36b926bbee56
parentbf66c48d026d0ea20a3e04fc32fb470e692707a9 (diff)
regulator: max77802: Fill regulator modes translation callback
The max77802 PMIC regulators output can be configured in one of two modes: Output ON (normal) and Output ON in Low Power Mode. Some of the regulators support their operating mode to be changed on startup or by consumers when the system is running while others only support their operating mode to be changed while the system has entered in a suspend state. Use the max77802_map_mode() function to translate the device specific modes to the standard operating modes as used by the regulator core. Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--drivers/regulator/max77802.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/regulator/max77802.c b/drivers/regulator/max77802.c
index d076df1d2166..0ec27cf92785 100644
--- a/drivers/regulator/max77802.c
+++ b/drivers/regulator/max77802.c
@@ -375,6 +375,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
375 .vsel_mask = MAX77802_VSEL_MASK, \ 375 .vsel_mask = MAX77802_VSEL_MASK, \
376 .enable_reg = MAX77802_REG_LDO1CTRL1 + num - 1, \ 376 .enable_reg = MAX77802_REG_LDO1CTRL1 + num - 1, \
377 .enable_mask = MAX77802_OPMODE_MASK << MAX77802_OPMODE_SHIFT_LDO, \ 377 .enable_mask = MAX77802_OPMODE_MASK << MAX77802_OPMODE_SHIFT_LDO, \
378 .of_map_mode = max77802_map_mode, \
378} 379}
379 380
380/* LDOs 1, 2, 8, 15, 17, 27, 30, 35 */ 381/* LDOs 1, 2, 8, 15, 17, 27, 30, 35 */
@@ -393,6 +394,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
393 .vsel_mask = MAX77802_VSEL_MASK, \ 394 .vsel_mask = MAX77802_VSEL_MASK, \
394 .enable_reg = MAX77802_REG_LDO1CTRL1 + num - 1, \ 395 .enable_reg = MAX77802_REG_LDO1CTRL1 + num - 1, \
395 .enable_mask = MAX77802_OPMODE_MASK << MAX77802_OPMODE_SHIFT_LDO, \ 396 .enable_mask = MAX77802_OPMODE_MASK << MAX77802_OPMODE_SHIFT_LDO, \
397 .of_map_mode = max77802_map_mode, \
396} 398}
397 399
398/* BUCKs 1, 6 */ 400/* BUCKs 1, 6 */
@@ -411,6 +413,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
411 .vsel_mask = MAX77802_DVS_VSEL_MASK, \ 413 .vsel_mask = MAX77802_DVS_VSEL_MASK, \
412 .enable_reg = MAX77802_REG_BUCK ## num ## CTRL, \ 414 .enable_reg = MAX77802_REG_BUCK ## num ## CTRL, \
413 .enable_mask = MAX77802_OPMODE_MASK, \ 415 .enable_mask = MAX77802_OPMODE_MASK, \
416 .of_map_mode = max77802_map_mode, \
414} 417}
415 418
416/* BUCKS 2-4 */ 419/* BUCKS 2-4 */
@@ -430,6 +433,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
430 .enable_reg = MAX77802_REG_BUCK ## num ## CTRL1, \ 433 .enable_reg = MAX77802_REG_BUCK ## num ## CTRL1, \
431 .enable_mask = MAX77802_OPMODE_MASK << \ 434 .enable_mask = MAX77802_OPMODE_MASK << \
432 MAX77802_OPMODE_BUCK234_SHIFT, \ 435 MAX77802_OPMODE_BUCK234_SHIFT, \
436 .of_map_mode = max77802_map_mode, \
433} 437}
434 438
435/* BUCK 5 */ 439/* BUCK 5 */
@@ -448,6 +452,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
448 .vsel_mask = MAX77802_VSEL_MASK, \ 452 .vsel_mask = MAX77802_VSEL_MASK, \
449 .enable_reg = MAX77802_REG_BUCK5CTRL, \ 453 .enable_reg = MAX77802_REG_BUCK5CTRL, \
450 .enable_mask = MAX77802_OPMODE_MASK, \ 454 .enable_mask = MAX77802_OPMODE_MASK, \
455 .of_map_mode = max77802_map_mode, \
451} 456}
452 457
453/* BUCKs 7-10 */ 458/* BUCKs 7-10 */
@@ -466,6 +471,7 @@ static struct regulator_ops max77802_buck_dvs_ops = {
466 .vsel_mask = MAX77802_VSEL_MASK, \ 471 .vsel_mask = MAX77802_VSEL_MASK, \
467 .enable_reg = MAX77802_REG_BUCK7CTRL + (num - 7) * 3, \ 472 .enable_reg = MAX77802_REG_BUCK7CTRL + (num - 7) * 3, \
468 .enable_mask = MAX77802_OPMODE_MASK, \ 473 .enable_mask = MAX77802_OPMODE_MASK, \
474 .of_map_mode = max77802_map_mode, \
469} 475}
470 476
471static const struct regulator_desc regulators[] = { 477static const struct regulator_desc regulators[] = {