mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Daniel Lezcano <daniel.lezcano@oss.qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
	Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
Cc: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>,
	Bjorn Andersson <andersson@kernel.org>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Amit Kucheria <amit.kucheria@oss.qualcomm.com>,
	Manivannan Sadhasivam <mani@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Kees Cook <kees@kernel.org>,
	"Gustavo A. R. Silva" <gustavoars@kernel.org>,
	cros-qcom-dts-watchers@chromium.org,
	linux-arm-msm@vger.kernel.org, linux-remoteproc@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-pm@vger.kernel.org, linux-hardening@vger.kernel.org,
	Manaf Meethalavalappu Pallikunhi
	<manaf.pallikunhi@oss.qualcomm.com>
Subject: Re: [PATCH v4 01/10] dt-bindings: firmware: qcom: tmd: add TMD device type constants
Date: Mon, 6 Jul 2026 19:03:18 +0200	[thread overview]
Message-ID: <10a346d8-fbb1-4142-a650-507c3917b8f6@oss.qualcomm.com> (raw)
In-Reply-To: <yvggh2zs6qkuyuzvwydkecswnjoyba2d7t27br6xpk6d2csp53@i25g6okdktz5>

On 7/3/26 17:42, Dmitry Baryshkov wrote:
> On Fri, Jul 03, 2026 at 07:43:39PM +0530, Gaurav Kohli wrote:
>>
>>
>> On 7/3/2026 1:23 PM, Konrad Dybcio wrote:
>>> On 7/3/26 7:03 AM, Gaurav Kohli wrote:
>>>> Add Device Tree binding constants for Qualcomm Thermal Mitigation
>>>> Device (TMD) types used by remoteproc-backed thermal cooling devices.
>>>>
>>>> Qualcomm remote processors expose thermal mitigation endpoints
>>>> through QMI. These endpoints can be registered with the thermal
>>>> framework via the `#cooling-cells` property on the remoteproc node.
>>>>
>>>> The QMI TMD protocol identifies devices using string names (for example,
>>>> "pa", "modem", and "cdsp_sw"), while the DT cooling-device binding with
>>>> `#cooling-cells = <3>` requires numeric device id in the form:
>>>>
>>>>     <&phandle device_id min_state max_state>
>>>>
>>>> Define common TMD device index constants shared across currently
>>>> supported platforms. If a future target requires a different mapping,
>>>> additional target-specific constants can be introduced while preserving
>>>> existing DT ABI.
>>>>
>>>> Signed-off-by: Gaurav Kohli <gaurav.kohli@oss.qualcomm.com>
>>>> ---
>>>>    MAINTAINERS                                 |  1 +
>>>>    include/dt-bindings/firmware/qcom,qmi-tmd.h | 20 ++++++++++++++++++++
>>>>    2 files changed, 21 insertions(+)
>>>>
>>>> diff --git a/MAINTAINERS b/MAINTAINERS
>>>> index 57656ec0e9d5..ffd85fd1dd80 100644
>>>> --- a/MAINTAINERS
>>>> +++ b/MAINTAINERS
>>>> @@ -3410,6 +3410,7 @@ F:	drivers/firmware/qcom/
>>>>    F:	drivers/soc/qcom/
>>>>    F:	drivers/watchdog/gunyah_wdt.c
>>>>    F:	include/dt-bindings/arm/qcom,ids.h
>>>> +F:	include/dt-bindings/firmware/qcom,qmi-tmd.h
>>>>    F:	include/dt-bindings/firmware/qcom,scm.h
>>>>    F:	include/dt-bindings/soc/qcom*
>>>>    F:	include/linux/firmware/qcom
>>>> diff --git a/include/dt-bindings/firmware/qcom,qmi-tmd.h b/include/dt-bindings/firmware/qcom,qmi-tmd.h
>>>> new file mode 100644
>>>> index 000000000000..73efecef0f3c
>>>> --- /dev/null
>>>> +++ b/include/dt-bindings/firmware/qcom,qmi-tmd.h
>>>> @@ -0,0 +1,20 @@
>>>> +/* SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause */
>>>> +/*
>>>> + * Qualcomm QMI TMD (Thermal Mitigation Device) cooling device indices
>>>> + *
>>>> + * These indices are used in device tree cooling-maps to reference
>>>> + * specific TMD devices provided by remote processors via QMI.
>>>> + *
>>>> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
>>>> + */
>>>> +#ifndef _DT_BINDINGS_FIRMWARE_QCOM_QMI_TMD_H
>>>> +#define _DT_BINDINGS_FIRMWARE_QCOM_QMI_TMD_H
>>>> +
>>>> +/* CDSP thermal mitigation device id */
>>>> +#define QCOM_CDSP_TMD_CDSP_SW	0
>>>> +
>>>> +/* Modem thermal mitigation device id */
>>>> +#define QCOM_MODEM_TMD_PA	0
>>>> +#define QCOM_MODEM_TMD_MODEM	1
>>>
>>> What about the dozens other ones that Dmitry's laptop reports?Ri
>>>
>>
>> Thanks for the review, Konrad.
>>
>> We are only defining constants for the TMD devices that are actually used
>> for thermal mitigation on the platforms supported by this series.
> 
> Why are you using only those TMD devices?
> 
>> More constants can be added as needed.
> 
> Kodiak is one of the supported platforms.

