xref: /freebsd/sys/contrib/device-tree/Bindings/virtio/mmio.yaml (revision 3078531de10dcae44b253a35125c949ff4235284)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/virtio/mmio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: virtio memory mapped devices
8
9maintainers:
10  - Jean-Philippe Brucker <jean-philippe@linaro.org>
11
12description:
13  See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for
14  more details.
15
16properties:
17  compatible:
18    const: virtio,mmio
19
20  reg:
21    maxItems: 1
22
23  dma-coherent: true
24
25  interrupts:
26    maxItems: 1
27
28  '#iommu-cells':
29    description: Required when the node corresponds to a virtio-iommu device.
30    const: 1
31
32  iommus:
33    description: Required for devices making accesses thru an IOMMU.
34    maxItems: 1
35
36required:
37  - compatible
38  - reg
39  - interrupts
40
41additionalProperties:
42  type: object
43
44examples:
45  - |
46    virtio@3000 {
47        compatible = "virtio,mmio";
48        reg = <0x3000 0x100>;
49        interrupts = <41>;
50
51        /* Device has endpoint ID 23 */
52        iommus = <&viommu 23>;
53    };
54
55    viommu: iommu@3100 {
56        compatible = "virtio,mmio";
57        reg = <0x3100 0x100>;
58        interrupts = <42>;
59
60        #iommu-cells = <1>;
61    };
62
63...
64