| From: |
| Alexandru Gagniuc <mr.nuke.me-AT-gmail.com> |
| To: |
| andersson-AT-kernel.org, krzk+dt-AT-kernel.org, mturquette-AT-baylibre.com, linux-remoteproc-AT-vger.kernel.org |
| Subject: |
| [PATCH v2 0/9] remoteproc: qcom_q6v5_wcss: add native ipq9574 support |
| Date: |
| Thu, 08 Jan 2026 22:33:35 -0600 |
| Message-ID: |
| <20260109043352.3072933-1-mr.nuke.me@gmail.com> |
| Cc: |
| mathieu.poirier-AT-linaro.org, robh-AT-kernel.org, conor+dt-AT-kernel.org, konradybcio-AT-kernel.org, sboyd-AT-kernel.org, p.zabel-AT-pengutronix.de, linux-arm-msm-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, linux-clk-AT-vger.kernel.org, Alexandru Gagniuc <mr.nuke.me-AT-gmail.com> |
| Archive-link: |
| Article |
Support loading remoteproc firmware on IPQ9574 with the qcom_q6v5_wcss
driver. This firmware is usually used to run ath11k firmware and enable
wifi with chips such as QCN5024.
When submitting v1, I learned that the firmware can also be loaded by
the trustzone firmware. Since TZ is not shipped with the kernel, it
makes sense to have the option of a native init sequence, as not all
devices come with the latest TZ firmware.
Qualcomm tries to assure us that the TZ firmware will always do the
right thing (TM), but I am not fully convinced, and believe there is
justification for a native remoteproc loader. Besides, this series
has improvements to the existing code.
Changes since v1:
- Improve bindings following review feedback
- disable clocks on init failures in q6v7_wcss_reset()
- review-suggetsed readability improvements of qcom_q6v5_wcss
Alexandru Gagniuc (9):
remoteproc: qcom_q6v5_wcss: drop unused clocks from q6v5 struct
dt-bindings: remoteproc: qcom,ipq8074-wcss-pil: convert to DT schema
dt-bindings: clock: gcc-ipq9574: add wcss remoteproc clocks
dt-bindings: remoteproc: qcom: add IPQ9574 image loader
arm64: dts: qcom: ipq9574: add wcss remoteproc nodes
clk: qcom: gcc-ipq9574: add wcss remoteproc clocks
remoteproc: qcom_q6v5_wcss: support IPQ9574
remoteproc: qcom_q6v5_wcss: support m3 firmware
remoteproc: qcom_q6v5_wcss: use bulk clk API for q6 clocks in QCS404
.../remoteproc/qcom,ipq8074-wcss-pil.yaml | 268 ++++++++++++
.../bindings/remoteproc/qcom,q6v5.txt | 102 -----
arch/arm64/boot/dts/qcom/ipq9574.dtsi | 101 +++++
drivers/clk/qcom/gcc-ipq9574.c | 378 +++++++++++++++++
drivers/remoteproc/qcom_q6v5_wcss.c | 398 ++++++++++++++----
include/dt-bindings/clock/qcom,ipq9574-gcc.h | 22 +
6 files changed, 1082 insertions(+), 187 deletions(-)
create mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,ipq8074-wcss-pil.yaml
delete mode 100644 Documentation/devicetree/bindings/remoteproc/qcom,q6v5.txt
--
2.45.1