kyber: make trace_block_rq call consistent with documentation
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / virtio / mmio.txt
1 * virtio memory mapped device
2
3 See https://ozlabs.org/~rusty/virtio-spec/ for more details.
4
5 Required properties:
6
7 - compatible:   "virtio,mmio" compatibility string
8 - reg:          control registers base address and size including configuration space
9 - interrupts:   interrupt generated by the device
10
11 Required properties for virtio-iommu:
12
13 - #iommu-cells: When the node corresponds to a virtio-iommu device, it is
14                 linked to DMA masters using the "iommus" or "iommu-map"
15                 properties [1][2]. #iommu-cells specifies the size of the
16                 "iommus" property. For virtio-iommu #iommu-cells must be
17                 1, each cell describing a single endpoint ID.
18
19 Optional properties:
20
21 - iommus:       If the device accesses memory through an IOMMU, it should
22                 have an "iommus" property [1]. Since virtio-iommu itself
23                 does not access memory through an IOMMU, the "virtio,mmio"
24                 node cannot have both an "#iommu-cells" and an "iommus"
25                 property.
26
27 Example:
28
29         virtio_block@3000 {
30                 compatible = "virtio,mmio";
31                 reg = <0x3000 0x100>;
32                 interrupts = <41>;
33
34                 /* Device has endpoint ID 23 */
35                 iommus = <&viommu 23>
36         }
37
38         viommu: iommu@3100 {
39                 compatible = "virtio,mmio";
40                 reg = <0x3100 0x100>;
41                 interrupts = <42>;
42
43                 #iommu-cells = <1>
44         }
45
46 [1] Documentation/devicetree/bindings/iommu/iommu.txt
47 [2] Documentation/devicetree/bindings/pci/pci-iommu.txt