On Qualcomm SoCs where the BAM is powered by a remote processor that
enforces XPU (eXternal Protection Unit) access control (e.g. the mDSP
on Shikra, VMID 43 / NAV), the BAM reads the descriptor FIFO as an AXI
master under the remote execution environment. Without an SCM grant
for the remote VMID, the first descriptor enqueue faults with an XPU
violation.
This series adds an optional qcom,vmid DT property to the BAM DMA
controller node. When present, the driver SCM-assigns each channel's
descriptor FIFO to HLOS plus the listed VMID(s) so the remote EE can
access it without faulting.
Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
---
Vishnu Santhosh (2):
dt-bindings: dma: qcom,bam-dma: Add optional qcom,vmid property
dmaengine: qcom: bam_dma: SCM-assign descriptor FIFOs to a remote VMID
.../devicetree/bindings/dma/qcom,bam-dma.yaml | 26 +++
drivers/dma/qcom/Kconfig | 1 +
drivers/dma/qcom/bam_dma.c | 197 +++++++++++++++++++--
3 files changed, 208 insertions(+), 16 deletions(-)
---
base-commit: 3b029c035b34bbc693405ddf759f0e9b920c27f1
change-id: 20260714-qcom-bam-dma-vmid-ext-8a3bd3c5c00e
Best regards,
--
Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>