[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230531-rpm-rproc-v3-0-a07dcdefd918@gerhold.net>
Date: Thu, 15 Jun 2023 18:50:33 +0200
From: Stephan Gerhold <stephan@...hold.net>
To: Bjorn Andersson <andersson@...nel.org>
Cc: Andy Gross <agross@...nel.org>,
Konrad Dybcio <konrad.dybcio@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Mathieu Poirier <mathieu.poirier@...aro.org>,
linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-remoteproc@...r.kernel.org,
Stephan Gerhold <stephan@...hold.net>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Subject: [PATCH v3 00/13] Add dedicated device tree node for RPM
processor/subsystem
The Resource Power Manager (RPM) currently does not have a dedicated
device tree node that represents the remoteproc/subsystem. The
functionality exposed through the SMD/GLINK channels is described in
top-level nodes of the device tree. This makes it hard to group other
functionality provided by the RPM together in the device tree. This
series adds a single top-level remoteproc-rpm/rpm-proc device tree node
that groups all RPM functionality together.
Signed-off-by: Stephan Gerhold <stephan@...hold.net>
---
Changes in v3:
- Rename "glink-rpm" -> "glink-edge" for consistency
- Add extra patch that drops $nodename from qcom,glink-edge.yaml to
allow using the same node name for glink-rpm-edge (Krzysztof)
- Link to v2: https://lore.kernel.org/r/20230531-rpm-rproc-v2-0-56a4a00c8260@gerhold.net
Changes in v2:
- Pick up review/test tags from Konrad and Krzysztof
- Rename "remoteproc-rpm" -> "remoteproc" everywhere (Krzysztof/Konrad)
- "dt-bindings: remoteproc: Add Qualcomm RPM processor/subsystem"
- Squash with other dt-bindings changes to have atomic refactoring (Krzysztof)
- Add diagrams from discussion as clarification
- "soc: qcom: smem: Add qcom_smem_is_available()"
- Add return documentation in qcom_smem_is_available() (Konrad)
- "soc: qcom: Add RPM processor/subsystem driver"
- Add missing of_node_put(), fix children (Konrad)
- Add depends on RPMSG_QCOM_SMD || RPMSG_QCOM_SMD=n to fix build
error in weird kernel configurations (kernel test robot)
- Link to v1: https://lore.kernel.org/r/20230531-rpm-rproc-v1-0-e0a3b6de1f14@gerhold.net
---
Stephan Gerhold (13):
dt-bindings soc: qcom: smd-rpm: Fix sort order
dt-bindings: soc: qcom: smd-rpm: Add MSM8909 to qcom,smd-channels
dt-bindings: soc: qcom: smd-rpm: Add some more compatibles
soc: qcom: smd-rpm: Match rpmsg channel instead of compatible
dt-bindings: remoteproc: glink-rpm-edge: Use "glink-edge" as node name
dt-bindings: remoteproc: Add Qualcomm RPM processor/subsystem
soc: qcom: smem: Add qcom_smem_is_available()
rpmsg: qcom_smd: Use qcom_smem_is_available()
soc: qcom: Add RPM processor/subsystem driver
arm64: dts: qcom: Add rpm-proc node for SMD platforms
arm64: dts: qcom: Add rpm-proc node for GLINK gplatforms
ARM: dts: qcom: Add rpm-proc node for SMD platforms
ARM: dts: qcom: apq8064: Drop redundant /smd node
.../bindings/remoteproc/qcom,glink-edge.yaml | 3 -
.../bindings/remoteproc/qcom,glink-rpm-edge.yaml | 2 +-
.../bindings/remoteproc/qcom,rpm-proc.yaml | 171 +++++++++++++++++++++
.../devicetree/bindings/soc/qcom/qcom,smd-rpm.yaml | 23 ++-
.../devicetree/bindings/soc/qcom/qcom,smd.yaml | 7 +
arch/arm/boot/dts/qcom-apq8064.dtsi | 40 -----
arch/arm/boot/dts/qcom-apq8084.dtsi | 6 +-
arch/arm/boot/dts/qcom-msm8226.dtsi | 38 ++---
arch/arm/boot/dts/qcom-msm8974.dtsi | 44 +++---
arch/arm64/boot/dts/qcom/ipq6018.dtsi | 48 +++---
arch/arm64/boot/dts/qcom/ipq9574.dtsi | 28 ++--
arch/arm64/boot/dts/qcom/msm8916.dtsi | 6 +-
arch/arm64/boot/dts/qcom/msm8939.dtsi | 112 +++++++-------
arch/arm64/boot/dts/qcom/msm8953.dtsi | 136 ++++++++--------
arch/arm64/boot/dts/qcom/msm8976.dtsi | 152 +++++++++---------
arch/arm64/boot/dts/qcom/msm8994.dtsi | 99 ++++++------
arch/arm64/boot/dts/qcom/msm8996.dtsi | 113 +++++++-------
arch/arm64/boot/dts/qcom/msm8998.dtsi | 98 ++++++------
arch/arm64/boot/dts/qcom/qcm2290.dtsi | 126 +++++++--------
arch/arm64/boot/dts/qcom/qcs404.dtsi | 152 +++++++++---------
arch/arm64/boot/dts/qcom/sdm630.dtsi | 132 ++++++++--------
arch/arm64/boot/dts/qcom/sm6115.dtsi | 128 +++++++--------
arch/arm64/boot/dts/qcom/sm6125.dtsi | 140 +++++++++--------
arch/arm64/boot/dts/qcom/sm6375.dtsi | 126 +++++++--------
drivers/rpmsg/qcom_smd.c | 10 +-
drivers/soc/qcom/Kconfig | 1 +
drivers/soc/qcom/Makefile | 2 +-
drivers/soc/qcom/rpm-proc.c | 77 ++++++++++
drivers/soc/qcom/smd-rpm.c | 35 ++---
drivers/soc/qcom/smem.c | 11 ++
include/linux/soc/qcom/smem.h | 1 +
31 files changed, 1162 insertions(+), 905 deletions(-)
---
base-commit: d89ca618c27b9720f40c7f2b0cde673b51583059
change-id: 20230531-rpm-rproc-758364839cdd
Best regards,
--
Stephan Gerhold <stephan@...hold.net>
Powered by blists - more mailing lists