[PATCH v2 0/4] Add support for APPS SMMU on QCS615
From: Qingqing Zhou
Date: Tue Oct 15 2024 - 04:16:57 EST
Enable APPS SMMU function on QCS615 platform. APPS SMMU is required
for address translation in devices including Ethernet/UFS/USB and
so on.
Add the SCM node for SMMU probing normally. SMMU driver probe will
check qcom_scm ready or not, without SCM node, SMMU driver probe will
defer.
The dmesg log without SCM node:
platform 15000000.iommu: deferred probe pending: arm-smmu: qcom_scm not ready
With the SCM node, SMMU can probe normally, but SCM driver still fails
to probe because of one SCM bug:
qcom_scm firmware:scm: error (____ptrval____): Failed to enable the TrustZone memory allocator
qcom_scm firmware:scm: probe with driver qcom_scm failed with error 4
The above SCM bug is fixed by:
https://lore.kernel.org/all/20241005140150.4109700-2-quic_kuldsing@xxxxxxxxxxx/
But above patch doesn't impact building of current patch series, this patch
series can build successfully without above patch.
Dependency:
https://lore.kernel.org/all/20240926-add_initial_support_for_qcs615-v3-0-e37617e91c62@xxxxxxxxxxx/
Changes in v2:
- Address the comments on bindings from Krzysztof.
- Improve the commit messages and cover letter.
- Link to v1: https://lore.kernel.org/all/20241011063112.19087-1-quic_qqzhou@xxxxxxxxxxx/
Qingqing Zhou (4):
dt-bindings: firmware: qcom,scm: document QCS615 SCM
dt-bindings: arm-smmu: document QCS615 APPS SMMU
arm64: dts: qcom: qcs615: add the SCM node
arm64: dts: qcom: qcs615: add the APPS SMMU node
.../bindings/firmware/qcom,scm.yaml | 1 +
.../devicetree/bindings/iommu/arm,smmu.yaml | 2 +
arch/arm64/boot/dts/qcom/qcs615.dtsi | 81 +++++++++++++++++++
3 files changed, 84 insertions(+)
base-commit: 0cca97bf23640ff68a6e8a74e9b6659fdc27f48c
prerequisite-patch-id: 3a76212d3a3e930d771312ff9349f87aee5c55d5
prerequisite-patch-id: 8a2454d5e07e56a6dd03f762f498051065635d85
prerequisite-patch-id: 46cdc5640598b60d2f5449af444d6d4e479c00b8
prerequisite-patch-id: 050d1dd8cc9397618e570e6de2d81d0c32c10d7a
prerequisite-patch-id: cd9fc0a399ab430e293764d0911a38109664ca91
prerequisite-patch-id: 07f2c7378c7bbd560f26b61785b6814270647f1b
prerequisite-patch-id: f9680e3c90d8f05babbcadd7b7f5174f484a8275
prerequisite-patch-id: 760a2b8f2acff7a9683bfe8f2d353f7caa6e5580
prerequisite-patch-id: 54b4dd987711302b083f714c6f230726c7781042
prerequisite-patch-id: 624720e543d7857e46d3ee49b8cea413772deb4c
prerequisite-patch-id: 04ca722967256efddc402b7bab94136a5174b0b9
prerequisite-patch-id: ab88a42ec69ad90e8509c9c5b7c6bdd595a7f783
prerequisite-patch-id: 918724fafe43acaa4c4b980bfabe36e9c3212cd1
prerequisite-patch-id: 3bae513ca3da06d6f175502924a1fec6f9424def
prerequisite-patch-id: 57afeee80c9aa069ee243f5a5b634702867d20f1
--
2.17.1