balena-allwinner/layers/meta-balena-allwinner/recipes-kernel/linux/linux-4.19/0000-0014-ARM-dts-sunxi-h3-h5-Add-thermal-zone-trip-points.patch
Vicentiu Galanopulo b167421e55 recipes-kernel/linux: Add linux_4.19.76.bb/bbappend
Add the latest linux available
from https://github.com/armbian/build
commit de58ac1faac92724c6449db12c22affaeb003875,
tag: sunxi-5.3, alongside all the patches
that it comes with.

Signed-off-by: Vicentiu Galanopulo <vicentiu@balena.io>
2019-10-10 11:50:43 +02:00

86 lines
2.5 KiB
Diff

From 6914945e888f1206df560ff36375e7257ce38970 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megous@megous.com>
Date: Mon, 14 May 2018 01:16:06 +0200
Subject: [PATCH 14/82] ARM: dts: sunxi-h3-h5: Add thermal zone trip points
This enables passive cooling by downregulating CPU voltage/frequency.
Signed-off-by: Ondrej Jirman <megous@megous.com>
---
arch/arm/boot/dts/sun8i-h3.dtsi | 4 +++-
arch/arm/boot/dts/sunxi-h3-h5.dtsi | 21 ++++++++++++++++++++
arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi | 3 +++
3 files changed, 27 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi
index 261ca0356358..af76a6d250b3 100644
--- a/arch/arm/boot/dts/sun8i-h3.dtsi
+++ b/arch/arm/boot/dts/sun8i-h3.dtsi
@@ -54,8 +54,10 @@
clocks = <&ccu CLK_CPUX>;
clock-names = "cpu";
operating-points-v2 = <&cpu0_opp_table>;
- #cooling-cells = <2>;
clock-frequency = <1200000000>;
+ #cooling-cells = <2>;
+ cooling-min-level = <0>;
+ cooling-max-level = <15>;
};
cpu@1 {
diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
index f47c22b622f9..3b8b2234ab4d 100644
--- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
@@ -47,6 +47,7 @@
#include <dt-bindings/reset/sun8i-de2.h>
#include <dt-bindings/reset/sun8i-h3-ccu.h>
#include <dt-bindings/reset/sun8i-r-ccu.h>
+#include <dt-bindings/thermal/thermal.h>
/ {
interrupt-parent = <&gic>;
@@ -975,6 +976,26 @@
polling-delay-passive = <330>;
polling-delay = <1000>;
thermal-sensors = <&ths 0>;
+
+ trips {
+ cpu_hot_trip: cpu-warm {
+ temperature = <65000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ cpu_very_hot_trip: cpu-very-hot {
+ temperature = <90000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+
+ cooling-maps {
+ cpu-warm-limit {
+ trip = <&cpu_hot_trip>;
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
};
};
};
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
index 4452ab873dec..60fc84a1fb44 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5.dtsi
@@ -53,6 +53,9 @@
reg = <0>;
enable-method = "psci";
clock-frequency = <1200000000>;
+ #cooling-cells = <2>;
+ cooling-min-level = <0>;
+ cooling-max-level = <15>;
};
cpu@1 {
--
2.20.1