regulator: ad5398: Use DIV_ROUND_UP macro to calculate selector
Axel Lin [Fri, 2 Mar 2012 08:20:54 +0000 (16:20 +0800)]
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

drivers/regulator/ad5398.c

index 483c809..26d23ad 100644 (file)
@@ -94,8 +94,8 @@ static int ad5398_set_current_limit(struct regulator_dev *rdev, int min_uA, int
        if (max_uA > chip->max_uA || max_uA < chip->min_uA)
                return -EINVAL;
 
-       selector = ((min_uA - chip->min_uA) * chip->current_level +
-                       range_uA - 1) / range_uA;
+       selector = DIV_ROUND_UP((min_uA - chip->min_uA) * chip->current_level,
+                               range_uA);
        if (ad5398_calc_current(chip, selector) > max_uA)
                return -EINVAL;