[PATCH v1 0/8] Add RemoteProc cooling support

Gaurav Kohli posted 8 patches 1 month, 2 weeks ago
There is a newer version of this series
.../bindings/remoteproc/qcom,pas-common.yaml  |   6 +
.../bindings/thermal/qcom,qmi-cooling.yaml    |  99 ++++
MAINTAINERS                                   |   8 +
arch/arm64/boot/dts/qcom/kodiak.dtsi          |  36 ++
arch/arm64/boot/dts/qcom/lemans.dtsi          | 138 ++++-
arch/arm64/boot/dts/qcom/monaco.dtsi          |  92 ++++
arch/arm64/boot/dts/qcom/talos.dtsi           |  23 +
drivers/remoteproc/qcom_q6v5.c                |   4 +
drivers/remoteproc/qcom_q6v5_mss.c            |   8 -
drivers/soc/qcom/Kconfig                      |  13 +
drivers/soc/qcom/Makefile                     |   1 +
drivers/soc/qcom/qmi-cooling.c                | 498 ++++++++++++++++++
drivers/soc/qcom/qmi-cooling.h                | 428 +++++++++++++++
drivers/thermal/Kconfig                       |  11 +
drivers/thermal/Makefile                      |   2 +
drivers/thermal/qcom/qmi-cooling.h            | 428 +++++++++++++++
drivers/thermal/remoteproc_cooling.c          | 154 ++++++
include/linux/remoteproc_cooling.h            |  52 ++
18 files changed, 1981 insertions(+), 20 deletions(-)
create mode 100644 Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml
create mode 100644 drivers/soc/qcom/qmi-cooling.c
create mode 100644 drivers/soc/qcom/qmi-cooling.h
create mode 100644 drivers/thermal/qcom/qmi-cooling.h
create mode 100644 drivers/thermal/remoteproc_cooling.c
create mode 100644 include/linux/remoteproc_cooling.h
[PATCH v1 0/8] Add RemoteProc cooling support
Posted by Gaurav Kohli 1 month, 2 weeks ago
This series introduces a generic remote proc cooling framework to control 
thermal sensors located on remote subsystem like modem, dsp etc.
Communications with these subsystems occurs through various channels, for example, 
QMI interface for Qualcomm.
 
The Framework provides an abstraction layer between thermal subsytem and vendor
specific remote subsystem. Vendor drivers are expected to implement callback 
and registration mechanisms with cooling framework to control cooling
devices.

This patchset also revives earlier discussions of QMI based TMD cooling
devices discussion posted on below series by Casey: 
https://lore.kernel.org/linux-devicetree/20230905-caleb-qmi_cooling-v1-0-5aa39d4164a7@linaro.org/

That series introduced Qualcomm QMI-based TMD cooling devices which used
to mitigate thermal conditions across multiple remote subsystems. These 
devices operate based on junction temperature sensors (TSENS) associated 
with thermal zones for each subsystem and registering with remoteproc 
cooling framework for cooling registration.

This patch series has a compilation/runtime dependency on another series [1].

[1] https://lore.kernel.org/linux-devicetree/20250822042316.1762153-1-quic_gkohli@quicinc.com/

Casey Connolly (2):
  remoteproc: qcom: probe all child devices
  thermal: qcom: add qmi-cooling driver

