Re: [PATCH v6 1/9] dt-bindings: remoteproc: qcom,pas: add #cooling-cells property
Gaurav Kohli <[email protected]> Fri, 31 Jul 2026 10:47:38 +0530
| Newsgroups | org.kernel.vger.linux-hardening,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pm,org.kernel.vger.linux-remoteproc |
|---|---|
| Message-ID | <[email protected]> |
On 7/31/2026 12:02 AM, Daniel Lezcano wrote:
>
> Hi Gaurav,
>
>
> On 7/27/26 16:22, Gaurav Kohli wrote:
>> Document the optional #cooling-cells property for Qualcomm PAS
>> remoteproc nodes so they can be used as thermal cooling devices via
>> the QMI Thermal Mitigation Device (TMD) interface.
>>
>> Qualcomm remote processors expose TMD endpoints that support thermal
>> throttling through firmware. The cooling-device specifier uses 3 cells:
>>
>> <&phandle device_id min_state max_state>
>>
>> where device_id selects the TMD endpoint (for example PA, modem, or
>> CDSP software mitigation), with constants defined in:
>> include/dt-bindings/thermal/qcom,pas.h
>>
>> Example usage in a thermal zone:
>>
>> cooling-maps {
>> map0 {
>> trip = <&cpu_alert>;
>> cooling-device = <&remoteproc_cdsp
>> QCOM_TMD_CDSP_SW
>> 0 THERMAL_NO_LIMIT>;
>> };
>> };
>>
>> Signed-off-by: Gaurav Kohli <[email protected]>
>> ---
>> .../bindings/remoteproc/qcom,pas-common.yaml | 9 +++++++++
>> MAINTAINERS | 1 +
>> include/dt-bindings/thermal/qcom,pas.h | 20 ++++++++++
>> ++++++++++
>> 3 files changed, 30 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/remoteproc/qcom,pas-
>> common.yaml b/Documentation/devicetree/bindings/remoteproc/qcom,pas-
>> common.yaml
>> index 11faf655f530..f75cab6b4ed9 100644
>> --- a/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
>> +++ b/Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
>> @@ -77,6 +77,15 @@ properties:
>> channels and devices related to the ADSP.
>> unevaluatedProperties: false
>> + '#cooling-cells':
>> + description: |
>> + Cooling device with three cells:
>> + Cell 0: Cooling device id as defined in
>> + include/dt-bindings/thermal/qcom,pas.h
>> + Cell 1: Minimum cooling state
>> + Cell 2: Maximum cooling state
>> + const: 3
>
> I'm not sure it is necessary to re-explain what is the property format
> as it is already described in thermal-cooling-devices.yaml
thanks Daniel for review.
Krzysztof suggested to add path here also for better explanation.
>
> Other than that:
>
> Acked-by: Daniel Lezcano <[email protected]>
>
>> glink-edge:
>> $ref: /schemas/remoteproc/qcom,glink-edge.yaml#
>> description:
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index dcffe9fc54f6..3f1e2bbf7099 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -3423,6 +3423,7 @@ F: drivers/watchdog/gunyah_wdt.c
>> F: include/dt-bindings/arm/qcom,ids.h
>> F: include/dt-bindings/firmware/qcom,scm.h
>> F: include/dt-bindings/soc/qcom*
>> +F: include/dt-bindings/thermal/qcom,pas.h
>> F: include/linux/firmware/qcom
>> F: include/linux/soc/qcom/
>> F: include/soc/qcom/
>> diff --git a/include/dt-bindings/thermal/qcom,pas.h b/include/dt-
>> bindings/thermal/qcom,pas.h
>> new file mode 100644
>> index 000000000000..f603bddef9a8
>> --- /dev/null
>> +++ b/include/dt-bindings/thermal/qcom,pas.h
>> @@ -0,0 +1,20 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause */
>> +/*
>> + * Qualcomm PAS remoteproc cooling device indices
>> + *
>> + * These indices are used in device tree cooling-maps to reference
>> + * specific TMD devices provided by PAS-managed remote processors via
>> QMI.
>> + *
>> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
>> + */
>> +#ifndef _DT_BINDINGS_THERMAL_QCOM_PAS_H
>> +#define _DT_BINDINGS_THERMAL_QCOM_PAS_H
>> +
>> +/* CDSP thermal mitigation device id */
>> +#define QCOM_TMD_CDSP_SW 0
>> +
>> +/* Modem thermal mitigation device id */
>> +#define QCOM_TMD_PA 0
>> +#define QCOM_TMD_MODEM 1
>> +
>> +#endif /* _DT_BINDINGS_THERMAL_QCOM_PAS_H */
>>
>