Re: [PATCH v2 2/8] dt-bindings: thermal: Add qcom,qmi-cooling yaml bindings

From: Konrad Dybcio

Date: Thu Mar 19 2026 - 05:51:56 EST


On 3/18/26 11:17 AM, Gaurav Kohli wrote:
>
>
> On 3/17/2026 1:27 AM, Daniel Lezcano wrote:
>> On Tue, Feb 24, 2026 at 01:17:22PM +0100, Krzysztof Kozlowski wrote:
>>> On 24/02/2026 13:09, Gaurav Kohli wrote:
>>
>> [ ... ]
>>
>>>>>> As a result, each core requires its own cooling device, which must be
>>>>>> linked to its TSENS thermal zone. Because of this, we introduced
>>>>>> multiple child nodes—one for each cooling device.
>>>>>
>>>>> So you have one device with cooling cells=1+2, no?
>>>>>
>>>>
>>>> This will be a bigger framework change which is not supported, i can see
>>>
>>> I don't think that changing open source frameworks is "not supported". I
>>> am pretty sure that changing is not only supported, but actually desired.
>>
>> Yes, IMO it could make sense. There are the thermal zones with phandle
>> to a sensor and a sensor id. We can have the same with a phandle to a
>> cooling device and a cooling device id.
>>
>> (... or several ids because the thermal sensor can also have multiple
>> ids ?)
>>
>> May be an array of names corresponding to the TMD names at the 'id'
>> position ?
>>
>
> I am using dt node like below to use with cooling-cells = <3> approach, will post new patches with that.
>
> cdsp_tmd: cdsp-tmd {
>     compatible = "qcom,qmi-cooling-cdsp";
>     tmd-names = "cdsp_sw", "cdsp_hw";
>     #cooling-cells = <3>;
> };
>
> please let me know, if you are expecting something like this only.

My question about the need of a separate node still remains, i.e.
why can't this be:

remoteproc_cdsp: remoteproc@cafebabe {
compatible = "qcom,foo-cdsp"

...

tmd-names = "abc", "xyz";
#cooling-cells = <3>;
};



foo-thermal {
cooling-maps {
map0 {
cooling-device = <&remoteproc_cdsp CDSP_COOLING_XYZ
THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
};
};
};

where you'd presumably call something like qmi_cooling_register(...) from
the remoteproc driver, making your added code essentially a library, not a
separate platform device

Konrad