Add minimal thermal zone for two temperature sensor
One is located close to the DDR and the other one is
located close to the PLLs (between the CPU and GPU)

Signed-off-by: Guillaume La Roque <glaro...@baylibre.com>
---
 .../boot/dts/amlogic/meson-g12b-odroid-n2.dts | 60 +++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts 
b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
index 75ff8a7e373d..a7d73c0c8447 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dts
@@ -10,6 +10,7 @@
 #include <dt-bindings/input/input.h>
 #include <dt-bindings/gpio/meson-g12a-gpio.h>
 #include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+#include <dt-bindings/thermal/thermal.h>
 
 / {
        compatible = "hardkernel,odroid-n2", "amlogic,g12b";
@@ -20,6 +21,55 @@
                ethernet0 = &ethmac;
        };
 
+       thermal-zones {
+               cpu-thermal {
+                       polling-delay = <1000>;
+                       polling-delay-passive = <100>;
+                       thermal-sensors = <&cpu_temp>;
+
+                       trips {
+                               cpu_critical: cpu-critical {
+                                       temperature = <110000>; /* millicelsius 
*/
+                                       hysteresis = <2000>; /* millicelsius */
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                               map {
+                                       trip = <&cpu_critical>;
+                                       cooling-device = <&cpu0 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu1 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu100 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu101 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu102 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+                                                        <&cpu103 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+               };
+
+               ddr-thermal {
+                       polling-delay = <1000>;
+                       polling-delay-passive = <100>;
+                       thermal-sensors = <&ddr_temp>;
+
+                       trips {
+                               ddr_critical: ddr-critical {
+                                       temperature = <110000>; /* millicelsius 
*/
+                                       hysteresis = <2000>; /* millicelsius */
+                                       type = "critical";
+                               };
+                       };
+
+                       cooling-maps {
+                               map {
+                                       trip = <&ddr_critical>;
+                                       cooling-device = <&mali 
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+                               };
+                       };
+               };
+       };
+
        chosen {
                stdout-path = "serial0:115200n8";
        };
@@ -288,6 +338,7 @@
        operating-points-v2 = <&cpu_opp_table_0>;
        clocks = <&clkc CLKID_CPU_CLK>;
        clock-latency = <50000>;
+       #cooling-cells = <2>;
 };
 
 &cpu1 {
@@ -295,6 +346,7 @@
        operating-points-v2 = <&cpu_opp_table_0>;
        clocks = <&clkc CLKID_CPU_CLK>;
        clock-latency = <50000>;
+       #cooling-cells = <2>;
 };
 
 &cpu100 {
@@ -302,6 +354,7 @@
        operating-points-v2 = <&cpub_opp_table_1>;
        clocks = <&clkc CLKID_CPUB_CLK>;
        clock-latency = <50000>;
+       #cooling-cells = <2>;
 };
 
 &cpu101 {
@@ -309,6 +362,7 @@
        operating-points-v2 = <&cpub_opp_table_1>;
        clocks = <&clkc CLKID_CPUB_CLK>;
        clock-latency = <50000>;
+       #cooling-cells = <2>;
 };
 
 &cpu102 {
@@ -316,6 +370,7 @@
        operating-points-v2 = <&cpub_opp_table_1>;
        clocks = <&clkc CLKID_CPUB_CLK>;
        clock-latency = <50000>;
+       #cooling-cells = <2>;
 };
 
 &cpu103 {
@@ -323,6 +378,7 @@
        operating-points-v2 = <&cpub_opp_table_1>;
        clocks = <&clkc CLKID_CPUB_CLK>;
        clock-latency = <50000>;
+       #cooling-cells = <2>;
 };
 
 &ext_mdio {
@@ -377,6 +433,10 @@
        };
 };
 
+&mali {
+       #cooling-cells = <2>;
+};
+
 &hdmi_tx {
        status = "okay";
        pinctrl-0 = <&hdmitx_hpd_pins>, <&hdmitx_ddc_pins>;
-- 
2.17.1

Reply via email to