xref: /freebsd/sys/contrib/device-tree/Bindings/interrupt-controller/sophgo,sg2042-msi.yaml (revision ae5de77ed78ae54d86cead5604869212e8008e6b)
18ccc0d23SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
28ccc0d23SEmmanuel Vadot%YAML 1.2
38ccc0d23SEmmanuel Vadot---
48ccc0d23SEmmanuel Vadot$id: http://devicetree.org/schemas/interrupt-controller/sophgo,sg2042-msi.yaml#
58ccc0d23SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
68ccc0d23SEmmanuel Vadot
78ccc0d23SEmmanuel Vadottitle: Sophgo SG2042 MSI Controller
88ccc0d23SEmmanuel Vadot
98ccc0d23SEmmanuel Vadotmaintainers:
108ccc0d23SEmmanuel Vadot  - Chen Wang <unicorn_wang@outlook.com>
118ccc0d23SEmmanuel Vadot
128ccc0d23SEmmanuel Vadotdescription:
138ccc0d23SEmmanuel Vadot  This interrupt controller is in Sophgo SG2042 for transforming interrupts from
148ccc0d23SEmmanuel Vadot  PCIe MSI to PLIC interrupts.
158ccc0d23SEmmanuel Vadot
168ccc0d23SEmmanuel VadotallOf:
178ccc0d23SEmmanuel Vadot  - $ref: /schemas/interrupt-controller/msi-controller.yaml#
188ccc0d23SEmmanuel Vadot
198ccc0d23SEmmanuel Vadotproperties:
208ccc0d23SEmmanuel Vadot  compatible:
21*ae5de77eSEmmanuel Vadot    enum:
22*ae5de77eSEmmanuel Vadot      - sophgo,sg2042-msi
23*ae5de77eSEmmanuel Vadot      - sophgo,sg2044-msi
248ccc0d23SEmmanuel Vadot
258ccc0d23SEmmanuel Vadot  reg:
268ccc0d23SEmmanuel Vadot    items:
278ccc0d23SEmmanuel Vadot      - description: clear register
288ccc0d23SEmmanuel Vadot      - description: msi doorbell address
298ccc0d23SEmmanuel Vadot
308ccc0d23SEmmanuel Vadot  reg-names:
318ccc0d23SEmmanuel Vadot    items:
328ccc0d23SEmmanuel Vadot      - const: clr
338ccc0d23SEmmanuel Vadot      - const: doorbell
348ccc0d23SEmmanuel Vadot
358ccc0d23SEmmanuel Vadot  msi-controller: true
368ccc0d23SEmmanuel Vadot
378ccc0d23SEmmanuel Vadot  msi-ranges:
388ccc0d23SEmmanuel Vadot    maxItems: 1
398ccc0d23SEmmanuel Vadot
408ccc0d23SEmmanuel Vadot  "#msi-cells":
418ccc0d23SEmmanuel Vadot    const: 0
428ccc0d23SEmmanuel Vadot
438ccc0d23SEmmanuel Vadotrequired:
448ccc0d23SEmmanuel Vadot  - compatible
458ccc0d23SEmmanuel Vadot  - reg
468ccc0d23SEmmanuel Vadot  - reg-names
478ccc0d23SEmmanuel Vadot  - msi-controller
488ccc0d23SEmmanuel Vadot  - msi-ranges
498ccc0d23SEmmanuel Vadot  - "#msi-cells"
508ccc0d23SEmmanuel Vadot
518ccc0d23SEmmanuel VadotunevaluatedProperties: false
528ccc0d23SEmmanuel Vadot
538ccc0d23SEmmanuel Vadotexamples:
548ccc0d23SEmmanuel Vadot  - |
558ccc0d23SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
568ccc0d23SEmmanuel Vadot    msi-controller@30000000 {
578ccc0d23SEmmanuel Vadot      compatible = "sophgo,sg2042-msi";
588ccc0d23SEmmanuel Vadot      reg = <0x30000000 0x4>, <0x30000008 0x4>;
598ccc0d23SEmmanuel Vadot      reg-names = "clr", "doorbell";
608ccc0d23SEmmanuel Vadot      msi-controller;
618ccc0d23SEmmanuel Vadot      #msi-cells = <0>;
628ccc0d23SEmmanuel Vadot      msi-ranges = <&plic 64 IRQ_TYPE_LEVEL_HIGH 32>;
638ccc0d23SEmmanuel Vadot    };
64