What would be the benefit of having more than thirteen cooling devices 
declared in the thermal framework and having only a couple of them 
mapped in a thermal zone ?

I agree there are more TMDs but if they are unused for the moment, why 
do we need to add them ? Can we do that incrementally ?

> Running the same tool produces:
> 
> TMD service: instance=0x00 (modem) node=0 port=20
>    29 mitigation device(s):
>      [ 0] pa                       max_mitigation_level=3
>      [ 1] pa_fr1                   max_mitigation_level=3
>      [ 2] modem                    max_mitigation_level=3
>      [ 3] cpuv_restriction_cold    max_mitigation_level=1
>      [ 4] modem_current            max_mitigation_level=3
>      [ 5] vbatt_low                max_mitigation_level=3
>      [ 6] charge_state             max_mitigation_level=3
>      [ 7] modem_skin               max_mitigation_level=3
>      [ 8] modem_bw                 max_mitigation_level=5
>      [ 9] mmw0                     max_mitigation_level=3
>      [10] mmw1                     max_mitigation_level=3
>      [11] mmw2                     max_mitigation_level=3
>      [12] mmw3                     max_mitigation_level=3
>      [13] mmw_skin0                max_mitigation_level=3
>      [14] mmw_skin1                max_mitigation_level=3
>      [15] mmw_skin2                max_mitigation_level=3
>      [16] mmw_skin3                max_mitigation_level=3
>      [17] mmw_skin0_dsc            max_mitigation_level=15
>      [18] mmw_skin1_dsc            max_mitigation_level=15
>      [19] mmw_skin2_dsc            max_mitigation_level=15
>      [20] mmw_skin3_dsc            max_mitigation_level=15
>      [21] wlan                     max_mitigation_level=4
>      [22] wlan_bw                  max_mitigation_level=1
>      [23] modem_skin_lte_dsc       max_mitigation_level=255
>      [24] modem_skin_nr_dsc        max_mitigation_level=255
>      [25] pa_dsc                   max_mitigation_level=255
>      [26] pa_fr1_dsc               max_mitigation_level=255
>      [27] modem_bw_backoff         max_mitigation_level=255
>      [28] cpr_cold                 max_mitigation_level=3
> 
> TMD service: instance=0x01 (adsp) node=5 port=8
>    1 mitigation device(s):
>      [ 0] cpuv_restriction_cold    max_mitigation_level=1
> 
> TMD service: instance=0x43 (cdsp) node=10 port=9
>    3 mitigation device(s):
>      [ 0] cpuv_restriction_cold    max_mitigation_level=1
>      [ 1] cdsp_hw                  max_mitigation_level=1
>      [ 2] cdsp_sw                  max_mitigation_level=7
> 
> 
>>
>>> https://lore.kernel.org/linux-arm-msm/4gs664zboaqgpok33x7bgorfmhh3f2fahjkt4jjl6fbzpwixnm@hxzz2xeogd4k/
>>>
>>> Konrad
>>
> 


  reply	other threads:[~2026-07-06 17:03 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-03  5:03 [PATCH v4 00/10] Add support for Qualcomm remoteproc subsystem cooling Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 01/10] dt-bindings: firmware: qcom: tmd: add TMD device type constants Gaurav Kohli
