All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dmitry Osipenko <digetx@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>,
	Jonathan Hunter <jonathanh@nvidia.com>,
	Daniel Lezcano <daniel.lezcano@linaro.org>,
	Nicolas Chauvet <kwizart@gmail.com>,
	Matt Merhar <mattmerhar@protonmail.com>,
	Peter Geis <pgwipeout@gmail.com>
Cc: linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH v1 04/13] ARM: tegra: cardhu: Support CPU thermal throttling
Date: Thu, 21 Jan 2021 21:22:59 +0300	[thread overview]
Message-ID: <20210121182308.16080-5-digetx@gmail.com> (raw)
In-Reply-To: <20210121182308.16080-1-digetx@gmail.com>

Enable CPU thermal throttling on Tegra30 Cardhu board.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
---
 arch/arm/boot/dts/tegra30-cardhu.dtsi | 43 ++++++++++++++++++++++++++-
 1 file changed, 42 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi
index 309538bdcd66..2dff14b87f3e 100644
--- a/arch/arm/boot/dts/tegra30-cardhu.dtsi
+++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include <dt-bindings/input/input.h>
+#include <dt-bindings/thermal/thermal.h>
 #include "tegra30.dtsi"
 #include "tegra30-cpu-opp.dtsi"
 #include "tegra30-cpu-opp-microvolt.dtsi"
@@ -342,12 +343,13 @@ ldo8_reg: ldo8 {
 			};
 		};
 
-		temperature-sensor@4c {
+		nct1008: temperature-sensor@4c {
 			compatible = "onnn,nct1008";
 			reg = <0x4c>;
 			vcc-supply = <&sys_3v3_reg>;
 			interrupt-parent = <&gpio>;
 			interrupts = <TEGRA_GPIO(CC, 2) IRQ_TYPE_LEVEL_LOW>;
+			#thermal-sensor-cells = <1>;
 		};
 
 		vdd_core: tps62361@60 {
@@ -441,21 +443,25 @@ cpus {
 		cpu0: cpu@0 {
 			cpu-supply = <&vddctrl_reg>;
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>;
 		};
 
 		cpu1: cpu@1 {
 			cpu-supply = <&vddctrl_reg>;
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>;
 		};
 
 		cpu2: cpu@2 {
 			cpu-supply = <&vddctrl_reg>;
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>;
 		};
 
 		cpu3: cpu@3 {
 			cpu-supply = <&vddctrl_reg>;
 			operating-points-v2 = <&cpu0_opp_table>;
+			#cooling-cells = <2>;
 		};
 	};
 
@@ -638,6 +644,41 @@ sound {
 					 <&tegra_car TEGRA30_CLK_EXTERN1>;
 	};
 
+	thermal-zones {
+		cpu-thermal {
+			polling-delay-passive = <1000>; /* milliseconds */
+			polling-delay = <5000>; /* milliseconds */
+
+			thermal-sensors = <&nct1008 1>;
+
+			trips {
+				trip0: cpu-alert0 {
+					/* throttle at 57C until temperature drops to 56.8C */
+					temperature = <57000>;
+					hysteresis = <200>;
+					type = "passive";
+				};
+
+				trip1: cpu-crit {
+					/* shut down at 60C */
+					temperature = <60000>;
+					hysteresis = <2000>;
+					type = "critical";
+				};
+			};
+
+			cooling-maps {
+				map0 {
+					trip = <&trip0>;
+					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>;
+				};
+			};
+		};
+	};
+
 	gpio-keys {
 		compatible = "gpio-keys";
 
-- 
2.29.2


  parent reply	other threads:[~2021-01-21 18:47 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-21 18:22 [PATCH v1 00/13] NVIDIA Tegra ARM32 device-tree improvements Dmitry Osipenko
2021-01-21 18:22 ` [PATCH v1 01/13] ARM: tegra: ventana: Support CPU and Core voltage scaling Dmitry Osipenko
2021-01-21 18:22 ` [PATCH v1 02/13] ARM: tegra: ventana: Support CPU thermal throttling Dmitry Osipenko
2021-01-21 18:22 ` [PATCH v1 03/13] ARM: tegra: cardhu: Support CPU frequency and voltage scaling on all board variants Dmitry Osipenko
2021-01-21 18:22 ` Dmitry Osipenko [this message]
2021-01-21 18:23 ` [PATCH v1 05/13] ARM: tegra: paz00: Enable full voltage scaling ranges for CPU and Core domains Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 06/13] ARM: tegra: acer-a500: Enable core voltage scaling Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 07/13] ARM: tegra: acer-a500: Reduce thermal throttling hysteresis to 0.2C Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 08/13] ARM: tegra: acer-a500: Specify all CPU cores as cooling devices Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 09/13] ARM: tegra: acer-a500: Rename avdd to vdda of touchscreen node Dmitry Osipenko
2021-01-22 20:14   ` Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 10/13] ARM: tegra: nexus7: Specify all CPU cores as cooling devices Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 11/13] ARM: tegra: ouya: " Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 12/13] ARM: tegra: Specify CPU suspend OPP in device-tree Dmitry Osipenko
2021-01-21 18:23 ` [PATCH v1 13/13] ARM: tegra: Specify memory " Dmitry Osipenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210121182308.16080-5-digetx@gmail.com \
    --to=digetx@gmail.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=jonathanh@nvidia.com \
    --cc=kwizart@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=mattmerhar@protonmail.com \
    --cc=pgwipeout@gmail.com \
    --cc=thierry.reding@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.