regulator: max1586 - improve the logic of choosing selector

A little bit improvement in the logic of choosing selector.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
This commit is contained in:
Axel Lin 2010-08-18 11:37:21 +08:00 committed by Liam Girdwood
parent d4876a3bc0
commit 3e352f9e02

View File

@ -121,14 +121,14 @@ static int max1586_v6_set(struct regulator_dev *rdev, int min_uV, int max_uV)
if (max_uV < MAX1586_V6_MIN_UV || max_uV > MAX1586_V6_MAX_UV)
return -EINVAL;
if (min_uV >= 3000000)
selector = 3;
if (min_uV < 3000000)
selector = 2;
if (min_uV < 2500000)
selector = 1;
if (min_uV < 1800000)
selector = 0;
else if (min_uV < 2500000)
selector = 1;
else if (min_uV < 3000000)
selector = 2;
else if (min_uV >= 3000000)
selector = 3;
if (max1586_v6_calc_voltage(selector) > max_uV)
return -EINVAL;