From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Jeffrey Hugo <jeffrey.l.hugo@gmail.com>
Cc: lgirdwood@gmail.com, broonie@kernel.org, agross@kernel.org,
robh+dt@kernel.org, mark.rutland@arm.com,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org,
devicetree@vger.kernel.org
Subject: Re: [PATCH v4 2/7] regulator: qcom_spmi: Refactor get_mode/set_mode
Date: Thu, 13 Jun 2019 14:32:00 -0700 [thread overview]
Message-ID: <20190613213200.GC4814@minitux> (raw)
In-Reply-To: <20190613212531.10452-2-jeffrey.l.hugo@gmail.com>
On Thu 13 Jun 14:25 PDT 2019, Jeffrey Hugo wrote:
> spmi_regulator_common_get_mode and spmi_regulator_common_set_mode use
> multi-level ifs which mirror a switch statement. Refactor to use a switch
> statement to make the code flow more clear.
>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> Signed-off-by: Jeffrey Hugo <jeffrey.l.hugo@gmail.com>
> ---
> drivers/regulator/qcom_spmi-regulator.c | 26 +++++++++++++++++--------
> 1 file changed, 18 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/regulator/qcom_spmi-regulator.c b/drivers/regulator/qcom_spmi-regulator.c
> index 42c429d50743..1b3383a24c9d 100644
> --- a/drivers/regulator/qcom_spmi-regulator.c
> +++ b/drivers/regulator/qcom_spmi-regulator.c
> @@ -911,13 +911,16 @@ static unsigned int spmi_regulator_common_get_mode(struct regulator_dev *rdev)
>
> spmi_vreg_read(vreg, SPMI_COMMON_REG_MODE, ®, 1);
>
> - if (reg & SPMI_COMMON_MODE_HPM_MASK)
> - return REGULATOR_MODE_NORMAL;
> + reg &= SPMI_COMMON_MODE_HPM_MASK | SPMI_COMMON_MODE_AUTO_MASK;
>
> - if (reg & SPMI_COMMON_MODE_AUTO_MASK)
> + switch (reg) {
> + case SPMI_COMMON_MODE_HPM_MASK:
> + return REGULATOR_MODE_NORMAL;
> + case SPMI_COMMON_MODE_AUTO_MASK:
> return REGULATOR_MODE_FAST;
> -
> - return REGULATOR_MODE_IDLE;
> + default:
> + return REGULATOR_MODE_IDLE;
> + }
> }
>
> static int
> @@ -925,12 +928,19 @@ spmi_regulator_common_set_mode(struct regulator_dev *rdev, unsigned int mode)
> {
> struct spmi_regulator *vreg = rdev_get_drvdata(rdev);
> u8 mask = SPMI_COMMON_MODE_HPM_MASK | SPMI_COMMON_MODE_AUTO_MASK;
> - u8 val = 0;
> + u8 val;
>
> - if (mode == REGULATOR_MODE_NORMAL)
> + switch (mode) {
> + case REGULATOR_MODE_NORMAL:
> val = SPMI_COMMON_MODE_HPM_MASK;
> - else if (mode == REGULATOR_MODE_FAST)
> + break;
> + case REGULATOR_MODE_FAST:
> val = SPMI_COMMON_MODE_AUTO_MASK;
> + break;
> + default:
> + val = 0;
> + break;
> + }
>
> return spmi_vreg_update_bits(vreg, SPMI_COMMON_REG_MODE, val, mask);
> }
> --
> 2.17.1
>
next prev parent reply other threads:[~2019-06-13 21:32 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-13 21:24 [PATCH v4 0/7] PM8005 and PMS405 regulator support Jeffrey Hugo
2019-06-13 21:24 ` Jeffrey Hugo
2019-06-13 21:25 ` [PATCH v4 1/7] regulator: qcom_spmi: enable linear range info Jeffrey Hugo
2019-06-13 21:25 ` [PATCH v4 2/7] regulator: qcom_spmi: Refactor get_mode/set_mode Jeffrey Hugo
2019-06-13 21:32 ` Bjorn Andersson [this message]
2019-06-17 15:24 ` Applied "regulator: qcom_spmi: Refactor get_mode/set_mode" to the regulator tree Mark Brown
2019-06-17 15:24 ` Mark Brown
2019-06-17 15:24 ` Applied "regulator: qcom_spmi: enable linear range info" " Mark Brown
2019-06-17 15:24 ` Mark Brown
2019-06-13 21:25 ` [PATCH v4 3/7] dt-bindings: qcom_spmi: Document PM8005 regulators Jeffrey Hugo
2019-06-13 21:25 ` [PATCH v4 4/7] regulator: qcom_spmi: Add support for PM8005 Jeffrey Hugo
2019-06-17 15:05 ` Mark Brown
2019-06-17 15:17 ` Jeffrey Hugo
2019-06-17 16:03 ` Mark Brown
2019-06-17 17:07 ` Jeffrey Hugo
2019-06-17 18:37 ` Mark Brown
[not found] ` <CAOCk7NpbZwAreGpVCvF2yFBDJKbAxBZ23oncfF_SyEwoiC2+PQ@mail.gmail.com>
[not found] ` <20190617192413.GI5316@sirena.org.uk>
2019-06-17 19:41 ` Jeffrey Hugo
2019-06-13 21:26 ` [PATCH v4 5/7] arm64: dts: msm8998-mtp: Add pm8005_s1 regulator Jeffrey Hugo
2019-06-13 21:27 ` [PATCH v4 6/7] dt-bindings: qcom_spmi: Document pms405 support Jeffrey Hugo
2019-06-13 21:27 ` [PATCH v4 7/7] regulator: qcom_spmi: add PMS405 SPMI regulator Jeffrey Hugo
2019-06-13 21:37 ` Bjorn Andersson
2019-06-13 21:37 ` [PATCH v4 6/7] dt-bindings: qcom_spmi: Document pms405 support Bjorn Andersson
2019-06-17 14:58 ` [PATCH v4 0/7] PM8005 and PMS405 regulator support Mark Brown
2019-06-17 15:04 ` Jeffrey Hugo
2019-06-17 15:12 ` 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=20190613213200.GC4814@minitux \
--to=bjorn.andersson@linaro.org \
--cc=agross@kernel.org \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jeffrey.l.hugo@gmail.com \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--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.