[PATCH v2 2/5] dt-bindings: iommu: Add Broadcom BCM2712 IOMMU
From: Daniel Drake
Date: Mon Jul 27 2026 - 17:49:55 EST
Add bindings for the Broadcom BCM2712 IOMMUs and their shared TLB cache.
Signed-off-by: Daniel Drake <dan@xxxxxxxxxxxxxxx>
---
.../bindings/iommu/brcm,bcm2712-iommu.yaml | 48 ++++++++++++++++++++++
.../bindings/iommu/brcm,bcm2712-iommuc.yaml | 35 ++++++++++++++++
2 files changed, 83 insertions(+)
diff --git a/Documentation/devicetree/bindings/iommu/brcm,bcm2712-iommu.yaml b/Documentation/devicetree/bindings/iommu/brcm,bcm2712-iommu.yaml
new file mode 100644
index 000000000000..af4d8bac10e5
--- /dev/null
+++ b/Documentation/devicetree/bindings/iommu/brcm,bcm2712-iommu.yaml
@@ -0,0 +1,48 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iommu/brcm,bcm2712-iommu.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Broadcom BCM2712 IOMMU
+
+maintainers:
+ - Daniel Drake <dan@xxxxxxxxxxxxxxx>
+
+description:
+ The BCM2712 IOMMU provides address translation for various hardware blocks
+ on the BCM2712 SoC, such as the VC6 display pipeline.
+
+properties:
+ compatible:
+ const: brcm,bcm2712-iommu
+
+ reg:
+ maxItems: 1
+
+ '#iommu-cells':
+ const: 0
+
+ brcm,iommu-cache:
+ $ref: /schemas/types.yaml#/definitions/phandle
+ description:
+ Phandle to the shared IOMMU cache. The IOMMUC is a shared hardware block
+ that provides centralized Translation Lookaside Buffer (TLB) caching and
+ invalidation.
+
+required:
+ - compatible
+ - reg
+ - '#iommu-cells'
+ - brcm,iommu-cache
+
+additionalProperties: false
+
+examples:
+ - |
+ iommu@5200 {
+ compatible = "brcm,bcm2712-iommu";
+ reg = <0x5200 0x80>;
+ brcm,iommu-cache = <&iommuc>;
+ #iommu-cells = <0>;
+ };
diff --git a/Documentation/devicetree/bindings/iommu/brcm,bcm2712-iommuc.yaml b/Documentation/devicetree/bindings/iommu/brcm,bcm2712-iommuc.yaml
new file mode 100644
index 000000000000..f22e9be2c473
--- /dev/null
+++ b/Documentation/devicetree/bindings/iommu/brcm,bcm2712-iommuc.yaml
@@ -0,0 +1,35 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/iommu/brcm,bcm2712-iommuc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Broadcom BCM2712 Shared IOMMU Cache (IOMMUC)
+
+maintainers:
+ - Daniel Drake <dan@xxxxxxxxxxxxxxx>
+
+description: |
+ The BCM2712 IOMMU Cache (IOMMUC) provides a shared Translation Lookaside
+ Buffer (TLB) cache used by the primary BCM2712 IOMMUs to speed up address
+ translations.
+
+properties:
+ compatible:
+ const: brcm,bcm2712-iommuc
+
+ reg:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+
+additionalProperties: false
+
+examples:
+ - |
+ iommuc: iommu-cache@1001000 {
+ compatible = "brcm,bcm2712-iommuc";
+ reg = <0x1001000 0x100>;
+ };
--
2.55.0