forked from Minki/linux
regulator: max8997: Use simple equation to get selector
It's more efficient to get the best selector by simple equation. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
0fa310ccab
commit
2358b7763e
@ -415,7 +415,7 @@ static inline int max8997_get_voltage_proper_val(
|
|||||||
const struct voltage_map_desc *desc,
|
const struct voltage_map_desc *desc,
|
||||||
int min_vol, int max_vol)
|
int min_vol, int max_vol)
|
||||||
{
|
{
|
||||||
int i = 0;
|
int i;
|
||||||
|
|
||||||
if (desc == NULL)
|
if (desc == NULL)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
@ -423,9 +423,10 @@ static inline int max8997_get_voltage_proper_val(
|
|||||||
if (max_vol < desc->min || min_vol > desc->max)
|
if (max_vol < desc->min || min_vol > desc->max)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
while (desc->min + desc->step * i < min_vol &&
|
if (min_vol < desc->min)
|
||||||
desc->min + desc->step * i < desc->max)
|
min_vol = desc->min;
|
||||||
i++;
|
|
||||||
|
i = DIV_ROUND_UP(min_vol - desc->min, desc->step);
|
||||||
|
|
||||||
if (desc->min + desc->step * i > max_vol)
|
if (desc->min + desc->step * i > max_vol)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
Loading…
Reference in New Issue
Block a user