ARM: dts: at91: sama7g5: add thermal zones node

Add thermal zones node with its associated trips and cooling-maps.
It uses CPUFreq as cooling device for temperatures in the interval
[90, 100) degrees Celsius and describe the temperature of 100 degrees
Celsius as critical temperature. System will be is shutting down when
reaching critical temperature.

Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Link: https://lore.kernel.org/r/20221026124114.985876-7-claudiu.beznea@microchip.com
This commit is contained in:
Claudiu Beznea 2022-10-26 15:41:09 +03:00
parent 65d8815281
commit 12045a7a07

View File

@ -17,6 +17,7 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/mfd/at91-usart.h>
#include <dt-bindings/nvmem/microchip,sama7g5-otpc.h>
#include <dt-bindings/thermal/thermal.h>
/ {
model = "Microchip SAMA7G5 family SoC";
@ -36,6 +37,7 @@ cpu0: cpu@0 {
clocks = <&pmc PMC_TYPE_CORE PMC_CPUPLL>;
clock-names = "cpu";
operating-points-v2 = <&cpu_opp_table>;
#cooling-cells = <2>; /* min followed by max */
};
};
@ -74,6 +76,46 @@ opp-1000000002 {
};
};
thermal-zones {
cpu_thermal: cpu-thermal {
polling-delay-passive = <1000>;
polling-delay = <5000>;
thermal-sensors = <&thermal_sensor>;
trips {
cpu_normal: cpu-alert0 {
temperature = <90000>;
hysteresis = <0>;
type = "passive";
};
cpu_hot: cpu-alert1 {
temperature = <95000>;
hysteresis = <0>;
type = "passive";
};
cpu_critical: cpu-critical {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&cpu_normal>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
map1 {
trip = <&cpu_hot>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};
};
clocks {
slow_xtal: slow_xtal {
compatible = "fixed-clock";