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 v2 14/15] ARM: tegra: acer-a500: Improve thermal zones
Date: Tue, 3 Aug 2021 00:19:46 +0300 [thread overview]
Message-ID: <20210802211947.19715-15-digetx@gmail.com> (raw)
In-Reply-To: <20210802211947.19715-1-digetx@gmail.com>
Use skin temperature for maintaining temperature that is suitable
specifically for A500. 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>
---
.../boot/dts/tegra20-acer-a500-picasso.dts | 55 ++++++++++++++++---
1 file changed, 46 insertions(+), 9 deletions(-)
diff --git a/arch/arm/boot/dts/tegra20-acer-a500-picasso.dts b/arch/arm/boot/dts/tegra20-acer-a500-picasso.dts
index 87fef4cb630f..2280d75b66ab 100644
--- a/arch/arm/boot/dts/tegra20-acer-a500-picasso.dts
+++ b/arch/arm/boot/dts/tegra20-acer-a500-picasso.dts
@@ -1029,11 +1029,48 @@ sound {
};
thermal-zones {
+ /*
+ * NCT1008 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 A500 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 = <0>; /* milliseconds */
+ polling-delay = <5000>; /* milliseconds */
thermal-sensors = <&nct1008 0>;
+
+ trips {
+ trip0: skin-alert {
+ /* start throttling at 60C */
+ temperature = <60000>;
+ hysteresis = <200>;
+ type = "passive";
+ };
+
+ trip1: skin-crit {
+ /* shut down at 70C */
+ temperature = <70000>;
+ 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>;
+ };
+ };
};
cpu-thermal {
@@ -1043,24 +1080,24 @@ cpu-thermal {
thermal-sensors = <&nct1008 1>;
trips {
- trip0: cpu-alert0 {
- /* start throttling at 60C */
- temperature = <60000>;
+ trip2: cpu-alert {
+ /* throttle at 85C until temperature drops to 84.8C */
+ temperature = <85000>;
hysteresis = <200>;
type = "passive";
};
- trip1: cpu-crit {
- /* shut down at 70C */
- temperature = <70000>;
+ trip3: cpu-crit {
+ /* shut down at 90C */
+ temperature = <90000>;
hysteresis = <2000>;
type = "critical";
};
};
cooling-maps {
- map0 {
- trip = <&trip0>;
+ map1 {
+ trip = <&trip2>;
cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
--
2.32.0
next prev parent reply other threads:[~2021-08-02 21:21 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-02 21:19 [PATCH v2 00/15] Tegra ARM32 device-tree improvements for 5.15 Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 01/15] ARM: tegra: Add SoC thermal sensor to Tegra30 device-trees Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 02/15] ARM: tegra: ouya: Add interrupt to temperature sensor node Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 03/15] ARM: tegra: paz00: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 04/15] ARM: tegra: nexus7: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 05/15] ARM: tegra: acer-a500: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 06/15] ARM: tegra: nyan: Correct interrupt trigger type of temperature sensor Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 07/15] ARM: tegra: apalis: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 08/15] ARM: tegra: cardhu: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 09/15] ARM: tegra: dalmore: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 10/15] ARM: tegra: jetson-tk1: " Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 11/15] ARM: tegra: acer-a500: Remove bogus USB VBUS regulators Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 12/15] ARM: tegra: acer-a500: Add power supplies to accelerometer Dmitry Osipenko
2021-08-02 21:19 ` [PATCH v2 13/15] ARM: tegra: acer-a500: Use verbose variant of atmel,wakeup-method value Dmitry Osipenko
2021-08-02 21:19 ` Dmitry Osipenko [this message]
2021-08-02 21:19 ` [PATCH v2 15/15] ARM: tegra: nexus7: Improve thermal zones Dmitry Osipenko
2021-08-11 10:05 ` [PATCH v2 00/15] Tegra ARM32 device-tree improvements for 5.15 Thierry Reding
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=20210802211947.19715-15-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).