On Tue, Jul 21, 2026 at 11:58:58AM +0530, 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,qmi-tmd.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,qmi-tmd.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..39e79a1c1079 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,qmi-tmd.h
> + Cell 1: Minimum cooling state
> + Cell 2: Maximum cooling state
> + const: 3
> +
> glink-edge:
> $ref: /schemas/remoteproc/qcom,glink-edge.yaml#
> description:
> diff --git a/MAINTAINERS b/MAINTAINERS
> index dcffe9fc54f6..2d4d19201aec 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,qmi-tmd.h
> F: include/linux/firmware/qcom
> F: include/linux/soc/qcom/
> F: include/soc/qcom/
> diff --git a/include/dt-bindings/thermal/qcom,qmi-tmd.h
> b/include/dt-bindings/thermal/qcom,qmi-tmd.h
Filename must match compatible. There are no qcom,qmi-tmd or qcom,.*tmd
or qcom,.*qmi compatibles.
Which device is providing this ABI? PAS?
Best regards,
Krzysztof