]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
dt-bindings: interrupt-controller: Convert MSI controller to json-schema
authorMark Kettenis <kettenis@openbsd.org>
Tue, 21 Sep 2021 18:34:12 +0000 (20:34 +0200)
committerRob Herring <robh@kernel.org>
Mon, 27 Sep 2021 16:54:51 +0000 (11:54 -0500)
Split the MSI controller bindings from the MSI binding document
into DT schema format using json-schema.

Acked-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Mark Kettenis <kettenis@openbsd.org>
Link: https://lore.kernel.org/r/20210921183420.436-2-kettenis@openbsd.org
Signed-off-by: Rob Herring <robh@kernel.org>
Documentation/devicetree/bindings/interrupt-controller/msi-controller.yaml [new file with mode: 0644]
Documentation/devicetree/bindings/pci/brcm,stb-pcie.yaml
Documentation/devicetree/bindings/pci/microchip,pcie-host.yaml

diff --git a/Documentation/devicetree/bindings/interrupt-controller/msi-controller.yaml b/Documentation/devicetree/bindings/interrupt-controller/msi-controller.yaml
new file mode 100644 (file)
index 0000000..58d898d
--- /dev/null
@@ -0,0 +1,38 @@
+# 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
+
+dependencies:
+  "#msi-cells": [ msi-controller ]
+
+additionalProperties: true
index b9589a0daa5c548b5f3851015e3fb0436acbc6f8..1fe102743f820eb78c54b122405964f02c6dac05 100644 (file)
@@ -88,6 +88,7 @@ required:
 
 allOf:
   - $ref: /schemas/pci/pci-bus.yaml#
+  - $ref: /schemas/interrupt-controller/msi-controller.yaml#
   - if:
       properties:
         compatible:
index fb95c276a9866c64589fdc9933f58112e1a6c58e..7b0776457178f8e3204adda3f5249700a315466c 100644 (file)
@@ -11,6 +11,7 @@ maintainers:
 
 allOf:
   - $ref: /schemas/pci/pci-bus.yaml#
+  - $ref: /schemas/interrupt-controller/msi-controller.yaml#
 
 properties:
   compatible: