msi-controller.yaml 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/interrupt-controller/msi-controller.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: MSI controller
  7. maintainers:
  8. - Marc Zyngier <maz@kernel.org>
  9. description: |
  10. An MSI controller signals interrupts to a CPU when a write is made
  11. to an MMIO address by some master. An MSI controller may feature a
  12. number of doorbells.
  13. properties:
  14. "#msi-cells":
  15. description: |
  16. The number of cells in an msi-specifier, required if not zero.
  17. Typically this will encode information related to sideband data,
  18. and will not encode doorbells or payloads as these can be
  19. configured dynamically.
  20. The meaning of the msi-specifier is defined by the device tree
  21. binding of the specific MSI controller.
  22. enum: [0, 1]
  23. msi-controller:
  24. description:
  25. Identifies the node as an MSI controller.
  26. $ref: /schemas/types.yaml#/definitions/flag
  27. msi-ranges:
  28. description:
  29. A list of <phandle intspec span> tuples, where "phandle" is the
  30. parent interrupt controller, "intspec" is the starting/base
  31. interrupt specifier and "span" is the size of the
  32. range. Multiple ranges can be provided.
  33. $ref: /schemas/types.yaml#/definitions/phandle-array
  34. dependencies:
  35. "#msi-cells": [ msi-controller ]
  36. additionalProperties: true