mmio.yaml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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. title: virtio memory mapped devices
  7. maintainers:
  8. - Jean-Philippe Brucker <jean-philippe@linaro.org>
  9. description:
  10. See https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=virtio for
  11. more details.
  12. properties:
  13. compatible:
  14. const: virtio,mmio
  15. reg:
  16. maxItems: 1
  17. dma-coherent: true
  18. interrupts:
  19. maxItems: 1
  20. '#iommu-cells':
  21. description: Required when the node corresponds to a virtio-iommu device.
  22. const: 1
  23. iommus:
  24. description: Required for devices making accesses thru an IOMMU.
  25. maxItems: 1
  26. wakeup-source:
  27. type: boolean
  28. description: Required for setting irq of a virtio_mmio device as wakeup source.
  29. required:
  30. - compatible
  31. - reg
  32. - interrupts
  33. additionalProperties:
  34. type: object
  35. examples:
  36. - |
  37. virtio@3000 {
  38. compatible = "virtio,mmio";
  39. reg = <0x3000 0x100>;
  40. interrupts = <41>;
  41. /* Device has endpoint ID 23 */
  42. iommus = <&viommu 23>;
  43. };
  44. viommu: iommu@3100 {
  45. compatible = "virtio,mmio";
  46. reg = <0x3100 0x100>;
  47. interrupts = <42>;
  48. #iommu-cells = <1>;
  49. };
  50. ...