| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/interrupt-controller/msi-controller.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: MSI controller |
| |
| maintainers: |
| - Marc Zyngier <maz@kernel.org> |
| |
| description: | |
| An MSI controller signals interrupts to a CPU when a write is made |
| to an MMIO address by some master. An MSI controller may feature a |
| number of doorbells. |
| |
| properties: |
| "#msi-cells": |
| description: | |
| The number of cells in an msi-specifier, required if not zero. |
| |
| Typically this will encode information related to sideband data, |
| and will not encode doorbells or payloads as these can be |
| configured dynamically. |
| |
| The meaning of the msi-specifier is defined by the device tree |
| binding of the specific MSI controller. |
| enum: [0, 1] |
| |
| msi-controller: |
| description: |
| Identifies the node as an MSI controller. |
| $ref: /schemas/types.yaml#/definitions/flag |
| |
| msi-ranges: |
| description: |
| A list of <phandle intspec span> tuples, where "phandle" is the |
| parent interrupt controller, "intspec" is the starting/base |
| interrupt specifier and "span" is the size of the |
| range. Multiple ranges can be provided. |
| $ref: /schemas/types.yaml#/definitions/phandle-array |
| |
| dependencies: |
| "#msi-cells": [ msi-controller ] |
| |
| additionalProperties: true |