19d9cafb4SSven Peter# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 29d9cafb4SSven Peter%YAML 1.2 39d9cafb4SSven Peter--- 49d9cafb4SSven Peter$id: http://devicetree.org/schemas/iommu/apple,dart.yaml# 59d9cafb4SSven Peter$schema: http://devicetree.org/meta-schemas/core.yaml# 69d9cafb4SSven Peter 79d9cafb4SSven Petertitle: Apple DART IOMMU 89d9cafb4SSven Peter 99d9cafb4SSven Petermaintainers: 109d9cafb4SSven Peter - Sven Peter <sven@svenpeter.dev> 119d9cafb4SSven Peter 129d9cafb4SSven Peterdescription: |+ 139d9cafb4SSven Peter Apple SoCs may contain an implementation of their Device Address 149d9cafb4SSven Peter Resolution Table which provides a mandatory layer of address 159d9cafb4SSven Peter translations for various masters. 169d9cafb4SSven Peter 179d9cafb4SSven Peter Each DART instance is capable of handling up to 16 different streams 189d9cafb4SSven Peter with individual pagetables and page-level read/write protection flags. 199d9cafb4SSven Peter 209d9cafb4SSven Peter This DART IOMMU also raises interrupts in response to various 219d9cafb4SSven Peter fault conditions. 229d9cafb4SSven Peter 239d9cafb4SSven Peterproperties: 249d9cafb4SSven Peter compatible: 258cc8bdceSSven Peter enum: 268cc8bdceSSven Peter - apple,t8103-dart 27*659bf8e5SHector Martin - apple,t8110-dart 288cc8bdceSSven Peter - apple,t6000-dart 299d9cafb4SSven Peter 309d9cafb4SSven Peter reg: 319d9cafb4SSven Peter maxItems: 1 329d9cafb4SSven Peter 339d9cafb4SSven Peter interrupts: 349d9cafb4SSven Peter maxItems: 1 359d9cafb4SSven Peter 369d9cafb4SSven Peter clocks: 379d9cafb4SSven Peter description: 389d9cafb4SSven Peter Reference to the gate clock phandle if required for this IOMMU. 399d9cafb4SSven Peter Optional since not all IOMMUs are attached to a clock gate. 409d9cafb4SSven Peter 419d9cafb4SSven Peter '#iommu-cells': 429d9cafb4SSven Peter const: 1 439d9cafb4SSven Peter description: 449d9cafb4SSven Peter Has to be one. The single cell describes the stream id emitted by 459d9cafb4SSven Peter a master to the IOMMU. 469d9cafb4SSven Peter 4736460912SHector Martin power-domains: 4836460912SHector Martin maxItems: 1 4936460912SHector Martin 509d9cafb4SSven Peterrequired: 519d9cafb4SSven Peter - compatible 529d9cafb4SSven Peter - reg 539d9cafb4SSven Peter - '#iommu-cells' 549d9cafb4SSven Peter - interrupts 559d9cafb4SSven Peter 569d9cafb4SSven PeteradditionalProperties: false 579d9cafb4SSven Peter 589d9cafb4SSven Peterexamples: 599d9cafb4SSven Peter - |+ 609d9cafb4SSven Peter dart1: iommu@82f80000 { 619d9cafb4SSven Peter compatible = "apple,t8103-dart"; 629d9cafb4SSven Peter reg = <0x82f80000 0x4000>; 639d9cafb4SSven Peter interrupts = <1 781 4>; 649d9cafb4SSven Peter #iommu-cells = <1>; 659d9cafb4SSven Peter }; 669d9cafb4SSven Peter 679d9cafb4SSven Peter master1 { 689d9cafb4SSven Peter iommus = <&dart1 0>; 699d9cafb4SSven Peter }; 709d9cafb4SSven Peter 719d9cafb4SSven Peter - |+ 729d9cafb4SSven Peter dart2a: iommu@82f00000 { 739d9cafb4SSven Peter compatible = "apple,t8103-dart"; 749d9cafb4SSven Peter reg = <0x82f00000 0x4000>; 759d9cafb4SSven Peter interrupts = <1 781 4>; 769d9cafb4SSven Peter #iommu-cells = <1>; 779d9cafb4SSven Peter }; 789d9cafb4SSven Peter dart2b: iommu@82f80000 { 799d9cafb4SSven Peter compatible = "apple,t8103-dart"; 809d9cafb4SSven Peter reg = <0x82f80000 0x4000>; 819d9cafb4SSven Peter interrupts = <1 781 4>; 829d9cafb4SSven Peter #iommu-cells = <1>; 839d9cafb4SSven Peter }; 849d9cafb4SSven Peter 859d9cafb4SSven Peter master2 { 869d9cafb4SSven Peter iommus = <&dart2a 0>, <&dart2b 1>; 879d9cafb4SSven Peter }; 88