]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
dt-bindings: dma: snps,dw-axi-dmac: Add iommu property
authorKhairul Anuar Romli <khairul.anuar.romli@altera.com>
Wed, 15 Oct 2025 00:13:38 +0000 (08:13 +0800)
committerDinh Nguyen <dinguyen@kernel.org>
Mon, 20 Oct 2025 15:20:53 +0000 (10:20 -0500)
Agilex5 integrates an ARM SMMU v3 (System Memory Management Unit) with
dedicated Translation Buffer Units (TBUs) assigned to various peripherals,
including the Synopsys DesignWare AXI DMA controller.

Each TBU handles address translation for its associated device by mapping
stream IDs to memory access permissions and virtual-to-physical address
mappings via the SMMU core.

The DesignWare AXI DMAC instances on Agilex5 are connected to their
respective TBUs. These TBUs forward DMA transactions from the controller
through the SMMU, enabling IOMMU-based features such as:
- Address translation for DMA operations
- Isolation and protection of memory regions accessed by the DMA controller
- Support for secure and virtualized environments through enforced access
  control

To support this configuration, the `iommus` property must be added to the
binding schema for `snps,dw-axi-dmac`. This allows the device tree to
associate each DMA controller with the correct SMMU stream ID, enabling
the Linux IOMMU framework to configure translation contexts at runtime.

This change documents the IOMMU support for the DMA controller on Agilex5
and allows proper integration with the SMMUv3 hardware.

Signed-off-by: Adrian Ng Ho Yin <adrianhoyin.ng@altera.com>
Signed-off-by: Khairul Anuar Romli <khairul.anuar.romli@altera.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Dinh Nguyen <dinguyen@kernel.org>
Documentation/devicetree/bindings/dma/snps,dw-axi-dmac.yaml

index 935735a59afd4752b21a84edc6e380a8a71f018b..a393a33c8908f3160b41af1d7b6c11e23f236e5a 100644 (file)
@@ -42,6 +42,9 @@ properties:
     minItems: 1
     maxItems: 8
 
+  iommus:
+    maxItems: 1
+
   clocks:
     items:
       - description: Bus Clock