* [PATCH 00/19] Arm cpu schema clean-ups
@ 2025-04-04 2:59 Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties Rob Herring (Arm)
` (20 more replies)
0 siblings, 21 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The Arm cpu.yaml schema fails to restrict allowed properties in 'cpu'
nodes. The result, not surprisely, is a number of additional properties
and errors in .dts files. This series resolves those issues.
There's still more properties in arm32 DTS files which I have not
documented. Mostly yet more supply names and "fsl,soc-operating-points".
What's a few more warnings on the 10000s of warnings...
The .dts files can be taken by the respective SoC maintainers. I will
take the binding changes.
Signed-off-by: "Rob Herring (Arm)" <robh@kernel.org>
---
Rob Herring (Arm) (19):
arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties
arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names
arm64: dts: morello: Fix-up cache nodes
arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies
arm64: dts: qcom: qdu1000: Fix qcom,freq-domain
arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies
arm64: dts: qcom: msm8992-lg-h815: Fix CPU node "enable-method" property dependencies
arm: dts: qcom: msm8916: Move "qcom,acc" and "qcom,saw" to 32-bit .dtsi
arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
arm/arm64: dts: imx: Drop redundant CPU "clock-latency"
arm: dts: qcom: ipq4019: Drop redundant CPU "clock-latency"
arm: dts: rockchip: Drop redundant CPU "clock-latency"
arm64: dts: amlogic: Drop redundant CPU "clock-latency"
dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies
dt-bindings: arm/cpus: Re-wrap 'description' entries
dt-bindings: Reference opp-v1 schema in CPU schemas
dt-bindings: arm/cpus: Add missing properties
dt-bindings: arm/cpus: Add power-domains constraints
dt-bindings: cpufreq: Drop redundant Mediatek binding
Documentation/devicetree/bindings/arm/cpus.yaml | 220 ++++++++++--------
.../bindings/cpufreq/cpufreq-mediatek.txt | 250 ---------------------
Documentation/devicetree/bindings/mips/cpus.yaml | 3 +-
Documentation/devicetree/bindings/opp/opp-v1.yaml | 18 +-
arch/arm/boot/dts/nxp/imx/imx7s.dtsi | 1 -
arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi | 4 -
arch/arm/boot/dts/qcom/qcom-msm8916-smp.dtsi | 8 +
arch/arm/boot/dts/qcom/qcom-sdx55.dtsi | 2 +-
arch/arm/boot/dts/qcom/qcom-sdx65.dtsi | 2 +-
arch/arm/boot/dts/rockchip/rk3128.dtsi | 8 +-
arch/arm/boot/dts/rockchip/rk3188.dtsi | 1 -
arch/arm/boot/dts/rockchip/rk322x.dtsi | 1 -
arch/arm/boot/dts/rockchip/rk3288.dtsi | 5 +-
arch/arm/boot/dts/rockchip/rv1108.dtsi | 1 -
arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 4 -
arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 4 -
arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts | 4 -
.../boot/dts/amlogic/meson-g12a-radxa-zero.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-g12a.dtsi | 1 +
.../dts/amlogic/meson-g12b-a311d-libretech-cc.dts | 6 -
arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi | 2 +
.../boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi | 6 -
.../boot/dts/amlogic/meson-g12b-bananapi.dtsi | 6 -
.../boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi | 6 -
.../dts/amlogic/meson-g12b-odroid-go-ultra.dts | 6 -
arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi | 6 -
.../boot/dts/amlogic/meson-g12b-radxa-zero2.dts | 6 -
arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi | 2 +
arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi | 6 -
arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 4 -
.../arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi | 4 -
.../boot/dts/amlogic/meson-sm1-khadas-vim3l.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi | 4 -
.../dts/amlogic/meson-sm1-s905d3-libretech-cc.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts | 4 -
arch/arm64/boot/dts/amlogic/meson-sm1.dtsi | 1 +
arch/arm64/boot/dts/arm/morello.dtsi | 22 +-
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 8 +-
arch/arm64/boot/dts/freescale/imx8mm.dtsi | 4 -
arch/arm64/boot/dts/freescale/imx8mn.dtsi | 4 -
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 4 -
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 4 -
.../boot/dts/microchip/sparx5_pcb_common.dtsi | 2 +
arch/arm64/boot/dts/qcom/msm8916.dtsi | 8 -
arch/arm64/boot/dts/qcom/msm8939.dtsi | 24 +-
arch/arm64/boot/dts/qcom/msm8992-lg-h815.dts | 6 +
arch/arm64/boot/dts/qcom/qdu1000.dtsi | 8 +-
50 files changed, 210 insertions(+), 514 deletions(-)
---
base-commit: a2cc6ff5ec8f91bc463fd3b0c26b61166a07eb11
change-id: 20250403-dt-cpu-schema-48e66c7f6a90
Best regards,
--
Rob Herring (Arm) <robh@kernel.org>
^ permalink raw reply [flat|nested] 62+ messages in thread
* [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 12:39 ` Andre Przywara
2025-04-10 6:43 ` Jernej Škrabec
2025-04-04 2:59 ` [PATCH 02/19] arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names Rob Herring (Arm)
` (19 subsequent siblings)
20 siblings, 2 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
'clock-latency-ns' is not a valid property for CPU nodes. It belongs in
OPP table (which has it). Drop them from the CPU nodes.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 4 ----
arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 4 ----
2 files changed, 8 deletions(-)
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
index d3caf27b6a55..48802bf02f3b 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
@@ -16,7 +16,6 @@ cpu0: cpu@0 {
reg = <0>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
};
@@ -26,7 +25,6 @@ cpu1: cpu@1 {
reg = <1>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
};
@@ -36,7 +34,6 @@ cpu2: cpu@2 {
reg = <2>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
};
@@ -46,7 +43,6 @@ cpu3: cpu@3 {
reg = <3>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
};
};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
index 2301c59b41b1..73e8604315c5 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
@@ -27,7 +27,6 @@ cpu0: cpu@0 {
reg = <0>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -44,7 +43,6 @@ cpu1: cpu@1 {
reg = <1>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -61,7 +59,6 @@ cpu2: cpu@2 {
reg = <2>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -78,7 +75,6 @@ cpu3: cpu@3 {
reg = <3>;
enable-method = "psci";
clocks = <&ccu CLK_CPUX>;
- clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 02/19] arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-10 12:36 ` Philippe Mathieu-Daudé
2025-04-04 2:59 ` [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes Rob Herring (Arm)
` (18 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
There's no need include the CPU number in the L2 cache node names as
the names are local to the CPU nodes. The documented node name is
also just "l2-cache".
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
index 9e610a89a337..ad0cac8e4444 100644
--- a/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
+++ b/arch/arm64/boot/dts/broadcom/bcm2712.dtsi
@@ -64,7 +64,7 @@ cpu0: cpu@0 {
i-cache-sets = <256>; // 64KiB(size)/64(line-size)=1024ways/4-way set
next-level-cache = <&l2_cache_l0>;
- l2_cache_l0: l2-cache-l0 {
+ l2_cache_l0: l2-cache {
compatible = "cache";
cache-size = <0x80000>;
cache-line-size = <64>;
@@ -88,7 +88,7 @@ cpu1: cpu@1 {
i-cache-sets = <256>; // 64KiB(size)/64(line-size)=1024ways/4-way set
next-level-cache = <&l2_cache_l1>;
- l2_cache_l1: l2-cache-l1 {
+ l2_cache_l1: l2-cache {
compatible = "cache";
cache-size = <0x80000>;
cache-line-size = <64>;
@@ -112,7 +112,7 @@ cpu2: cpu@2 {
i-cache-sets = <256>; // 64KiB(size)/64(line-size)=1024ways/4-way set
next-level-cache = <&l2_cache_l2>;
- l2_cache_l2: l2-cache-l2 {
+ l2_cache_l2: l2-cache {
compatible = "cache";
cache-size = <0x80000>;
cache-line-size = <64>;
@@ -136,7 +136,7 @@ cpu3: cpu@3 {
i-cache-sets = <256>; // 64KiB(size)/64(line-size)=1024ways/4-way set
next-level-cache = <&l2_cache_l3>;
- l2_cache_l3: l2-cache-l3 {
+ l2_cache_l3: l2-cache {
compatible = "cache";
cache-size = <0x80000>;
cache-line-size = <64>;
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 02/19] arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-10 12:37 ` Philippe Mathieu-Daudé
2025-04-10 14:12 ` Sudeep Holla
2025-04-04 2:59 ` [PATCH 04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
` (17 subsequent siblings)
20 siblings, 2 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
There's no need include the CPU number in the L2 cache node names as
the names are local to the CPU nodes. The documented node name is
also just "l2-cache".
The L3 cache is not part of cpu@0/l2-cache as it is shared among all
cores. Move it to /cpus node which is the typical place for shared
caches.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/arm/morello.dtsi | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/arch/arm64/boot/dts/arm/morello.dtsi b/arch/arm64/boot/dts/arm/morello.dtsi
index 0bab0b3ea969..5bc1c725dc86 100644
--- a/arch/arm64/boot/dts/arm/morello.dtsi
+++ b/arch/arm64/boot/dts/arm/morello.dtsi
@@ -44,7 +44,7 @@ cpu0: cpu@0 {
next-level-cache = <&l2_0>;
clocks = <&scmi_dvfs 0>;
- l2_0: l2-cache-0 {
+ l2_0: l2-cache {
compatible = "cache";
cache-level = <2>;
/* 8 ways set associative */
@@ -53,13 +53,6 @@ l2_0: l2-cache-0 {
cache-sets = <2048>;
cache-unified;
next-level-cache = <&l3_0>;
-
- l3_0: l3-cache {
- compatible = "cache";
- cache-level = <3>;
- cache-size = <0x100000>;
- cache-unified;
- };
};
};
@@ -78,7 +71,7 @@ cpu1: cpu@100 {
next-level-cache = <&l2_1>;
clocks = <&scmi_dvfs 0>;
- l2_1: l2-cache-1 {
+ l2_1: l2-cache {
compatible = "cache";
cache-level = <2>;
/* 8 ways set associative */
@@ -105,7 +98,7 @@ cpu2: cpu@10000 {
next-level-cache = <&l2_2>;
clocks = <&scmi_dvfs 1>;
- l2_2: l2-cache-2 {
+ l2_2: l2-cache {
compatible = "cache";
cache-level = <2>;
/* 8 ways set associative */
@@ -132,7 +125,7 @@ cpu3: cpu@10100 {
next-level-cache = <&l2_3>;
clocks = <&scmi_dvfs 1>;
- l2_3: l2-cache-3 {
+ l2_3: l2-cache {
compatible = "cache";
cache-level = <2>;
/* 8 ways set associative */
@@ -143,6 +136,13 @@ l2_3: l2-cache-3 {
next-level-cache = <&l3_0>;
};
};
+
+ l3_0: l3-cache {
+ compatible = "cache";
+ cache-level = <3>;
+ cache-size = <0x100000>;
+ cache-unified;
+ };
};
firmware {
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (2 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 9:43 ` Daniel Machon
2025-04-04 2:59 ` [PATCH 05/19] arm64: dts: qcom: qdu1000: Fix qcom,freq-domain Rob Herring (Arm)
` (16 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "spin-table" enable-method requires "cpu-release-addr" property,
so add a dummy entry. It is assumed the bootloader will fill in the
correct values.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi b/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
index 32bb76b3202a..83bf5c81b5f7 100644
--- a/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
+++ b/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
@@ -12,10 +12,12 @@ &psci {
&cpu0 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&cpu1 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&uart0 {
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 05/19] arm64: dts: qcom: qdu1000: Fix qcom,freq-domain
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (3 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 20:28 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
` (15 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The correct property name is 'qcom,freq-domain', not
'qcom,freq-domains'.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/qcom/qdu1000.dtsi | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/qdu1000.dtsi b/arch/arm64/boot/dts/qcom/qdu1000.dtsi
index f973aa8f7477..7c8d78fd7ebf 100644
--- a/arch/arm64/boot/dts/qcom/qdu1000.dtsi
+++ b/arch/arm64/boot/dts/qcom/qdu1000.dtsi
@@ -47,7 +47,7 @@ cpu0: cpu@0 {
enable-method = "psci";
power-domains = <&cpu_pd0>;
power-domain-names = "psci";
- qcom,freq-domains = <&cpufreq_hw 0>;
+ qcom,freq-domain = <&cpufreq_hw 0>;
next-level-cache = <&l2_0>;
l2_0: l2-cache {
compatible = "cache";
@@ -70,7 +70,7 @@ cpu1: cpu@100 {
enable-method = "psci";
power-domains = <&cpu_pd1>;
power-domain-names = "psci";
- qcom,freq-domains = <&cpufreq_hw 0>;
+ qcom,freq-domain = <&cpufreq_hw 0>;
next-level-cache = <&l2_100>;
l2_100: l2-cache {
compatible = "cache";
@@ -88,7 +88,7 @@ cpu2: cpu@200 {
enable-method = "psci";
power-domains = <&cpu_pd2>;
power-domain-names = "psci";
- qcom,freq-domains = <&cpufreq_hw 0>;
+ qcom,freq-domain = <&cpufreq_hw 0>;
next-level-cache = <&l2_200>;
l2_200: l2-cache {
compatible = "cache";
@@ -106,7 +106,7 @@ cpu3: cpu@300 {
enable-method = "psci";
power-domains = <&cpu_pd3>;
power-domain-names = "psci";
- qcom,freq-domains = <&cpufreq_hw 0>;
+ qcom,freq-domain = <&cpufreq_hw 0>;
next-level-cache = <&l2_300>;
l2_300: l2-cache {
compatible = "cache";
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (4 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 05/19] arm64: dts: qcom: qdu1000: Fix qcom,freq-domain Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 12:04 ` Stephan Gerhold
2025-04-04 2:59 ` [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: " Rob Herring (Arm)
` (14 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "qcom,acc" and "qcom,saw" properties aren't valid with "spin-table"
enable-method nor are they used on 64-bit kernels, so they can be
dropped.
The "spin-table" enable-method requires "cpu-release-addr" property,
so add a dummy entry. It is assumed the bootloader will fill in the
correct values.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/qcom/msm8939.dtsi | 24 ++++++++----------------
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8939.dtsi b/arch/arm64/boot/dts/qcom/msm8939.dtsi
index 7cd5660de1b3..36f2ba3fb81c 100644
--- a/arch/arm64/boot/dts/qcom/msm8939.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8939.dtsi
@@ -46,10 +46,9 @@ cpu0: cpu@100 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x100>;
next-level-cache = <&l2_1>;
- qcom,acc = <&acc0>;
- qcom,saw = <&saw0>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs1_mbox>;
#cooling-cells = <2>;
@@ -64,10 +63,9 @@ cpu1: cpu@101 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x101>;
next-level-cache = <&l2_1>;
- qcom,acc = <&acc1>;
- qcom,saw = <&saw1>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs1_mbox>;
#cooling-cells = <2>;
@@ -77,10 +75,9 @@ cpu2: cpu@102 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x102>;
next-level-cache = <&l2_1>;
- qcom,acc = <&acc2>;
- qcom,saw = <&saw2>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs1_mbox>;
#cooling-cells = <2>;
@@ -90,10 +87,9 @@ cpu3: cpu@103 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x103>;
next-level-cache = <&l2_1>;
- qcom,acc = <&acc3>;
- qcom,saw = <&saw3>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs1_mbox>;
#cooling-cells = <2>;
@@ -103,9 +99,8 @@ cpu4: cpu@0 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x0>;
- qcom,acc = <&acc4>;
- qcom,saw = <&saw4>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs0_mbox>;
#cooling-cells = <2>;
@@ -121,10 +116,9 @@ cpu5: cpu@1 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x1>;
next-level-cache = <&l2_0>;
- qcom,acc = <&acc5>;
- qcom,saw = <&saw5>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs0_mbox>;
#cooling-cells = <2>;
@@ -134,10 +128,9 @@ cpu6: cpu@2 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x2>;
next-level-cache = <&l2_0>;
- qcom,acc = <&acc6>;
- qcom,saw = <&saw6>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs0_mbox>;
#cooling-cells = <2>;
@@ -147,10 +140,9 @@ cpu7: cpu@3 {
compatible = "arm,cortex-a53";
device_type = "cpu";
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
reg = <0x3>;
next-level-cache = <&l2_0>;
- qcom,acc = <&acc7>;
- qcom,saw = <&saw7>;
cpu-idle-states = <&cpu_sleep_0>;
clocks = <&apcs0_mbox>;
#cooling-cells = <2>;
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: Fix CPU node "enable-method" property dependencies
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (5 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 20:30 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 08/19] arm: dts: qcom: msm8916: Move "qcom,acc" and "qcom,saw" to 32-bit .dtsi Rob Herring (Arm)
` (13 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "spin-table" enable-method requires "cpu-release-addr" property,
so add a dummy entry. It is assumed the bootloader will fill in the
correct values.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/qcom/msm8992-lg-h815.dts | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/msm8992-lg-h815.dts b/arch/arm64/boot/dts/qcom/msm8992-lg-h815.dts
index 4520d5d51a29..6a231afad85d 100644
--- a/arch/arm64/boot/dts/qcom/msm8992-lg-h815.dts
+++ b/arch/arm64/boot/dts/qcom/msm8992-lg-h815.dts
@@ -93,26 +93,32 @@ key-vol-up {
&cpu0 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&cpu1 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&cpu2 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&cpu3 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&cpu4 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&cpu5 {
enable-method = "spin-table";
+ cpu-release-addr = /bits/ 64 <0>;
};
&pm8994_resin {
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 08/19] arm: dts: qcom: msm8916: Move "qcom,acc" and "qcom,saw" to 32-bit .dtsi
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (6 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: " Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names Rob Herring (Arm)
` (12 subsequent siblings)
20 siblings, 0 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "qcom,acc" and "qcom,saw" properties are only used with 32-bit
kernels. Of course, booting a 64-bit or 32-bit kernel shouldn't matter
to the DTS, but the "enable-method" is already different for 32-bit.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm/boot/dts/qcom/qcom-msm8916-smp.dtsi | 8 ++++++++
arch/arm64/boot/dts/qcom/msm8916.dtsi | 8 --------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/arch/arm/boot/dts/qcom/qcom-msm8916-smp.dtsi b/arch/arm/boot/dts/qcom/qcom-msm8916-smp.dtsi
index 94b7694eeeff..594cc4a3a78b 100644
--- a/arch/arm/boot/dts/qcom/qcom-msm8916-smp.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-msm8916-smp.dtsi
@@ -4,15 +4,23 @@ / {
cpus {
cpu@0 {
enable-method = "qcom,msm8916-smp";
+ qcom,acc = <&cpu0_acc>;
+ qcom,saw = <&cpu0_saw>;
};
cpu@1 {
enable-method = "qcom,msm8916-smp";
+ qcom,acc = <&cpu1_acc>;
+ qcom,saw = <&cpu1_saw>;
};
cpu@2 {
enable-method = "qcom,msm8916-smp";
+ qcom,acc = <&cpu2_acc>;
+ qcom,saw = <&cpu2_saw>;
};
cpu@3 {
enable-method = "qcom,msm8916-smp";
+ qcom,acc = <&cpu3_acc>;
+ qcom,saw = <&cpu3_saw>;
};
idle-states {
diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index 8f35c9af1878..88e452752de6 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -144,8 +144,6 @@ cpu0: cpu@0 {
#cooling-cells = <2>;
power-domains = <&cpu_pd0>;
power-domain-names = "psci";
- qcom,acc = <&cpu0_acc>;
- qcom,saw = <&cpu0_saw>;
};
cpu1: cpu@1 {
@@ -159,8 +157,6 @@ cpu1: cpu@1 {
#cooling-cells = <2>;
power-domains = <&cpu_pd1>;
power-domain-names = "psci";
- qcom,acc = <&cpu1_acc>;
- qcom,saw = <&cpu1_saw>;
};
cpu2: cpu@2 {
@@ -174,8 +170,6 @@ cpu2: cpu@2 {
#cooling-cells = <2>;
power-domains = <&cpu_pd2>;
power-domain-names = "psci";
- qcom,acc = <&cpu2_acc>;
- qcom,saw = <&cpu2_saw>;
};
cpu3: cpu@3 {
@@ -189,8 +183,6 @@ cpu3: cpu@3 {
#cooling-cells = <2>;
power-domains = <&cpu_pd3>;
power-domain-names = "psci";
- qcom,acc = <&cpu3_acc>;
- qcom,saw = <&cpu3_saw>;
};
l2_0: l2-cache {
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (7 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 08/19] arm: dts: qcom: msm8916: Move "qcom,acc" and "qcom,saw" to 32-bit .dtsi Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 10:30 ` Ulf Hansson
2025-04-04 20:41 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 10/19] arm/arm64: dts: imx: Drop redundant CPU "clock-latency" Rob Herring (Arm)
` (11 subsequent siblings)
20 siblings, 2 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
"rpmhpd" is not documented nor used anywhere. As the enable-method is
"psci" use "psci" for the power-domain name.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm/boot/dts/qcom/qcom-sdx55.dtsi | 2 +-
arch/arm/boot/dts/qcom/qcom-sdx65.dtsi | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi b/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
index 39530eb580ea..64d9858b4248 100644
--- a/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
@@ -57,7 +57,7 @@ cpu0: cpu@0 {
enable-method = "psci";
clocks = <&apcs>;
power-domains = <&rpmhpd SDX55_CX>;
- power-domain-names = "rpmhpd";
+ power-domain-names = "psci";
operating-points-v2 = <&cpu_opp_table>;
};
};
diff --git a/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi b/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi
index 6b23ee676c9e..bfd04e53c5a8 100644
--- a/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi
@@ -58,7 +58,7 @@ cpu0: cpu@0 {
enable-method = "psci";
clocks = <&apcs>;
power-domains = <&rpmhpd SDX65_CX_AO>;
- power-domain-names = "rpmhpd";
+ power-domain-names = "psci";
operating-points-v2 = <&cpu_opp_table>;
};
};
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 10/19] arm/arm64: dts: imx: Drop redundant CPU "clock-latency"
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (8 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-23 9:39 ` Shawn Guo
2025-04-04 2:59 ` [PATCH 11/19] arm: dts: qcom: ipq4019: " Rob Herring (Arm)
` (10 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "clock-latency" property is part of the deprecated opp-v1 binding
and is redundant if the opp-v2 table has equal or larger values in any
"clock-latency-ns". The OPP tables have values of 150000, so it can be
removed.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm/boot/dts/nxp/imx/imx7s.dtsi | 1 -
arch/arm64/boot/dts/freescale/imx8mm.dtsi | 4 ----
arch/arm64/boot/dts/freescale/imx8mn.dtsi | 4 ----
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 4 ----
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 4 ----
5 files changed, 17 deletions(-)
diff --git a/arch/arm/boot/dts/nxp/imx/imx7s.dtsi b/arch/arm/boot/dts/nxp/imx/imx7s.dtsi
index 2629968001a7..9235dd7e93bb 100644
--- a/arch/arm/boot/dts/nxp/imx/imx7s.dtsi
+++ b/arch/arm/boot/dts/nxp/imx/imx7s.dtsi
@@ -73,7 +73,6 @@ cpu0: cpu@0 {
device_type = "cpu";
reg = <0>;
clock-frequency = <792000000>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clks IMX7D_CLK_ARM>;
cpu-idle-states = <&cpu_sleep_wait>;
operating-points-v2 = <&cpu0_opp_table>;
diff --git a/arch/arm64/boot/dts/freescale/imx8mm.dtsi b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
index 4de3bf22902b..cfebaa01217e 100644
--- a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
@@ -62,7 +62,6 @@ A53_0: cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x0>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MM_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -83,7 +82,6 @@ A53_1: cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x1>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MM_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -102,7 +100,6 @@ A53_2: cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x2>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MM_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -121,7 +118,6 @@ A53_3: cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x3>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MM_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
diff --git a/arch/arm64/boot/dts/freescale/imx8mn.dtsi b/arch/arm64/boot/dts/freescale/imx8mn.dtsi
index a5f9cfb46e5d..848ba5e46ee6 100644
--- a/arch/arm64/boot/dts/freescale/imx8mn.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mn.dtsi
@@ -62,7 +62,6 @@ A53_0: cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x0>;
- clock-latency = <61036>;
clocks = <&clk IMX8MN_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -83,7 +82,6 @@ A53_1: cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x1>;
- clock-latency = <61036>;
clocks = <&clk IMX8MN_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -102,7 +100,6 @@ A53_2: cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x2>;
- clock-latency = <61036>;
clocks = <&clk IMX8MN_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -121,7 +118,6 @@ A53_3: cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x3>;
- clock-latency = <61036>;
clocks = <&clk IMX8MN_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index ce6793b2d57e..f8afdba71c36 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -65,7 +65,6 @@ A53_0: cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x0>;
- clock-latency = <61036>;
clocks = <&clk IMX8MP_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -86,7 +85,6 @@ A53_1: cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x1>;
- clock-latency = <61036>;
clocks = <&clk IMX8MP_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -105,7 +103,6 @@ A53_2: cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x2>;
- clock-latency = <61036>;
clocks = <&clk IMX8MP_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -124,7 +121,6 @@ A53_3: cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x3>;
- clock-latency = <61036>;
clocks = <&clk IMX8MP_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
diff --git a/arch/arm64/boot/dts/freescale/imx8mq.dtsi b/arch/arm64/boot/dts/freescale/imx8mq.dtsi
index d51de8d899b2..d27b824995eb 100644
--- a/arch/arm64/boot/dts/freescale/imx8mq.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mq.dtsi
@@ -106,7 +106,6 @@ A53_0: cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x0>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MQ_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -126,7 +125,6 @@ A53_1: cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x1>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MQ_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -144,7 +142,6 @@ A53_2: cpu@2 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x2>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MQ_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
@@ -162,7 +159,6 @@ A53_3: cpu@3 {
device_type = "cpu";
compatible = "arm,cortex-a53";
reg = <0x3>;
- clock-latency = <61036>; /* two CLK32 periods */
clocks = <&clk IMX8MQ_CLK_ARM>;
enable-method = "psci";
i-cache-size = <0x8000>;
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 11/19] arm: dts: qcom: ipq4019: Drop redundant CPU "clock-latency"
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (9 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 10/19] arm/arm64: dts: imx: Drop redundant CPU "clock-latency" Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 20:42 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 12/19] arm: dts: rockchip: " Rob Herring (Arm)
` (9 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "clock-latency" property is part of the deprecated opp-v1 binding
and is redundant if the opp-v2 table has equal or larger values in any
"clock-latency-ns". The OPP table has values of 256000, so it can be
removed.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi | 4 ----
1 file changed, 4 deletions(-)
diff --git a/arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi b/arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi
index 06b20c196faf..fceb2f5f5482 100644
--- a/arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi
+++ b/arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi
@@ -53,7 +53,6 @@ cpu@0 {
reg = <0x0>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
- clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
@@ -67,7 +66,6 @@ cpu@1 {
reg = <0x1>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
- clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
@@ -81,7 +79,6 @@ cpu@2 {
reg = <0x2>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
- clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
@@ -95,7 +92,6 @@ cpu@3 {
reg = <0x3>;
clocks = <&gcc GCC_APPS_CLK_SRC>;
clock-frequency = <0>;
- clock-latency = <256000>;
operating-points-v2 = <&cpu0_opp_table>;
};
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 12/19] arm: dts: rockchip: Drop redundant CPU "clock-latency"
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (10 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 11/19] arm: dts: qcom: ipq4019: " Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 13/19] arm64: dts: amlogic: " Rob Herring (Arm)
` (8 subsequent siblings)
20 siblings, 0 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "clock-latency" property is part of the deprecated opp-v1 binding
and is redundant if the opp-v2 table has equal or larger values in any
"clock-latency-ns". Add any missing "clock-latency-ns" properties and
remove "clock-latency".
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm/boot/dts/rockchip/rk3128.dtsi | 8 +++++++-
arch/arm/boot/dts/rockchip/rk3188.dtsi | 1 -
arch/arm/boot/dts/rockchip/rk322x.dtsi | 1 -
arch/arm/boot/dts/rockchip/rk3288.dtsi | 5 +----
arch/arm/boot/dts/rockchip/rv1108.dtsi | 1 -
5 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/arch/arm/boot/dts/rockchip/rk3128.dtsi b/arch/arm/boot/dts/rockchip/rk3128.dtsi
index d4572146d135..c49099954c28 100644
--- a/arch/arm/boot/dts/rockchip/rk3128.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk3128.dtsi
@@ -48,7 +48,6 @@ cpu0: cpu@f00 {
device_type = "cpu";
compatible = "arm,cortex-a7";
reg = <0xf00>;
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
resets = <&cru SRST_CORE0>;
operating-points-v2 = <&cpu_opp_table>;
@@ -87,31 +86,38 @@ cpu_opp_table: opp-table-0 {
opp-216000000 {
opp-hz = /bits/ 64 <216000000>;
opp-microvolt = <950000 950000 1325000>;
+ clock-latency-ns = <40000>;
};
opp-408000000 {
opp-hz = /bits/ 64 <408000000>;
opp-microvolt = <950000 950000 1325000>;
+ clock-latency-ns = <40000>;
};
opp-600000000 {
opp-hz = /bits/ 64 <600000000>;
opp-microvolt = <950000 950000 1325000>;
+ clock-latency-ns = <40000>;
};
opp-696000000 {
opp-hz = /bits/ 64 <696000000>;
opp-microvolt = <975000 975000 1325000>;
+ clock-latency-ns = <40000>;
};
opp-816000000 {
opp-hz = /bits/ 64 <816000000>;
opp-microvolt = <1075000 1075000 1325000>;
opp-suspend;
+ clock-latency-ns = <40000>;
};
opp-1008000000 {
opp-hz = /bits/ 64 <1008000000>;
opp-microvolt = <1200000 1200000 1325000>;
+ clock-latency-ns = <40000>;
};
opp-1200000000 {
opp-hz = /bits/ 64 <1200000000>;
opp-microvolt = <1325000 1325000 1325000>;
+ clock-latency-ns = <40000>;
};
};
diff --git a/arch/arm/boot/dts/rockchip/rk3188.dtsi b/arch/arm/boot/dts/rockchip/rk3188.dtsi
index 44b54af0bbf9..850bd6e67895 100644
--- a/arch/arm/boot/dts/rockchip/rk3188.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk3188.dtsi
@@ -23,7 +23,6 @@ cpu0: cpu@0 {
compatible = "arm,cortex-a9";
next-level-cache = <&L2>;
reg = <0x0>;
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
operating-points-v2 = <&cpu0_opp_table>;
resets = <&cru SRST_CORE0>;
diff --git a/arch/arm/boot/dts/rockchip/rk322x.dtsi b/arch/arm/boot/dts/rockchip/rk322x.dtsi
index 96421355c274..cd11a018105b 100644
--- a/arch/arm/boot/dts/rockchip/rk322x.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk322x.dtsi
@@ -36,7 +36,6 @@ cpu0: cpu@f00 {
resets = <&cru SRST_CORE0>;
operating-points-v2 = <&cpu0_opp_table>;
#cooling-cells = <2>; /* min followed by max */
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
enable-method = "psci";
};
diff --git a/arch/arm/boot/dts/rockchip/rk3288.dtsi b/arch/arm/boot/dts/rockchip/rk3288.dtsi
index 3f1d640afafa..42d705b544ec 100644
--- a/arch/arm/boot/dts/rockchip/rk3288.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk3288.dtsi
@@ -70,7 +70,6 @@ cpu0: cpu@500 {
resets = <&cru SRST_CORE0>;
operating-points-v2 = <&cpu_opp_table>;
#cooling-cells = <2>; /* min followed by max */
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
dynamic-power-coefficient = <370>;
};
@@ -81,7 +80,6 @@ cpu1: cpu@501 {
resets = <&cru SRST_CORE1>;
operating-points-v2 = <&cpu_opp_table>;
#cooling-cells = <2>; /* min followed by max */
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
dynamic-power-coefficient = <370>;
};
@@ -92,7 +90,6 @@ cpu2: cpu@502 {
resets = <&cru SRST_CORE2>;
operating-points-v2 = <&cpu_opp_table>;
#cooling-cells = <2>; /* min followed by max */
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
dynamic-power-coefficient = <370>;
};
@@ -103,7 +100,6 @@ cpu3: cpu@503 {
resets = <&cru SRST_CORE3>;
operating-points-v2 = <&cpu_opp_table>;
#cooling-cells = <2>; /* min followed by max */
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
dynamic-power-coefficient = <370>;
};
@@ -116,6 +112,7 @@ cpu_opp_table: opp-table-0 {
opp-126000000 {
opp-hz = /bits/ 64 <126000000>;
opp-microvolt = <900000>;
+ clock-latency-ns = <40000>;
};
opp-216000000 {
opp-hz = /bits/ 64 <216000000>;
diff --git a/arch/arm/boot/dts/rockchip/rv1108.dtsi b/arch/arm/boot/dts/rockchip/rv1108.dtsi
index f3291f3bbc6f..42a4d72597a5 100644
--- a/arch/arm/boot/dts/rockchip/rv1108.dtsi
+++ b/arch/arm/boot/dts/rockchip/rv1108.dtsi
@@ -32,7 +32,6 @@ cpu0: cpu@f00 {
device_type = "cpu";
compatible = "arm,cortex-a7";
reg = <0xf00>;
- clock-latency = <40000>;
clocks = <&cru ARMCLK>;
#cooling-cells = <2>; /* min followed by max */
dynamic-power-coefficient = <75>;
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 13/19] arm64: dts: amlogic: Drop redundant CPU "clock-latency"
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (11 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 12/19] arm: dts: rockchip: " Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 7:11 ` Neil Armstrong
2025-04-04 2:59 ` [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies Rob Herring (Arm)
` (7 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "clock-latency" property is part of the deprecated opp-v1 binding
and is redundant if the opp-v2 table has equal or larger values in any
"clock-latency-ns". Add any missing "clock-latency-ns" properties and
remove "clock-latency".
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-g12a.dtsi | 1 +
arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi | 2 ++
arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts | 6 ------
arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi | 2 ++
arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi | 6 ------
arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 4 ----
arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi | 4 ----
arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi | 4 ----
arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts | 4 ----
arch/arm64/boot/dts/amlogic/meson-sm1.dtsi | 1 +
23 files changed, 6 insertions(+), 92 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts
index 9aa36f17ffa2..d0a3b4b9229c 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts
@@ -267,28 +267,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
ðmac {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
index 952b8d02e5c2..4353485c6f26 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
@@ -220,28 +220,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cvbs_vdac_port {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts
index 52fbc5103e45..f39fcabc763f 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts
@@ -314,28 +314,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cvbs_vdac_port {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts
index 5407049d2647..b5bf8ecc91e6 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts
@@ -407,28 +407,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&clkc_audio {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
index 01da83658ae3..5ab460a3e637 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
@@ -263,28 +263,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cvbs_vdac_port {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
index 543e70669df5..deee61dbe074 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
@@ -62,6 +62,7 @@ cpu_opp_table: opp-table {
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
+ clock-latency-ns = <50000>;
};
opp-1200000000 {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts
index adedc1340c78..415248931ab1 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts
@@ -76,42 +76,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&pwm_ab {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
index 8e9ad1e51d66..8ecb5bd125c1 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
@@ -14,6 +14,7 @@ cpu_opp_table_0: opp-table-0 {
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <761000>;
+ clock-latency-ns = <50000>;
};
opp-1200000000 {
@@ -54,6 +55,7 @@ cpub_opp_table_1: opp-table-1 {
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
+ clock-latency-ns = <50000>;
};
opp-1200000000 {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi
index 92e8b26ecccc..39011b645128 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi
@@ -155,42 +155,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&ext_mdio {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi
index 54663c55a20e..1b08303c4282 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi
@@ -263,42 +263,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
ðmac {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
index 48650bad230d..fc737499f207 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
@@ -51,42 +51,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&pwm_ab {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
index e21831dfceee..d5938a4a6da3 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
@@ -281,42 +281,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
/* RK817 only supports 12.5mV steps, round up the values */
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi
index 7e8964bacfce..3298d59833b6 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi
@@ -227,42 +227,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu_thermal {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts
index fc05ecf90714..1e5c6f984945 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts
@@ -259,42 +259,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu_thermal {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
index 44c23c984034..19cad93a6889 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
@@ -14,6 +14,7 @@ cpu_opp_table_0: opp-table-0 {
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <731000>;
+ clock-latency-ns = <50000>;
};
opp-1200000000 {
@@ -59,6 +60,7 @@ cpub_opp_table_1: opp-table-1 {
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <771000>;
+ clock-latency-ns = <50000>;
};
opp-1200000000 {
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
index a7a0fc264cdc..9b6d780eada7 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
@@ -213,42 +213,36 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table_0>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu100 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu101 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu102 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cpu103 {
cpu-supply = <&vddcpu_a>;
operating-points-v2 = <&cpub_opp_table_1>;
clocks = <&clkc CLKID_CPUB_CLK>;
- clock-latency = <50000>;
};
&cvbs_vdac_port {
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
index a3463149db3d..9be3084b090d 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
@@ -147,28 +147,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU1_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU2_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU3_CLK>;
- clock-latency = <50000>;
};
&cvbs_vdac_port {
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi
index 40db95f64636..538b35036954 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi
@@ -185,28 +185,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU1_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU2_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU3_CLK>;
- clock-latency = <50000>;
};
&ext_mdio {
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
index 5d75ad3f3e46..a3d9b66b6878 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
@@ -51,28 +51,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU1_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU2_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU3_CLK>;
- clock-latency = <50000>;
};
&pwm_AO_cd {
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
index ad8d07883760..c4524eb4f099 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
@@ -250,28 +250,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU1_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU2_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU3_CLK>;
- clock-latency = <50000>;
};
&ext_mdio {
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts
index 537370db360f..5daadfb170b4 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts
@@ -64,26 +64,22 @@ &cpu0 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU1_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU2_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu_b>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU3_CLK>;
- clock-latency = <50000>;
};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts
index 37d7f64b6d5d..024d2eb8e6ee 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts
@@ -359,28 +359,24 @@ &cpu0 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU_CLK>;
- clock-latency = <50000>;
};
&cpu1 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU1_CLK>;
- clock-latency = <50000>;
};
&cpu2 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU2_CLK>;
- clock-latency = <50000>;
};
&cpu3 {
cpu-supply = <&vddcpu>;
operating-points-v2 = <&cpu_opp_table>;
clocks = <&clkc CLKID_CPU3_CLK>;
- clock-latency = <50000>;
};
ðmac {
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi
index 97e4b52066dc..966ebb19cc55 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi
@@ -100,6 +100,7 @@ cpu_opp_table: opp-table {
opp-1000000000 {
opp-hz = /bits/ 64 <1000000000>;
opp-microvolt = <770000>;
+ clock-latency-ns = <50000>;
};
opp-1200000000 {
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (12 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 13/19] arm64: dts: amlogic: " Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 14:56 ` Rob Herring (Arm)
2025-04-07 12:28 ` Sudeep Holla
2025-04-04 2:59 ` [PATCH 15/19] dt-bindings: arm/cpus: Re-wrap 'description' entries Rob Herring (Arm)
` (6 subsequent siblings)
20 siblings, 2 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Replace the prose for properties dependent on specific "enable-method"
values with schemas defining the same requirements.
Both "qcom,acc" and "qcom,saw" properties appear to be required for any
of the Qualcomm enable-method values, so the schema is a bit simpler
than what the text said. The references to arm/msm/qcom,saw2.txt and
arm/msm/qcom,kpss-acc.txt are out of date, so just drop them.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/arm/cpus.yaml | 82 +++++++++++++++----------
1 file changed, 49 insertions(+), 33 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index 2e666b2a4dcd..963a9320cba8 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -273,8 +273,6 @@ properties:
description:
The DT specification defines this as 64-bit always, but some 32-bit Arm
systems have used a 32-bit value which must be supported.
- Required for systems that have an "enable-method"
- property value of "spin-table".
cpu-idle-states:
$ref: /schemas/types.yaml#/definitions/phandle-array
@@ -333,24 +331,13 @@ properties:
qcom,saw:
$ref: /schemas/types.yaml#/definitions/phandle
- description: |
- Specifies the SAW* node associated with this CPU.
-
- Required for systems that have an "enable-method" property
- value of "qcom,kpss-acc-v1" or "qcom,kpss-acc-v2"
-
- * arm/msm/qcom,saw2.txt
+ description:
+ Specifies the SAW node associated with this CPU.
qcom,acc:
$ref: /schemas/types.yaml#/definitions/phandle
- description: |
- Specifies the ACC* node associated with this CPU.
-
- Required for systems that have an "enable-method" property
- value of "qcom,kpss-acc-v1", "qcom,kpss-acc-v2", "qcom,msm8226-smp" or
- "qcom,msm8916-smp".
-
- * arm/msm/qcom,kpss-acc.txt
+ description:
+ Specifies the ACC node associated with this CPU.
rockchip,pmu:
$ref: /schemas/types.yaml#/definitions/phandle
@@ -378,22 +365,51 @@ properties:
formed by encoding the target CPU id into the low bits of the
physical start address it should jump to.
-if:
- # If the enable-method property contains one of those values
- properties:
- enable-method:
- contains:
- enum:
- - brcm,bcm11351-cpu-method
- - brcm,bcm23550
- - brcm,bcm-nsp-smp
- # and if enable-method is present
- required:
- - enable-method
-
-then:
- required:
- - secondary-boot-reg
+allOf:
+ - if:
+ # If the enable-method property contains one of those values
+ properties:
+ enable-method:
+ contains:
+ enum:
+ - brcm,bcm11351-cpu-method
+ - brcm,bcm23550
+ - brcm,bcm-nsp-smp
+ # and if enable-method is present
+ required:
+ - enable-method
+ then:
+ required:
+ - secondary-boot-reg
+ - if:
+ properties:
+ enable-method:
+ enum:
+ - spin-table
+ - renesas,r9a06g032-smp
+ required:
+ - enable-method
+ then:
+ required:
+ - cpu-release-addr
+ - if:
+ properties:
+ enable-method:
+ enum:
+ - qcom,kpss-acc-v1
+ - qcom,kpss-acc-v2
+ - qcom,msm8226-smp
+ - qcom,msm8916-smp
+ required:
+ - enable-method
+ then:
+ required:
+ - qcom,acc
+ - qcom,saw
+ else:
+ properties:
+ qcom,acc: false
+ qcom,saw: false
required:
- device_type
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 15/19] dt-bindings: arm/cpus: Re-wrap 'description' entries
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (13 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 16/19] dt-bindings: Reference opp-v1 schema in CPU schemas Rob Herring (Arm)
` (5 subsequent siblings)
20 siblings, 0 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Some of the 'description' entries have odd line wrapping and incorrect
YAML block modifiers. The 'description' entries should typically wrap
at 80 chars. Reformat the entries to follow that along with using '>'
modifiers as appropriate.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/arm/cpus.yaml | 85 +++++++++++--------------
1 file changed, 36 insertions(+), 49 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index 963a9320cba8..3e76de3e950d 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -10,9 +10,9 @@ maintainers:
- Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
description: |+
- The device tree allows to describe the layout of CPUs in a system through
- the "cpus" node, which in turn contains a number of subnodes (ie "cpu")
- defining properties for every cpu.
+ The device tree allows to describe the layout of CPUs in a system through the
+ "cpus" node, which in turn contains a number of subnodes (ie "cpu") defining
+ properties for every cpu.
Bindings for CPU nodes follow the Devicetree Specification, available from:
@@ -41,45 +41,40 @@ description: |+
properties:
reg:
maxItems: 1
- description: |
- Usage and definition depend on ARM architecture version and
- configuration:
+ description: >
+ Usage and definition depend on ARM architecture version and configuration:
- On uniprocessor ARM architectures previous to v7
- this property is required and must be set to 0.
+ On uniprocessor ARM architectures previous to v7 this property is required
+ and must be set to 0.
- On ARM 11 MPcore based systems this property is
- required and matches the CPUID[11:0] register bits.
+ On ARM 11 MPcore based systems this property is required and matches the
+ CPUID[11:0] register bits.
- Bits [11:0] in the reg cell must be set to
- bits [11:0] in CPU ID register.
+ Bits [11:0] in the reg cell must be set to bits [11:0] in CPU ID register.
All other bits in the reg cell must be set to 0.
- On 32-bit ARM v7 or later systems this property is
- required and matches the CPU MPIDR[23:0] register
- bits.
+ On 32-bit ARM v7 or later systems this property is required and matches
+ the CPU MPIDR[23:0] register bits.
- Bits [23:0] in the reg cell must be set to
- bits [23:0] in MPIDR.
+ Bits [23:0] in the reg cell must be set to bits [23:0] in MPIDR.
All other bits in the reg cell must be set to 0.
- On ARM v8 64-bit systems this property is required
- and matches the MPIDR_EL1 register affinity bits.
+ On ARM v8 64-bit systems this property is required and matches the
+ MPIDR_EL1 register affinity bits.
* If cpus node's #address-cells property is set to 2
- The first reg cell bits [7:0] must be set to
- bits [39:32] of MPIDR_EL1.
+ The first reg cell bits [7:0] must be set to bits [39:32] of
+ MPIDR_EL1.
- The second reg cell bits [23:0] must be set to
- bits [23:0] of MPIDR_EL1.
+ The second reg cell bits [23:0] must be set to bits [23:0] of
+ MPIDR_EL1.
* If cpus node's #address-cells property is set to 1
- The reg cell bits [23:0] must be set to bits [23:0]
- of MPIDR_EL1.
+ The reg cell bits [23:0] must be set to bits [23:0] of MPIDR_EL1.
All other bits in the reg cells must be set to 0.
@@ -278,29 +273,26 @@ properties:
$ref: /schemas/types.yaml#/definitions/phandle-array
items:
maxItems: 1
- description: |
- List of phandles to idle state nodes supported
- by this cpu (see ./idle-states.yaml).
+ description:
+ List of phandles to idle state nodes supported by this cpu (see
+ ./idle-states.yaml).
capacity-dmips-mhz:
description:
u32 value representing CPU capacity (see ../cpu/cpu-capacity.txt) in
- DMIPS/MHz, relative to highest capacity-dmips-mhz
- in the system.
+ DMIPS/MHz, relative to highest capacity-dmips-mhz in the system.
cci-control-port: true
dynamic-power-coefficient:
$ref: /schemas/types.yaml#/definitions/uint32
- description:
- A u32 value that represents the running time dynamic
- power coefficient in units of uW/MHz/V^2. The
- coefficient can either be calculated from power
+ description: >
+ A u32 value that represents the running time dynamic power coefficient in
+ units of uW/MHz/V^2. The coefficient can either be calculated from power
measurements or derived by analysis.
- The dynamic power consumption of the CPU is
- proportional to the square of the Voltage (V) and
- the clock frequency (f). The coefficient is used to
+ The dynamic power consumption of the CPU is proportional to the square of
+ the Voltage (V) and the clock frequency (f). The coefficient is used to
calculate the dynamic power as below -
Pdyn = dynamic-power-coefficient * V^2 * f
@@ -309,10 +301,6 @@ properties:
performance-domains:
maxItems: 1
- description:
- List of phandles and performance domain specifiers, as defined by
- bindings of the performance domain provider. See also
- dvfs/performance-domain.yaml.
power-domains:
description:
@@ -341,22 +329,21 @@ properties:
rockchip,pmu:
$ref: /schemas/types.yaml#/definitions/phandle
- description: |
+ description: >
Specifies the syscon node controlling the cpu core power domains.
- Optional for systems that have an "enable-method"
- property value of "rockchip,rk3066-smp"
- While optional, it is the preferred way to get access to
- the cpu-core power-domains.
+ Optional for systems that have an "enable-method" property value of
+ "rockchip,rk3066-smp". While optional, it is the preferred way to get
+ access to the cpu-core power-domains.
secondary-boot-reg:
$ref: /schemas/types.yaml#/definitions/uint32
- description: |
+ description: >
Required for systems that have an "enable-method" property value of
"brcm,bcm11351-cpu-method", "brcm,bcm23550" or "brcm,bcm-nsp-smp".
- This includes the following SoCs: |
- BCM11130, BCM11140, BCM11351, BCM28145, BCM28155, BCM21664, BCM23550
+ This includes the following SoCs:
+ BCM11130, BCM11140, BCM11351, BCM28145, BCM28155, BCM21664, BCM23550,
BCM58522, BCM58525, BCM58535, BCM58622, BCM58623, BCM58625, BCM88312
The secondary-boot-reg property is a u32 value that specifies the
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 16/19] dt-bindings: Reference opp-v1 schema in CPU schemas
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (14 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 15/19] dt-bindings: arm/cpus: Re-wrap 'description' entries Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 11:32 ` AngeloGioacchino Del Regno
2025-04-04 2:59 ` [PATCH 17/19] dt-bindings: arm/cpus: Add missing properties Rob Herring (Arm)
` (4 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The opp-v1 binding is only used in MIPS and arm32 CPU nodes, so add a
$ref to it in the CPU schemas and drop the "select".
As opp-v1 has long been deprecated, mark it as such.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/arm/cpus.yaml | 1 +
Documentation/devicetree/bindings/mips/cpus.yaml | 3 ++-
Documentation/devicetree/bindings/opp/opp-v1.yaml | 2 +-
3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index 3e76de3e950d..3d2b6286efb8 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -353,6 +353,7 @@ properties:
physical start address it should jump to.
allOf:
+ - $ref: /schemas/opp/opp-v1.yaml#
- if:
# If the enable-method property contains one of those values
properties:
diff --git a/Documentation/devicetree/bindings/mips/cpus.yaml b/Documentation/devicetree/bindings/mips/cpus.yaml
index a85137add668..471373ad0cfb 100644
--- a/Documentation/devicetree/bindings/mips/cpus.yaml
+++ b/Documentation/devicetree/bindings/mips/cpus.yaml
@@ -50,6 +50,7 @@ properties:
device_type: true
allOf:
+ - $ref: /schemas/opp/opp-v1.yaml#
- if:
properties:
compatible:
@@ -68,7 +69,7 @@ required:
- compatible
- reg
-additionalProperties: false
+unevaluatedProperties: false
examples:
- |
diff --git a/Documentation/devicetree/bindings/opp/opp-v1.yaml b/Documentation/devicetree/bindings/opp/opp-v1.yaml
index 07e26c267815..1b59b103dab6 100644
--- a/Documentation/devicetree/bindings/opp/opp-v1.yaml
+++ b/Documentation/devicetree/bindings/opp/opp-v1.yaml
@@ -18,7 +18,7 @@ description: |+
This binding only supports voltage-frequency pairs.
-select: true
+deprecated: true
properties:
operating-points:
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 17/19] dt-bindings: arm/cpus: Add missing properties
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (15 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 16/19] dt-bindings: Reference opp-v1 schema in CPU schemas Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 11:32 ` AngeloGioacchino Del Regno
2025-04-04 2:59 ` [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints Rob Herring (Arm)
` (3 subsequent siblings)
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The Arm CPU schema is missing a number of properties already in use.
This has gone unnoticed as extra properties have not been restricted.
Add a missing reference to cpu.yaml, and add all the missing properties.
As "clock-latency" and "voltage-tolerance" are related to opp-v1, add
those properties to the opp-v1.yaml schema.
With this, other properties can be prevented from creeping in with
'unevaluatedProperties: false'.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/arm/cpus.yaml | 46 ++++++++++++++++++++++-
Documentation/devicetree/bindings/opp/opp-v1.yaml | 16 ++++++++
2 files changed, 61 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index 3d2b6286efb8..6f74ebfd38df 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -299,6 +299,16 @@ properties:
where voltage is in V, frequency is in MHz.
+ interconnects:
+ minItems: 1
+ maxItems: 2
+
+ nvmem-cells:
+ maxItems: 1
+
+ nvmem-cell-names:
+ const: speed_grade
+
performance-domains:
maxItems: 1
@@ -317,6 +327,31 @@ properties:
corresponding to the index of an SCMI performance domain provider, must be
"perf".
+ resets:
+ maxItems: 1
+
+ arm-supply:
+ deprecated: true
+ description: Use 'cpu-supply' instead
+
+ cpu0-supply:
+ deprecated: true
+ description: Use 'cpu-supply' instead
+
+ mem-supply: true
+
+ proc-supply:
+ deprecated: true
+ description: Use 'cpu-supply' instead
+
+ sram-supply:
+ deprecated: true
+ description: Use 'mem-supply' instead
+
+ mediatek,cci:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description: Link to Mediatek Cache Coherent Interconnect
+
qcom,saw:
$ref: /schemas/types.yaml#/definitions/phandle
description:
@@ -327,6 +362,11 @@ properties:
description:
Specifies the ACC node associated with this CPU.
+ qcom,freq-domain:
+ description: Specifies the QCom CPUFREQ HW associated with the CPU.
+ $ref: /schemas/types.yaml#/definitions/phandle-array
+ maxItems: 1
+
rockchip,pmu:
$ref: /schemas/types.yaml#/definitions/phandle
description: >
@@ -352,7 +392,11 @@ properties:
formed by encoding the target CPU id into the low bits of the
physical start address it should jump to.
+ thermal-idle:
+ type: object
+
allOf:
+ - $ref: /schemas/cpu.yaml#
- $ref: /schemas/opp/opp-v1.yaml#
- if:
# If the enable-method property contains one of those values
@@ -407,7 +451,7 @@ required:
dependencies:
rockchip,pmu: [enable-method]
-additionalProperties: true
+unevaluatedProperties: false
examples:
- |
diff --git a/Documentation/devicetree/bindings/opp/opp-v1.yaml b/Documentation/devicetree/bindings/opp/opp-v1.yaml
index 1b59b103dab6..61c080e50859 100644
--- a/Documentation/devicetree/bindings/opp/opp-v1.yaml
+++ b/Documentation/devicetree/bindings/opp/opp-v1.yaml
@@ -21,6 +21,18 @@ description: |+
deprecated: true
properties:
+ clock-latency:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ description:
+ The latency in nanoseconds for clock changes. Use OPP tables for new
+ designs instead.
+
+ voltage-tolerance:
+ $ref: /schemas/types.yaml#/definitions/uint32
+ maximum: 10
+ description:
+ The voltage tolerance in percent. Use OPP tables for new designs instead.
+
operating-points:
$ref: /schemas/types.yaml#/definitions/uint32-matrix
items:
@@ -28,8 +40,12 @@ properties:
- description: Frequency in kHz
- description: Voltage for OPP in uV
+dependencies:
+ clock-latency: [ operating-points ]
+ voltage-tolerance: [ operating-points ]
additionalProperties: true
+
examples:
- |
cpus {
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (16 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 17/19] dt-bindings: arm/cpus: Add missing properties Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 10:36 ` Ulf Hansson
2025-04-04 11:35 ` AngeloGioacchino Del Regno
2025-04-04 2:59 ` [PATCH 19/19] dt-bindings: cpufreq: Drop redundant Mediatek binding Rob Herring (Arm)
` (2 subsequent siblings)
20 siblings, 2 replies; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The "power-domains" and "power-domains-names" properties are missing any
constraints. Add the constraints and drop the generic descriptions.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
index 6f74ebfd38df..5bd5822db8af 100644
--- a/Documentation/devicetree/bindings/arm/cpus.yaml
+++ b/Documentation/devicetree/bindings/arm/cpus.yaml
@@ -313,19 +313,15 @@ properties:
maxItems: 1
power-domains:
- description:
- List of phandles and PM domain specifiers, as defined by bindings of the
- PM domain provider (see also ../power_domain.txt).
+ maxItems: 1
power-domain-names:
description:
- A list of power domain name strings sorted in the same order as the
- power-domains property.
-
For PSCI based platforms, the name corresponding to the index of the PSCI
PM domain provider, must be "psci". For SCMI based platforms, the name
corresponding to the index of an SCMI performance domain provider, must be
"perf".
+ enum: [ psci, perf, cpr ]
resets:
maxItems: 1
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* [PATCH 19/19] dt-bindings: cpufreq: Drop redundant Mediatek binding
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (17 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints Rob Herring (Arm)
@ 2025-04-04 2:59 ` Rob Herring (Arm)
2025-04-04 11:32 ` AngeloGioacchino Del Regno
2025-04-07 15:04 ` (subset) [PATCH 00/19] Arm cpu schema clean-ups Conor Dooley
2025-04-08 5:57 ` Viresh Kumar
20 siblings, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 2:59 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
The Mediatek CPUFreq binding document just describes properties from
the CPU node which the driver uses. This is redundant as all the
properties are described in the arm/cpus.yaml schema.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
.../bindings/cpufreq/cpufreq-mediatek.txt | 250 ---------------------
1 file changed, 250 deletions(-)
diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-mediatek.txt b/Documentation/devicetree/bindings/cpufreq/cpufreq-mediatek.txt
deleted file mode 100644
index e0a4ba599abc..000000000000
--- a/Documentation/devicetree/bindings/cpufreq/cpufreq-mediatek.txt
+++ /dev/null
@@ -1,250 +0,0 @@
-Binding for MediaTek's CPUFreq driver
-=====================================
-
-Required properties:
-- clocks: A list of phandle + clock-specifier pairs for the clocks listed in clock names.
-- clock-names: Should contain the following:
- "cpu" - The multiplexer for clock input of CPU cluster.
- "intermediate" - A parent of "cpu" clock which is used as "intermediate" clock
- source (usually MAINPLL) when the original CPU PLL is under
- transition and not stable yet.
- Please refer to Documentation/devicetree/bindings/clock/clock-bindings.txt for
- generic clock consumer properties.
-- operating-points-v2: Please refer to Documentation/devicetree/bindings/opp/opp-v2.yaml
- for detail.
-- proc-supply: Regulator for Vproc of CPU cluster.
-
-Optional properties:
-- sram-supply: Regulator for Vsram of CPU cluster. When present, the cpufreq driver
- needs to do "voltage tracking" to step by step scale up/down Vproc and
- Vsram to fit SoC specific needs. When absent, the voltage scaling
- flow is handled by hardware, hence no software "voltage tracking" is
- needed.
-- mediatek,cci:
- Used to confirm the link status between cpufreq and mediatek cci. Because
- cpufreq and mediatek cci could share the same regulator in some MediaTek SoCs.
- To prevent the issue of high frequency and low voltage, we need to use this
- property to make sure mediatek cci is ready.
- For details of mediatek cci, please refer to
- Documentation/devicetree/bindings/interconnect/mediatek,cci.yaml
-- #cooling-cells:
- For details, please refer to
- Documentation/devicetree/bindings/thermal/thermal-cooling-devices.yaml
-
-Example 1 (MT7623 SoC):
-
- cpu_opp_table: opp_table {
- compatible = "operating-points-v2";
- opp-shared;
-
- opp-598000000 {
- opp-hz = /bits/ 64 <598000000>;
- opp-microvolt = <1050000>;
- };
-
- opp-747500000 {
- opp-hz = /bits/ 64 <747500000>;
- opp-microvolt = <1050000>;
- };
-
- opp-1040000000 {
- opp-hz = /bits/ 64 <1040000000>;
- opp-microvolt = <1150000>;
- };
-
- opp-1196000000 {
- opp-hz = /bits/ 64 <1196000000>;
- opp-microvolt = <1200000>;
- };
-
- opp-1300000000 {
- opp-hz = /bits/ 64 <1300000000>;
- opp-microvolt = <1300000>;
- };
- };
-
- cpu0: cpu@0 {
- device_type = "cpu";
- compatible = "arm,cortex-a7";
- reg = <0x0>;
- clocks = <&infracfg CLK_INFRA_CPUSEL>,
- <&apmixedsys CLK_APMIXED_MAINPLL>;
- clock-names = "cpu", "intermediate";
- operating-points-v2 = <&cpu_opp_table>;
- #cooling-cells = <2>;
- };
- cpu@1 {
- device_type = "cpu";
- compatible = "arm,cortex-a7";
- reg = <0x1>;
- operating-points-v2 = <&cpu_opp_table>;
- };
- cpu@2 {
- device_type = "cpu";
- compatible = "arm,cortex-a7";
- reg = <0x2>;
- operating-points-v2 = <&cpu_opp_table>;
- };
- cpu@3 {
- device_type = "cpu";
- compatible = "arm,cortex-a7";
- reg = <0x3>;
- operating-points-v2 = <&cpu_opp_table>;
- };
-
-Example 2 (MT8173 SoC):
- cpu_opp_table_a: opp_table_a {
- compatible = "operating-points-v2";
- opp-shared;
-
- opp-507000000 {
- opp-hz = /bits/ 64 <507000000>;
- opp-microvolt = <859000>;
- };
-
- opp-702000000 {
- opp-hz = /bits/ 64 <702000000>;
- opp-microvolt = <908000>;
- };
-
- opp-1001000000 {
- opp-hz = /bits/ 64 <1001000000>;
- opp-microvolt = <983000>;
- };
-
- opp-1105000000 {
- opp-hz = /bits/ 64 <1105000000>;
- opp-microvolt = <1009000>;
- };
-
- opp-1183000000 {
- opp-hz = /bits/ 64 <1183000000>;
- opp-microvolt = <1028000>;
- };
-
- opp-1404000000 {
- opp-hz = /bits/ 64 <1404000000>;
- opp-microvolt = <1083000>;
- };
-
- opp-1508000000 {
- opp-hz = /bits/ 64 <1508000000>;
- opp-microvolt = <1109000>;
- };
-
- opp-1573000000 {
- opp-hz = /bits/ 64 <1573000000>;
- opp-microvolt = <1125000>;
- };
- };
-
- cpu_opp_table_b: opp_table_b {
- compatible = "operating-points-v2";
- opp-shared;
-
- opp-507000000 {
- opp-hz = /bits/ 64 <507000000>;
- opp-microvolt = <828000>;
- };
-
- opp-702000000 {
- opp-hz = /bits/ 64 <702000000>;
- opp-microvolt = <867000>;
- };
-
- opp-1001000000 {
- opp-hz = /bits/ 64 <1001000000>;
- opp-microvolt = <927000>;
- };
-
- opp-1209000000 {
- opp-hz = /bits/ 64 <1209000000>;
- opp-microvolt = <968000>;
- };
-
- opp-1404000000 {
- opp-hz = /bits/ 64 <1007000000>;
- opp-microvolt = <1028000>;
- };
-
- opp-1612000000 {
- opp-hz = /bits/ 64 <1612000000>;
- opp-microvolt = <1049000>;
- };
-
- opp-1807000000 {
- opp-hz = /bits/ 64 <1807000000>;
- opp-microvolt = <1089000>;
- };
-
- opp-1989000000 {
- opp-hz = /bits/ 64 <1989000000>;
- opp-microvolt = <1125000>;
- };
- };
-
- cpu0: cpu@0 {
- device_type = "cpu";
- compatible = "arm,cortex-a53";
- reg = <0x000>;
- enable-method = "psci";
- cpu-idle-states = <&CPU_SLEEP_0>;
- clocks = <&infracfg CLK_INFRA_CA53SEL>,
- <&apmixedsys CLK_APMIXED_MAINPLL>;
- clock-names = "cpu", "intermediate";
- operating-points-v2 = <&cpu_opp_table_a>;
- };
-
- cpu1: cpu@1 {
- device_type = "cpu";
- compatible = "arm,cortex-a53";
- reg = <0x001>;
- enable-method = "psci";
- cpu-idle-states = <&CPU_SLEEP_0>;
- clocks = <&infracfg CLK_INFRA_CA53SEL>,
- <&apmixedsys CLK_APMIXED_MAINPLL>;
- clock-names = "cpu", "intermediate";
- operating-points-v2 = <&cpu_opp_table_a>;
- };
-
- cpu2: cpu@100 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x100>;
- enable-method = "psci";
- cpu-idle-states = <&CPU_SLEEP_0>;
- clocks = <&infracfg CLK_INFRA_CA72SEL>,
- <&apmixedsys CLK_APMIXED_MAINPLL>;
- clock-names = "cpu", "intermediate";
- operating-points-v2 = <&cpu_opp_table_b>;
- };
-
- cpu3: cpu@101 {
- device_type = "cpu";
- compatible = "arm,cortex-a72";
- reg = <0x101>;
- enable-method = "psci";
- cpu-idle-states = <&CPU_SLEEP_0>;
- clocks = <&infracfg CLK_INFRA_CA72SEL>,
- <&apmixedsys CLK_APMIXED_MAINPLL>;
- clock-names = "cpu", "intermediate";
- operating-points-v2 = <&cpu_opp_table_b>;
- };
-
- &cpu0 {
- proc-supply = <&mt6397_vpca15_reg>;
- };
-
- &cpu1 {
- proc-supply = <&mt6397_vpca15_reg>;
- };
-
- &cpu2 {
- proc-supply = <&da9211_vcpu_reg>;
- sram-supply = <&mt6397_vsramca7_reg>;
- };
-
- &cpu3 {
- proc-supply = <&da9211_vcpu_reg>;
- sram-supply = <&mt6397_vsramca7_reg>;
- };
--
2.47.2
^ permalink raw reply related [flat|nested] 62+ messages in thread
* Re: [PATCH 13/19] arm64: dts: amlogic: Drop redundant CPU "clock-latency"
2025-04-04 2:59 ` [PATCH 13/19] arm64: dts: amlogic: " Rob Herring (Arm)
@ 2025-04-04 7:11 ` Neil Armstrong
0 siblings, 0 replies; 62+ messages in thread
From: Neil Armstrong @ 2025-04-04 7:11 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 04/04/2025 04:59, Rob Herring (Arm) wrote:
> The "clock-latency" property is part of the deprecated opp-v1 binding
> and is redundant if the opp-v2 table has equal or larger values in any
> "clock-latency-ns". Add any missing "clock-latency-ns" properties and
> remove "clock-latency".
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-g12a.dtsi | 1 +
> arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi | 2 ++
> arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts | 6 ------
> arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi | 2 ++
> arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi | 6 ------
> arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi | 4 ----
> arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi | 4 ----
> arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi | 4 ----
> arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts | 4 ----
> arch/arm64/boot/dts/amlogic/meson-sm1.dtsi | 1 +
> 23 files changed, 6 insertions(+), 92 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts
> index 9aa36f17ffa2..d0a3b4b9229c 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a-fbx8am.dts
> @@ -267,28 +267,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> ðmac {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
> index 952b8d02e5c2..4353485c6f26 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
> @@ -220,28 +220,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cvbs_vdac_port {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts
> index 52fbc5103e45..f39fcabc763f 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a-sei510.dts
> @@ -314,28 +314,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cvbs_vdac_port {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts
> index 5407049d2647..b5bf8ecc91e6 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a-u200.dts
> @@ -407,28 +407,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &clkc_audio {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
> index 01da83658ae3..5ab460a3e637 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a-x96-max.dts
> @@ -263,28 +263,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cvbs_vdac_port {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
> index 543e70669df5..deee61dbe074 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12a.dtsi
> @@ -62,6 +62,7 @@ cpu_opp_table: opp-table {
> opp-1000000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <731000>;
> + clock-latency-ns = <50000>;
> };
>
> opp-1200000000 {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts
> index adedc1340c78..415248931ab1 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d-libretech-cc.dts
> @@ -76,42 +76,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &pwm_ab {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
> index 8e9ad1e51d66..8ecb5bd125c1 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-a311d.dtsi
> @@ -14,6 +14,7 @@ cpu_opp_table_0: opp-table-0 {
> opp-1000000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <761000>;
> + clock-latency-ns = <50000>;
> };
>
> opp-1200000000 {
> @@ -54,6 +55,7 @@ cpub_opp_table_1: opp-table-1 {
> opp-1000000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <731000>;
> + clock-latency-ns = <50000>;
> };
>
> opp-1200000000 {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi
> index 92e8b26ecccc..39011b645128 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi-cm4.dtsi
> @@ -155,42 +155,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &ext_mdio {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi
> index 54663c55a20e..1b08303c4282 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-bananapi.dtsi
> @@ -263,42 +263,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> ðmac {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
> index 48650bad230d..fc737499f207 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
> @@ -51,42 +51,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &pwm_ab {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
> index e21831dfceee..d5938a4a6da3 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-go-ultra.dts
> @@ -281,42 +281,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> /* RK817 only supports 12.5mV steps, round up the values */
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi
> index 7e8964bacfce..3298d59833b6 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid.dtsi
> @@ -227,42 +227,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu_thermal {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts b/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts
> index fc05ecf90714..1e5c6f984945 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-radxa-zero2.dts
> @@ -259,42 +259,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu_thermal {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
> index 44c23c984034..19cad93a6889 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-s922x.dtsi
> @@ -14,6 +14,7 @@ cpu_opp_table_0: opp-table-0 {
> opp-1000000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <731000>;
> + clock-latency-ns = <50000>;
> };
>
> opp-1200000000 {
> @@ -59,6 +60,7 @@ cpub_opp_table_1: opp-table-1 {
> opp-1000000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <771000>;
> + clock-latency-ns = <50000>;
> };
>
> opp-1200000000 {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
> index a7a0fc264cdc..9b6d780eada7 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12b-w400.dtsi
> @@ -213,42 +213,36 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table_0>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu100 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu101 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu102 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu103 {
> cpu-supply = <&vddcpu_a>;
> operating-points-v2 = <&cpub_opp_table_1>;
> clocks = <&clkc CLKID_CPUB_CLK>;
> - clock-latency = <50000>;
> };
>
> &cvbs_vdac_port {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
> index a3463149db3d..9be3084b090d 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-ac2xx.dtsi
> @@ -147,28 +147,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU1_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU2_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU3_CLK>;
> - clock-latency = <50000>;
> };
>
> &cvbs_vdac_port {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi
> index 40db95f64636..538b35036954 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi.dtsi
> @@ -185,28 +185,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU1_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU2_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU3_CLK>;
> - clock-latency = <50000>;
> };
>
> &ext_mdio {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
> index 5d75ad3f3e46..a3d9b66b6878 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
> @@ -51,28 +51,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU1_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU2_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU3_CLK>;
> - clock-latency = <50000>;
> };
>
> &pwm_AO_cd {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
> index ad8d07883760..c4524eb4f099 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid.dtsi
> @@ -250,28 +250,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU1_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU2_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU3_CLK>;
> - clock-latency = <50000>;
> };
>
> &ext_mdio {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts
> index 537370db360f..5daadfb170b4 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-s905d3-libretech-cc.dts
> @@ -64,26 +64,22 @@ &cpu0 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU1_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU2_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu_b>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU3_CLK>;
> - clock-latency = <50000>;
> };
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts
> index 37d7f64b6d5d..024d2eb8e6ee 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1-sei610.dts
> @@ -359,28 +359,24 @@ &cpu0 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu1 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU1_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu2 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU2_CLK>;
> - clock-latency = <50000>;
> };
>
> &cpu3 {
> cpu-supply = <&vddcpu>;
> operating-points-v2 = <&cpu_opp_table>;
> clocks = <&clkc CLKID_CPU3_CLK>;
> - clock-latency = <50000>;
> };
>
> ðmac {
> diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi b/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi
> index 97e4b52066dc..966ebb19cc55 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-sm1.dtsi
> @@ -100,6 +100,7 @@ cpu_opp_table: opp-table {
> opp-1000000000 {
> opp-hz = /bits/ 64 <1000000000>;
> opp-microvolt = <770000>;
> + clock-latency-ns = <50000>;
> };
>
> opp-1200000000 {
>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies
2025-04-04 2:59 ` [PATCH 04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
@ 2025-04-04 9:43 ` Daniel Machon
0 siblings, 0 replies; 62+ messages in thread
From: Daniel Machon @ 2025-04-04 9:43 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, UNGLinuxDriver, Shawn Guo, Sascha Hauer,
Pengutronix Kernel Team, Fabio Estevam, Heiko Stuebner,
Neil Armstrong, Kevin Hilman, Jerome Brunet, Martin Blumenstingl,
Geert Uytterhoeven, Magnus Damm, devicetree, linux-arm-kernel,
linux-sunxi, linux-kernel, linux-pm, linux-mediatek,
linux-arm-msm, linux-mips, imx, linux-rockchip, linux-amlogic,
linux-renesas-soc
> The "spin-table" enable-method requires "cpu-release-addr" property,
> so add a dummy entry. It is assumed the bootloader will fill in the
> correct values.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi b/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> index 32bb76b3202a..83bf5c81b5f7 100644
> --- a/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> +++ b/arch/arm64/boot/dts/microchip/sparx5_pcb_common.dtsi
> @@ -12,10 +12,12 @@ &psci {
>
> &cpu0 {
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> };
>
> &cpu1 {
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> };
>
> &uart0 {
>
> --
> 2.47.2
>
Reviewed-by: Daniel Machon <daniel.machon@microchip.com>
Tested-by: Daniel Machon <daniel.machon@microchip.com>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-04 2:59 ` [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names Rob Herring (Arm)
@ 2025-04-04 10:30 ` Ulf Hansson
2025-04-04 14:05 ` Rob Herring
2025-04-04 20:41 ` Konrad Dybcio
1 sibling, 1 reply; 62+ messages in thread
From: Ulf Hansson @ 2025-04-04 10:30 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, 4 Apr 2025 at 05:02, Rob Herring (Arm) <robh@kernel.org> wrote:
>
> "rpmhpd" is not documented nor used anywhere. As the enable-method is
> "psci" use "psci" for the power-domain name.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm/boot/dts/qcom/qcom-sdx55.dtsi | 2 +-
> arch/arm/boot/dts/qcom/qcom-sdx65.dtsi | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi b/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
> index 39530eb580ea..64d9858b4248 100644
> --- a/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
> +++ b/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
> @@ -57,7 +57,7 @@ cpu0: cpu@0 {
> enable-method = "psci";
> clocks = <&apcs>;
> power-domains = <&rpmhpd SDX55_CX>;
> - power-domain-names = "rpmhpd";
> + power-domain-names = "psci";
As I understand it, this isn't for cpu-power-mgmt but for
cpu-performance-scaling.
I have been thinking of adding a common power-domain-name for this,
but never reached to do it. I think the last one we added was the
Airoha SoC [1] which uses "perf", which seems to be the most common
one. Still I don't see that being documented.
> operating-points-v2 = <&cpu_opp_table>;
> };
> };
> diff --git a/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi b/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi
> index 6b23ee676c9e..bfd04e53c5a8 100644
> --- a/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi
> +++ b/arch/arm/boot/dts/qcom/qcom-sdx65.dtsi
> @@ -58,7 +58,7 @@ cpu0: cpu@0 {
> enable-method = "psci";
> clocks = <&apcs>;
> power-domains = <&rpmhpd SDX65_CX_AO>;
> - power-domain-names = "rpmhpd";
> + power-domain-names = "psci";
Ditto.
> operating-points-v2 = <&cpu_opp_table>;
> };
> };
>
> --
> 2.47.2
>
>
Kind regards
Uffe
[1]
drivers/cpufreq/airoha-cpufreq.c
Documentation/devicetree/bindings/cpufreq/airoha,en7581-cpufreq.yaml
drivers/pmdomain/mediatek/airoha-cpu-pmdomain.c
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-04 2:59 ` [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints Rob Herring (Arm)
@ 2025-04-04 10:36 ` Ulf Hansson
2025-04-04 13:09 ` Rob Herring
2025-04-07 12:30 ` Sudeep Holla
2025-04-04 11:35 ` AngeloGioacchino Del Regno
1 sibling, 2 replies; 62+ messages in thread
From: Ulf Hansson @ 2025-04-04 10:36 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
>
> The "power-domains" and "power-domains-names" properties are missing any
> constraints. Add the constraints and drop the generic descriptions.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> 1 file changed, 2 insertions(+), 6 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> index 6f74ebfd38df..5bd5822db8af 100644
> --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> @@ -313,19 +313,15 @@ properties:
> maxItems: 1
>
> power-domains:
> - description:
> - List of phandles and PM domain specifiers, as defined by bindings of the
> - PM domain provider (see also ../power_domain.txt).
> + maxItems: 1
There are more than one in some cases. The most is probably three, I think.
>
> power-domain-names:
> description:
> - A list of power domain name strings sorted in the same order as the
> - power-domains property.
> -
> For PSCI based platforms, the name corresponding to the index of the PSCI
> PM domain provider, must be "psci". For SCMI based platforms, the name
> corresponding to the index of an SCMI performance domain provider, must be
> "perf".
> + enum: [ psci, perf, cpr ]
>
> resets:
> maxItems: 1
>
> --
> 2.47.2
>
>
Other than above, feel free to add:
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Kind regards
Uffe
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 17/19] dt-bindings: arm/cpus: Add missing properties
2025-04-04 2:59 ` [PATCH 17/19] dt-bindings: arm/cpus: Add missing properties Rob Herring (Arm)
@ 2025-04-04 11:32 ` AngeloGioacchino Del Regno
0 siblings, 0 replies; 62+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-04 11:32 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Il 04/04/25 04:59, Rob Herring (Arm) ha scritto:
> The Arm CPU schema is missing a number of properties already in use.
> This has gone unnoticed as extra properties have not been restricted.
> Add a missing reference to cpu.yaml, and add all the missing properties.
>
> As "clock-latency" and "voltage-tolerance" are related to opp-v1, add
> those properties to the opp-v1.yaml schema.
>
> With this, other properties can be prevented from creeping in with
> 'unevaluatedProperties: false'.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> Documentation/devicetree/bindings/arm/cpus.yaml | 46 ++++++++++++++++++++++-
> Documentation/devicetree/bindings/opp/opp-v1.yaml | 16 ++++++++
> 2 files changed, 61 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> index 3d2b6286efb8..6f74ebfd38df 100644
> --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> @@ -299,6 +299,16 @@ properties:
>
> where voltage is in V, frequency is in MHz.
>
> + interconnects:
> + minItems: 1
> + maxItems: 2
> +
> + nvmem-cells:
> + maxItems: 1
> +
> + nvmem-cell-names:
> + const: speed_grade
> +
> performance-domains:
> maxItems: 1
>
> @@ -317,6 +327,31 @@ properties:
> corresponding to the index of an SCMI performance domain provider, must be
> "perf".
>
> + resets:
> + maxItems: 1
> +
> + arm-supply:
> + deprecated: true
> + description: Use 'cpu-supply' instead
> +
> + cpu0-supply:
> + deprecated: true
> + description: Use 'cpu-supply' instead
> +
> + mem-supply: true
> +
> + proc-supply:
> + deprecated: true
> + description: Use 'cpu-supply' instead
> +
> + sram-supply:
> + deprecated: true
> + description: Use 'mem-supply' instead
> +
> + mediatek,cci:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description: Link to Mediatek Cache Coherent Interconnect
s/Mediatek/MediaTek/g please :-)
Anyway:
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 16/19] dt-bindings: Reference opp-v1 schema in CPU schemas
2025-04-04 2:59 ` [PATCH 16/19] dt-bindings: Reference opp-v1 schema in CPU schemas Rob Herring (Arm)
@ 2025-04-04 11:32 ` AngeloGioacchino Del Regno
0 siblings, 0 replies; 62+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-04 11:32 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Il 04/04/25 04:59, Rob Herring (Arm) ha scritto:
> The opp-v1 binding is only used in MIPS and arm32 CPU nodes, so add a
> $ref to it in the CPU schemas and drop the "select".
>
> As opp-v1 has long been deprecated, mark it as such.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
ARM//MediaTek:
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 19/19] dt-bindings: cpufreq: Drop redundant Mediatek binding
2025-04-04 2:59 ` [PATCH 19/19] dt-bindings: cpufreq: Drop redundant Mediatek binding Rob Herring (Arm)
@ 2025-04-04 11:32 ` AngeloGioacchino Del Regno
0 siblings, 0 replies; 62+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-04 11:32 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Il 04/04/25 04:59, Rob Herring (Arm) ha scritto:
> The Mediatek CPUFreq binding document just describes properties from
> the CPU node which the driver uses. This is redundant as all the
> properties are described in the arm/cpus.yaml schema.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-04 2:59 ` [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints Rob Herring (Arm)
2025-04-04 10:36 ` Ulf Hansson
@ 2025-04-04 11:35 ` AngeloGioacchino Del Regno
1 sibling, 0 replies; 62+ messages in thread
From: AngeloGioacchino Del Regno @ 2025-04-04 11:35 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Il 04/04/25 04:59, Rob Herring (Arm) ha scritto:
> The "power-domains" and "power-domains-names" properties are missing any
> constraints. Add the constraints and drop the generic descriptions.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
For MediaTek:
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies
2025-04-04 2:59 ` [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
@ 2025-04-04 12:04 ` Stephan Gerhold
2025-04-04 13:18 ` Rob Herring
0 siblings, 1 reply; 62+ messages in thread
From: Stephan Gerhold @ 2025-04-04 12:04 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Thu, Apr 03, 2025 at 09:59:27PM -0500, Rob Herring (Arm) wrote:
> The "qcom,acc" and "qcom,saw" properties aren't valid with "spin-table"
> enable-method nor are they used on 64-bit kernels, so they can be
> dropped.
>
The bootloader we currently use on these devices reads these properties
to set up the spin-table, so removing these will break booting secondary
CPU cores.
The motivation for implementing it that way was that 32-bit vs 64-bit
kernel shouldn't be relevant for the describing the hardware blocks in
the device tree. The code in the bootloader is generic and handles
different SoCs (e.g. msm8916 with 4 cores and msm8939 with 8 cores, the
enable sequences are identical).
Can we keep this in somehow? To be fair, I'm not sure what property we
could match on to check if these properties are allowed ...
Thanks,
Stephan
> The "spin-table" enable-method requires "cpu-release-addr" property,
> so add a dummy entry. It is assumed the bootloader will fill in the
> correct values.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm64/boot/dts/qcom/msm8939.dtsi | 24 ++++++++----------------
> 1 file changed, 8 insertions(+), 16 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/msm8939.dtsi b/arch/arm64/boot/dts/qcom/msm8939.dtsi
> index 7cd5660de1b3..36f2ba3fb81c 100644
> --- a/arch/arm64/boot/dts/qcom/msm8939.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8939.dtsi
> @@ -46,10 +46,9 @@ cpu0: cpu@100 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x100>;
> next-level-cache = <&l2_1>;
> - qcom,acc = <&acc0>;
> - qcom,saw = <&saw0>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs1_mbox>;
> #cooling-cells = <2>;
> @@ -64,10 +63,9 @@ cpu1: cpu@101 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x101>;
> next-level-cache = <&l2_1>;
> - qcom,acc = <&acc1>;
> - qcom,saw = <&saw1>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs1_mbox>;
> #cooling-cells = <2>;
> @@ -77,10 +75,9 @@ cpu2: cpu@102 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x102>;
> next-level-cache = <&l2_1>;
> - qcom,acc = <&acc2>;
> - qcom,saw = <&saw2>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs1_mbox>;
> #cooling-cells = <2>;
> @@ -90,10 +87,9 @@ cpu3: cpu@103 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x103>;
> next-level-cache = <&l2_1>;
> - qcom,acc = <&acc3>;
> - qcom,saw = <&saw3>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs1_mbox>;
> #cooling-cells = <2>;
> @@ -103,9 +99,8 @@ cpu4: cpu@0 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x0>;
> - qcom,acc = <&acc4>;
> - qcom,saw = <&saw4>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs0_mbox>;
> #cooling-cells = <2>;
> @@ -121,10 +116,9 @@ cpu5: cpu@1 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x1>;
> next-level-cache = <&l2_0>;
> - qcom,acc = <&acc5>;
> - qcom,saw = <&saw5>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs0_mbox>;
> #cooling-cells = <2>;
> @@ -134,10 +128,9 @@ cpu6: cpu@2 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x2>;
> next-level-cache = <&l2_0>;
> - qcom,acc = <&acc6>;
> - qcom,saw = <&saw6>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs0_mbox>;
> #cooling-cells = <2>;
> @@ -147,10 +140,9 @@ cpu7: cpu@3 {
> compatible = "arm,cortex-a53";
> device_type = "cpu";
> enable-method = "spin-table";
> + cpu-release-addr = /bits/ 64 <0>;
> reg = <0x3>;
> next-level-cache = <&l2_0>;
> - qcom,acc = <&acc7>;
> - qcom,saw = <&saw7>;
> cpu-idle-states = <&cpu_sleep_0>;
> clocks = <&apcs0_mbox>;
> #cooling-cells = <2>;
>
> --
> 2.47.2
>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties
2025-04-04 2:59 ` [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties Rob Herring (Arm)
@ 2025-04-04 12:39 ` Andre Przywara
2025-04-10 6:43 ` Jernej Škrabec
1 sibling, 0 replies; 62+ messages in thread
From: Andre Przywara @ 2025-04-04 12:39 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Thu, 03 Apr 2025 21:59:22 -0500
"Rob Herring (Arm)" <robh@kernel.org> wrote:
Hi,
> 'clock-latency-ns' is not a valid property for CPU nodes. It belongs in
> OPP table (which has it). Drop them from the CPU nodes.
Looks alright, only affects H5 and H6, and they indeed have it in their
-cpu-opp.dtsi:
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Cheers,
Andre
> ---
> arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 4 ----
> arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi | 4 ----
> 2 files changed, 8 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
> index d3caf27b6a55..48802bf02f3b 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
> @@ -16,7 +16,6 @@ cpu0: cpu@0 {
> reg = <0>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> };
>
> @@ -26,7 +25,6 @@ cpu1: cpu@1 {
> reg = <1>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> };
>
> @@ -36,7 +34,6 @@ cpu2: cpu@2 {
> reg = <2>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> };
>
> @@ -46,7 +43,6 @@ cpu3: cpu@3 {
> reg = <3>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> };
> };
> diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
> index 2301c59b41b1..73e8604315c5 100644
> --- a/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
> +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi
> @@ -27,7 +27,6 @@ cpu0: cpu@0 {
> reg = <0>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> i-cache-size = <0x8000>;
> i-cache-line-size = <64>;
> @@ -44,7 +43,6 @@ cpu1: cpu@1 {
> reg = <1>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> i-cache-size = <0x8000>;
> i-cache-line-size = <64>;
> @@ -61,7 +59,6 @@ cpu2: cpu@2 {
> reg = <2>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> i-cache-size = <0x8000>;
> i-cache-line-size = <64>;
> @@ -78,7 +75,6 @@ cpu3: cpu@3 {
> reg = <3>;
> enable-method = "psci";
> clocks = <&ccu CLK_CPUX>;
> - clock-latency-ns = <244144>; /* 8 32k periods */
> #cooling-cells = <2>;
> i-cache-size = <0x8000>;
> i-cache-line-size = <64>;
>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-04 10:36 ` Ulf Hansson
@ 2025-04-04 13:09 ` Rob Herring
2025-04-07 16:23 ` Ulf Hansson
2025-04-07 12:30 ` Sudeep Holla
1 sibling, 1 reply; 62+ messages in thread
From: Rob Herring @ 2025-04-04 13:09 UTC (permalink / raw)
To: Ulf Hansson
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, Apr 4, 2025 at 5:37 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
>
> On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> >
> > The "power-domains" and "power-domains-names" properties are missing any
> > constraints. Add the constraints and drop the generic descriptions.
> >
> > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
> > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > 1 file changed, 2 insertions(+), 6 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > index 6f74ebfd38df..5bd5822db8af 100644
> > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > @@ -313,19 +313,15 @@ properties:
> > maxItems: 1
> >
> > power-domains:
> > - description:
> > - List of phandles and PM domain specifiers, as defined by bindings of the
> > - PM domain provider (see also ../power_domain.txt).
> > + maxItems: 1
>
> There are more than one in some cases. The most is probably three, I think.
Unless I missed it, testing says otherwise. What would the names be if
more than 1 entry?
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies
2025-04-04 12:04 ` Stephan Gerhold
@ 2025-04-04 13:18 ` Rob Herring
2025-04-04 14:10 ` Rob Herring
0 siblings, 1 reply; 62+ messages in thread
From: Rob Herring @ 2025-04-04 13:18 UTC (permalink / raw)
To: Stephan Gerhold
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, Apr 4, 2025 at 7:04 AM Stephan Gerhold
<stephan.gerhold@linaro.org> wrote:
>
> On Thu, Apr 03, 2025 at 09:59:27PM -0500, Rob Herring (Arm) wrote:
> > The "qcom,acc" and "qcom,saw" properties aren't valid with "spin-table"
> > enable-method nor are they used on 64-bit kernels, so they can be
> > dropped.
> >
>
> The bootloader we currently use on these devices reads these properties
> to set up the spin-table, so removing these will break booting secondary
> CPU cores.
>
> The motivation for implementing it that way was that 32-bit vs 64-bit
> kernel shouldn't be relevant for the describing the hardware blocks in
> the device tree. The code in the bootloader is generic and handles
> different SoCs (e.g. msm8916 with 4 cores and msm8939 with 8 cores, the
> enable sequences are identical).
>
> Can we keep this in somehow? To be fair, I'm not sure what property we
> could match on to check if these properties are allowed ...
Yes, we can keep them. We'll have to allow them with "spin-table" and
"psci" I guess.
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-04 10:30 ` Ulf Hansson
@ 2025-04-04 14:05 ` Rob Herring
0 siblings, 0 replies; 62+ messages in thread
From: Rob Herring @ 2025-04-04 14:05 UTC (permalink / raw)
To: Ulf Hansson
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, Apr 4, 2025 at 5:31 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
>
> On Fri, 4 Apr 2025 at 05:02, Rob Herring (Arm) <robh@kernel.org> wrote:
> >
> > "rpmhpd" is not documented nor used anywhere. As the enable-method is
> > "psci" use "psci" for the power-domain name.
> >
> > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
> > arch/arm/boot/dts/qcom/qcom-sdx55.dtsi | 2 +-
> > arch/arm/boot/dts/qcom/qcom-sdx65.dtsi | 2 +-
> > 2 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi b/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
> > index 39530eb580ea..64d9858b4248 100644
> > --- a/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
> > +++ b/arch/arm/boot/dts/qcom/qcom-sdx55.dtsi
> > @@ -57,7 +57,7 @@ cpu0: cpu@0 {
> > enable-method = "psci";
> > clocks = <&apcs>;
> > power-domains = <&rpmhpd SDX55_CX>;
> > - power-domain-names = "rpmhpd";
> > + power-domain-names = "psci";
>
> As I understand it, this isn't for cpu-power-mgmt but for
> cpu-performance-scaling.
>
> I have been thinking of adding a common power-domain-name for this,
> but never reached to do it. I think the last one we added was the
> Airoha SoC [1] which uses "perf", which seems to be the most common
> one. Still I don't see that being documented.
It's all a mess and abuse of the power-domains binding...
"perf" is documented. I can add "rpmhpd" I suppose, but I don't see
anything using the name. Or I can remove it.
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies
2025-04-04 13:18 ` Rob Herring
@ 2025-04-04 14:10 ` Rob Herring
0 siblings, 0 replies; 62+ messages in thread
From: Rob Herring @ 2025-04-04 14:10 UTC (permalink / raw)
To: Stephan Gerhold
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, Apr 4, 2025 at 8:18 AM Rob Herring <robh@kernel.org> wrote:
>
> On Fri, Apr 4, 2025 at 7:04 AM Stephan Gerhold
> <stephan.gerhold@linaro.org> wrote:
> >
> > On Thu, Apr 03, 2025 at 09:59:27PM -0500, Rob Herring (Arm) wrote:
> > > The "qcom,acc" and "qcom,saw" properties aren't valid with "spin-table"
> > > enable-method nor are they used on 64-bit kernels, so they can be
> > > dropped.
> > >
> >
> > The bootloader we currently use on these devices reads these properties
> > to set up the spin-table, so removing these will break booting secondary
> > CPU cores.
> >
> > The motivation for implementing it that way was that 32-bit vs 64-bit
> > kernel shouldn't be relevant for the describing the hardware blocks in
> > the device tree. The code in the bootloader is generic and handles
> > different SoCs (e.g. msm8916 with 4 cores and msm8939 with 8 cores, the
> > enable sequences are identical).
> >
> > Can we keep this in somehow? To be fair, I'm not sure what property we
> > could match on to check if these properties are allowed ...
>
> Yes, we can keep them. We'll have to allow them with "spin-table" and
> "psci" I guess.
I came up with something like this instead:
- if:
# 2 Qualcomm platforms bootloaders need qcom,acc and qcom,saw yet use
# "spin-table" or "psci" enable-methods. Disallowing the properties for
# all other CPUs is the best we can do as there's not any way to
# distinguish these Qualcomm platforms.
properties:
compatible:
not:
const: arm,cortex-a53
then:
properties:
qcom,acc: false
qcom,saw: false
Not ideal as there are lots of A53s, but better than enabling for
every 64-bit platform.
Also, is adding the cpu-release-addr fine? It could trip up a
bootloader tests if the property is already present and doesn't update
it in that case.
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies
2025-04-04 2:59 ` [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies Rob Herring (Arm)
@ 2025-04-04 14:56 ` Rob Herring (Arm)
2025-04-10 14:11 ` Rob Herring
2025-04-07 12:28 ` Sudeep Holla
1 sibling, 1 reply; 62+ messages in thread
From: Rob Herring (Arm) @ 2025-04-04 14:56 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Bjorn Andersson, Viresh Kumar, linux-kernel, Conor Dooley,
linux-rockchip, Daniel Machon, Rafael J. Wysocki, Shawn Guo,
Conor Dooley, Konrad Dybcio, UNGLinuxDriver, Jerome Brunet,
Kevin Hilman, linux-sunxi, Liviu Dudau, linux-arm-kernel,
Fabio Estevam, Neil Armstrong, Stephen Boyd,
AngeloGioacchino Del Regno, Vincenzo Frascino, linux-renesas-soc,
Martin Blumenstingl, Magnus Damm, Krzysztof Kozlowski,
Geert Uytterhoeven, Viresh Kumar, Pengutronix Kernel Team,
zhouyanjie, Claudiu Beznea, Heiko Stuebner, Jernej Skrabec,
linux-pm, linux-mediatek, Chen-Yu Tsai, linux-mips, imx,
Samuel Holland, Sudeep Holla, Nishanth Menon, devicetree,
Thomas Bogendoerfer, linux-arm-msm, Nicolas Ferre, linux-amlogic,
Sascha Hauer, Steen Hegelund, Lorenzo Pieralisi, Matthias Brugger
On Thu, 03 Apr 2025 21:59:35 -0500, Rob Herring (Arm) wrote:
> Replace the prose for properties dependent on specific "enable-method"
> values with schemas defining the same requirements.
>
> Both "qcom,acc" and "qcom,saw" properties appear to be required for any
> of the Qualcomm enable-method values, so the schema is a bit simpler
> than what the text said. The references to arm/msm/qcom,saw2.txt and
> arm/msm/qcom,kpss-acc.txt are out of date, so just drop them.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> Documentation/devicetree/bindings/arm/cpus.yaml | 82 +++++++++++++++----------
> 1 file changed, 49 insertions(+), 33 deletions(-)
>
My bot found errors running 'make dt_binding_check' on your patch:
yamllint warnings/errors:
dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/qcom/qcom,saw2.example.dtb: cpu@0: 'qcom,acc' is a required property
from schema $id: http://devicetree.org/schemas/arm/cpus.yaml#
doc reference errors (make refcheckdocs):
Warning: Documentation/translations/ja_JP/process/submit-checklist.rst references a file that doesn't exist: Documentation/translations/ja_JP/SubmitChecklist
Documentation/translations/ja_JP/process/submit-checklist.rst: Documentation/translations/ja_JP/SubmitChecklist
See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250403-dt-cpu-schema-v1-14-076be7171a85@kernel.org
The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.
If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:
pip3 install dtschema --upgrade
Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 05/19] arm64: dts: qcom: qdu1000: Fix qcom,freq-domain
2025-04-04 2:59 ` [PATCH 05/19] arm64: dts: qcom: qdu1000: Fix qcom,freq-domain Rob Herring (Arm)
@ 2025-04-04 20:28 ` Konrad Dybcio
0 siblings, 0 replies; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-04 20:28 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> The correct property name is 'qcom,freq-domain', not
> 'qcom,freq-domains'.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
Thanks for spotting this!
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: Fix CPU node "enable-method" property dependencies
2025-04-04 2:59 ` [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: " Rob Herring (Arm)
@ 2025-04-04 20:30 ` Konrad Dybcio
2025-04-04 20:32 ` Konrad Dybcio
0 siblings, 1 reply; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-04 20:30 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> The "spin-table" enable-method requires "cpu-release-addr" property,
> so add a dummy entry. It is assumed the bootloader will fill in the
> correct values.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
This looks good to me without knowing any better about the specifics
of this device..
+Alexander - does the bootloader you use take care of this? Otherwise
we can just do what Sony devices do and stop on removing the psci node
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: Fix CPU node "enable-method" property dependencies
2025-04-04 20:30 ` Konrad Dybcio
@ 2025-04-04 20:32 ` Konrad Dybcio
2025-04-05 14:42 ` Alexander Reimelt
0 siblings, 1 reply; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-04 20:32 UTC (permalink / raw)
To: Konrad Dybcio, Rob Herring (Arm), Krzysztof Kozlowski,
Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland,
Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc, Alexander Reimelt
On 4/4/25 10:30 PM, Konrad Dybcio wrote:
> On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
>> The "spin-table" enable-method requires "cpu-release-addr" property,
>> so add a dummy entry. It is assumed the bootloader will fill in the
>> correct values.
>>
>> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
>> ---
>
> This looks good to me without knowing any better about the specifics
> of this device..
>
> +Alexander - does the bootloader you use take care of this? Otherwise
> we can just do what Sony devices do and stop on removing the psci node
I failed to add Alexander to Cc, second time's the charm..
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-04 2:59 ` [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names Rob Herring (Arm)
2025-04-04 10:30 ` Ulf Hansson
@ 2025-04-04 20:41 ` Konrad Dybcio
2025-04-07 16:27 ` Ulf Hansson
1 sibling, 1 reply; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-04 20:41 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> "rpmhpd" is not documented nor used anywhere. As the enable-method is
> "psci" use "psci" for the power-domain name.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
"psci" is what we want here, but these platforms require some more
massaging..
These SoCs don't seem to have any PSCI idle states (deeper than WFI)
described, which is no bueno, as they support some..
I'll try to improve this.
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 11/19] arm: dts: qcom: ipq4019: Drop redundant CPU "clock-latency"
2025-04-04 2:59 ` [PATCH 11/19] arm: dts: qcom: ipq4019: " Rob Herring (Arm)
@ 2025-04-04 20:42 ` Konrad Dybcio
0 siblings, 0 replies; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-04 20:42 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> The "clock-latency" property is part of the deprecated opp-v1 binding
> and is redundant if the opp-v2 table has equal or larger values in any
> "clock-latency-ns". The OPP table has values of 256000, so it can be
> removed.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: Fix CPU node "enable-method" property dependencies
2025-04-04 20:32 ` Konrad Dybcio
@ 2025-04-05 14:42 ` Alexander Reimelt
0 siblings, 0 replies; 62+ messages in thread
From: Alexander Reimelt @ 2025-04-05 14:42 UTC (permalink / raw)
To: Konrad Dybcio, Rob Herring (Arm), Krzysztof Kozlowski,
Conor Dooley, Chen-Yu Tsai, Jernej Skrabec, Samuel Holland,
Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm,
Konrad Dybcio
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
> On 4/4/25 10:30 PM, Konrad Dybcio wrote:
> > On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> >> The "spin-table" enable-method requires "cpu-release-addr" property,
> >> so add a dummy entry. It is assumed the bootloader will fill in the
> >> correct values.
> >>
> >> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> >> ---
> >
> > This looks good to me without knowing any better about the specifics
> > of this device..
> >
> > +Alexander - does the bootloader you use take care of this? Otherwise
> > we can just do what Sony devices do and stop on removing the psci node
I currently can't test this, but the bootloader (lk2nd) will set it.
Alexander
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies
2025-04-04 2:59 ` [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies Rob Herring (Arm)
2025-04-04 14:56 ` Rob Herring (Arm)
@ 2025-04-07 12:28 ` Sudeep Holla
1 sibling, 0 replies; 62+ messages in thread
From: Sudeep Holla @ 2025-04-07 12:28 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Sudeep Holla, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Rafael J. Wysocki, Viresh Kumar,
Matthias Brugger, AngeloGioacchino Del Regno, Vincenzo Frascino,
Liviu Dudau, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Thu, Apr 03, 2025 at 09:59:35PM -0500, Rob Herring (Arm) wrote:
> Replace the prose for properties dependent on specific "enable-method"
> values with schemas defining the same requirements.
>
> Both "qcom,acc" and "qcom,saw" properties appear to be required for any
> of the Qualcomm enable-method values, so the schema is a bit simpler
> than what the text said. The references to arm/msm/qcom,saw2.txt and
> arm/msm/qcom,kpss-acc.txt are out of date, so just drop them.
>
For all the bindings changes(14-19/19,)
Reviewed-by: Sudeep Holla <sudeep.holla@arm.com>
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-04 10:36 ` Ulf Hansson
2025-04-04 13:09 ` Rob Herring
@ 2025-04-07 12:30 ` Sudeep Holla
2025-04-07 12:49 ` Rob Herring
1 sibling, 1 reply; 62+ messages in thread
From: Sudeep Holla @ 2025-04-07 12:30 UTC (permalink / raw)
To: Ulf Hansson
Cc: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc
On Fri, Apr 04, 2025 at 12:36:33PM +0200, Ulf Hansson wrote:
> On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> >
> > The "power-domains" and "power-domains-names" properties are missing any
> > constraints. Add the constraints and drop the generic descriptions.
> >
> > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
> > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > 1 file changed, 2 insertions(+), 6 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > index 6f74ebfd38df..5bd5822db8af 100644
> > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > @@ -313,19 +313,15 @@ properties:
> > maxItems: 1
> >
> > power-domains:
> > - description:
> > - List of phandles and PM domain specifiers, as defined by bindings of the
> > - PM domain provider (see also ../power_domain.txt).
> > + maxItems: 1
>
> There are more than one in some cases. The most is probably three, I think.
>
+1, there are users using "perf" and "psci" together now.
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-07 12:30 ` Sudeep Holla
@ 2025-04-07 12:49 ` Rob Herring
2025-04-07 16:18 ` Ulf Hansson
0 siblings, 1 reply; 62+ messages in thread
From: Rob Herring @ 2025-04-07 12:49 UTC (permalink / raw)
To: Sudeep Holla
Cc: Ulf Hansson, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Rafael J. Wysocki, Viresh Kumar,
Matthias Brugger, AngeloGioacchino Del Regno, Vincenzo Frascino,
Liviu Dudau, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Mon, Apr 7, 2025 at 7:30 AM Sudeep Holla <sudeep.holla@arm.com> wrote:
>
> On Fri, Apr 04, 2025 at 12:36:33PM +0200, Ulf Hansson wrote:
> > On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> > >
> > > The "power-domains" and "power-domains-names" properties are missing any
> > > constraints. Add the constraints and drop the generic descriptions.
> > >
> > > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > > ---
> > > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > > 1 file changed, 2 insertions(+), 6 deletions(-)
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > index 6f74ebfd38df..5bd5822db8af 100644
> > > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > @@ -313,19 +313,15 @@ properties:
> > > maxItems: 1
> > >
> > > power-domains:
> > > - description:
> > > - List of phandles and PM domain specifiers, as defined by bindings of the
> > > - PM domain provider (see also ../power_domain.txt).
> > > + maxItems: 1
> >
> > There are more than one in some cases. The most is probably three, I think.
> >
>
> +1, there are users using "perf" and "psci" together now.
Where? That's just wrong.
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: (subset) [PATCH 00/19] Arm cpu schema clean-ups
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (18 preceding siblings ...)
2025-04-04 2:59 ` [PATCH 19/19] dt-bindings: cpufreq: Drop redundant Mediatek binding Rob Herring (Arm)
@ 2025-04-07 15:04 ` Conor Dooley
2025-04-08 5:57 ` Viresh Kumar
20 siblings, 0 replies; 62+ messages in thread
From: Conor Dooley @ 2025-04-07 15:04 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm,
Rob Herring (Arm)
Cc: Conor Dooley, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc
From: Conor Dooley <conor.dooley@microchip.com>
On Thu, 03 Apr 2025 21:59:21 -0500, Rob Herring (Arm) wrote:
> The Arm cpu.yaml schema fails to restrict allowed properties in 'cpu'
> nodes. The result, not surprisely, is a number of additional properties
> and errors in .dts files. This series resolves those issues.
>
> There's still more properties in arm32 DTS files which I have not
> documented. Mostly yet more supply names and "fsl,soc-operating-points".
> What's a few more warnings on the 10000s of warnings...
>
> [...]
Applied to microchip-dt64, thanks!
[04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies
https://git.kernel.org/at91/c/ec32344d2a3b
Thanks,
Conor.
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-07 12:49 ` Rob Herring
@ 2025-04-07 16:18 ` Ulf Hansson
0 siblings, 0 replies; 62+ messages in thread
From: Ulf Hansson @ 2025-04-07 16:18 UTC (permalink / raw)
To: Rob Herring
Cc: Sudeep Holla, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Rafael J. Wysocki, Viresh Kumar,
Matthias Brugger, AngeloGioacchino Del Regno, Vincenzo Frascino,
Liviu Dudau, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Mon, 7 Apr 2025 at 14:49, Rob Herring <robh@kernel.org> wrote:
>
> On Mon, Apr 7, 2025 at 7:30 AM Sudeep Holla <sudeep.holla@arm.com> wrote:
> >
> > On Fri, Apr 04, 2025 at 12:36:33PM +0200, Ulf Hansson wrote:
> > > On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> > > >
> > > > The "power-domains" and "power-domains-names" properties are missing any
> > > > constraints. Add the constraints and drop the generic descriptions.
> > > >
> > > > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > > > ---
> > > > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > > > 1 file changed, 2 insertions(+), 6 deletions(-)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > index 6f74ebfd38df..5bd5822db8af 100644
> > > > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > @@ -313,19 +313,15 @@ properties:
> > > > maxItems: 1
> > > >
> > > > power-domains:
> > > > - description:
> > > > - List of phandles and PM domain specifiers, as defined by bindings of the
> > > > - PM domain provider (see also ../power_domain.txt).
> > > > + maxItems: 1
> > >
> > > There are more than one in some cases. The most is probably three, I think.
> > >
> >
> > +1, there are users using "perf" and "psci" together now.
>
> Where? That's just wrong.
For SCMI for example, but other QC platforms use it too.
"psci" is for CPU power management - we discussed the bad name "psci"
before, but as it's already widely deployed maybe leave it as is? A
better name would be "power", or something along those lines.
"perf" is for CPU performance scaling.
Kind regards
Uffe
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-04 13:09 ` Rob Herring
@ 2025-04-07 16:23 ` Ulf Hansson
2025-04-07 16:50 ` Rob Herring
0 siblings, 1 reply; 62+ messages in thread
From: Ulf Hansson @ 2025-04-07 16:23 UTC (permalink / raw)
To: Rob Herring
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Fri, 4 Apr 2025 at 15:09, Rob Herring <robh@kernel.org> wrote:
>
> On Fri, Apr 4, 2025 at 5:37 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> >
> > On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> > >
> > > The "power-domains" and "power-domains-names" properties are missing any
> > > constraints. Add the constraints and drop the generic descriptions.
> > >
> > > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > > ---
> > > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > > 1 file changed, 2 insertions(+), 6 deletions(-)
> > >
> > > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > index 6f74ebfd38df..5bd5822db8af 100644
> > > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > @@ -313,19 +313,15 @@ properties:
> > > maxItems: 1
> > >
> > > power-domains:
> > > - description:
> > > - List of phandles and PM domain specifiers, as defined by bindings of the
> > > - PM domain provider (see also ../power_domain.txt).
> > > + maxItems: 1
> >
> > There are more than one in some cases. The most is probably three, I think.
>
> Unless I missed it, testing says otherwise. What would the names be if
> more than 1 entry?
"psci", "perf", "cpr", etc
The "psci" is always for CPU power management, the other is for CPU
performance scaling (which may be more than one power-domain in some
cases).
I would suggest changing this to "maxItems: 3". That should be
sufficient I think.
Kind regards
Uffe
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-04 20:41 ` Konrad Dybcio
@ 2025-04-07 16:27 ` Ulf Hansson
2025-04-09 18:35 ` Konrad Dybcio
0 siblings, 1 reply; 62+ messages in thread
From: Ulf Hansson @ 2025-04-07 16:27 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc
On Fri, 4 Apr 2025 at 22:41, Konrad Dybcio
<konrad.dybcio@oss.qualcomm.com> wrote:
>
> On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> > "rpmhpd" is not documented nor used anywhere. As the enable-method is
> > "psci" use "psci" for the power-domain name.
> >
> > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
>
> "psci" is what we want here, but these platforms require some more
> massaging..
So this isn't for CPU performance scaling?
>
> These SoCs don't seem to have any PSCI idle states (deeper than WFI)
> described, which is no bueno, as they support some..
If PSCI PC mode is the only supported CPU suspend mode, we don't need
the power-domain topology to be described in DT as it's optional to
use.
Is this a PC or OSI based platform?
>
> I'll try to improve this.
>
> Konrad
>
Kind regards
Uffe
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-07 16:23 ` Ulf Hansson
@ 2025-04-07 16:50 ` Rob Herring
2025-04-08 12:17 ` Ulf Hansson
0 siblings, 1 reply; 62+ messages in thread
From: Rob Herring @ 2025-04-07 16:50 UTC (permalink / raw)
To: Ulf Hansson
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Mon, Apr 7, 2025 at 11:23 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
>
> On Fri, 4 Apr 2025 at 15:09, Rob Herring <robh@kernel.org> wrote:
> >
> > On Fri, Apr 4, 2025 at 5:37 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > >
> > > On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> > > >
> > > > The "power-domains" and "power-domains-names" properties are missing any
> > > > constraints. Add the constraints and drop the generic descriptions.
> > > >
> > > > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > > > ---
> > > > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > > > 1 file changed, 2 insertions(+), 6 deletions(-)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > index 6f74ebfd38df..5bd5822db8af 100644
> > > > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > @@ -313,19 +313,15 @@ properties:
> > > > maxItems: 1
> > > >
> > > > power-domains:
> > > > - description:
> > > > - List of phandles and PM domain specifiers, as defined by bindings of the
> > > > - PM domain provider (see also ../power_domain.txt).
> > > > + maxItems: 1
> > >
> > > There are more than one in some cases. The most is probably three, I think.
> >
> > Unless I missed it, testing says otherwise. What would the names be if
> > more than 1 entry?
>
> "psci", "perf", "cpr", etc
>
> The "psci" is always for CPU power management, the other is for CPU
> performance scaling (which may be more than one power-domain in some
> cases).
>
> I would suggest changing this to "maxItems: 3". That should be
> sufficient I think.
Again, my testing says 1 is enough. So where is a .dts file with 3 or 2?
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 00/19] Arm cpu schema clean-ups
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
` (19 preceding siblings ...)
2025-04-07 15:04 ` (subset) [PATCH 00/19] Arm cpu schema clean-ups Conor Dooley
@ 2025-04-08 5:57 ` Viresh Kumar
2025-04-10 14:14 ` Rob Herring
20 siblings, 1 reply; 62+ messages in thread
From: Viresh Kumar @ 2025-04-08 5:57 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 03-04-25, 21:59, Rob Herring (Arm) wrote:
> .../bindings/cpufreq/cpufreq-mediatek.txt | 250 ---------------------
> Documentation/devicetree/bindings/opp/opp-v1.yaml | 18 +-
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
--
viresh
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints
2025-04-07 16:50 ` Rob Herring
@ 2025-04-08 12:17 ` Ulf Hansson
0 siblings, 0 replies; 62+ messages in thread
From: Ulf Hansson @ 2025-04-08 12:17 UTC (permalink / raw)
To: Rob Herring
Cc: Stephan Gerhold, Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai,
Jernej Skrabec, Samuel Holland, Rafael J. Wysocki, Viresh Kumar,
Matthias Brugger, AngeloGioacchino Del Regno, Vincenzo Frascino,
Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson,
Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon,
Stephen Boyd, zhouyanjie, Conor Dooley, Nicolas Ferre,
Claudiu Beznea, Steen Hegelund, Daniel Machon, UNGLinuxDriver,
Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
+ Stephan Gerhold
On Mon, 7 Apr 2025 at 18:50, Rob Herring <robh@kernel.org> wrote:
>
> On Mon, Apr 7, 2025 at 11:23 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> >
> > On Fri, 4 Apr 2025 at 15:09, Rob Herring <robh@kernel.org> wrote:
> > >
> > > On Fri, Apr 4, 2025 at 5:37 AM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > > >
> > > > On Fri, 4 Apr 2025 at 05:06, Rob Herring (Arm) <robh@kernel.org> wrote:
> > > > >
> > > > > The "power-domains" and "power-domains-names" properties are missing any
> > > > > constraints. Add the constraints and drop the generic descriptions.
> > > > >
> > > > > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > > > > ---
> > > > > Documentation/devicetree/bindings/arm/cpus.yaml | 8 ++------
> > > > > 1 file changed, 2 insertions(+), 6 deletions(-)
> > > > >
> > > > > diff --git a/Documentation/devicetree/bindings/arm/cpus.yaml b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > > index 6f74ebfd38df..5bd5822db8af 100644
> > > > > --- a/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > > +++ b/Documentation/devicetree/bindings/arm/cpus.yaml
> > > > > @@ -313,19 +313,15 @@ properties:
> > > > > maxItems: 1
> > > > >
> > > > > power-domains:
> > > > > - description:
> > > > > - List of phandles and PM domain specifiers, as defined by bindings of the
> > > > > - PM domain provider (see also ../power_domain.txt).
> > > > > + maxItems: 1
> > > >
> > > > There are more than one in some cases. The most is probably three, I think.
> > >
> > > Unless I missed it, testing says otherwise. What would the names be if
> > > more than 1 entry?
> >
> > "psci", "perf", "cpr", etc
> >
> > The "psci" is always for CPU power management, the other is for CPU
> > performance scaling (which may be more than one power-domain in some
> > cases).
> >
> > I would suggest changing this to "maxItems: 3". That should be
> > sufficient I think.
>
> Again, my testing says 1 is enough. So where is a .dts file with 3 or 2?
Right! I assume those with 3 or 2 just haven't made it upstream yet,
but sure they are cases. If you prefer to update the binding later,
that's fine by me, but I just wanted to avoid unnecessary churns for
you.
For example, msm8916 seems to be one case that already uses "psci",
but requires an additional two power-domains for performance-scaling.
At least according to earlier discussions [1] with Stephan Gerhold.
Moreover, it's perfectly fine to also describe CPU's idle-states by
using the power-domains/domain-idle-states DT bindings, according to
the bindings for PSCI [2] (no matter of PSCI OSI/PC mode). In other
words, for all those that only have a "perf" or "cpr" power-domain
today (or whatever name is used for the performance-scaling domain),
those could easily add a "psci" power-domain too, depending on how
they choose to describe things in DT.
Kind regards
Uffe
[1]
https://lore.kernel.org/all/ZRcC2IRRv6dtKY65@gerhold.net/
[2]
Documentation/devicetree/bindings/arm/psci.yaml
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-07 16:27 ` Ulf Hansson
@ 2025-04-09 18:35 ` Konrad Dybcio
2025-04-10 7:10 ` Stephan Gerhold
0 siblings, 1 reply; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-09 18:35 UTC (permalink / raw)
To: Ulf Hansson, Konrad Dybcio
Cc: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc
On 4/7/25 6:27 PM, Ulf Hansson wrote:
> On Fri, 4 Apr 2025 at 22:41, Konrad Dybcio
> <konrad.dybcio@oss.qualcomm.com> wrote:
>>
>> On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
>>> "rpmhpd" is not documented nor used anywhere. As the enable-method is
>>> "psci" use "psci" for the power-domain name.
>>>
>>> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
>>> ---
>>
>> "psci" is what we want here, but these platforms require some more
>> massaging..
>
> So this isn't for CPU performance scaling?
Nope!
>
>>
>> These SoCs don't seem to have any PSCI idle states (deeper than WFI)
>> described, which is no bueno, as they support some..
>
> If PSCI PC mode is the only supported CPU suspend mode, we don't need
> the power-domain topology to be described in DT as it's optional to
> use.
>
> Is this a PC or OSI based platform?
Unfortunately it seems like only PC mode is implemented.
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties
2025-04-04 2:59 ` [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties Rob Herring (Arm)
2025-04-04 12:39 ` Andre Przywara
@ 2025-04-10 6:43 ` Jernej Škrabec
1 sibling, 0 replies; 62+ messages in thread
From: Jernej Škrabec @ 2025-04-10 6:43 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Samuel Holland,
Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm,
Rob Herring (Arm)
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
Dne petek, 4. april 2025 ob 04:59:22 Srednjeevropski poletni čas je Rob Herring (Arm) napisal(a):
> 'clock-latency-ns' is not a valid property for CPU nodes. It belongs in
> OPP table (which has it). Drop them from the CPU nodes.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Best regards,
Jernej
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-09 18:35 ` Konrad Dybcio
@ 2025-04-10 7:10 ` Stephan Gerhold
2025-04-10 16:25 ` Konrad Dybcio
0 siblings, 1 reply; 62+ messages in thread
From: Stephan Gerhold @ 2025-04-10 7:10 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Ulf Hansson, Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc,
Manivannan Sadhasivam
On Wed, Apr 09, 2025 at 08:35:29PM +0200, Konrad Dybcio wrote:
> On 4/7/25 6:27 PM, Ulf Hansson wrote:
> > On Fri, 4 Apr 2025 at 22:41, Konrad Dybcio
> > <konrad.dybcio@oss.qualcomm.com> wrote:
> >>
> >> On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
> >>> "rpmhpd" is not documented nor used anywhere. As the enable-method is
> >>> "psci" use "psci" for the power-domain name.
> >>>
> >>> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> >>> ---
> >>
> >> "psci" is what we want here, but these platforms require some more
> >> massaging..
> >
> > So this isn't for CPU performance scaling?
>
> Nope!
>
Huh, this is definitely "perf" (= cpufreq) and not "psci" (= cpuidle).
If you run blame on this line you get to:
commit 0ec7bde7b590f8efa5823df3b52b32dd373060ff
Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Date: Thu Apr 8 22:34:45 2021 +0530
ARM: dts: qcom: sdx55: Add CPUFreq support
Add CPUFreq support to SDX55 platform using the cpufreq-dt driver.
There is no dedicated hardware block available on this platform to
carry on the CPUFreq duties. Hence, it is accomplished using the CPU
clock and regulators tied together by the operating points table.
https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0ec7bde7b590f8efa5823df3b52b32dd373060ff
The OPP table looks like it's supposed to set SDX55_CX performance
states according to the chosen CPU frequency. MSM8909 has a similar
setup where the CPU is supplied directly by VDDCX and we describe that
with "perf" too [1].
What I don't understand is why the name "rpmhpd" does not appear
in any driver. The MSM8909 setup goes via qcom-cpufreq-nvmem, where
"perf" is directly assigned for cpufreq scaling. I can only think of two
possible reasons:
- The power domain is implicitly attached to the OPP table(?), because
there is just a single power domain defined on the CPU, or
- This was never working correctly.
For both cases, I think it would be best to change the power domain name
to "perf" like Uffe suggested.
Thanks,
Stephan
[1]: https://lore.kernel.org/linux-pm/20231018-msm8909-cpufreq-v2-0-0962df95f654@kernkonzept.com/
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 02/19] arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names
2025-04-04 2:59 ` [PATCH 02/19] arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names Rob Herring (Arm)
@ 2025-04-10 12:36 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 62+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-04-10 12:36 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 4/4/25 04:59, Rob Herring (Arm) wrote:
> There's no need include the CPU number in the L2 cache node names as
> the names are local to the CPU nodes. The documented node name is
> also just "l2-cache".
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm64/boot/dts/broadcom/bcm2712.dtsi | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes
2025-04-04 2:59 ` [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes Rob Herring (Arm)
@ 2025-04-10 12:37 ` Philippe Mathieu-Daudé
2025-04-10 14:12 ` Sudeep Holla
1 sibling, 0 replies; 62+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-04-10 12:37 UTC (permalink / raw)
To: Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm
Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On 4/4/25 04:59, Rob Herring (Arm) wrote:
> There's no need include the CPU number in the L2 cache node names as
> the names are local to the CPU nodes. The documented node name is
> also just "l2-cache".
>
> The L3 cache is not part of cpu@0/l2-cache as it is shared among all
> cores. Move it to /cpus node which is the typical place for shared
> caches.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm64/boot/dts/arm/morello.dtsi | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies
2025-04-04 14:56 ` Rob Herring (Arm)
@ 2025-04-10 14:11 ` Rob Herring
2025-04-10 14:14 ` Dmitry Baryshkov
0 siblings, 1 reply; 62+ messages in thread
From: Rob Herring @ 2025-04-10 14:11 UTC (permalink / raw)
To: Rob Herring (Arm), Stephan Gerhold
Cc: Bjorn Andersson, Viresh Kumar, linux-kernel, Conor Dooley,
linux-rockchip, Daniel Machon, Rafael J. Wysocki, Shawn Guo,
Conor Dooley, Konrad Dybcio, UNGLinuxDriver, Jerome Brunet,
Kevin Hilman, linux-sunxi, Liviu Dudau, linux-arm-kernel,
Fabio Estevam, Neil Armstrong, Stephen Boyd,
AngeloGioacchino Del Regno, Vincenzo Frascino, linux-renesas-soc,
Martin Blumenstingl, Magnus Damm, Krzysztof Kozlowski,
Geert Uytterhoeven, Viresh Kumar, Pengutronix Kernel Team,
zhouyanjie, Claudiu Beznea, Heiko Stuebner, Jernej Skrabec,
linux-pm, linux-mediatek, Chen-Yu Tsai, linux-mips, imx,
Samuel Holland, Sudeep Holla, Nishanth Menon, devicetree,
Thomas Bogendoerfer, linux-arm-msm, Nicolas Ferre, linux-amlogic,
Sascha Hauer, Steen Hegelund, Lorenzo Pieralisi, Matthias Brugger
On Fri, Apr 4, 2025 at 9:56 AM Rob Herring (Arm) <robh@kernel.org> wrote:
>
>
> On Thu, 03 Apr 2025 21:59:35 -0500, Rob Herring (Arm) wrote:
> > Replace the prose for properties dependent on specific "enable-method"
> > values with schemas defining the same requirements.
> >
> > Both "qcom,acc" and "qcom,saw" properties appear to be required for any
> > of the Qualcomm enable-method values, so the schema is a bit simpler
> > than what the text said. The references to arm/msm/qcom,saw2.txt and
> > arm/msm/qcom,kpss-acc.txt are out of date, so just drop them.
> >
> > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > ---
> > Documentation/devicetree/bindings/arm/cpus.yaml | 82 +++++++++++++++----------
> > 1 file changed, 49 insertions(+), 33 deletions(-)
> >
>
> My bot found errors running 'make dt_binding_check' on your patch:
>
> yamllint warnings/errors:
>
> dtschema/dtc warnings/errors:
> /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/qcom/qcom,saw2.example.dtb: cpu@0: 'qcom,acc' is a required property
> from schema $id: http://devicetree.org/schemas/arm/cpus.yaml#
Any Qcom folks want to tell me whether both qcom,acc and qcom,saw are
required or not? All the actual users have both.
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes
2025-04-04 2:59 ` [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes Rob Herring (Arm)
2025-04-10 12:37 ` Philippe Mathieu-Daudé
@ 2025-04-10 14:12 ` Sudeep Holla
1 sibling, 0 replies; 62+ messages in thread
From: Sudeep Holla @ 2025-04-10 14:12 UTC (permalink / raw)
To: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm,
Rob Herring (Arm)
Cc: Sudeep Holla, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc
On Thu, 03 Apr 2025 21:59:21 -0500, Rob Herring (Arm) wrote:
> The Arm cpu.yaml schema fails to restrict allowed properties in 'cpu'
> nodes. The result, not surprisely, is a number of additional properties
> and errors in .dts files. This series resolves those issues.
>
> There's still more properties in arm32 DTS files which I have not
> documented. Mostly yet more supply names and "fsl,soc-operating-points".
> What's a few more warnings on the 10000s of warnings...
>
> [...]
Applied to sudeep.holla/linux (for-next/juno/fixes), thanks!
[03/19] arm64: dts: morello: Fix-up cache nodes
https://git.kernel.org/sudeep.holla/c/0c562281199f
--
Regards,
Sudeep
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies
2025-04-10 14:11 ` Rob Herring
@ 2025-04-10 14:14 ` Dmitry Baryshkov
0 siblings, 0 replies; 62+ messages in thread
From: Dmitry Baryshkov @ 2025-04-10 14:14 UTC (permalink / raw)
To: Rob Herring
Cc: Stephan Gerhold, Bjorn Andersson, Viresh Kumar, linux-kernel,
Conor Dooley, linux-rockchip, Daniel Machon, Rafael J. Wysocki,
Shawn Guo, Conor Dooley, Konrad Dybcio, UNGLinuxDriver,
Jerome Brunet, Kevin Hilman, linux-sunxi, Liviu Dudau,
linux-arm-kernel, Fabio Estevam, Neil Armstrong, Stephen Boyd,
AngeloGioacchino Del Regno, Vincenzo Frascino, linux-renesas-soc,
Martin Blumenstingl, Magnus Damm, Krzysztof Kozlowski,
Geert Uytterhoeven, Viresh Kumar, Pengutronix Kernel Team,
zhouyanjie, Claudiu Beznea, Heiko Stuebner, Jernej Skrabec,
linux-pm, linux-mediatek, Chen-Yu Tsai, linux-mips, imx,
Samuel Holland, Sudeep Holla, Nishanth Menon, devicetree,
Thomas Bogendoerfer, linux-arm-msm, Nicolas Ferre, linux-amlogic,
Sascha Hauer, Steen Hegelund, Lorenzo Pieralisi, Matthias Brugger
On Thu, Apr 10, 2025 at 09:11:22AM -0500, Rob Herring wrote:
> On Fri, Apr 4, 2025 at 9:56 AM Rob Herring (Arm) <robh@kernel.org> wrote:
> >
> >
> > On Thu, 03 Apr 2025 21:59:35 -0500, Rob Herring (Arm) wrote:
> > > Replace the prose for properties dependent on specific "enable-method"
> > > values with schemas defining the same requirements.
> > >
> > > Both "qcom,acc" and "qcom,saw" properties appear to be required for any
> > > of the Qualcomm enable-method values, so the schema is a bit simpler
> > > than what the text said. The references to arm/msm/qcom,saw2.txt and
> > > arm/msm/qcom,kpss-acc.txt are out of date, so just drop them.
> > >
> > > Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> > > ---
> > > Documentation/devicetree/bindings/arm/cpus.yaml | 82 +++++++++++++++----------
> > > 1 file changed, 49 insertions(+), 33 deletions(-)
> > >
> >
> > My bot found errors running 'make dt_binding_check' on your patch:
> >
> > yamllint warnings/errors:
> >
> > dtschema/dtc warnings/errors:
> > /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/soc/qcom/qcom,saw2.example.dtb: cpu@0: 'qcom,acc' is a required property
> > from schema $id: http://devicetree.org/schemas/arm/cpus.yaml#
>
> Any Qcom folks want to tell me whether both qcom,acc and qcom,saw are
> required or not? All the actual users have both.
Yes, as far as I remember.
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 00/19] Arm cpu schema clean-ups
2025-04-08 5:57 ` Viresh Kumar
@ 2025-04-10 14:14 ` Rob Herring
0 siblings, 0 replies; 62+ messages in thread
From: Rob Herring @ 2025-04-10 14:14 UTC (permalink / raw)
To: Viresh Kumar
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, Geert Uytterhoeven, Magnus Damm, devicetree,
linux-arm-kernel, linux-sunxi, linux-kernel, linux-pm,
linux-mediatek, linux-arm-msm, linux-mips, imx, linux-rockchip,
linux-amlogic, linux-renesas-soc
On Tue, Apr 8, 2025 at 12:57 AM Viresh Kumar <viresh.kumar@linaro.org> wrote:
>
> On 03-04-25, 21:59, Rob Herring (Arm) wrote:
> > .../bindings/cpufreq/cpufreq-mediatek.txt | 250 ---------------------
> > Documentation/devicetree/bindings/opp/opp-v1.yaml | 18 +-
>
> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
In the future, please consider acking the 2 patches rather than the
cover letter because 'b4 trailers' thinks you acked everything.
Rob
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names
2025-04-10 7:10 ` Stephan Gerhold
@ 2025-04-10 16:25 ` Konrad Dybcio
0 siblings, 0 replies; 62+ messages in thread
From: Konrad Dybcio @ 2025-04-10 16:25 UTC (permalink / raw)
To: Stephan Gerhold, Konrad Dybcio
Cc: Ulf Hansson, Rob Herring (Arm), Krzysztof Kozlowski, Conor Dooley,
Chen-Yu Tsai, Jernej Skrabec, Samuel Holland, Rafael J. Wysocki,
Viresh Kumar, Matthias Brugger, AngeloGioacchino Del Regno,
Vincenzo Frascino, Liviu Dudau, Sudeep Holla, Lorenzo Pieralisi,
Bjorn Andersson, Konrad Dybcio, Thomas Bogendoerfer, Viresh Kumar,
Nishanth Menon, Stephen Boyd, zhouyanjie, Conor Dooley,
Nicolas Ferre, Claudiu Beznea, Steen Hegelund, Daniel Machon,
UNGLinuxDriver, Shawn Guo, Sascha Hauer, Pengutronix Kernel Team,
Fabio Estevam, Heiko Stuebner, Neil Armstrong, Kevin Hilman,
Jerome Brunet, Martin Blumenstingl, Geert Uytterhoeven,
Magnus Damm, devicetree, linux-arm-kernel, linux-sunxi,
linux-kernel, linux-pm, linux-mediatek, linux-arm-msm, linux-mips,
imx, linux-rockchip, linux-amlogic, linux-renesas-soc,
Manivannan Sadhasivam
On 4/10/25 9:10 AM, Stephan Gerhold wrote:
> On Wed, Apr 09, 2025 at 08:35:29PM +0200, Konrad Dybcio wrote:
>> On 4/7/25 6:27 PM, Ulf Hansson wrote:
>>> On Fri, 4 Apr 2025 at 22:41, Konrad Dybcio
>>> <konrad.dybcio@oss.qualcomm.com> wrote:
>>>>
>>>> On 4/4/25 4:59 AM, Rob Herring (Arm) wrote:
>>>>> "rpmhpd" is not documented nor used anywhere. As the enable-method is
>>>>> "psci" use "psci" for the power-domain name.
>>>>>
>>>>> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
>>>>> ---
>>>>
>>>> "psci" is what we want here, but these platforms require some more
>>>> massaging..
>>>
>>> So this isn't for CPU performance scaling?
>>
>> Nope!
>>
>
> Huh, this is definitely "perf" (= cpufreq) and not "psci" (= cpuidle).
> If you run blame on this line you get to:
>
> commit 0ec7bde7b590f8efa5823df3b52b32dd373060ff
> Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> Date: Thu Apr 8 22:34:45 2021 +0530
>
> ARM: dts: qcom: sdx55: Add CPUFreq support
>
> Add CPUFreq support to SDX55 platform using the cpufreq-dt driver.
> There is no dedicated hardware block available on this platform to
> carry on the CPUFreq duties. Hence, it is accomplished using the CPU
> clock and regulators tied together by the operating points table.
>
> https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0ec7bde7b590f8efa5823df3b52b32dd373060ff
>
> The OPP table looks like it's supposed to set SDX55_CX performance
> states according to the chosen CPU frequency. MSM8909 has a similar
> setup where the CPU is supplied directly by VDDCX and we describe that
> with "perf" too [1].
Ohh right I was under the impression that qcom,cpufreq-hw is used on
those too, but apparently not..
Konrad
^ permalink raw reply [flat|nested] 62+ messages in thread
* Re: [PATCH 10/19] arm/arm64: dts: imx: Drop redundant CPU "clock-latency"
2025-04-04 2:59 ` [PATCH 10/19] arm/arm64: dts: imx: Drop redundant CPU "clock-latency" Rob Herring (Arm)
@ 2025-04-23 9:39 ` Shawn Guo
0 siblings, 0 replies; 62+ messages in thread
From: Shawn Guo @ 2025-04-23 9:39 UTC (permalink / raw)
To: Rob Herring (Arm)
Cc: Krzysztof Kozlowski, Conor Dooley, Chen-Yu Tsai, Jernej Skrabec,
Samuel Holland, Rafael J. Wysocki, Viresh Kumar, Matthias Brugger,
AngeloGioacchino Del Regno, Vincenzo Frascino, Liviu Dudau,
Sudeep Holla, Lorenzo Pieralisi, Bjorn Andersson, Konrad Dybcio,
Thomas Bogendoerfer, Viresh Kumar, Nishanth Menon, Stephen Boyd,
zhouyanjie, Conor Dooley, Nicolas Ferre, Claudiu Beznea,
Steen Hegelund, Daniel Machon, UNGLinuxDriver, Shawn Guo,
Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
Heiko Stuebner, Neil Armstrong, Kevin Hilman, Jerome Brunet,
Martin Blumenstingl, devicetree, linux-arm-kernel, linux-kernel,
imx
On Thu, Apr 03, 2025 at 09:59:31PM -0500, Rob Herring (Arm) wrote:
> The "clock-latency" property is part of the deprecated opp-v1 binding
> and is redundant if the opp-v2 table has equal or larger values in any
> "clock-latency-ns". The OPP tables have values of 150000, so it can be
> removed.
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> arch/arm/boot/dts/nxp/imx/imx7s.dtsi | 1 -
> arch/arm64/boot/dts/freescale/imx8mm.dtsi | 4 ----
> arch/arm64/boot/dts/freescale/imx8mn.dtsi | 4 ----
> arch/arm64/boot/dts/freescale/imx8mp.dtsi | 4 ----
> arch/arm64/boot/dts/freescale/imx8mq.dtsi | 4 ----
> 5 files changed, 17 deletions(-)
Applied as two patches, one for imx/dt branch and the other for imx/dt64.
Shawn
^ permalink raw reply [flat|nested] 62+ messages in thread
end of thread, other threads:[~2025-04-23 9:41 UTC | newest]
Thread overview: 62+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-04 2:59 [PATCH 00/19] Arm cpu schema clean-ups Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 01/19] arm64: dts: allwinner: h5/h6: Drop spurious 'clock-latency-ns' properties Rob Herring (Arm)
2025-04-04 12:39 ` Andre Przywara
2025-04-10 6:43 ` Jernej Škrabec
2025-04-04 2:59 ` [PATCH 02/19] arm64: dts: broadcom: bcm2712: Use "l2-cache" for L2 cache node names Rob Herring (Arm)
2025-04-10 12:36 ` Philippe Mathieu-Daudé
2025-04-04 2:59 ` [PATCH 03/19] arm64: dts: morello: Fix-up cache nodes Rob Herring (Arm)
2025-04-10 12:37 ` Philippe Mathieu-Daudé
2025-04-10 14:12 ` Sudeep Holla
2025-04-04 2:59 ` [PATCH 04/19] arm64: dts: microchip: sparx5: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
2025-04-04 9:43 ` Daniel Machon
2025-04-04 2:59 ` [PATCH 05/19] arm64: dts: qcom: qdu1000: Fix qcom,freq-domain Rob Herring (Arm)
2025-04-04 20:28 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 06/19] arm64: dts: qcom: msm8939: Fix CPU node "enable-method" property dependencies Rob Herring (Arm)
2025-04-04 12:04 ` Stephan Gerhold
2025-04-04 13:18 ` Rob Herring
2025-04-04 14:10 ` Rob Herring
2025-04-04 2:59 ` [PATCH 07/19] arm64: dts: qcom: msm8992-lg-h815: " Rob Herring (Arm)
2025-04-04 20:30 ` Konrad Dybcio
2025-04-04 20:32 ` Konrad Dybcio
2025-04-05 14:42 ` Alexander Reimelt
2025-04-04 2:59 ` [PATCH 08/19] arm: dts: qcom: msm8916: Move "qcom,acc" and "qcom,saw" to 32-bit .dtsi Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 09/19] arm: dts: qcom: sdx55/sdx65: Fix CPU power-domain-names Rob Herring (Arm)
2025-04-04 10:30 ` Ulf Hansson
2025-04-04 14:05 ` Rob Herring
2025-04-04 20:41 ` Konrad Dybcio
2025-04-07 16:27 ` Ulf Hansson
2025-04-09 18:35 ` Konrad Dybcio
2025-04-10 7:10 ` Stephan Gerhold
2025-04-10 16:25 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 10/19] arm/arm64: dts: imx: Drop redundant CPU "clock-latency" Rob Herring (Arm)
2025-04-23 9:39 ` Shawn Guo
2025-04-04 2:59 ` [PATCH 11/19] arm: dts: qcom: ipq4019: " Rob Herring (Arm)
2025-04-04 20:42 ` Konrad Dybcio
2025-04-04 2:59 ` [PATCH 12/19] arm: dts: rockchip: " Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 13/19] arm64: dts: amlogic: " Rob Herring (Arm)
2025-04-04 7:11 ` Neil Armstrong
2025-04-04 2:59 ` [PATCH 14/19] dt-bindings: arm/cpus: Add schemas for "enable-method" dependencies Rob Herring (Arm)
2025-04-04 14:56 ` Rob Herring (Arm)
2025-04-10 14:11 ` Rob Herring
2025-04-10 14:14 ` Dmitry Baryshkov
2025-04-07 12:28 ` Sudeep Holla
2025-04-04 2:59 ` [PATCH 15/19] dt-bindings: arm/cpus: Re-wrap 'description' entries Rob Herring (Arm)
2025-04-04 2:59 ` [PATCH 16/19] dt-bindings: Reference opp-v1 schema in CPU schemas Rob Herring (Arm)
2025-04-04 11:32 ` AngeloGioacchino Del Regno
2025-04-04 2:59 ` [PATCH 17/19] dt-bindings: arm/cpus: Add missing properties Rob Herring (Arm)
2025-04-04 11:32 ` AngeloGioacchino Del Regno
2025-04-04 2:59 ` [PATCH 18/19] dt-bindings: arm/cpus: Add power-domains constraints Rob Herring (Arm)
2025-04-04 10:36 ` Ulf Hansson
2025-04-04 13:09 ` Rob Herring
2025-04-07 16:23 ` Ulf Hansson
2025-04-07 16:50 ` Rob Herring
2025-04-08 12:17 ` Ulf Hansson
2025-04-07 12:30 ` Sudeep Holla
2025-04-07 12:49 ` Rob Herring
2025-04-07 16:18 ` Ulf Hansson
2025-04-04 11:35 ` AngeloGioacchino Del Regno
2025-04-04 2:59 ` [PATCH 19/19] dt-bindings: cpufreq: Drop redundant Mediatek binding Rob Herring (Arm)
2025-04-04 11:32 ` AngeloGioacchino Del Regno
2025-04-07 15:04 ` (subset) [PATCH 00/19] Arm cpu schema clean-ups Conor Dooley
2025-04-08 5:57 ` Viresh Kumar
2025-04-10 14:14 ` Rob Herring
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).