1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-C 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/iommu/apple 4 $id: http://devicetree.org/schemas/iommu/apple,dart.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Apple DART IOMMU 7 title: Apple DART IOMMU 8 8 9 maintainers: 9 maintainers: 10 - Sven Peter <sven@svenpeter.dev> 10 - Sven Peter <sven@svenpeter.dev> 11 11 12 description: |+ 12 description: |+ 13 Apple SoCs may contain an implementation of 13 Apple SoCs may contain an implementation of their Device Address 14 Resolution Table which provides a mandatory 14 Resolution Table which provides a mandatory layer of address 15 translations for various masters. 15 translations for various masters. 16 16 17 Each DART instance is capable of handling up 17 Each DART instance is capable of handling up to 16 different streams 18 with individual pagetables and page-level re 18 with individual pagetables and page-level read/write protection flags. 19 19 20 This DART IOMMU also raises interrupts in re 20 This DART IOMMU also raises interrupts in response to various 21 fault conditions. 21 fault conditions. 22 22 23 properties: 23 properties: 24 compatible: 24 compatible: 25 enum: !! 25 const: apple,t8103-dart 26 - apple,t8103-dart << 27 - apple,t8103-usb4-dart << 28 - apple,t8110-dart << 29 - apple,t6000-dart << 30 26 31 reg: 27 reg: 32 maxItems: 1 28 maxItems: 1 33 29 34 interrupts: 30 interrupts: 35 maxItems: 1 31 maxItems: 1 36 32 37 clocks: 33 clocks: 38 description: 34 description: 39 Reference to the gate clock phandle if r 35 Reference to the gate clock phandle if required for this IOMMU. 40 Optional since not all IOMMUs are attach 36 Optional since not all IOMMUs are attached to a clock gate. 41 37 42 '#iommu-cells': 38 '#iommu-cells': 43 const: 1 39 const: 1 44 description: 40 description: 45 Has to be one. The single cell describes 41 Has to be one. The single cell describes the stream id emitted by 46 a master to the IOMMU. 42 a master to the IOMMU. 47 43 48 power-domains: 44 power-domains: 49 maxItems: 1 45 maxItems: 1 50 46 51 required: 47 required: 52 - compatible 48 - compatible 53 - reg 49 - reg 54 - '#iommu-cells' 50 - '#iommu-cells' 55 - interrupts 51 - interrupts 56 52 57 additionalProperties: false 53 additionalProperties: false 58 54 59 examples: 55 examples: 60 - |+ 56 - |+ 61 dart1: iommu@82f80000 { 57 dart1: iommu@82f80000 { 62 compatible = "apple,t8103-dart"; 58 compatible = "apple,t8103-dart"; 63 reg = <0x82f80000 0x4000>; 59 reg = <0x82f80000 0x4000>; 64 interrupts = <1 781 4>; 60 interrupts = <1 781 4>; 65 #iommu-cells = <1>; 61 #iommu-cells = <1>; 66 }; 62 }; 67 63 68 master1 { 64 master1 { 69 iommus = <&dart1 0>; 65 iommus = <&dart1 0>; 70 }; 66 }; 71 67 72 - |+ 68 - |+ 73 dart2a: iommu@82f00000 { 69 dart2a: iommu@82f00000 { 74 compatible = "apple,t8103-dart"; 70 compatible = "apple,t8103-dart"; 75 reg = <0x82f00000 0x4000>; 71 reg = <0x82f00000 0x4000>; 76 interrupts = <1 781 4>; 72 interrupts = <1 781 4>; 77 #iommu-cells = <1>; 73 #iommu-cells = <1>; 78 }; 74 }; 79 dart2b: iommu@82f80000 { 75 dart2b: iommu@82f80000 { 80 compatible = "apple,t8103-dart"; 76 compatible = "apple,t8103-dart"; 81 reg = <0x82f80000 0x4000>; 77 reg = <0x82f80000 0x4000>; 82 interrupts = <1 781 4>; 78 interrupts = <1 781 4>; 83 #iommu-cells = <1>; 79 #iommu-cells = <1>; 84 }; 80 }; 85 81 86 master2 { 82 master2 { 87 iommus = <&dart2a 0>, <&dart2b 1>; 83 iommus = <&dart2a 0>, <&dart2b 1>; 88 }; 84 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.