diff options
author | Haojian Zhuang <haojian.zhuang@marvell.com> | 2009-07-08 05:57:24 -0400 |
---|---|---|
committer | Liam Girdwood <lrg@slimlogic.co.uk> | 2009-09-22 08:32:37 -0400 |
commit | fc4f42e7fb021340c14dfd726313be6cfdeab19e (patch) | |
tree | bd1c5a69e56660cdaa09ee1aa92e50e1c832e683 /drivers/regulator | |
parent | 0198d1163b3e0313b3f073b62384abfab1a17cff (diff) |
regulator: support da9030 BUCK in da903x driver
Support the operation of DA9030 BUCK2 in da903x driver.
Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Eric Miao <eric.y.miao@gmail.com>
Acked-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'drivers/regulator')
-rw-r--r-- | drivers/regulator/da903x.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/drivers/regulator/da903x.c b/drivers/regulator/da903x.c index 33dfeeb9407c..49081b44bf52 100644 --- a/drivers/regulator/da903x.c +++ b/drivers/regulator/da903x.c | |||
@@ -375,6 +375,27 @@ static struct regulator_ops da9034_regulator_ldo12_ops = { | |||
375 | .enable_bit = (ebit), \ | 375 | .enable_bit = (ebit), \ |
376 | } | 376 | } |
377 | 377 | ||
378 | #define DA9030_DVC(_id, min, max, step, vreg, nbits, ureg, ubit, ereg, ebit) \ | ||
379 | { \ | ||
380 | .desc = { \ | ||
381 | .name = #_id, \ | ||
382 | .ops = &da9034_regulator_dvc_ops, \ | ||
383 | .type = REGULATOR_VOLTAGE, \ | ||
384 | .id = DA9030_ID_##_id, \ | ||
385 | .owner = THIS_MODULE, \ | ||
386 | }, \ | ||
387 | .min_uV = (min) * 1000, \ | ||
388 | .max_uV = (max) * 1000, \ | ||
389 | .step_uV = (step) * 1000, \ | ||
390 | .vol_reg = DA9030_##vreg, \ | ||
391 | .vol_shift = (0), \ | ||
392 | .vol_nbits = (nbits), \ | ||
393 | .update_reg = DA9030_##ureg, \ | ||
394 | .update_bit = (ubit), \ | ||
395 | .enable_reg = DA9030_##ereg, \ | ||
396 | .enable_bit = (ebit), \ | ||
397 | } | ||
398 | |||
378 | #define DA9034_DVC(_id, min, max, step, vreg, nbits, ureg, ubit, ereg, ebit) \ | 399 | #define DA9034_DVC(_id, min, max, step, vreg, nbits, ureg, ubit, ereg, ebit) \ |
379 | { \ | 400 | { \ |
380 | .desc = { \ | 401 | .desc = { \ |
@@ -425,6 +446,8 @@ static struct regulator_ops da9034_regulator_ldo12_ops = { | |||
425 | 446 | ||
426 | static struct da903x_regulator_info da903x_regulator_info[] = { | 447 | static struct da903x_regulator_info da903x_regulator_info[] = { |
427 | /* DA9030 */ | 448 | /* DA9030 */ |
449 | DA9030_DVC(BUCK2, 850, 1625, 25, BUCK2DVM1, 5, BUCK2DVM1, 7, RCTL11, 0), | ||
450 | |||
428 | DA9030_LDO( 1, 1200, 3200, 100, LDO1, 0, 5, RCTL12, 1), | 451 | DA9030_LDO( 1, 1200, 3200, 100, LDO1, 0, 5, RCTL12, 1), |
429 | DA9030_LDO( 2, 1800, 3200, 100, LDO23, 0, 4, RCTL12, 2), | 452 | DA9030_LDO( 2, 1800, 3200, 100, LDO23, 0, 4, RCTL12, 2), |
430 | DA9030_LDO( 3, 1800, 3200, 100, LDO23, 4, 4, RCTL12, 3), | 453 | DA9030_LDO( 3, 1800, 3200, 100, LDO23, 4, 4, RCTL12, 3), |