Lines Matching full:iommu

5 IOMMU device node:
8 An IOMMU can provide the following services:
19 through the IOMMU and faulting when encountering accesses to unmapped
29 IOMMUs can be single-master or multiple-master. Single-master IOMMU devices
31 master IOMMU devices can translate accesses from more than one master.
33 The device tree node of the IOMMU device's parent bus must contain a valid
35 IOMMU maps to memory. An empty "dma-ranges" property means that there is a
36 1:1 mapping from IOMMU to memory.
40 - #iommu-cells: The number of cells in an IOMMU specifier needed to encode an
43 The meaning of the IOMMU specifier is defined by the device tree binding of
44 the specific IOMMU. Below are a few examples of typical use-cases:
46 - #iommu-cells = <0>: Single master IOMMU devices are not configurable and
48 This may also apply to multiple master IOMMU devices that do not allow the
49 association of masters to be configured. Note that an IOMMU can by design
52 - #iommu-cells = <1>: Multiple master IOMMU devices may need to be configured
56 - #iommu-cells = <4>: Some IOMMU devices allow the DMA window for masters to
64 IOMMU binding for the exact meaning of the cells that make up the specifier.
67 IOMMU master node:
70 Devices that access memory through an IOMMU are called masters. A device can
71 have multiple master interfaces (to one or more IOMMU devices).
75 - iommus: A list of phandle and IOMMU specifier pairs that describe the IOMMU
79 When an "iommus" property is specified in a device tree node, the IOMMU will
82 referenced IOMMU is disabled, in which case the "dma-ranges" property of the
84 not guarantee that the IOMMU is really disabled since the hardware may not
86 disable the IOMMU's device tree node in the first place because it would
100 before updating the mappings and completing the transaction. Such IOMMU
119 can be useful to describe how children on the bus relate to the IOMMU if they
129 Single-master IOMMU:
132 iommu {
133 #iommu-cells = <0>;
137 iommus = <&{/iommu}>;
140 Multiple-master IOMMU with fixed associations:
143 /* multiple-master IOMMU */
144 iommu {
146 * Masters are statically associated with this IOMMU and share
147 * the same address translations because the IOMMU does not
153 #iommu-cells = <0>;
156 /* static association with IOMMU */
159 iommus = <&{/iommu}>;
162 /* static association with IOMMU */
165 iommus = <&{/iommu}>;
168 Multiple-master IOMMU:
171 iommu {
173 #iommu-cells = <1>;
177 /* device has master ID 42 in the IOMMU */
178 iommus = <&{/iommu} 42>;
182 /* device has master IDs 23 and 24 in the IOMMU */
183 iommus = <&{/iommu} 23>, <&{/iommu} 24>;
186 Multiple-master IOMMU with configurable DMA window:
190 iommu {
199 #iommu-cells = <4>;
204 iommus = <&{/iommu} 42 0 0x1 0x0>;