regulator: max8997: Fix setting inappropriate value for ramp_delay variable
authorDonggeun Kim <dg77.kim@samsung.com>
Thu, 7 Jul 2011 07:51:56 +0000 (16:51 +0900)
committerLiam Girdwood <lrg@slimlogic.co.uk>
Fri, 8 Jul 2011 18:14:58 +0000 (19:14 +0100)
The ramp_delay variable can be set lower than the desired value.
This patch fixes it.

Signed-off-by: Donggeun Kim <dg77.kim@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: KyungMin Park <kyungmin.park@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
drivers/regulator/max8997.c

index f8940c603cf0c4ca7930f01da0fd5d4c0b8b0413..ad6628ca94f41378bdddbe11f1286d54a64f4fd0 100644 (file)
@@ -544,7 +544,8 @@ static int max8997_set_voltage_ldobuck(struct regulator_dev *rdev,
                        rid == MAX8997_BUCK4 || rid == MAX8997_BUCK5) {
                /* If the voltage is increasing */
                if (org < i)
-                       udelay(desc->step * (i - org) / max8997->ramp_delay);
+                       udelay(DIV_ROUND_UP(desc->step * (i - org),
+                                               max8997->ramp_delay));
        }
 
        return ret;