devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Konrad Dybcio <konrad.dybcio@linaro.org>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	Andy Gross <agross@kernel.org>,
	Bjorn Andersson <andersson@kernel.org>,
	Stephen Boyd <sboyd@kernel.org>,
	Michael Turquette <mturquette@baylibre.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Taniya Das <quic_tdas@quicinc.com>
Cc: linux-arm-msm@vger.kernel.org, linux-clk@vger.kernel.org,
	devicetree@vger.kernel.org
Subject: Re: [PATCH v2 7/7] arm64: dts: qcom: msm8996: scale CBF clock according to the CPUfreq
Date: Wed, 18 Jan 2023 14:46:19 +0100	[thread overview]
Message-ID: <4af2446e-bb8b-996f-17c4-71f28f1d9eb1@linaro.org> (raw)
In-Reply-To: <20230117225824.1552604-8-dmitry.baryshkov@linaro.org>



On 17.01.2023 23:58, Dmitry Baryshkov wrote:
> Turn CBF into the interconnect provider. Scale CBF frequency (bandwidth)
> according to CPU frequencies.
> 
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>  arch/arm64/boot/dts/qcom/msm8996.dtsi | 50 +++++++++++++++++++++++++++
>  1 file changed, 50 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi
> index 7d8e31b84959..fc932a059d9f 100644
> --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi
> @@ -49,6 +49,7 @@ CPU0: cpu@0 {
>  			cpu-idle-states = <&CPU_SLEEP_0>;
>  			capacity-dmips-mhz = <1024>;
>  			clocks = <&kryocc 0>;
> +			interconnects = <&cbf 0 &cbf 1>;
dt-bindings entries instead of magic numbers, pretty please?

The rest lgtm

Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>

Konrad
>  			operating-points-v2 = <&cluster0_opp>;
>  			#cooling-cells = <2>;
>  			next-level-cache = <&L2_0>;
> @@ -66,6 +67,7 @@ CPU1: cpu@1 {
>  			cpu-idle-states = <&CPU_SLEEP_0>;
>  			capacity-dmips-mhz = <1024>;
>  			clocks = <&kryocc 0>;
> +			interconnects = <&cbf 0 &cbf 1>;
>  			operating-points-v2 = <&cluster0_opp>;
>  			#cooling-cells = <2>;
>  			next-level-cache = <&L2_0>;
> @@ -79,6 +81,7 @@ CPU2: cpu@100 {
>  			cpu-idle-states = <&CPU_SLEEP_0>;
>  			capacity-dmips-mhz = <1024>;
>  			clocks = <&kryocc 1>;
> +			interconnects = <&cbf 0 &cbf 1>;
>  			operating-points-v2 = <&cluster1_opp>;
>  			#cooling-cells = <2>;
>  			next-level-cache = <&L2_1>;
> @@ -96,6 +99,7 @@ CPU3: cpu@101 {
>  			cpu-idle-states = <&CPU_SLEEP_0>;
>  			capacity-dmips-mhz = <1024>;
>  			clocks = <&kryocc 1>;
> +			interconnects = <&cbf 0 &cbf 1>;
>  			operating-points-v2 = <&cluster1_opp>;
>  			#cooling-cells = <2>;
>  			next-level-cache = <&L2_1>;
> @@ -147,91 +151,109 @@ opp-307200000 {
>  			opp-hz = /bits/ 64 <307200000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-422400000 {
>  			opp-hz = /bits/ 64 <422400000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-480000000 {
>  			opp-hz = /bits/ 64 <480000000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-556800000 {
>  			opp-hz = /bits/ 64 <556800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-652800000 {
>  			opp-hz = /bits/ 64 <652800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <384000>;
>  		};
>  		opp-729600000 {
>  			opp-hz = /bits/ 64 <729600000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <460800>;
>  		};
>  		opp-844800000 {
>  			opp-hz = /bits/ 64 <844800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <537600>;
>  		};
>  		opp-960000000 {
>  			opp-hz = /bits/ 64 <960000000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <672000>;
>  		};
>  		opp-1036800000 {
>  			opp-hz = /bits/ 64 <1036800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <672000>;
>  		};
>  		opp-1113600000 {
>  			opp-hz = /bits/ 64 <1113600000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <825600>;
>  		};
>  		opp-1190400000 {
>  			opp-hz = /bits/ 64 <1190400000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <825600>;
>  		};
>  		opp-1228800000 {
>  			opp-hz = /bits/ 64 <1228800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <902400>;
>  		};
>  		opp-1324800000 {
>  			opp-hz = /bits/ 64 <1324800000>;
>  			opp-supported-hw = <0xd>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1056000>;
>  		};
>  		opp-1363200000 {
>  			opp-hz = /bits/ 64 <1363200000>;
>  			opp-supported-hw = <0x2>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1132800>;
>  		};
>  		opp-1401600000 {
>  			opp-hz = /bits/ 64 <1401600000>;
>  			opp-supported-hw = <0xd>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1132800>;
>  		};
>  		opp-1478400000 {
>  			opp-hz = /bits/ 64 <1478400000>;
>  			opp-supported-hw = <0x9>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1190400>;
>  		};
>  		opp-1497600000 {
>  			opp-hz = /bits/ 64 <1497600000>;
>  			opp-supported-hw = <0x04>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1305600>;
>  		};
>  		opp-1593600000 {
>  			opp-hz = /bits/ 64 <1593600000>;
>  			opp-supported-hw = <0x9>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1382400>;
>  		};
>  	};
>  
> @@ -245,136 +267,163 @@ opp-307200000 {
>  			opp-hz = /bits/ 64 <307200000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-403200000 {
>  			opp-hz = /bits/ 64 <403200000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-480000000 {
>  			opp-hz = /bits/ 64 <480000000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-556800000 {
>  			opp-hz = /bits/ 64 <556800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-652800000 {
>  			opp-hz = /bits/ 64 <652800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-729600000 {
>  			opp-hz = /bits/ 64 <729600000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <307200>;
>  		};
>  		opp-806400000 {
>  			opp-hz = /bits/ 64 <806400000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <384000>;
>  		};
>  		opp-883200000 {
>  			opp-hz = /bits/ 64 <883200000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <460800>;
>  		};
>  		opp-940800000 {
>  			opp-hz = /bits/ 64 <940800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <537600>;
>  		};
>  		opp-1036800000 {
>  			opp-hz = /bits/ 64 <1036800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <595200>;
>  		};
>  		opp-1113600000 {
>  			opp-hz = /bits/ 64 <1113600000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <672000>;
>  		};
>  		opp-1190400000 {
>  			opp-hz = /bits/ 64 <1190400000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <672000>;
>  		};
>  		opp-1248000000 {
>  			opp-hz = /bits/ 64 <1248000000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <748800>;
>  		};
>  		opp-1324800000 {
>  			opp-hz = /bits/ 64 <1324800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <825600>;
>  		};
>  		opp-1401600000 {
>  			opp-hz = /bits/ 64 <1401600000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <902400>;
>  		};
>  		opp-1478400000 {
>  			opp-hz = /bits/ 64 <1478400000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <979200>;
>  		};
>  		opp-1555200000 {
>  			opp-hz = /bits/ 64 <1555200000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1056000>;
>  		};
>  		opp-1632000000 {
>  			opp-hz = /bits/ 64 <1632000000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1190400>;
>  		};
>  		opp-1708800000 {
>  			opp-hz = /bits/ 64 <1708800000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1228800>;
>  		};
>  		opp-1785600000 {
>  			opp-hz = /bits/ 64 <1785600000>;
>  			opp-supported-hw = <0xf>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1305600>;
>  		};
>  		opp-1804800000 {
>  			opp-hz = /bits/ 64 <1804800000>;
>  			opp-supported-hw = <0xe>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1305600>;
>  		};
>  		opp-1824000000 {
>  			opp-hz = /bits/ 64 <1824000000>;
>  			opp-supported-hw = <0x1>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1382400>;
>  		};
>  		opp-1900800000 {
>  			opp-hz = /bits/ 64 <1900800000>;
>  			opp-supported-hw = <0x4>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1305600>;
>  		};
>  		opp-1920000000 {
>  			opp-hz = /bits/ 64 <1920000000>;
>  			opp-supported-hw = <0x1>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1459200>;
>  		};
>  		opp-1996800000 {
>  			opp-hz = /bits/ 64 <1996800000>;
>  			opp-supported-hw = <0x1>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1593600>;
>  		};
>  		opp-2073600000 {
>  			opp-hz = /bits/ 64 <2073600000>;
>  			opp-supported-hw = <0x1>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1593600>;
>  		};
>  		opp-2150400000 {
>  			opp-hz = /bits/ 64 <2150400000>;
>  			opp-supported-hw = <0x1>;
>  			clock-latency-ns = <200000>;
> +			opp-peak-kBps = <1593600>;
>  		};
>  	};
>  
> @@ -3567,6 +3616,7 @@ cbf: clock-controller@9a11000 {
>  			reg = <0x09a11000 0x10000>;
>  			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&apcs_glb>;
>  			#clock-cells = <0>;
> +			#interconnect-cells = <1>;
>  		};
>  
>  		intc: interrupt-controller@9bc0000 {

      reply	other threads:[~2023-01-18 14:08 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-17 22:58 [PATCH v2 0/7] clk: qcom: msm8996: add support for the CBF clock Dmitry Baryshkov
2023-01-17 22:58 ` [PATCH v2 1/7] dt-bindings: clock: qcom,msm8996-cbf: Describe the MSM8996 CBF clock controller Dmitry Baryshkov
2023-01-18 11:35   ` Krzysztof Kozlowski
2023-01-17 22:58 ` [PATCH v2 2/7] clk: qcom: add msm8996 Core Bus Framework (CBF) support Dmitry Baryshkov
2023-01-17 22:58 ` [PATCH v2 3/7] clk: qcom: cbf-msm8996: scale CBF clock according to the CPUfreq Dmitry Baryshkov
2023-01-18 14:21   ` Konrad Dybcio
2023-01-19 13:41     ` Dmitry Baryshkov
2023-01-17 22:58 ` [PATCH v2 4/7] clk: qcom: smd-rpm: provide RPM_SMD_XO_CLK_SRC on MSM8996 platform Dmitry Baryshkov
2023-01-18 13:38   ` Konrad Dybcio
2023-01-17 22:58 ` [PATCH v2 5/7] arm64: qcom: dts: msm8996 switch from RPM_SMD_BB_CLK1 to RPM_SMD_XO_CLK_SRC Dmitry Baryshkov
2023-01-18 13:39   ` Konrad Dybcio
2023-01-17 22:58 ` [PATCH v2 6/7] arm64: dts: qcom: msm8996: add CBF device entry Dmitry Baryshkov
2023-01-18 13:44   ` Konrad Dybcio
2023-01-19 13:36     ` Dmitry Baryshkov
2023-01-17 22:58 ` [PATCH v2 7/7] arm64: dts: qcom: msm8996: scale CBF clock according to the CPUfreq Dmitry Baryshkov
2023-01-18 13:46   ` Konrad Dybcio [this message]

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=4af2446e-bb8b-996f-17c4-71f28f1d9eb1@linaro.org \
    --to=konrad.dybcio@linaro.org \
    --cc=agross@kernel.org \
    --cc=andersson@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=mturquette@baylibre.com \
    --cc=quic_tdas@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 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).