Re: [PATCH net-next v2 0/2] net: wwan: qcom_bam_dmux: Add restricted DMA pool support
From: Stephan Gerhold
Date: Tue Sep 29 2026 - 04:20:04 EST
On Mon, Sep 28, 2026 at 04:02:47PM +0530, Vishnu Santhosh wrote:
> On 20-09-2026 08:32 am, Vishnu Santhosh wrote:
> > Some Qualcomm SoCs, such as Shikra, run the modem in a separate security
> > domain with restricted access to system memory. BAM-DMUX DMA mappings
> > and BAM descriptor FIFOs must therefore be constrained to a designated
> > memory region that can be shared with the modem. Accesses outside that
> > region can trigger an XPU violation.
> >
> > Add memory-region and qcom,vmid properties to the BAM-DMUX binding.
> > When qcom,vmid is present, the driver SCM-assigns the entire restricted
> > DMA pool to the local and remote execution environments before requesting
> > the DMA channels.
> >
> > The restricted pool then contains the BAM-DMUX mappings. When the BAM DMA
> > controller references the same pool, its descriptor FIFOs are covered by
> > the assignment as well.
> >
> > A related binding change allows the BAM DMA controller to use the same
> > restricted pool for descriptor FIFO allocations:
> >
> > https://lore.kernel.org/all/20260920-qcom-bam-dma-vmid-ext-v2-1-4dbbff0e57c8@xxxxxxxxxxxxxxxx/
> > ("dt-bindings: dma: qcom,bam-dma: Allow memory-region property")
> >
> > Signed-off-by: Vishnu Santhosh <vishnu.santhosh@xxxxxxxxxxxxxxxx>
> > ---
> > Changes in v2:
> > - Replace the Shikra-specific compatible and coherent RX allocation with
> > memory-region and qcom,vmid properties.
> > - Use a restricted DMA pool for BAM-DMUX mappings and BAM descriptor FIFOs.
> > - SCM-assign the complete pool before requesting the DMA channels.
> > - Validate the remote VMID and restricted DMA pool configuration.
> > - Link to v1: https://lore.kernel.org/r/20260714-qcom-bam-dmux-vmid-ext-v1-0-3f29da7cca76@xxxxxxxxxxxxxxxx
> >
> > ---
> > Vishnu Santhosh (2):
> > dt-bindings: net: qcom,bam-dmux: Add memory-region and qcom,vmid properties
> > net: wwan: qcom_bam_dmux: Assign restricted DMA pool to remote processor
> >
> > .../devicetree/bindings/net/qcom,bam-dmux.yaml | 38 +++++++++
> > drivers/net/wwan/Kconfig | 1 +
> > drivers/net/wwan/qcom_bam_dmux.c | 95 ++++++++++++++++++++++
> > 3 files changed, 134 insertions(+)
> > ---
> > base-commit: 8830e65ed46de41f849eefb8ba227d4852c460f6
> > change-id: 20260714-qcom-bam-dmux-vmid-ext-d9289db310c1
> >
> > Best regards,
>
> Hi Stephan,
>
> I followed your suggestion and updated v2 to use the restricted DMA pool.
>
> Please let me know if this approach and the implementation look reasonable and
> meets your expectations.
>
Thanks, the approach looks good to me. You received some comments from
others and Sashiko already, so I will make a more thorough review from
my side once you have addressed (or at least considered) them for v3.
Thanks,
Stephan