Messages in this thread Patch in this message | | | Subject | [PATCH v2] regulator: twl-regulator: Use DIV_ROUND_UP at appropriate places | From | Axel Lin <> | Date | Mon, 09 Apr 2012 23:35:10 +0800 |
| |
Signed-off-by: Axel Lin <axel.lin@gmail.com> --- v2: Remove braces {} for single statement blocks
drivers/regulator/twl-regulator.c | 30 ++++++------------------------ 1 files changed, 6 insertions(+), 24 deletions(-)
diff --git a/drivers/regulator/twl-regulator.c b/drivers/regulator/twl-regulator.c index 964946f..7186e67 100644 --- a/drivers/regulator/twl-regulator.c +++ b/drivers/regulator/twl-regulator.c @@ -806,11 +806,7 @@ twl6030smps_set_voltage(struct regulator_dev *rdev, int min_uV, int max_uV, vsel = 0; else if ((min_uV >= 600000) && (min_uV <= 1300000)) { int calc_uV; - vsel = (min_uV - 600000) / 125; - if (vsel % 100) - vsel += 100; - vsel /= 100; - vsel++; + vsel = DIV_ROUND_UP(min_uV - 600000, 12500); calc_uV = twl6030smps_list_voltage(rdev, vsel); if (calc_uV > max_uV) return -EINVAL; @@ -836,11 +832,7 @@ twl6030smps_set_voltage(struct regulator_dev *rdev, int min_uV, int max_uV, vsel = 0; else if ((min_uV >= 700000) && (min_uV <= 1420000)) { int calc_uV; - vsel = (min_uV - 700000) / 125; - if (vsel % 100) - vsel += 100; - vsel /= 100; - vsel++; + vsel = DIV_ROUND_UP(min_uV - 700000, 12500); calc_uV = twl6030smps_list_voltage(rdev, vsel); if (calc_uV > max_uV) return -EINVAL; @@ -864,24 +856,14 @@ twl6030smps_set_voltage(struct regulator_dev *rdev, int min_uV, int max_uV, case SMPS_EXTENDED_EN: if (min_uV == 0) vsel = 0; - else if ((min_uV >= 1852000) && (max_uV <= 4013600)) { - vsel = (min_uV - 1852000) / 386; - if (vsel % 100) - vsel += 100; - vsel /= 100; - vsel++; - } + else if ((min_uV >= 1852000) && (max_uV <= 4013600)) + vsel = DIV_ROUND_UP(min_uV - 1852000, 38600); break; case SMPS_OFFSET_EN|SMPS_EXTENDED_EN: if (min_uV == 0) vsel = 0; - else if ((min_uV >= 2161000) && (max_uV <= 4321000)) { - vsel = (min_uV - 2161000) / 386; - if (vsel % 100) - vsel += 100; - vsel /= 100; - vsel++; - } + else if ((min_uV >= 2161000) && (max_uV <= 4321000)) + vsel = DIV_ROUND_UP(min_uV - 2161000, 38600); break; } -- 1.7.5.4
| |