All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthias Kaehlcke <mka@chromium.org>
To: Mark Brown <broonie@kernel.org>, lgirdwood@gmail.com
Cc: Douglas Anderson <dianders@chromium.org>,
	briannorris@chromium.org, javier@dowhile0.org,
	robh+dt@kernel.org, mark.rutland@arm.com,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
	Matthias Kaehlcke <mka@chromium.org>
Subject: [PATCH v5 2/6] regulator: core: Simplify error flow in _regulator_do_set_voltage()
Date: Wed, 14 Sep 2016 09:52:06 -0700	[thread overview]
Message-ID: <1473871930-99603-2-git-send-email-mka@chromium.org> (raw)
In-Reply-To: <1473871930-99603-1-git-send-email-mka@chromium.org>

If the voltage can not be set jump to the end of the function. This
avoids having to check for an error multiple times and eliminates one
level of nesting in a follow-up change.

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
---
Changes in v5:
- This patch is new for v5.

 drivers/regulator/core.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index b059e83..b0076cc 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -2800,8 +2800,11 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev,
 		ret = -EINVAL;
 	}
 
+	if (ret)
+		goto out;
+
 	/* Call set_voltage_time_sel if successfully obtained old_selector */
-	if (ret == 0 && !rdev->constraints->ramp_disable && old_selector >= 0
+	if (!rdev->constraints->ramp_disable && old_selector >= 0
 		&& old_selector != selector) {
 
 		delay = ops->set_voltage_time_sel(rdev,
@@ -2821,13 +2824,14 @@ static int _regulator_do_set_voltage(struct regulator_dev *rdev,
 		}
 	}
 
-	if (ret == 0 && best_val >= 0) {
+	if (best_val >= 0) {
 		unsigned long data = best_val;
 
 		_notifier_call_chain(rdev, REGULATOR_EVENT_VOLTAGE_CHANGE,
 				     (void *)data);
 	}
 
+out:
 	trace_regulator_set_voltage_complete(rdev_get_name(rdev), best_val);
 
 	return ret;
-- 
2.8.0.rc3.226.g39d4020

  reply	other threads:[~2016-09-14 16:54 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-14 16:52 [PATCH v5 1/6] regulator: core: Use local ops variable in _regulator_do_set_voltage() Matthias Kaehlcke
2016-09-14 16:52 ` Matthias Kaehlcke [this message]
2016-09-16 17:40   ` Applied "regulator: core: Simplify error flow in _regulator_do_set_voltage()" to the regulator tree Mark Brown
2016-09-16 17:40     ` Mark Brown
2016-09-14 16:52 ` [PATCH v5 3/6] regulator: core: Don't skip set_voltage_time when ramp delay disabled Matthias Kaehlcke
2016-09-16 17:40   ` Applied "regulator: core: Don't skip set_voltage_time when ramp delay disabled" to the regulator tree Mark Brown
2016-09-16 17:40     ` Mark Brown
2016-09-14 16:52 ` [PATCH v5 4/6] regulator: core: Add set_voltage_time op Matthias Kaehlcke
2016-09-16 17:40   ` Applied "regulator: core: Add set_voltage_time op" to the regulator tree Mark Brown
2016-09-16 17:40     ` Mark Brown
2016-09-14 16:52 ` [PATCH v5 5/6] regulator: core: Add support for a fixed delay after voltage changes Matthias Kaehlcke
2016-09-14 16:52   ` Matthias Kaehlcke
2016-09-23 15:14   ` Rob Herring
2016-09-14 16:52 ` [PATCH v5 6/6] regulator: core: Prevent falling too fast Matthias Kaehlcke
2016-09-14 16:52   ` Matthias Kaehlcke
2016-09-14 21:35   ` kbuild test robot
2016-09-14 21:35     ` kbuild test robot
2016-09-23 15:16   ` Rob Herring
2016-09-14 17:16 ` Applied "regulator: core: Use local ops variable in _regulator_do_set_voltage()" to the regulator tree Mark Brown
2016-09-14 17:16   ` Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1473871930-99603-2-git-send-email-mka@chromium.org \
    --to=mka@chromium.org \
    --cc=briannorris@chromium.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dianders@chromium.org \
    --cc=javier@dowhile0.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.