mirror of
https://github.com/Fishwaldo/build.git
synced 2025-04-28 00:41:40 +00:00
104 lines
2.7 KiB
Diff
104 lines
2.7 KiB
Diff
From e1c3804a177418fe14d95f0c4ccba5ae66f73d82 Mon Sep 17 00:00:00 2001
|
|
From: Vasily Khoruzhick <anarsoul@gmail.com>
|
|
Date: Tue, 7 Jan 2020 20:20:16 -0800
|
|
Subject: arm64: dts: allwinner: a64: add cooling maps and thermal tripping
|
|
points
|
|
|
|
Add cooling maps and thermal tripping points to prevent CPU overheating when
|
|
running at the highest frequency. Tripping points are taken from A33 dts since
|
|
A64 user manual doesn't mention when we should start throttling.
|
|
|
|
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
|
|
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
|
|
---
|
|
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 44 +++++++++++++++++++++++++++
|
|
1 file changed, 44 insertions(+)
|
|
|
|
(limited to 'arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi')
|
|
|
|
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
|
|
index 72eedd39a2eb..862b47dc9dc9 100644
|
|
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
|
|
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
|
|
@@ -53,6 +53,7 @@
|
|
next-level-cache = <&L2>;
|
|
clocks = <&ccu 21>;
|
|
clock-names = "cpu";
|
|
+ #cooling-cells = <2>;
|
|
};
|
|
|
|
cpu1: cpu@1 {
|
|
@@ -63,6 +64,7 @@
|
|
next-level-cache = <&L2>;
|
|
clocks = <&ccu 21>;
|
|
clock-names = "cpu";
|
|
+ #cooling-cells = <2>;
|
|
};
|
|
|
|
cpu2: cpu@2 {
|
|
@@ -73,6 +75,7 @@
|
|
next-level-cache = <&L2>;
|
|
clocks = <&ccu 21>;
|
|
clock-names = "cpu";
|
|
+ #cooling-cells = <2>;
|
|
};
|
|
|
|
cpu3: cpu@3 {
|
|
@@ -83,6 +86,7 @@
|
|
next-level-cache = <&L2>;
|
|
clocks = <&ccu 21>;
|
|
clock-names = "cpu";
|
|
+ #cooling-cells = <2>;
|
|
};
|
|
|
|
L2: l2-cache {
|
|
@@ -187,6 +191,46 @@
|
|
polling-delay-passive = <0>;
|
|
polling-delay = <0>;
|
|
thermal-sensors = <&ths 0>;
|
|
+
|
|
+ cooling-maps {
|
|
+ map0 {
|
|
+ trip = <&cpu_alert0>;
|
|
+ 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>;
|
|
+ };
|
|
+ map1 {
|
|
+ trip = <&cpu_alert1>;
|
|
+ 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>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ trips {
|
|
+ cpu_alert0: cpu_alert0 {
|
|
+ /* milliCelsius */
|
|
+ temperature = <75000>;
|
|
+ hysteresis = <2000>;
|
|
+ type = "passive";
|
|
+ };
|
|
+
|
|
+ cpu_alert1: cpu_alert1 {
|
|
+ /* milliCelsius */
|
|
+ temperature = <90000>;
|
|
+ hysteresis = <2000>;
|
|
+ type = "hot";
|
|
+ };
|
|
+
|
|
+ cpu_crit: cpu_crit {
|
|
+ /* milliCelsius */
|
|
+ temperature = <110000>;
|
|
+ hysteresis = <2000>;
|
|
+ type = "critical";
|
|
+ };
|
|
+ };
|
|
};
|
|
|
|
gpu0_thermal: gpu0-thermal {
|
|
--
|
|
cgit 1.2-0.3.lf.el7
|
|
|