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
>>
>
next prev parent 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