Gaurav Kohli (6):
  thermal: Add Remote Proc cooling driver
  dt-bindings: thermal: Add qcom,qmi-cooling yaml bindings
  arm64: dts: qcom: Enable cdsp qmi tmd devices for lemans
  arm64: dts: qcom: Enable cdsp qmi tmd devices for talos
  arm64: dts: qcom: Enable cdsp qmi tmd devices for kodiak
  arm64: dts: qcom: Enable cdsp qmi tmd devices for monaco

 .../bindings/remoteproc/qcom,pas-common.yaml  |   6 +
 .../bindings/thermal/qcom,qmi-cooling.yaml    |  99 ++++
 MAINTAINERS                                   |   8 +
 arch/arm64/boot/dts/qcom/kodiak.dtsi          |  36 ++
 arch/arm64/boot/dts/qcom/lemans.dtsi          | 138 ++++-
 arch/arm64/boot/dts/qcom/monaco.dtsi          |  92 ++++
 arch/arm64/boot/dts/qcom/talos.dtsi           |  23 +
 drivers/remoteproc/qcom_q6v5.c                |   4 +
 drivers/remoteproc/qcom_q6v5_mss.c            |   8 -
 drivers/soc/qcom/Kconfig                      |  13 +
 drivers/soc/qcom/Makefile                     |   1 +
 drivers/soc/qcom/qmi-cooling.c                | 498 ++++++++++++++++++
 drivers/soc/qcom/qmi-cooling.h                | 428 +++++++++++++++
 drivers/thermal/Kconfig                       |  11 +
 drivers/thermal/Makefile                      |   2 +
 drivers/thermal/qcom/qmi-cooling.h            | 428 +++++++++++++++
 drivers/thermal/remoteproc_cooling.c          | 154 ++++++
 include/linux/remoteproc_cooling.h            |  52 ++
 18 files changed, 1981 insertions(+), 20 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml
 create mode 100644 drivers/soc/qcom/qmi-cooling.c
 create mode 100644 drivers/soc/qcom/qmi-cooling.h
 create mode 100644 drivers/thermal/qcom/qmi-cooling.h
 create mode 100644 drivers/thermal/remoteproc_cooling.c
 create mode 100644 include/linux/remoteproc_cooling.h

-- 
2.34.1
Re: [PATCH v1 0/8] Add RemoteProc cooling support
Posted by Casey Connolly 4 weeks ago

On 12/23/25 13:32, Gaurav Kohli wrote:
> This series introduces a generic remote proc cooling framework to control
> thermal sensors located on remote subsystem like modem, dsp etc.
> Communications with these subsystems occurs through various channels, for example,
> QMI interface for Qualcomm.
>   
> The Framework provides an abstraction layer between thermal subsytem and vendor
> specific remote subsystem. Vendor drivers are expected to implement callback
> and registration mechanisms with cooling framework to control cooling
> devices.
> 
> This patchset also revives earlier discussions of QMI based TMD cooling
> devices discussion posted on below series by Casey:
> https://lore.kernel.org/linux-devicetree/20230905-caleb-qmi_cooling-v1-0-5aa39d4164a7@linaro.org/
> 
> That series introduced Qualcomm QMI-based TMD cooling devices which used
> to mitigate thermal conditions across multiple remote subsystems. These
> devices operate based on junction temperature sensors (TSENS) associated
> with thermal zones for each subsystem and registering with remoteproc
> cooling framework for cooling registration.
> 
> This patch series has a compilation/runtime dependency on another series [1].
> 
> [1] https://lore.kernel.org/linux-devicetree/20250822042316.1762153-1-quic_gkohli@quicinc.com/
> 
> Casey Connolly (2):
>    remoteproc: qcom: probe all child devices
>    thermal: qcom: add qmi-cooling driver

I'm glad this series is getting revived. It would be good if you could 
explain what changes you made to my patches somewhere.

I also remember one of my patches adding the DT parts for SDM845, would 
you be willing to pick that up for the next revision? I'd be happy to 
provide my Tested-by.

Kind regards,

