Loading drivers/regulator/core.c +10 −10 Original line number Original line Diff line number Diff line Loading @@ -2751,6 +2751,7 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev, int best_val = 0; int best_val = 0; unsigned int selector; unsigned int selector; int old_selector = -1; int old_selector = -1; const struct regulator_ops *ops = rdev->desc->ops; trace_regulator_set_voltage(rdev_get_name(rdev), min_uV, max_uV); trace_regulator_set_voltage(rdev_get_name(rdev), min_uV, max_uV); Loading @@ -2762,29 +2763,28 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev, * info to call set_voltage_time_sel(). * info to call set_voltage_time_sel(). */ */ if (_regulator_is_enabled(rdev) && if (_regulator_is_enabled(rdev) && rdev->desc->ops->set_voltage_time_sel && ops->set_voltage_time_sel && ops->get_voltage_sel) { rdev->desc->ops->get_voltage_sel) { old_selector = ops->get_voltage_sel(rdev); old_selector = rdev->desc->ops->get_voltage_sel(rdev); if (old_selector < 0) if (old_selector < 0) return old_selector; return old_selector; } } if (rdev->desc->ops->set_voltage) { if (ops->set_voltage) { ret = _regulator_call_set_voltage(rdev, min_uV, max_uV, ret = _regulator_call_set_voltage(rdev, min_uV, max_uV, &selector); &selector); if (ret >= 0) { if (ret >= 0) { if (rdev->desc->ops->list_voltage) if (ops->list_voltage) best_val = rdev->desc->ops->list_voltage(rdev, best_val = ops->list_voltage(rdev, selector); selector); else else best_val = _regulator_get_voltage(rdev); best_val = _regulator_get_voltage(rdev); } } } else if (rdev->desc->ops->set_voltage_sel) { } else if (ops->set_voltage_sel) { ret = regulator_map_voltage(rdev, min_uV, max_uV); ret = regulator_map_voltage(rdev, min_uV, max_uV); if (ret >= 0) { if (ret >= 0) { best_val = rdev->desc->ops->list_voltage(rdev, ret); best_val = ops->list_voltage(rdev, ret); if (min_uV <= best_val && max_uV >= best_val) { if (min_uV <= best_val && max_uV >= best_val) { selector = ret; selector = ret; if (old_selector == selector) if (old_selector == selector) Loading @@ -2804,7 +2804,7 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev, if (ret == 0 && !rdev->constraints->ramp_disable && old_selector >= 0 if (ret == 0 && !rdev->constraints->ramp_disable && old_selector >= 0 && old_selector != selector) { && old_selector != selector) { delay = rdev->desc->ops->set_voltage_time_sel(rdev, delay = ops->set_voltage_time_sel(rdev, old_selector, selector); old_selector, selector); if (delay < 0) { if (delay < 0) { rdev_warn(rdev, "set_voltage_time_sel() failed: %d\n", rdev_warn(rdev, "set_voltage_time_sel() failed: %d\n", Loading Loading
drivers/regulator/core.c +10 −10 Original line number Original line Diff line number Diff line Loading @@ -2751,6 +2751,7 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev, int best_val = 0; int best_val = 0; unsigned int selector; unsigned int selector; int old_selector = -1; int old_selector = -1; const struct regulator_ops *ops = rdev->desc->ops; trace_regulator_set_voltage(rdev_get_name(rdev), min_uV, max_uV); trace_regulator_set_voltage(rdev_get_name(rdev), min_uV, max_uV); Loading @@ -2762,29 +2763,28 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev, * info to call set_voltage_time_sel(). * info to call set_voltage_time_sel(). */ */ if (_regulator_is_enabled(rdev) && if (_regulator_is_enabled(rdev) && rdev->desc->ops->set_voltage_time_sel && ops->set_voltage_time_sel && ops->get_voltage_sel) { rdev->desc->ops->get_voltage_sel) { old_selector = ops->get_voltage_sel(rdev); old_selector = rdev->desc->ops->get_voltage_sel(rdev); if (old_selector < 0) if (old_selector < 0) return old_selector; return old_selector; } } if (rdev->desc->ops->set_voltage) { if (ops->set_voltage) { ret = _regulator_call_set_voltage(rdev, min_uV, max_uV, ret = _regulator_call_set_voltage(rdev, min_uV, max_uV, &selector); &selector); if (ret >= 0) { if (ret >= 0) { if (rdev->desc->ops->list_voltage) if (ops->list_voltage) best_val = rdev->desc->ops->list_voltage(rdev, best_val = ops->list_voltage(rdev, selector); selector); else else best_val = _regulator_get_voltage(rdev); best_val = _regulator_get_voltage(rdev); } } } else if (rdev->desc->ops->set_voltage_sel) { } else if (ops->set_voltage_sel) { ret = regulator_map_voltage(rdev, min_uV, max_uV); ret = regulator_map_voltage(rdev, min_uV, max_uV); if (ret >= 0) { if (ret >= 0) { best_val = rdev->desc->ops->list_voltage(rdev, ret); best_val = ops->list_voltage(rdev, ret); if (min_uV <= best_val && max_uV >= best_val) { if (min_uV <= best_val && max_uV >= best_val) { selector = ret; selector = ret; if (old_selector == selector) if (old_selector == selector) Loading @@ -2804,7 +2804,7 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev, if (ret == 0 && !rdev->constraints->ramp_disable && old_selector >= 0 if (ret == 0 && !rdev->constraints->ramp_disable && old_selector >= 0 && old_selector != selector) { && old_selector != selector) { delay = rdev->desc->ops->set_voltage_time_sel(rdev, delay = ops->set_voltage_time_sel(rdev, old_selector, selector); old_selector, selector); if (delay < 0) { if (delay < 0) { rdev_warn(rdev, "set_voltage_time_sel() failed: %d\n", rdev_warn(rdev, "set_voltage_time_sel() failed: %d\n", Loading