RE: [EXT] Re: [PATCH 1/2] arm64: dts: ls1088a: add more thermal zone support
From: Andy Tang <hidden>
Date: 2020-06-30 05:28:25
Also in:
linux-devicetree, lkml
-----Original Message----- From: Amit Kucheria <redacted> Sent: 2020年6月30日 13:12 To: Andy Tang <redacted> Cc: Shawn Guo <shawnguo@kernel.org>; Leo Li <redacted>; Rob Herring [off-list ref]; lakml [off-list ref]; open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS [off-list ref]; LKML [off-list ref] Subject: [EXT] Re: [PATCH 1/2] arm64: dts: ls1088a: add more thermal zone support Caution: EXT Email On Tue, Jun 30, 2020 at 8:56 AM [off-list ref] wrote:quoted
From: Yuantian Tang <redacted> There are 2 thermal zones in ls1088a soc. Add the other thermal zone node to enable it. Also update the values in calibration table to make the temperatures monitored more precise. Signed-off-by: Yuantian Tang <redacted> --- .../arm64/boot/dts/freescale/fsl-ls1088a.dtsi | 100 +++++++++++------- 1 file changed, 62 insertions(+), 38 deletions(-)diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsib/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi index 36a799554620..ccbbc23e6c85 100644--- a/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi@@ -129,19 +129,19 @@ }; thermal-zones { - cpu_thermal: cpu-thermal { + core-cluster { polling-delay-passive = <1000>; polling-delay = <5000>; thermal-sensors = <&tmu 0>; trips { - cpu_alert: cpu-alert { + core_cluster_alert:core-cluster-alertquoted
+ { temperature = <85000>; hysteresis = <2000>; type = "passive"; }; - cpu_crit: cpu-crit { + core_cluster_crit: core-cluster-crit { temperature = <95000>; hysteresis = <2000>; type = "critical"; @@-150,7quoted
+150,7 @@ cooling-maps { map0 { - trip = <&cpu_alert>; + trip =<&core_cluster_alert>;quoted
cooling-device = <&cpu0THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,quoted
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, @@ -163,6 +163,26 @@ }; }; }; + + soc { + polling-delay-passive = <1000>; + polling-delay = <5000>; + thermal-sensors = <&tmu 1>; + + trips { + soc-alert { + temperature = <85000>; + hysteresis = <2000>; + type = "passive"; + }; + + soc-crit { + temperature = <95000>; + hysteresis = <2000>; + type = "critical"; + }; + }; + };You should also add a cooling-maps section for this thermal zone given that it has a passive trip type. Otherwise there is no use for a passive trip type.
It is better to have a cooling device. But there is only one cooling device on this platform which is used by core-cluster. So there is no extra cooling device for it. This zone can take action when critical temp is reached. So it is still useful. What do you suggest? BR, Andy
quoted
}; timer {@@ -209,45 +229,49 @@ compatible = "fsl,qoriq-tmu"; reg = <0x0 0x1f80000 0x0 0x10000>; interrupts = <0 23 0x4>; - fsl,tmu-range = <0xb0000 0x9002a 0x6004c0x30062>;quoted
+ fsl,tmu-range = <0xb0000 0x9002a 0x6004c + 0x70062>; fsl,tmu-calibration = /* Calibration data group 1 */ - <0x00000000 0x00000026 - 0x00000001 0x0000002d - 0x00000002 0x00000032 - 0x00000003 0x00000039 - 0x00000004 0x0000003f - 0x00000005 0x00000046 - 0x00000006 0x0000004d - 0x00000007 0x00000054 - 0x00000008 0x0000005a - 0x00000009 0x00000061 - 0x0000000a 0x0000006a - 0x0000000b 0x00000071 + <0x00000000 0x00000023 + 0x00000001 0x0000002a + 0x00000002 0x00000030 + 0x00000003 0x00000037 + 0x00000004 0x0000003d + 0x00000005 0x00000044 + 0x00000006 0x0000004a + 0x00000007 0x00000051 + 0x00000008 0x00000057 + 0x00000009 0x0000005e + 0x0000000a 0x00000064 + 0x0000000b 0x0000006b /* Calibration data group 2 */ - 0x00010000 0x00000025 - 0x00010001 0x0000002c - 0x00010002 0x00000035 - 0x00010003 0x0000003d - 0x00010004 0x00000045 - 0x00010005 0x0000004e - 0x00010006 0x00000057 - 0x00010007 0x00000061 - 0x00010008 0x0000006b - 0x00010009 0x00000076 + 0x00010000 0x00000022 + 0x00010001 0x0000002a + 0x00010002 0x00000032 + 0x00010003 0x0000003a + 0x00010004 0x00000042 + 0x00010005 0x0000004a + 0x00010006 0x00000052 + 0x00010007 0x0000005a + 0x00010008 0x00000062 + 0x00010009 0x0000006a /* Calibration data group 3 */ - 0x00020000 0x00000029 - 0x00020001 0x00000033 - 0x00020002 0x0000003d - 0x00020003 0x00000049 - 0x00020004 0x00000056 - 0x00020005 0x00000061 - 0x00020006 0x0000006d + 0x00020000 0x00000021 + 0x00020001 0x0000002b + 0x00020002 0x00000035 + 0x00020003 0x00000040 + 0x00020004 0x0000004a + 0x00020005 0x00000054 + 0x00020006 0x0000005e /* Calibration data group 4 */ - 0x00030000 0x00000021 - 0x00030001 0x0000002a - 0x00030002 0x0000003c - 0x00030003 0x0000004e>; + 0x00030000 0x00000010 + 0x00030001 0x0000001c + 0x00030002 0x00000027 + 0x00030003 0x00000032 + 0x00030004 0x0000003e + 0x00030005 0x00000049 + 0x00030006 0x00000054 + 0x00030007 0x00000060>; little-endian; #thermal-sensor-cells = <1>; }; -- 2.17.1
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel