Commit d04f7bc8 authored by Chen-Yu Tsai's avatar Chen-Yu Tsai Committed by Maxime Ripard

arm64: dts: allwinner: h5: Add trip and cooling maps to CPU thermal zones

This enables passive cooling by down-regulating CPU voltage and frequency.
The trip points were copied from the H3.
Signed-off-by: default avatarChen-Yu Tsai <wens@csie.org>
Signed-off-by: default avatarMaxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20200717160053.31191-6-wens@kernel.org
parent 5fa21c13
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
#include <arm/sunxi-h3-h5.dtsi> #include <arm/sunxi-h3-h5.dtsi>
#include <dt-bindings/thermal/thermal.h>
/ { / {
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
...@@ -15,6 +17,7 @@ cpu0: cpu@0 { ...@@ -15,6 +17,7 @@ cpu0: cpu@0 {
enable-method = "psci"; enable-method = "psci";
clocks = <&ccu CLK_CPUX>; clocks = <&ccu CLK_CPUX>;
clock-latency-ns = <244144>; /* 8 32k periods */ clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
}; };
cpu1: cpu@1 { cpu1: cpu@1 {
...@@ -24,6 +27,7 @@ cpu1: cpu@1 { ...@@ -24,6 +27,7 @@ cpu1: cpu@1 {
enable-method = "psci"; enable-method = "psci";
clocks = <&ccu CLK_CPUX>; clocks = <&ccu CLK_CPUX>;
clock-latency-ns = <244144>; /* 8 32k periods */ clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
}; };
cpu2: cpu@2 { cpu2: cpu@2 {
...@@ -33,6 +37,7 @@ cpu2: cpu@2 { ...@@ -33,6 +37,7 @@ cpu2: cpu@2 {
enable-method = "psci"; enable-method = "psci";
clocks = <&ccu CLK_CPUX>; clocks = <&ccu CLK_CPUX>;
clock-latency-ns = <244144>; /* 8 32k periods */ clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
}; };
cpu3: cpu@3 { cpu3: cpu@3 {
...@@ -42,6 +47,7 @@ cpu3: cpu@3 { ...@@ -42,6 +47,7 @@ cpu3: cpu@3 {
enable-method = "psci"; enable-method = "psci";
clocks = <&ccu CLK_CPUX>; clocks = <&ccu CLK_CPUX>;
clock-latency-ns = <244144>; /* 8 32k periods */ clock-latency-ns = <244144>; /* 8 32k periods */
#cooling-cells = <2>;
}; };
}; };
...@@ -173,6 +179,30 @@ cpu_thermal: cpu-thermal { ...@@ -173,6 +179,30 @@ cpu_thermal: cpu-thermal {
polling-delay-passive = <0>; polling-delay-passive = <0>;
polling-delay = <0>; polling-delay = <0>;
thermal-sensors = <&ths 0>; thermal-sensors = <&ths 0>;
trips {
cpu_hot_trip: cpu-hot {
temperature = <80000>;
hysteresis = <2000>;
type = "passive";
};
cpu_very_hot_trip: cpu-very-hot {
temperature = <100000>;
hysteresis = <0>;
type = "critical";
};
};
cooling-maps {
cpu-hot-limit {
trip = <&cpu_hot_trip>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
}; };
gpu_thermal { gpu_thermal {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment