Thread (9 messages) 9 messages, 2 authors, 2020-05-27

RE: [PATCH] thermal: imx8mm: Add get_trend ops

From: Anson Huang <hidden>
Date: 2020-05-24 00:50:23
Also in: linux-pm, lkml

Hi, Daniel
Subject: Re: [PATCH] thermal: imx8mm: Add get_trend ops

On 23/05/2020 02:35, Anson Huang wrote:
quoted
Hi, Daniel

quoted
Subject: Re: [PATCH] thermal: imx8mm: Add get_trend ops

On 13/05/2020 04:58, Anson Huang wrote:
quoted
Add get_trend ops for i.MX8MM thermal to apply fast cooling
mechanism, when temperature exceeds passive trip point, the highest
cooling action will be applied, and when temperature drops to lower
than the margin below passive trip point, the lowest cooling action
will be applied.
You are not describing what is the goal of this change.
The goal of this change is to make sure whenever temperature exceeds
passive trip point, the highest cooling action will be applied
immediately, e.g., if there are many cpufreq OPP, the default cooling
will be step by step, it will take some more rounds to make cpufreq drop to
lowest OPP, while on i.MX, we expect the cpufreq drop to lowest OPP
immediately.

Whatever the slope of the temperature increase?
Yes.
quoted hunk ↗ jump to hunk
quoted
quoted
IIUC, the resulting change will be an on/off action. The thermal zone
is mitigated with the highest cooling effect, so the lowest OPP, then
the temperature trend is stable until it goes below the trip - margin
where the mitigation is stopped.
Yes, your understanding is correctly, once the temperature exceeds
passive trip point, the highest cooling action will be applied
immediately and then it will be stable there until temperature drop to
trip - margin, then the cooling action will be cancelled, the margin is to avoid
the back and forth near the passive trip point.
quoted
quoted
Except, I'm missing something, setting a trip point with a 10000
hysteresis and a cooling map min/max set to the highest opp will result on
the same.
quoted
Yes setting cooling map min/max cooling state to highest OPP will make
the highest cooling action applied immediately, and to have the
function of cooling action being cancelled when temperature drops to
trip - margin, I have to define another trip point, say passive trip
point is 85000, and cooling map min/max set to highest OPP in passive
trip point then add another trip point named "active" with 75000, and
without any cooling map in it, right?

May be I misunderstood but only the change as below is needed. No need to
add a trip point, especially an 'active' trip which is a for an active cooling
device like a fan.
diff --git a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
index cc7152ecedd9..bea263bd06b4 100644
--- a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
@@ -231,10 +231,10 @@ cooling-maps {
 				map0 {
 					trip = <&cpu_alert0>;
 					cooling-device =
-						<&A53_0 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>,
-						<&A53_1 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>,
-						<&A53_2 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>,
-						<&A53_3 THERMAL_NO_LIMIT
THERMAL_NO_LIMIT>;
+						<&A53_0 2 2>,
+						<&A53_1 2 2>,
+						<&A53_2 2 2>,
+						<&A53_3 2 2>
 				};
 			};
 		};
Thanks, I will have a try to see if it meets our expectation.

Anson
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help