On 01/10/2023 16:57, Manivannan Sadhasivam wrote:
On Fri, Sep 29, 2023 at 05:16:16PM +0100, Caleb Connolly wrote:
The Thermal Mitigation Device (TMD) Service is a QMI service that runs
on remote subsystems (the modem and DSPs) on Qualcomm SoCs.
It exposes various mitigations including passive thermal controls and
rail voltage restrictions.
This series introduces support for exposing TMDs as cooling devices
in the kernel through the thermal framework, using the QMI interface.
Each TMD client is described as a child of the remoteproc node in
devicetree. With subnodes for each control.
Daniel expressed concerns in the past aganist representing TMD driver as a
cooling device since it is not tied to thermal zones and the governors cannot
use it. Instead he suggested to represent it as a powercap device with thermal
constraints.
Hi Mani,
Forgive me as I'm not yet super familiar with the thermal subsystem.
As I understand it, the DT layout here enables each control to be
referenced under the thermal zones, at least this is the approach taken
in CAF 4.9.
Maybe I don't quite understand what you mean, are you saying that using
thermal zones is the wrong approach?
So please look into that approach.
Any recommended reading? Or drivers I can use as a reference?
Thanks
- Mani
This series is based on previous work by Bhupesh Sharma which can be
found at [1]. I'm sending this as a fresh series as it has been a
year since the original version and I have rewritten most of the driver.
[1]: https://lore.kernel.org/linux-arm-msm/20220912085049.3517140-1-bhupesh.sharma@xxxxxxxxxx/
---
Caleb Connolly (4):
remoteproc: qcom: probe all child devices
dt-bindings: thermal: Add qcom,qmi-cooling yaml bindings
thermal: qcom: add qmi-cooling driver
MAINTAINERS: Add entry for Qualcomm Cooling Driver
.../bindings/remoteproc/qcom,msm8996-mss-pil.yaml | 13 +
.../bindings/remoteproc/qcom,pas-common.yaml | 6 +
.../bindings/thermal/qcom,qmi-cooling.yaml | 168 +++++++
MAINTAINERS | 8 +
drivers/remoteproc/qcom_q6v5.c | 4 +
drivers/remoteproc/qcom_q6v5_mss.c | 8 -
drivers/thermal/qcom/Kconfig | 13 +
drivers/thermal/qcom/Makefile | 1 +
drivers/thermal/qcom/qmi-cooling.c | 520 +++++++++++++++++++++
drivers/thermal/qcom/qmi-cooling.h | 428 +++++++++++++++++
10 files changed, 1161 insertions(+), 8 deletions(-)
---
base-commit: 9067f80db58bbce81d5f0703aa2fd261e88bc812
// Caleb (they/them)
--
// Caleb (they/them)