> 
> Gaurav Kohli (6):
>    thermal: Add Remote Proc cooling driver
>    dt-bindings: thermal: Add qcom,qmi-cooling yaml bindings
>    arm64: dts: qcom: Enable cdsp qmi tmd devices for lemans
>    arm64: dts: qcom: Enable cdsp qmi tmd devices for talos
>    arm64: dts: qcom: Enable cdsp qmi tmd devices for kodiak
>    arm64: dts: qcom: Enable cdsp qmi tmd devices for monaco
> 
>   .../bindings/remoteproc/qcom,pas-common.yaml  |   6 +
>   .../bindings/thermal/qcom,qmi-cooling.yaml    |  99 ++++
>   MAINTAINERS                                   |   8 +
>   arch/arm64/boot/dts/qcom/kodiak.dtsi          |  36 ++
>   arch/arm64/boot/dts/qcom/lemans.dtsi          | 138 ++++-
>   arch/arm64/boot/dts/qcom/monaco.dtsi          |  92 ++++
>   arch/arm64/boot/dts/qcom/talos.dtsi           |  23 +
>   drivers/remoteproc/qcom_q6v5.c                |   4 +
>   drivers/remoteproc/qcom_q6v5_mss.c            |   8 -
>   drivers/soc/qcom/Kconfig                      |  13 +
>   drivers/soc/qcom/Makefile                     |   1 +
>   drivers/soc/qcom/qmi-cooling.c                | 498 ++++++++++++++++++
>   drivers/soc/qcom/qmi-cooling.h                | 428 +++++++++++++++
>   drivers/thermal/Kconfig                       |  11 +
>   drivers/thermal/Makefile                      |   2 +
>   drivers/thermal/qcom/qmi-cooling.h            | 428 +++++++++++++++
>   drivers/thermal/remoteproc_cooling.c          | 154 ++++++
>   include/linux/remoteproc_cooling.h            |  52 ++
>   18 files changed, 1981 insertions(+), 20 deletions(-)
>   create mode 100644 Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml
>   create mode 100644 drivers/soc/qcom/qmi-cooling.c
>   create mode 100644 drivers/soc/qcom/qmi-cooling.h
>   create mode 100644 drivers/thermal/qcom/qmi-cooling.h
>   create mode 100644 drivers/thermal/remoteproc_cooling.c
>   create mode 100644 include/linux/remoteproc_cooling.h
>
Re: [PATCH v1 0/8] Add RemoteProc cooling support
Posted by Gaurav Kohli 3 weeks, 5 days ago
On 1/10/2026 9:43 PM, Casey Connolly wrote:
>
>
> On 12/23/25 13:32, Gaurav Kohli wrote:
>> This series introduces a generic remote proc cooling framework to 
>> control
>> thermal sensors located on remote subsystem like modem, dsp etc.
>> Communications with these subsystems occurs through various channels, 
>> for example,
>> QMI interface for Qualcomm.
>>   The Framework provides an abstraction layer between thermal 
>> subsytem and vendor
>> specific remote subsystem. Vendor drivers are expected to implement 
>> callback
>> and registration mechanisms with cooling framework to control cooling
>> devices.
>>
>> This patchset also revives earlier discussions of QMI based TMD cooling
>> devices discussion posted on below series by Casey:
>> https://lore.kernel.org/linux-devicetree/20230905-caleb-qmi_cooling-v1-0-5aa39d4164a7@linaro.org/ 
>>
>>
>> That series introduced Qualcomm QMI-based TMD cooling devices which used
>> to mitigate thermal conditions across multiple remote subsystems. These
>> devices operate based on junction temperature sensors (TSENS) associated
>> with thermal zones for each subsystem and registering with remoteproc
>> cooling framework for cooling registration.
>>
>> This patch series has a compilation/runtime dependency on another 
>> series [1].
>>
>> [1] 
>> https://lore.kernel.org/linux-devicetree/20250822042316.1762153-1-quic_gkohli@quicinc.com/
>>
>> Casey Connolly (2):
>>    remoteproc: qcom: probe all child devices
>>    thermal: qcom: add qmi-cooling driver
>
> I'm glad this series is getting revived. It would be good if you could 
> explain what changes you made to my patches somewhere.
>
> I also remember one of my patches adding the DT parts for SDM845, 
> would you be willing to pick that up for the next revision? I'd be 
> happy to provide my Tested-by.
>
> Kind regards,
>
Hi Casey,

With this remoeproc cooling abstraction layer, we have integrated your 
patches for subsystem cooling. As lot of comments came for qmi-cooling 
driver, so need to send v2 with cleanup.

Will do clean up and send series again. Yes for other targets like 
sdm845 we will add once this is concluded.


