* [PATCH] arm64: dts: rockchip: Add cpu-idle-states for RK356x
@ 2026-11-02 17:39 Chris Morgan
0 siblings, 0 replies; only message in thread
From: Chris Morgan @ 2026-11-02 17:39 UTC (permalink / raw)
To: linux-rockchip
Cc: devicetree, diederik, arseney300, michael.riesch, shawn.lin,
heiko, conor+dt, krzk+dt, robh, Chris Morgan
From: Chris Morgan <macromorgan@hotmail.com>
Add cpu-idle-states for the rk356x-base to affect all rk3566 and
rk3568 devices. With the fix implemented by upstream Arm Trusted
Firmware [1] this now works on both mainline A-TF and the vendor
provided binary A-TF.
Tests on my devices show this parameter provides idle power saving
of around 5-10%.
[1] https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/55024
Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
---
arch/arm64/boot/dts/rockchip/rk356x-base.dtsi | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi b/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi
index 1a4562df20ee..7e23f6983448 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi
@@ -56,6 +56,7 @@ cpu0: cpu@0 {
reg = <0x0 0x0>;
clocks = <&scmi_clk SCMI_CLK_CPU>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -72,6 +73,7 @@ cpu1: cpu@100 {
reg = <0x0 0x100>;
clocks = <&scmi_clk SCMI_CLK_CPU>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -88,6 +90,7 @@ cpu2: cpu@200 {
reg = <0x0 0x200>;
clocks = <&scmi_clk SCMI_CLK_CPU>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -104,6 +107,7 @@ cpu3: cpu@300 {
reg = <0x0 0x300>;
clocks = <&scmi_clk SCMI_CLK_CPU>;
#cooling-cells = <2>;
+ cpu-idle-states = <&CPU_SLEEP>;
enable-method = "psci";
i-cache-size = <0x8000>;
i-cache-line-size = <64>;
@@ -113,6 +117,18 @@ cpu3: cpu@300 {
d-cache-sets = <128>;
next-level-cache = <&l3_cache>;
};
+
+ idle-states {
+ entry-method = "psci";
+ CPU_SLEEP: cpu-sleep {
+ compatible = "arm,idle-state";
+ arm,psci-suspend-param = <0x0010000>;
+ entry-latency-us = <100>;
+ exit-latency-us = <120>;
+ local-timer-stop;
+ min-residency-us = <1000>;
+ };
+ };
};
/*
--
2.53.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-11-02 17:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-02 17:39 [PATCH] arm64: dts: rockchip: Add cpu-idle-states for RK356x Chris Morgan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox