Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 57995a48 authored by Matthias Kaehlcke's avatar Matthias Kaehlcke Committed by Mark Brown
Browse files

regulator: core: Use local ops variable in _regulator_do_set_voltage()

parent 29b4817d
Loading
Loading
Loading
Loading
+10 −10
Original line number Original line Diff line number Diff line
@@ -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);


@@ -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)
@@ -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",