From 7480c9c16330968771d2a879dd85cfa696b266b1 Mon Sep 17 00:00:00 2001 From: Bengt Jonsson Date: Tue, 10 May 2011 21:29:23 +0200 Subject: regulator: ab8500: fix set voltage of vintcore Vintcore register has a different layout. Change-Id: Ice849b59a4ea4a94666cb11526ab078699de405d Signed-off-by: Bengt Jonsson Signed-off-by: Mian Yousaf Kaukab Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/32102 Tested-by: Jonas ABERG --- drivers/regulator/ab8500.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'drivers/regulator') diff --git a/drivers/regulator/ab8500.c b/drivers/regulator/ab8500.c index d986aaae4bd..dc84ec68677 100644 --- a/drivers/regulator/ab8500.c +++ b/drivers/regulator/ab8500.c @@ -373,8 +373,13 @@ static int ab8500_regulator_set_voltage(struct regulator_dev *rdev, *selector = ret; + /* vintcore register has a different layout */ + if (info->desc.id == AB8500_LDO_INTCORE) + regval = ((u8)ret) << 3; + else + regval = (u8)ret; + /* set the registers for the request */ - regval = (u8)ret; ret = abx500_mask_and_set_register_interruptible(info->dev, info->voltage_bank, info->voltage_reg, info->voltage_mask, regval); -- cgit v1.2.3