>>
>> Gaurav Kohli (6):
>>    thermal: Add Remote Proc cooling driver
>>    dt-bindings: thermal: Add qcom,qmi-cooling yaml bindings
>>    arm64: dts: qcom: Enable cdsp qmi tmd devices for lemans
>>    arm64: dts: qcom: Enable cdsp qmi tmd devices for talos
>>    arm64: dts: qcom: Enable cdsp qmi tmd devices for kodiak
>>    arm64: dts: qcom: Enable cdsp qmi tmd devices for monaco
>>
>>   .../bindings/remoteproc/qcom,pas-common.yaml  |   6 +
>>   .../bindings/thermal/qcom,qmi-cooling.yaml    |  99 ++++
>>   MAINTAINERS                                   |   8 +
>>   arch/arm64/boot/dts/qcom/kodiak.dtsi          |  36 ++
>>   arch/arm64/boot/dts/qcom/lemans.dtsi          | 138 ++++-
>>   arch/arm64/boot/dts/qcom/monaco.dtsi          |  92 ++++
>>   arch/arm64/boot/dts/qcom/talos.dtsi           |  23 +
>>   drivers/remoteproc/qcom_q6v5.c                |   4 +
>>   drivers/remoteproc/qcom_q6v5_mss.c            |   8 -
>>   drivers/soc/qcom/Kconfig                      |  13 +
>>   drivers/soc/qcom/Makefile                     |   1 +
>>   drivers/soc/qcom/qmi-cooling.c                | 498 ++++++++++++++++++
>>   drivers/soc/qcom/qmi-cooling.h                | 428 +++++++++++++++
>>   drivers/thermal/Kconfig                       |  11 +
>>   drivers/thermal/Makefile                      |   2 +
>>   drivers/thermal/qcom/qmi-cooling.h            | 428 +++++++++++++++
>>   drivers/thermal/remoteproc_cooling.c          | 154 ++++++
>>   include/linux/remoteproc_cooling.h            |  52 ++
>>   18 files changed, 1981 insertions(+), 20 deletions(-)
>>   create mode 100644 
>> Documentation/devicetree/bindings/thermal/qcom,qmi-cooling.yaml
>>   create mode 100644 drivers/soc/qcom/qmi-cooling.c
>>   create mode 100644 drivers/soc/qcom/qmi-cooling.h
>>   create mode 100644 drivers/thermal/qcom/qmi-cooling.h
>>   create mode 100644 drivers/thermal/remoteproc_cooling.c
>>   create mode 100644 include/linux/remoteproc_cooling.h
>>
>
Re: [PATCH v1 0/8] Add RemoteProc cooling support
Posted by Trilok Soni 6 days, 14 hours ago
On 1/13/2026 1:33 AM, Gaurav Kohli wrote:
> 
> On 1/10/2026 9:43 PM, Casey Connolly wrote:
>>
>>
>> On 12/23/25 13:32, Gaurav Kohli wrote:
>>> This series introduces a generic remote proc cooling framework to control
>>> thermal sensors located on remote subsystem like modem, dsp etc.
>>> Communications with these subsystems occurs through various channels, for example,
>>> QMI interface for Qualcomm.
>>>   The Framework provides an abstraction layer between thermal subsytem and vendor
>>> specific remote subsystem. Vendor drivers are expected to implement callback
>>> and registration mechanisms with cooling framework to control cooling
>>> devices.
>>>
>>> This patchset also revives earlier discussions of QMI based TMD cooling
>>> devices discussion posted on below series by Casey:
>>> https://lore.kernel.org/linux-devicetree/20230905-caleb-qmi_cooling-v1-0-5aa39d4164a7@linaro.org/
>>>
>>> That series introduced Qualcomm QMI-based TMD cooling devices which used
>>> to mitigate thermal conditions across multiple remote subsystems. These
>>> devices operate based on junction temperature sensors (TSENS) associated
>>> with thermal zones for each subsystem and registering with remoteproc
>>> cooling framework for cooling registration.
>>>
>>> This patch series has a compilation/runtime dependency on another series [1].
>>>
>>> [1] https://lore.kernel.org/linux-devicetree/20250822042316.1762153-1-quic_gkohli@quicinc.com/
>>>
>>> Casey Connolly (2):
>>>    remoteproc: qcom: probe all child devices
>>>    thermal: qcom: add qmi-cooling driver
>>
>> I'm glad this series is getting revived. It would be good if you could explain what changes you made to my patches somewhere.
>>
>> I also remember one of my patches adding the DT parts for SDM845, would you be willing to pick that up for the next revision? I'd be happy to provide my Tested-by.
>>
>> Kind regards,
>>
> Hi Casey,
> 
> With this remoeproc cooling abstraction layer, we have integrated your patches for subsystem cooling. As lot of comments came for qmi-cooling driver, so need to send v2 with cleanup.

