Browse Source

regulator: max77686: Fix the delay time for set_voltage_time_sel

rdev->desc->uV_step * abs(new_selector - old_selector) returns uV.
The unit of ramp_rate is mV/us.
Thus 1000 should be multiplied.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Reviewed-by: Yadwinder Singh Brar <yadi.brar@samsung.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Axel Lin 13 years ago
parent
commit
23ca6bf231
1 changed files with 2 additions and 2 deletions
  1. 2 2
      drivers/regulator/max77686.c

+ 2 - 2
drivers/regulator/max77686.c

@@ -77,7 +77,7 @@ static int max77686_set_dvs_voltage_time_sel(struct regulator_dev *rdev,
 
 	return DIV_ROUND_UP(rdev->desc->uV_step *
 			    abs(new_selector - old_selector),
-			    ramp_rate[max77686->ramp_delay]);
+			    ramp_rate[max77686->ramp_delay] * 1000);
 }
 
 static int max77686_set_voltage_time_sel(struct regulator_dev *rdev,
@@ -85,7 +85,7 @@ static int max77686_set_voltage_time_sel(struct regulator_dev *rdev,
 {
 	/* Unconditionally 100 mV/us */
 	return DIV_ROUND_UP(rdev->desc->uV_step *
-			    abs(new_selector - old_selector), 100);
+			    abs(new_selector - old_selector), 100 * 1000);
 }
 
 static struct regulator_ops max77686_ops = {