[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20170321153611.16228-11-quentin.schulz@free-electrons.com>
Date: Tue, 21 Mar 2017 16:36:10 +0100
From: Quentin Schulz <quentin.schulz@...e-electrons.com>
To: dmitry.torokhov@...il.com, robh+dt@...nel.org,
mark.rutland@....com, maxime.ripard@...e-electrons.com,
wens@...e.org, lee.jones@...aro.org, linux@...linux.org.uk,
jic23@...nel.org, knaack.h@....de, lars@...afoo.de,
pmeerw@...erw.net
Cc: thomas.petazzoni@...e-electrons.com, linux-input@...r.kernel.org,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, linux-iio@...r.kernel.org,
linux-sunxi@...glegroups.com, icenowy@...c.xyz,
Quentin Schulz <quentin.schulz@...e-electrons.com>
Subject: [PATCH v3 10/11] ARM: sun8i: a33: Add devfreq-based GPU cooling
From: Maxime Ripard <maxime.ripard@...e-electrons.com>
This adds GPU thermal throttling for the Allwinner A33.
Signed-off-by: Maxime Ripard <maxime.ripard@...e-electrons.com>
Signed-off-by: Quentin Schulz <quentin.schulz@...e-electrons.com>
---
v3:
- got rid of cooling-min-level and cooling-max-level as it's not used in any
code in the kernel,
added in v2
arch/arm/boot/dts/sun8i-a23-a33.dtsi | 1 +
arch/arm/boot/dts/sun8i-a33.dtsi | 24 ++++++++++++++++++++++++
2 files changed, 25 insertions(+)
diff --git a/arch/arm/boot/dts/sun8i-a23-a33.dtsi b/arch/arm/boot/dts/sun8i-a23-a33.dtsi
index 5e8725d..6d81a6d 100644
--- a/arch/arm/boot/dts/sun8i-a23-a33.dtsi
+++ b/arch/arm/boot/dts/sun8i-a23-a33.dtsi
@@ -495,6 +495,7 @@
assigned-clocks = <&ccu CLK_GPU>;
assigned-clock-rates = <384000000>;
+ #cooling-cells = <2>;
};
gic: interrupt-controller@...81000 {
diff --git a/arch/arm/boot/dts/sun8i-a33.dtsi b/arch/arm/boot/dts/sun8i-a33.dtsi
index 73552bb..a2c6077 100644
--- a/arch/arm/boot/dts/sun8i-a33.dtsi
+++ b/arch/arm/boot/dts/sun8i-a33.dtsi
@@ -188,6 +188,16 @@
trip = <&cpu_alert1>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
+
+ map2 {
+ trip = <&gpu_alert0>;
+ cooling-device = <&mali 1 THERMAL_NO_LIMIT>;
+ };
+
+ map3 {
+ trip = <&gpu_alert1>;
+ cooling-device = <&mali 2 THERMAL_NO_LIMIT>;
+ };
};
trips {
@@ -198,6 +208,13 @@
type = "passive";
};
+ gpu_alert0: gpu_alert0 {
+ /* milliCelsius */
+ temperature = <85000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+
cpu_alert1: cpu_alert1 {
/* milliCelsius */
temperature = <90000>;
@@ -205,6 +222,13 @@
type = "hot";
};
+ gpu_alert1: gpu_alert1 {
+ /* milliCelsius */
+ temperature = <95000>;
+ hysteresis = <2000>;
+ type = "hot";
+ };
+
cpu_crit: cpu_crit {
/* milliCelsius */
temperature = <110000>;
--
2.9.3
Powered by blists - more mailing lists