From: Dmitry Osipenko <digetx@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>,
Jonathan Hunter <jonathanh@nvidia.com>,
Matt Merhar <mattmerhar@protonmail.com>,
Peter Geis <pgwipeout@gmail.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>,
linux-kernel@vger.kernel.org, linux-tegra@vger.kernel.org
Subject: [PATCH v1 13/13] ARM: tegra: nexus7: Improve thermal zones
Date: Mon, 12 Jul 2021 02:44:03 +0300 [thread overview]
Message-ID: <20210711234403.24691-14-digetx@gmail.com> (raw)
In-Reply-To: <20210711234403.24691-1-digetx@gmail.com>
Use skin temperature for maintaining temperature that is suitable
specifically for Nexus 7. Add CPU thermal zone that protects silicon.
All these changes don't make a significant difference, but it is a
more correct definition of thermal zones.
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
---
.../tegra30-asus-nexus7-grouper-common.dtsi | 56 +++++++++++++++++--
1 file changed, 52 insertions(+), 4 deletions(-)
diff --git a/arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi b/arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi
index 33985fca956f..9732cd6f20b7 100644
--- a/arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi
+++ b/arch/arm/boot/dts/tegra30-asus-nexus7-grouper-common.dtsi
@@ -1255,21 +1255,34 @@ sound {
};
thermal-zones {
- cpu-thermal {
+ /*
+ * NCT72 has two sensors:
+ *
+ * 0: internal that monitors ambient/skin temperature
+ * 1: external that is connected to the CPU's diode
+ *
+ * Ideally we should use userspace thermal governor,
+ * but it's a much more complex solution. The "skin"
+ * zone is a simpler solution which prevents Nexus 7
+ * from getting too hot from a user's tactile perspective.
+ * The CPU zone is intended to protect silicon from damage.
+ */
+
+ skin-thermal {
polling-delay-passive = <1000>; /* milliseconds */
polling-delay = <5000>; /* milliseconds */
- thermal-sensors = <&nct72 1>;
+ thermal-sensors = <&nct72 0>;
trips {
- trip0: cpu-alert0 {
+ trip0: skin-alert {
/* throttle at 57C until temperature drops to 56.8C */
temperature = <57000>;
hysteresis = <200>;
type = "passive";
};
- trip1: cpu-crit {
+ trip1: skin-crit {
/* shut down at 65C */
temperature = <65000>;
hysteresis = <2000>;
@@ -1289,5 +1302,40 @@ map0 {
};
};
};
+
+ cpu-thermal {
+ polling-delay-passive = <1000>; /* milliseconds */
+ polling-delay = <5000>; /* milliseconds */
+
+ thermal-sensors = <&nct72 1>;
+
+ trips {
+ trip2: cpu-alert {
+ /* throttle at 85C until temperature drops to 84.8C */
+ temperature = <85000>;
+ hysteresis = <200>;
+ type = "passive";
+ };
+
+ trip3: cpu-crit {
+ /* shut down at 90C */
+ temperature = <90000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+
+ cooling-maps {
+ map1 {
+ trip = <&trip2>;
+ 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>,
+ <&actmon THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>;
+ };
+ };
+ };
};
};
--
2.32.0
prev parent reply other threads:[~2021-07-11 23:45 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-11 23:43 [PATCH v1 00/13] Tegra ARM32 device-tree improvements for 5.15 Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 01/13] ARM: tegra: Add SoC thermal sensor to Tegra30 device-trees Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 02/13] ARM: tegra: ouya: Add interrupt to temperature sensor node Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 03/13] ARM: tegra: paz00: " Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 04/13] ARM: tegra: nexus7: " Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 05/13] ARM: tegra: acer-a500: " Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 06/13] ARM: tegra: nyan: Correct interrupt trigger type of temperature sensor Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 07/13] ARM: tegra: apalis: " Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 08/13] ARM: tegra: cardhu: " Dmitry Osipenko
2021-07-11 23:43 ` [PATCH v1 09/13] ARM: tegra: dalmore: " Dmitry Osipenko
2021-07-11 23:44 ` [PATCH v1 10/13] ARM: tegra: jetson-tk1: " Dmitry Osipenko
2021-07-11 23:44 ` [PATCH v1 11/13] ARM: tegra: acer-a500: Remove bogus USB VBUS regulators Dmitry Osipenko
2021-07-11 23:44 ` [PATCH v1 12/13] ARM: tegra: acer-a500: Improve thermal zones Dmitry Osipenko
2021-07-11 23:44 ` Dmitry Osipenko [this message]
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=20210711234403.24691-14-digetx@gmail.com \
--to=digetx@gmail.com \
--cc=daniel.lezcano@linaro.org \
--cc=jonathanh@nvidia.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).