From: Abel Vesa <abel.vesa@linaro.org>
To: Konrad Dybcio <konrad.dybcio@linaro.org>
Cc: Andy Gross <agross@kernel.org>,
Bjorn Andersson <andersson@kernel.org>,
Mike Turquette <mturquette@baylibre.com>,
Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org,
linux-clk@vger.kernel.org
Subject: Re: [PATCH 2/9] clk: qcom: gdsc: Add configurable poll timeout
Date: Thu, 17 Nov 2022 10:05:22 +0200 [thread overview]
Message-ID: <Y3XrQrnT0dxTvc5S@linaro.org> (raw)
In-Reply-To: <9c5b6037-c962-81d3-41c1-a9ec459c9adc@linaro.org>
On 22-11-16 12:19:09, Konrad Dybcio wrote:
>
>
> On 16/11/2022 11:47, Abel Vesa wrote:
> > Depending on the platform, the poll timeout delay might be different,
> > so allow the platform specific drivers to specify their own values.
> >
> > Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
> > ---
> > drivers/clk/qcom/gdsc.c | 5 ++++-
> > drivers/clk/qcom/gdsc.h | 1 +
> > 2 files changed, 5 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/clk/qcom/gdsc.c b/drivers/clk/qcom/gdsc.c
> > index 0f21a8a767ac..3753f3ef7241 100644
> > --- a/drivers/clk/qcom/gdsc.c
> > +++ b/drivers/clk/qcom/gdsc.c
> > @@ -107,7 +107,7 @@ static int gdsc_poll_status(struct gdsc *sc, enum gdsc_status status)
> > do {
> > if (gdsc_check_status(sc, status))
> > return 0;
> > - } while (ktime_us_delta(ktime_get(), start) < TIMEOUT_US);
> > + } while (ktime_us_delta(ktime_get(), start) < sc->poll_timeout);
> What about the second usage of TIMEOUT_US (in gdsc_toggle_logic)? Is it fine
> for that to be the default value?
The usleep you mention is not really for polling the state.
So I think it should stay as is. Who knows, maybe in the future we will
need to have the configurable as well, but as a toggle delay rather than
a status poll timeout.
I added this configurable poll timeout just because I saw that
downstream, each driver has different values. And it kind of makes sense,
because the state machine inside the GDSC might be different between
platforms, and so, it might take different time to reach a certain on/off
state.
Thanks,
Abel
>
>
> Konrad
> > if (gdsc_check_status(sc, status))
> > return 0;
> > @@ -454,6 +454,9 @@ static int gdsc_init(struct gdsc *sc)
> > if (ret)
> > goto err_disable_supply;
> > + if (!sc->poll_timeout)
> > + sc->poll_timeout = 500;
> > +
> > return 0;
> > err_disable_supply:
> > diff --git a/drivers/clk/qcom/gdsc.h b/drivers/clk/qcom/gdsc.h
> > index 803512688336..9a1e1fb3d12f 100644
> > --- a/drivers/clk/qcom/gdsc.h
> > +++ b/drivers/clk/qcom/gdsc.h
> > @@ -36,6 +36,7 @@ struct gdsc {
> > struct generic_pm_domain *parent;
> > struct regmap *regmap;
> > unsigned int gdscr;
> > + unsigned int poll_timeout;
> > unsigned int collapse_ctrl;
> > unsigned int collapse_mask;
> > unsigned int gds_hw_ctrl;
next prev parent reply other threads:[~2022-11-17 8:05 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-16 10:47 [PATCH 0/9] clk: qcom: Add support for SM8550 Abel Vesa
2022-11-16 10:47 ` [PATCH 1/9] dt-bindings: clock: Add SM8550 GCC clock bindings Abel Vesa
2022-11-17 9:08 ` Krzysztof Kozlowski
2022-11-17 9:40 ` Abel Vesa
2022-11-17 10:27 ` Krzysztof Kozlowski
2022-11-16 10:47 ` [PATCH 2/9] clk: qcom: gdsc: Add configurable poll timeout Abel Vesa
2022-11-16 11:19 ` Konrad Dybcio
2022-11-17 8:05 ` Abel Vesa [this message]
2022-11-17 9:23 ` Konrad Dybcio
2022-11-16 10:47 ` [PATCH 3/9] clk: qcom: Add LUCID_OLE PLL type for SM8550 Abel Vesa
2022-11-16 11:23 ` Konrad Dybcio
2022-11-16 10:47 ` [PATCH 4/9] clk: qcom: Add clock driver " Abel Vesa
2022-11-16 10:47 ` [PATCH 5/9] dt-bindings: clock: Add RPMHCC bindings " Abel Vesa
2022-11-17 9:09 ` Krzysztof Kozlowski
2022-11-17 9:41 ` Abel Vesa
2022-11-16 10:47 ` [PATCH 6/9] dt-bindings: clock: qcom,rpmh: Add CXO PAD clock IDs Abel Vesa
2022-11-17 9:09 ` Krzysztof Kozlowski
2022-11-16 10:47 ` [PATCH 7/9] clk: qcom: rpmh: Add support for SM8550 rpmh clocks Abel Vesa
2022-11-16 11:27 ` Konrad Dybcio
2022-11-17 8:10 ` Abel Vesa
2022-11-16 10:47 ` [PATCH 8/9] dt-bindings: clock: Add SM8550 TCSR CC clock bindings Abel Vesa
2022-11-17 9:11 ` Krzysztof Kozlowski
2022-11-16 10:47 ` [PATCH 9/9] clk: qcom: Add TCSR clock driver for SM8550 Abel Vesa
2022-11-16 11:29 ` Konrad Dybcio
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=Y3XrQrnT0dxTvc5S@linaro.org \
--to=abel.vesa@linaro.org \
--cc=agross@kernel.org \
--cc=andersson@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=konrad.dybcio@linaro.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-clk@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mturquette@baylibre.com \
--cc=robh@kernel.org \
--cc=sboyd@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox