devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Julien Panis <jpanis@baylibre.com>
To: Daniel Lezcano <daniel.lezcano@linaro.org>,
	Nicolas Pitre <nico@fluxnic.net>,
	linux-pm@vger.kernel.org, linux-mediatek@lists.infradead.org,
	devicetree@vger.kernel.org
Cc: Nicolas Pitre <npitre@baylibre.com>,
	AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>
Subject: Re: [PATCH v2 15/15] arm64: dts: mediatek: mt8188: add default thermal zones
Date: Tue, 21 May 2024 13:10:04 +0200	[thread overview]
Message-ID: <02ac5b07-08fe-4abd-8db8-141f4e47f68a@baylibre.com> (raw)
In-Reply-To: <aab10d22-b1a1-45e9-85bc-a4334aa6c497@linaro.org>

Hello Daniel,

On 4/4/24 17:16, Daniel Lezcano wrote:
>
> Hi Nico,
>
> a few comments about this description.
>
> On 02/04/2024 05:25, Nicolas Pitre wrote:
>> From: Nicolas Pitre <npitre@baylibre.com>
>>
>> Inspired by the vendor kernel but adapted to the upstream thermal
>> driver version.
>
> [ ... ]
>
>> +    thermal_zones: thermal-zones {
>> +        cpu-little0-thermal {
>> +            polling-delay = <1000>;
>
> Except if I'm wrong, the driver supports the interrupt mode, so it not necessary to poll 
> constantly when there is no mitigation. You can remove the line and everywhere else.
>
>> +            polling-delay-passive = <250>;
>
> As little CPU, 200ms or 150ms may be more adequate.
>
>> +            thermal-sensors = <&lvts_mcu MT8188_MCU_LITTLE_CPU0>;
>> +
>> +            trips {
>> +                cpu_little0_alert: trip-alert {
>> +                    temperature = <85000>;
>> +                    hysteresis = <2000>;
>> +                    type = "passive";
>> +                };
>
> You may want to add a 'hot' trip point in between, so the userspace can be notified and take an 
> action before reaching 'critical' (like unplugging a CPU)

There's no "notify" function in the driver.
Do you think it's worth adding such 'hot' trip point, though ?

>
>> +                cpu_little0_crit: trip-crit {
>> +                    temperature = <100000>;
>> +                    hysteresis = <2000>;
>
> critical is a point of no return. Hysteresis does not make sense.
>
> These comments apply to all thermal zones.
>
> [ .. ]
>
>> +        cpu_big0-thermal {
>> +            polling-delay = <1000>;
>> +            polling-delay-passive = <250>;
>
> Same comments as the little but may be an even lower value. eg. 100ms.
>
>> +            thermal-sensors = <&lvts_mcu MT8188_MCU_BIG_CPU0>;
>> +
>> +            trips {
>> +                cpu_big0_alert: trip-alert {
>> +                    temperature = <85000>;
>> +                    hysteresis = <2000>;
>> +                    type = "passive";
>> +                };
>> +
>> +                cpu_big0_crit: trip-crit {
>> +                    temperature = <100000>;
>> +                    hysteresis = <2000>;
>> +                    type = "critical";
>> +                };
>> +            };
>> +
>> +            cooling-maps {
>> +                map0 {
>> +                    trip = <&cpu_big0_alert>;
>> +                    cooling-device = <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
>> +                             <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
>> +                };
>> +            };
>> +        };
>
> [ ... ]
>
>> +        gpu1-thermal {
>> +            polling-delay = <1000>;
>> +            polling-delay-passive = <250>;
>> +            thermal-sensors = <&lvts_ap MT8188_AP_GPU1>;
>> +
>> +            trips {
>> +                gpu1_alert: trip-alert {
>> +                    temperature = <85000>;
>> +                    hysteresis = <2000>;
>> +                    type = "passive";
>> +                };
>> +
>> +                gpu1_crit: trip-crit {
>> +                    temperature = <100000>;
>> +                    hysteresis = <2000>;
>> +                    type = "critical";
>> +                };
>> +            };
>> +        };
>> +
>> +        gpu2-thermal {
>> +            polling-delay = <1000>;
>> +            polling-delay-passive = <250>;
>> +            thermal-sensors = <&lvts_ap MT8188_AP_GPU2>;
>> +
>> +            trips {
>> +                gpu2_alert: trip-alert {
>> +                    temperature = <85000>;
>> +                    hysteresis = <2000>;
>> +                    type = "passive";
>> +                };
>> +
>> +                gpu2_crit: trip-crit {
>> +                    temperature = <100000>;
>> +                    hysteresis = <2000>;
>> +                    type = "critical";
>> +                };
>> +            };
>
> You can add a devfreq cooling device for the GPU here.

I tried but realized then that GPU support has not been added in the DT yet.
So, I added the gpu node (from vendor's kernel), but there are many missing
dependencies. I guess it should be part of another series.
As a result, I can't add such cooling device here.

Julien

  parent reply	other threads:[~2024-05-21 11:10 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-02  3:25 [PATCH v3 00/15] Mediatek thermal sensor driver support for MT8186 and MT8188 Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 01/15] thermal/drivers/mediatek/lvts_thermal: retrieve all calibration bytes Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 02/15] thermal/drivers/mediatek/lvts_thermal: move comment Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 03/15] thermal/drivers/mediatek/lvts_thermal: remove .hw_tshut_temp Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 04/15] thermal/drivers/mediatek/lvts_thermal: use offsets for every calibration byte Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 05/15] thermal/drivers/mediatek/lvts_thermal: guard against efuse data buffer overflow Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 06/15] dt-bindings: thermal: mediatek: Add LVTS thermal controller definition for MT8186 Nicolas Pitre
2024-04-02  6:44   ` Krzysztof Kozlowski
2024-04-02  3:25 ` [PATCH v2 07/15] arm64: dts: mediatek: mt8186: add lvts definitions Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 08/15] thermal/drivers/mediatek/lvts_thermal: add MT8186 support Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 09/15] arm64: dts: mediatek: mt8186: add default thermal zones Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 10/15] thermal/drivers/mediatek/lvts_thermal: provision for gt variable location Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 11/15] thermal/drivers/mediatek/lvts_thermal: allow early empty sensor slots Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 12/15] dt-bindings: thermal: mediatek: Add LVTS thermal controller definition for MT8188 Nicolas Pitre
2024-04-02 16:23   ` Rob Herring
2024-04-02  3:25 ` [PATCH v2 13/15] arm64: dts: mediatek: mt8188: add lvts definitions Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 14/15] thermal/drivers/mediatek/lvts_thermal: add MT8188 support Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 15/15] arm64: dts: mediatek: mt8188: add default thermal zones Nicolas Pitre
2024-04-04 15:16   ` Daniel Lezcano
2024-05-20 13:19     ` Julien Panis
2024-05-21 11:10     ` Julien Panis [this message]
2024-05-21 11:31       ` Daniel Lezcano
2024-05-21 14:07         ` AngeloGioacchino Del Regno
2024-05-21 14:15           ` Julien Panis
2024-04-02  3:31 ` [PATCH v3 00/15] Mediatek thermal sensor driver support for MT8186 and MT8188 Nicolas Pitre
2024-04-23  9:06 ` Daniel Lezcano
2024-04-23  9:22 ` AngeloGioacchino Del Regno
2024-05-20 12:53   ` Julien Panis
2024-05-20 15:16     ` AngeloGioacchino Del Regno
2024-05-20 13:18   ` Julien Panis
2024-05-20 15:17     ` AngeloGioacchino Del Regno

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=02ac5b07-08fe-4abd-8db8-141f4e47f68a@baylibre.com \
    --to=jpanis@baylibre.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=daniel.lezcano@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=nico@fluxnic.net \
    --cc=npitre@baylibre.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).