* [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core
@ 2025-10-13 6:59 Martin Kepplinger-Novaković
2025-10-13 6:59 ` [PATCH v2 2/2] arm64: dts: imx8mp: add cpuidle cooling device to the alert trip point Martin Kepplinger-Novaković
2025-10-27 5:55 ` [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core Shawn Guo
0 siblings, 2 replies; 3+ messages in thread
From: Martin Kepplinger-Novaković @ 2025-10-13 6:59 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, festevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel,
Martin Kepplinger-Novaković
The thermal framework can use the cpu-idle-states as
described for imx8mp as an alternative or in parallel to
cpufreq.
Add the DT node to the cpu so the cooling devices will be present
and the thermal zone descriptions can use them.
Signed-off-by: Martin Kepplinger-Novaković <martink@posteo.de>
---
hi Shawn and all,
SoCs rarely describe and enable the idle-inject mechanism. IMO it is
desired if only in order to have an example of it merged.
revision history:
v2: thanks Shawn
- add a newline between property and child node.
v1: https://lore.kernel.org/linux-arm-kernel/20250715055903.1806961-1-martink@posteo.de/
thanks,
martin
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 24 +++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index a3de6604e29f..9b59f53952d5 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -80,6 +80,12 @@ A53_0: cpu@0 {
operating-points-v2 = <&a53_opp_table>;
#cooling-cells = <2>;
cpu-idle-states = <&cpu_pd_wait>;
+
+ cpu0_therm: thermal-idle {
+ #cooling-cells = <2>;
+ duration-us = <10000>;
+ exit-latency-us = <700>;
+ };
};
A53_1: cpu@1 {
@@ -98,6 +104,12 @@ A53_1: cpu@1 {
operating-points-v2 = <&a53_opp_table>;
#cooling-cells = <2>;
cpu-idle-states = <&cpu_pd_wait>;
+
+ cpu1_therm: thermal-idle {
+ #cooling-cells = <2>;
+ duration-us = <10000>;
+ exit-latency-us = <700>;
+ };
};
A53_2: cpu@2 {
@@ -116,6 +128,12 @@ A53_2: cpu@2 {
operating-points-v2 = <&a53_opp_table>;
#cooling-cells = <2>;
cpu-idle-states = <&cpu_pd_wait>;
+
+ cpu2_therm: thermal-idle {
+ #cooling-cells = <2>;
+ duration-us = <10000>;
+ exit-latency-us = <700>;
+ };
};
A53_3: cpu@3 {
@@ -134,6 +152,12 @@ A53_3: cpu@3 {
operating-points-v2 = <&a53_opp_table>;
#cooling-cells = <2>;
cpu-idle-states = <&cpu_pd_wait>;
+
+ cpu3_therm: thermal-idle {
+ #cooling-cells = <2>;
+ duration-us = <10000>;
+ exit-latency-us = <700>;
+ };
};
A53_L2: l2-cache0 {
--
2.47.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH v2 2/2] arm64: dts: imx8mp: add cpuidle cooling device to the alert trip point
2025-10-13 6:59 [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core Martin Kepplinger-Novaković
@ 2025-10-13 6:59 ` Martin Kepplinger-Novaković
2025-10-27 5:55 ` [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core Shawn Guo
1 sibling, 0 replies; 3+ messages in thread
From: Martin Kepplinger-Novaković @ 2025-10-13 6:59 UTC (permalink / raw)
To: robh, krzk+dt, conor+dt, shawnguo, s.hauer, festevam
Cc: devicetree, imx, linux-arm-kernel, linux-kernel,
Martin Kepplinger-Novaković
Idle-inject up to 50% of all cpu's time in order to help cpufreq
to keep the temperature below the trip points.
Signed-off-by: Martin Kepplinger-Novaković <martink@posteo.de>
---
arch/arm64/boot/dts/freescale/imx8mp.dtsi | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 9b59f53952d5..7ab321af9e15 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -347,7 +347,11 @@ map0 {
<&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&gpu3d THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&gpu2d THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
- <&npu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ <&npu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu0_therm 0 50>,
+ <&cpu1_therm 0 50>,
+ <&cpu2_therm 0 50>,
+ <&cpu3_therm 0 50>;
};
};
};
@@ -380,7 +384,11 @@ map0 {
<&A53_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&gpu3d THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&gpu2d THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
- <&npu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ <&npu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu0_therm 0 50>,
+ <&cpu1_therm 0 50>,
+ <&cpu2_therm 0 50>,
+ <&cpu3_therm 0 50>;
};
};
};
--
2.47.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core
2025-10-13 6:59 [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core Martin Kepplinger-Novaković
2025-10-13 6:59 ` [PATCH v2 2/2] arm64: dts: imx8mp: add cpuidle cooling device to the alert trip point Martin Kepplinger-Novaković
@ 2025-10-27 5:55 ` Shawn Guo
1 sibling, 0 replies; 3+ messages in thread
From: Shawn Guo @ 2025-10-27 5:55 UTC (permalink / raw)
To: Martin Kepplinger-Novaković
Cc: robh, krzk+dt, conor+dt, shawnguo, s.hauer, festevam, devicetree,
imx, linux-arm-kernel, linux-kernel
On Mon, Oct 13, 2025 at 06:59:19AM +0000, Martin Kepplinger-Novaković wrote:
> The thermal framework can use the cpu-idle-states as
> described for imx8mp as an alternative or in parallel to
> cpufreq.
>
> Add the DT node to the cpu so the cooling devices will be present
> and the thermal zone descriptions can use them.
>
> Signed-off-by: Martin Kepplinger-Novaković <martink@posteo.de>
Applied both, thanks!
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-10-27 5:55 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-13 6:59 [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core Martin Kepplinger-Novaković
2025-10-13 6:59 ` [PATCH v2 2/2] arm64: dts: imx8mp: add cpuidle cooling device to the alert trip point Martin Kepplinger-Novaković
2025-10-27 5:55 ` [PATCH v2 1/2] arm64: dts: imx8mp: add idle cooling devices to cpu core Shawn Guo
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).