Re: [PATCH 1/2] arm64: dts: ls1088a: add more thermal zone support

From: Amit Kucheria
Date: Tue Jun 30 2020 - 01:12:34 EST


On Tue, Jun 30, 2020 at 8:56 AM <andy.tang@xxxxxxx> wrote:
>
> From: Yuantian Tang <andy.tang@xxxxxxx>
>
> 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 <andy.tang@xxxxxxx>
> ---
> .../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.dtsi b/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-alert {
> temperature = <85000>;
> hysteresis = <2000>;
> type = "passive";
> };
>
> - cpu_crit: cpu-crit {
> + core_cluster_crit: core-cluster-crit {
> temperature = <95000>;
> hysteresis = <2000>;
> type = "critical";
> @@ -150,7 +150,7 @@
>
> cooling-maps {
> map0 {
> - trip = <&cpu_alert>;
> + trip = <&core_cluster_alert>;
> cooling-device =
> <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
> <&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.

> };
>
> timer {
> @@ -209,45 +229,49 @@
> compatible = "fsl,qoriq-tmu";
> reg = <0x0 0x1f80000 0x0 0x10000>;
> interrupts = <0 23 0x4>;
> - fsl,tmu-range = <0xb0000 0x9002a 0x6004c 0x30062>;
> + 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
>