[PATCH v3 00/13] Use qmp_send to update co-processor load state
From: Sibi Sankar
Date: Thu Jun 24 2021 - 14:53:07 EST
The power domains exposed by the AOSS QMP driver control the load state
resources linked to modem, adsp, cdsp remoteprocs. These are used to
notify the Always on Subsystem (AOSS) that a particular co-processor is
up/down. AOSS uses this information to wait for the co-processors to
suspend before starting its sleep sequence. These co-processors enter
low-power modes independent to that of the application processor and
the load state resources linked to them are expected to remain unaltered
across system suspend/resume cycles. To achieve this behavior let's stop
modeling them as power-domains and replace them with generic qmp_send
interface instead.
https://lore.kernel.org/lkml/20200913034603.GV3715@yoga/
Previous dicussion on dropping power-domain support from AOSS QMP driver
Depends on:
qmp_send: https://patchwork.kernel.org/project/linux-arm-msm/cover/1623237532-20829-1-git-send-email-sibis@xxxxxxxxxxxxxx/
V3:
* Misc. documentation fixes [patch 2]:
- Reduce power-domain maxItems due to load_state pd removal
- Combine compatibles where possible with the load_state pd removal
- Fixup the qcom,qmp ref to phandle type
V2:
* load_state is currently broken on mainline so be safely dropped
without side-effects.
* Rebased on top of qmp_send v3 series.
* Dropped R-b from Stephen and Rob on patch 3 due to the yaml
conversion.
* New patch [12] to drop unused aoss-qmp header.
* Commit message update [patch 1] [Rob]
* Reorder the series [Stephen]
Sibi Sankar (13):
dt-bindings: soc: qcom: aoss: Drop power-domain bindings
dt-bindings: remoteproc: qcom: pas: Add QMP bindings
dt-bindings: remoteproc: qcom: Add QMP bindings
remoteproc: qcom: q6v5: Use qmp_send to update co-processor load state
arm64: dts: qcom: sc7180: Use QMP binding to control load state
arm64: dts: qcom: sc7280: Use QMP binding to control load state
arm64: dts: qcom: sdm845: Use QMP binding to control load state
arm64: dts: qcom: sm8150: Use QMP binding to control load state
arm64: dts: qcom: sm8250: Use QMP binding to control load state
arm64: dts: qcom: sm8350: Use QMP binding to control load state
soc: qcom: aoss: Drop power domain support
dt-bindings: msm/dp: Remove aoss-qmp header
dt-bindings: soc: qcom: aoss: Delete unused power-domain definitions
.../bindings/display/msm/dp-controller.yaml | 1 -
.../devicetree/bindings/remoteproc/qcom,adsp.yaml | 62 ++++++------
.../devicetree/bindings/remoteproc/qcom,q6v5.txt | 7 +-
.../devicetree/bindings/soc/qcom/qcom,aoss-qmp.txt | 16 +--
arch/arm64/boot/dts/qcom/sc7180.dtsi | 9 +-
arch/arm64/boot/dts/qcom/sc7280.dtsi | 2 -
arch/arm64/boot/dts/qcom/sdm845.dtsi | 8 +-
arch/arm64/boot/dts/qcom/sm8150.dtsi | 28 +++---
arch/arm64/boot/dts/qcom/sm8250.dtsi | 22 ++---
arch/arm64/boot/dts/qcom/sm8350.dtsi | 30 +++---
drivers/remoteproc/qcom_q6v5.c | 56 ++++++++++-
drivers/remoteproc/qcom_q6v5.h | 7 +-
drivers/remoteproc/qcom_q6v5_adsp.c | 7 +-
drivers/remoteproc/qcom_q6v5_mss.c | 44 ++-------
drivers/remoteproc/qcom_q6v5_pas.c | 80 ++++-----------
drivers/remoteproc/qcom_q6v5_wcss.c | 4 +-
drivers/soc/qcom/qcom_aoss.c | 109 +--------------------
include/dt-bindings/power/qcom-aoss-qmp.h | 14 ---
18 files changed, 184 insertions(+), 322 deletions(-)
delete mode 100644 include/dt-bindings/power/qcom-aoss-qmp.h
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project