Gaurav - the question somewhere in the series was that why you had marked your patch series 
to v1, when you had revived the original (v1?) series from Casey? Should we consider
current patch series as v2 then? I don't know if that comment was concluded. 

---Trilok Soni
Re: [PATCH v1 0/8] Add RemoteProc cooling support
Posted by Konrad Dybcio 6 days, 1 hour ago
On 2/1/26 9:20 PM, Trilok Soni wrote:
> On 1/13/2026 1:33 AM, Gaurav Kohli wrote:
>>
>> On 1/10/2026 9:43 PM, Casey Connolly wrote:
>>>
>>>
>>> On 12/23/25 13:32, Gaurav Kohli wrote:
>>>> This series introduces a generic remote proc cooling framework to control
>>>> thermal sensors located on remote subsystem like modem, dsp etc.
>>>> Communications with these subsystems occurs through various channels, for example,
>>>> QMI interface for Qualcomm.
>>>>   The Framework provides an abstraction layer between thermal subsytem and vendor
>>>> specific remote subsystem. Vendor drivers are expected to implement callback
>>>> and registration mechanisms with cooling framework to control cooling
>>>> devices.
>>>>
>>>> This patchset also revives earlier discussions of QMI based TMD cooling
>>>> devices discussion posted on below series by Casey:
>>>> https://lore.kernel.org/linux-devicetree/20230905-caleb-qmi_cooling-v1-0-5aa39d4164a7@linaro.org/
>>>>
>>>> That series introduced Qualcomm QMI-based TMD cooling devices which used
>>>> to mitigate thermal conditions across multiple remote subsystems. These
>>>> devices operate based on junction temperature sensors (TSENS) associated
>>>> with thermal zones for each subsystem and registering with remoteproc
>>>> cooling framework for cooling registration.
>>>>
>>>> This patch series has a compilation/runtime dependency on another series [1].
>>>>
>>>> [1] https://lore.kernel.org/linux-devicetree/20250822042316.1762153-1-quic_gkohli@quicinc.com/
>>>>
>>>> Casey Connolly (2):
>>>>    remoteproc: qcom: probe all child devices
>>>>    thermal: qcom: add qmi-cooling driver
>>>
>>> I'm glad this series is getting revived. It would be good if you could explain what changes you made to my patches somewhere.
>>>
>>> I also remember one of my patches adding the DT parts for SDM845, would you be willing to pick that up for the next revision? I'd be happy to provide my Tested-by.
>>>
>>> Kind regards,
>>>
>> Hi Casey,
>>
>> With this remoeproc cooling abstraction layer, we have integrated your patches for subsystem cooling. As lot of comments came for qmi-cooling driver, so need to send v2 with cleanup.
> 
> Gaurav - the question somewhere in the series was that why you had marked your patch series 
> to v1, when you had revived the original (v1?) series from Casey? Should we consider
> current patch series as v2 then? I don't know if that comment was concluded. 

Because we have effectively 2 'v1's, there's already a certain mess, but
the msgid is different between them so the tools won't be confused
(i.e. just go with v2 for the next revision)

The outstanding request is to include a high-level changelog of what is
different as compared to the original series (as well as picking up the
original 845 DT commit if still relevant)

Konrad