imx.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [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).