arm64: dts: ti: j721e: Add VTM node
authorKeerthy <j-keerthy@ti.com>
Wed, 5 Apr 2023 21:53:26 +0000 (16:53 -0500)
committerVignesh Raghavendra <vigneshr@ti.com>
Thu, 15 Jun 2023 05:35:03 +0000 (11:05 +0530)
VTM stands for Voltage Thermal Management. Add the thermal zones.
Five sensors mapping ton 5 thermal zones. WKUP, MPU, C7x, GPU & R5F
respectively.

Signed-off-by: Keerthy <j-keerthy@ti.com>
[bb@ti.com: rebased on v6.3-rc1]
Signed-off-by: Bryan Brattlof <bb@ti.com>
Link: https://lore.kernel.org/r/20230405215328.3755561-6-bb@ti.com
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
arch/arm64/boot/dts/ti/k3-j721e-mcu-wakeup.dtsi
arch/arm64/boot/dts/ti/k3-j721e-thermal.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/ti/k3-j721e.dtsi

index 24e8125db8c447c8a4ab7f261da558f9e15d6919..8d86f23b2123759e55f689e2db5d55780db906e1 100644 (file)
                clocks = <&k3_clks 276 0>;
                status = "disabled";
        };
+
+       wkup_vtm0: temperature-sensor@42040000 {
+               compatible = "ti,j721e-vtm";
+               reg = <0x00 0x42040000 0x00 0x350>,
+                     <0x00 0x42050000 0x00 0x350>,
+                     <0x00 0x43000300 0x00 0x10>;
+               power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
+               #thermal-sensor-cells = <1>;
+       };
 };
diff --git a/arch/arm64/boot/dts/ti/k3-j721e-thermal.dtsi b/arch/arm64/boot/dts/ti/k3-j721e-thermal.dtsi
new file mode 100644 (file)
index 0000000..c252327
--- /dev/null
@@ -0,0 +1,75 @@
+// SPDX-License-Identifier: GPL-2.0
+
+#include <dt-bindings/thermal/thermal.h>
+
+thermal_zones: thermal-zones {
+       wkup_thermal: wkup-thermal {
+               polling-delay-passive = <250>; /* milliseconds */
+               polling-delay = <500>; /* milliseconds */
+               thermal-sensors = <&wkup_vtm0 0>;
+
+               trips {
+                       wkup_crit: wkup-crit {
+                               temperature = <125000>; /* milliCelsius */
+                               hysteresis = <2000>; /* milliCelsius */
+                               type = "critical";
+                       };
+               };
+       };
+
+       mpu_thermal: mpu-thermal {
+               polling-delay-passive = <250>; /* milliseconds */
+               polling-delay = <500>; /* milliseconds */
+               thermal-sensors = <&wkup_vtm0 1>;
+
+               trips {
+                       mpu_crit: mpu-crit {
+                               temperature = <125000>; /* milliCelsius */
+                               hysteresis = <2000>; /* milliCelsius */
+                               type = "critical";
+                       };
+               };
+       };
+
+       c7x_thermal: c7x-thermal {
+               polling-delay-passive = <250>; /* milliseconds */
+               polling-delay = <500>; /* milliseconds */
+               thermal-sensors = <&wkup_vtm0 2>;
+
+               trips {
+                       c7x_crit: c7x-crit {
+                               temperature = <125000>; /* milliCelsius */
+                               hysteresis = <2000>; /* milliCelsius */
+                               type = "critical";
+                       };
+               };
+       };
+
+       gpu_thermal: gpu-thermal {
+               polling-delay-passive = <250>; /* milliseconds */
+               polling-delay = <500>; /* milliseconds */
+               thermal-sensors = <&wkup_vtm0 3>;
+
+               trips {
+                       gpu_crit: gpu-crit {
+                               temperature = <125000>; /* milliCelsius */
+                               hysteresis = <2000>; /* milliCelsius */
+                               type = "critical";
+                       };
+               };
+       };
+
+       r5f_thermal: r5f-thermal {
+               polling-delay-passive = <250>; /* milliseconds */
+               polling-delay = <500>; /* milliseconds */
+               thermal-sensors = <&wkup_vtm0 4>;
+
+               trips {
+                       r5f_crit: r5f-crit {
+                               temperature = <125000>; /* milliCelsius */
+                               hysteresis = <2000>; /* milliCelsius */
+                               type = "critical";
+                       };
+               };
+       };
+};
index c577f373940716a7a990e81a9e6a15cd7d838920..99436105ada1bb8f788b1f456d79711aae8bf8bd 100644 (file)
                                 <0x07 0x00000000 0x07 0x00000000 0x01 0x00000000>; /* FSS OSPI1 data region 3*/
                };
        };
+
+       #include "k3-j721e-thermal.dtsi"
 };
 
 /* Now include the peripherals for each bus segments */