devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johan Hovold <johan@kernel.org>
To: Konrad Dybcio <konrad.dybcio@linaro.org>
Cc: Bjorn Andersson <andersson@kernel.org>,
	Andy Gross <agross@kernel.org>,
	Michael Turquette <mturquette@baylibre.com>,
	Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Marijn Suijten <marijn.suijten@somainline.org>,
	linux-arm-msm@vger.kernel.org, linux-clk@vger.kernel.org,
	linux-kernel@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v3 04/15] clk: qcom: gcc-sm6375: Add runtime PM
Date: Wed, 20 Dec 2023 13:48:15 +0100	[thread overview]
Message-ID: <ZYLij93-n1-OWpIp@hovoldconsulting.com> (raw)
In-Reply-To: <0cbdb9fb-9ad6-46c4-9d20-b0a766ab2629@linaro.org>

On Wed, Dec 20, 2023 at 01:26:55PM +0100, Konrad Dybcio wrote:
> On 20.12.2023 10:26, Johan Hovold wrote:
> > On Wed, Dec 20, 2023 at 01:30:45AM +0100, Konrad Dybcio wrote:
> >> The GCC block on SM6375 is powered by the VDD_CX rail. We need to ensure
> >> that CX is enabled to prevent unwanted power collapse 
> > 
> > As I pointed out earlier, this bit of the commit message is incorrect
> > and misleading as the power domain will never be disabled until you
> > enable runtime PM as part of this very patch:
> > 
> > 	https://lore.kernel.org/all/ZLaSpFFBzP_Yz5yY@hovoldconsulting.com/
> > 
> > Specifically, genpd will not power off CX (at runtime) while the driver
> > is bound when runtime PM is left disabled.

> OK I only now see what you really meant.
> 
> What this bit says is true, but it may be confusing within the context
> of this patch.

I'd say it's misleading since it suggests that something can currently
cause an "unwanted power collapse" which is not the case.

> The CX domain must be turned on [for the SoC to function], however this
> patch does not solve the issue of it being powered down [like you've said
> just binding the PD will keep it always-active for RPM-disabled devices].
> It complements this process, by allowing it to shut down when unnecessary.

Right, so just skip the misleading bits about "unwanted power collapse".

> >> and that the
> >> reference is dropped when unused so that the system can enter a
> >> firmware-managed lower power state.
> >>
> >> Enable runtime PM to keep the power flowing only when necessary.
> > 
> > The rest is correct.

> Let me try to reword this and see if you like it:
> 
> 
> The GCC block on SM6375 is powered by the VDD_CX rail. The Device Tree
> description of this dependency lets Linux keep the rail online to prevent
> power outages. It is however undesirable to keep it enabled at all times,
> as that consumes additional power.

I'd skip or rephrase the second sentence myself.
 
> Moreover, failing to drop the "enabled" vote prevents firmware-managed,
> SoC-wide power collapse in suspend, which leads to even more wasted power.

However if this is what you meant by "firmware-managed lower power
state" then this is not correct either. genpd will still power off the
power domain during system suspend, regardless of whether a driver
implements runtime PM.

> Enable runtime PM to keep the power flowing only when necessary.

So I'm starting to question whether we need this at all. AFAIK CX is
never going to be disabled at runtime and this patch is not needed to
disable CX during system suspend.

Johan

  reply	other threads:[~2023-12-20 12:48 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-20  0:30 [PATCH v3 00/15] Unregister critical branch clocks + some RPM Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 01/15] clk: qcom: branch: Add a helper for setting the enable bit Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 02/15] clk: qcom: Use qcom_branch_set_clk_en() Konrad Dybcio
2023-12-20  8:25   ` Johan Hovold
2023-12-20 12:16     ` Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 03/15] clk: qcom: gcc-sm6375: Unregister critical clocks Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 04/15] clk: qcom: gcc-sm6375: Add runtime PM Konrad Dybcio
2023-12-20  9:26   ` Johan Hovold
2023-12-20 12:26     ` Konrad Dybcio
2023-12-20 12:48       ` Johan Hovold [this message]
2023-12-20 13:13         ` Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 05/15] clk: qcom: gpucc-sm6375: Unregister critical clocks Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 06/15] clk: qcom: gpucc-sm6115: " Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 07/15] clk: qcom: gpucc-sm6115: Add runtime PM Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 08/15] clk: qcom: gcc-sm6115: Unregister critical clocks Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 09/15] clk: qcom: gcc-sm6115: Add runtime PM Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 10/15] clk: qcom: gcc-qcm2290: Unregister critical clocks Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 11/15] clk: qcom: gcc-qcm2290: Add runtime PM Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 12/15] arm64: dts: qcom: sm6375: Add VDD_CX to GCC Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 13/15] arm64: dts: qcom: qcm2290: " Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 14/15] arm64: dts: qcom: sm6115: " Konrad Dybcio
2023-12-20  0:30 ` [PATCH v3 15/15] arm64: dts: qcom: sm6115: Add VDD_CX to GPU_CC 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=ZYLij93-n1-OWpIp@hovoldconsulting.com \
    --to=johan@kernel.org \
    --cc=agross@kernel.org \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=konrad.dybcio@linaro.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marijn.suijten@somainline.org \
    --cc=mturquette@baylibre.com \
    --cc=robh+dt@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;
as well as URLs for NNTP newsgroup(s).