2026-07-03  7:47   ` Krzysztof Kozlowski
2026-07-03 10:14     ` Gaurav Kohli
2026-07-03  7:52   ` Krzysztof Kozlowski
2026-07-03 10:31     ` Gaurav Kohli
2026-07-03  7:53   ` Konrad Dybcio
2026-07-03 14:13     ` Gaurav Kohli
2026-07-03 15:42       ` Dmitry Baryshkov
2026-07-06 17:03         ` Daniel Lezcano [this message]
2026-07-06 17:47           ` Dmitry Baryshkov
2026-07-06 18:11             ` Daniel Lezcano
2026-07-06 19:21               ` Krzysztof Kozlowski
2026-07-08 11:16                 ` Gaurav Kohli
2026-07-06 19:34               ` Dmitry Baryshkov
2026-07-07 10:25                 ` Gaurav Kohli
2026-07-08 14:25                   ` Dmitry Baryshkov
2026-07-09  5:24                     ` Gaurav Kohli
2026-07-09  7:37                       ` Dmitry Baryshkov
2026-07-09  7:42                         ` Daniel Lezcano
2026-07-09  7:58                           ` Dmitry Baryshkov
2026-07-09  8:23                             ` Daniel Lezcano
2026-07-03  5:03 ` [PATCH v4 02/10] dt-bindings: remoteproc: qcom,pas: add #cooling-cells property Gaurav Kohli
2026-07-03  7:49   ` Krzysztof Kozlowski
2026-07-05  8:41     ` Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 03/10] soc: qcom: Add QMI TMD support for remote thermal mitigation Gaurav Kohli
2026-07-03  8:03   ` Krzysztof Kozlowski
2026-07-05  9:37     ` Gaurav Kohli
2026-07-03 18:09   ` Julian Braha
2026-07-05  9:50     ` Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 04/10] remoteproc: qcom: pas: add support for TMD thermal cooling devices Gaurav Kohli
2026-07-03  7:56   ` Krzysztof Kozlowski
2026-07-05  9:56     ` Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 05/10] remoteproc: qcom_q6v5_pas: enable QMI TMD cooling support Gaurav Kohli
2026-07-06 17:08   ` Daniel Lezcano
2026-07-03  5:03 ` [PATCH v4 06/10] arm64: dts: qcom: kodiak: Enable CDSP & Modem cooling Gaurav Kohli
2026-07-03  7:51   ` Krzysztof Kozlowski
2026-07-03 15:48   ` Dmitry Baryshkov
2026-07-05 10:19     ` Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 07/10] arm64: dts: qcom: lemans: Enable CDSP cooling Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 08/10] arm64: dts: qcom: talos: " Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 09/10] arm64: dts: qcom: monaco: " Gaurav Kohli
2026-07-03  5:03 ` [PATCH v4 10/10] arm64: dts: qcom: hamoa: " Gaurav Kohli

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=10a346d8-fbb1-4142-a650-507c3917b8f6@oss.qualcomm.com \
    --to=daniel.lezcano@oss.qualcomm.com \
    --cc=amit.kucheria@oss.qualcomm.com \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=cros-qcom-dts-watchers@chromium.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=gaurav.kohli@oss.qualcomm.com \
    --cc=gustavoars@kernel.org \
    --cc=kees@kernel.org \
    --cc=konrad.dybcio@oss.qualcomm.com \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-hardening@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=manaf.pallikunhi@oss.qualcomm.com \
    --cc=mani@kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=robh@kernel.org \
    /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