All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <andersson@kernel.org>
To: Rajendra Nayak <quic_rjendra@quicinc.com>
Cc: agross@kernel.org, konrad.dybcio@somainline.org,
	robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org,
	linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, sboyd@kernel.org, mka@chromium.org,
	johan+linaro@kernel.org, quic_kriskura@quicinc.com,
	dianders@chromium.org
Subject: Re: [PATCH] arm64: dts: qcom: sc7280: Add required-opps for USB
Date: Wed, 14 Sep 2022 21:20:25 -0500	[thread overview]
Message-ID: <20220915022025.rwqooixqhhuott6n@builder.lan> (raw)
In-Reply-To: <20220914053017.23617-1-quic_rjendra@quicinc.com>

On Wed, Sep 14, 2022 at 11:00:17AM +0530, Rajendra Nayak wrote:
> USB has a requirement to put a performance state vote on 'cx'
> while active. Use 'required-opps' to pass this information from
> device tree, and since all the GDSCs in GCC (including USB) are
> sub-domains of cx, we also add cx as a power-domain for GCC.
> Now when any of the consumers of the GDSCs (in this case USB)
> votes on a perforamance state, genpd framework can identify that
> the GDSC itself does not support a performance state and it
> then propogates the vote to the parent, which in this case is cx.
> 
> This change would also mean that any GDSC in GCC thats left enabled
> during low power state (perhaps because its marked with a
> ALWAYS_ON flag) can prevent the system from entering low power
> since that would prevent cx from transitioning to low power.
> Ideally any consumers that would need to have their devices
> (partially) powered to support wakeups should look at making the
> resp. GDSCs transtion to a Retention (PWRSTS_RET) state instead
> of leaving them ALWAYS_ON.
> 
> Signed-off-by: Rajendra Nayak <quic_rjendra@quicinc.com>
> ---
> * This patch is a follow up based on the discussion on the previously
>   posted version to support USB performance state voting [1]
> 
> * Another patch that this approach depends on is the one to fix the
>   handling of PWRSTS_RET in the GDSC driver [2] so we can have USB
>   GDSC transtion to a RET state instead of marking it ALWAYS_ON
> 
> [1] https://lore.kernel.org/linux-usb/YTduDqCO9aUyAsw1@ripper/
> [2] https://lore.kernel.org/all/20220901101756.28164-1-quic_rjendra@quicinc.com/#t
> 
>  arch/arm64/boot/dts/qcom/sc7280.dtsi | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/sc7280.dtsi b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> index ad04025a8a1a..8a21446738bf 100644
> --- a/arch/arm64/boot/dts/qcom/sc7280.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7280.dtsi
> @@ -828,6 +828,7 @@
>  			#clock-cells = <1>;
>  			#reset-cells = <1>;
>  			#power-domain-cells = <1>;
> +			power-domains = <&rpmhpd SC7280_CX>;
>  		};
>  
>  		ipcc: mailbox@408000 {
> @@ -3456,6 +3457,7 @@
>  					  "ss_phy_irq";
>  
>  			power-domains = <&gcc GCC_USB30_PRIM_GDSC>;
> +			required-opps = <&rpmhpd_opp_svs>;

The patch looks really good, but don't you need &rpmhpd_opp_nom for the
200MHz assigned to GCC_USB30_PRIM_MASTER_CLK?

Also, how about adding the same to &usb_2, while we're at it?

Regards,
Bjorn

>  
>  			resets = <&gcc GCC_USB30_PRIM_BCR>;
>  
> -- 
> 2.17.1
> 

  reply	other threads:[~2022-09-15  2:20 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-14  5:30 [PATCH] arm64: dts: qcom: sc7280: Add required-opps for USB Rajendra Nayak
2022-09-15  2:20 ` Bjorn Andersson [this message]
2022-09-15  7:35   ` Rajendra Nayak

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=20220915022025.rwqooixqhhuott6n@builder.lan \
    --to=andersson@kernel.org \
    --cc=agross@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dianders@chromium.org \
    --cc=johan+linaro@kernel.org \
    --cc=konrad.dybcio@somainline.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mka@chromium.org \
    --cc=quic_kriskura@quicinc.com \
    --cc=quic_rjendra@quicinc.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 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.