arch/arm64/boot/dts/qcom/qcs8300.dtsi | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+)
Add cpufreq-hw node to support cpufreq scaling on QCS8300.
Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com>
---
Changes in v2:
- Drop bindings patch, as it is already applied.
- In DT patch, sorted by address and updated reg-names to vertical list. [Konrad]
- Link to v1: https://lore.kernel.org/r/20250313-qcs8300-cpufreq-scaling-v1-0-d4cd3bd9c018@quicinc.com
---
arch/arm64/boot/dts/qcom/qcs8300.dtsi | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
index 037cd366a09b4cf83a80264d9cad650698e7132d..9bc6cf9a3495a026cc5b51c2c3ba9f07cbcf5744 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
@@ -52,6 +52,7 @@ cpu0: cpu@0 {
power-domain-names = "psci";
capacity-dmips-mhz = <1946>;
dynamic-power-coefficient = <472>;
+ qcom,freq-domain = <&cpufreq_hw 0>;
l2_0: l2-cache {
compatible = "cache";
@@ -71,6 +72,7 @@ cpu1: cpu@100 {
power-domain-names = "psci";
capacity-dmips-mhz = <1946>;
dynamic-power-coefficient = <472>;
+ qcom,freq-domain = <&cpufreq_hw 0>;
l2_1: l2-cache {
compatible = "cache";
@@ -90,6 +92,7 @@ cpu2: cpu@200 {
power-domain-names = "psci";
capacity-dmips-mhz = <1946>;
dynamic-power-coefficient = <507>;
+ qcom,freq-domain = <&cpufreq_hw 2>;
l2_2: l2-cache {
compatible = "cache";
@@ -109,6 +112,7 @@ cpu3: cpu@300 {
power-domain-names = "psci";
capacity-dmips-mhz = <1946>;
dynamic-power-coefficient = <507>;
+ qcom,freq-domain = <&cpufreq_hw 2>;
l2_3: l2-cache {
compatible = "cache";
@@ -128,6 +132,7 @@ cpu4: cpu@10000 {
power-domain-names = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <100>;
+ qcom,freq-domain = <&cpufreq_hw 1>;
l2_4: l2-cache {
compatible = "cache";
@@ -147,6 +152,7 @@ cpu5: cpu@10100 {
power-domain-names = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <100>;
+ qcom,freq-domain = <&cpufreq_hw 1>;
l2_5: l2-cache {
compatible = "cache";
@@ -166,6 +172,7 @@ cpu6: cpu@10200 {
power-domain-names = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <100>;
+ qcom,freq-domain = <&cpufreq_hw 1>;
l2_6: l2-cache {
compatible = "cache";
@@ -185,6 +192,7 @@ cpu7: cpu@10300 {
power-domain-names = "psci";
capacity-dmips-mhz = <1024>;
dynamic-power-coefficient = <100>;
+ qcom,freq-domain = <&cpufreq_hw 1>;
l2_7: l2-cache {
compatible = "cache";
@@ -5279,6 +5287,28 @@ rpmhpd_opp_turbo_l1: opp-9 {
};
};
+ cpufreq_hw: cpufreq@18591000 {
+ compatible = "qcom,qcs8300-cpufreq-epss", "qcom,cpufreq-epss";
+ reg = <0x0 0x18591000 0x0 0x1000>,
+ <0x0 0x18593000 0x0 0x1000>,
+ <0x0 0x18594000 0x0 0x1000>;
+ reg-names = "freq-domain0",
+ "freq-domain1",
+ "freq-domain2";
+
+ interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "dcvsh-irq-0",
+ "dcvsh-irq-1",
+ "dcvsh-irq-2";
+
+ clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_GPLL0>;
+ clock-names = "xo", "alternate";
+
+ #freq-domain-cells = <1>;
+ };
+
remoteproc_gpdsp: remoteproc@20c00000 {
compatible = "qcom,qcs8300-gpdsp-pas", "qcom,sa8775p-gpdsp0-pas";
reg = <0x0 0x20c00000 0x0 0x10000>;
---
base-commit: 393d0c54cae31317deaa9043320c5fd9454deabc
change-id: 20250428-qcs8300-cpufreq-scaling-6ca141ebeaab
Best regards,
--
Imran Shaik <quic_imrashai@quicinc.com>
On Wed, 30 Apr 2025 10:29:12 +0530, Imran Shaik wrote:
> Add cpufreq-hw node to support cpufreq scaling on QCS8300.
>
>
Applied, thanks!
[1/1] arm64: dts: qcom: qcs8300: Add cpufreq scaling node
commit: 2ed8ee662660577a701e92917dbc65ca3553507c
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
On 4/30/25 6:59 AM, Imran Shaik wrote: > Add cpufreq-hw node to support cpufreq scaling on QCS8300. > > Signed-off-by: Imran Shaik <quic_imrashai@quicinc.com> > --- Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Konrad
© 2016 - 2026 Red Hat, Inc.