dt-bindings: dma/net: qcom,bam: Add optional qcom,vmid property #1397
Open
quic-vishsant wants to merge 2 commits into
Open
dt-bindings: dma/net: qcom,bam: Add optional qcom,vmid property #1397quic-vishsant wants to merge 2 commits into
quic-vishsant wants to merge 2 commits into
Conversation
On platforms where a remotely-powered BAM enforces XPU access control (e.g. Qualcomm Shikra SoC with the mDSP processor), both the BAM DMA descriptor FIFOs and the BAM-DMUX RX data buffers must be SCM-assigned to the remote VMID before the first DMA transfer. Add qcom,vmid to both binding schemas to document this optional property. - qcom,bam-dma.yaml: grants remote VMID access to per-channel descriptor FIFOs via SCM assignment in bam_alloc_chan(). - qcom,bam-dmux.yaml: grants remote VMID access to the coherent RX buffer block via SCM assignment at probe time. Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
On Qualcomm Shikra SoC the mDSP(VMID 43) is the AXI master for BAM-DMUX RX data buffers and BAM descriptor FIFO accesses. The XPU enforces per-region access control; without SCM assignment granting VMID 43 access, the first DMA transfer triggers an XPU violation. Add qcom,vmid = <QCOM_SCM_VMID_NAV> to the bam-dmux consumer node so the driver SCM-assigns the coherent RX buffer block at probe; and to the bam_dmux_dma controller node so bam_dma.c SCM-assigns each channel descriptor FIFO at allocation. Only this modem-interfacing BAM path requires the assignment. Other BAM instances on Shikra (USB, crypto) are not accessible to the NAV VMID and are unaffected. Signed-off-by: Vishnu Santhosh <vishnu.santhosh@oss.qualcomm.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On Qualcomm Shikra the mDSP (VMID 43 / QCOM_SCM_VMID_NAV) is the AXI master for BAM-DMUX RX data buffers and BAM descriptor FIFOs. The XPU enforces per-region access control; without an SCM assignment granting VMID 43 read/write access, the first DMA transfer triggers an XPU violation fault.
Document the optional qcom,vmid property in both the qcom,bam-dma and qcom,bam-dmux binding schemas, then wire it up in the Shikra DTS: