xref: /linux/Documentation/devicetree/bindings/interrupt-controller/loongson,pch-msi.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1da10a4b6SJiaxun Yang# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2da10a4b6SJiaxun Yang%YAML 1.2
3da10a4b6SJiaxun Yang---
4*43d78445SRob Herring$id: http://devicetree.org/schemas/interrupt-controller/loongson,pch-msi.yaml#
5*43d78445SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml#
6da10a4b6SJiaxun Yang
7da10a4b6SJiaxun Yangtitle: Loongson PCH MSI Controller
8da10a4b6SJiaxun Yang
9da10a4b6SJiaxun Yangmaintainers:
10da10a4b6SJiaxun Yang  - Jiaxun Yang <jiaxun.yang@flygoat.com>
11da10a4b6SJiaxun Yang
12da10a4b6SJiaxun Yangdescription:
13da10a4b6SJiaxun Yang  This interrupt controller is found in the Loongson LS7A family of PCH for
14da10a4b6SJiaxun Yang  transforming interrupts from PCIe MSI into HyperTransport vectorized
15da10a4b6SJiaxun Yang  interrupts.
16da10a4b6SJiaxun Yang
17da10a4b6SJiaxun Yangproperties:
18da10a4b6SJiaxun Yang  compatible:
19da10a4b6SJiaxun Yang    const: loongson,pch-msi-1.0
20da10a4b6SJiaxun Yang
21da10a4b6SJiaxun Yang  reg:
22da10a4b6SJiaxun Yang    maxItems: 1
23da10a4b6SJiaxun Yang
24da10a4b6SJiaxun Yang  loongson,msi-base-vec:
25da10a4b6SJiaxun Yang    description:
26da10a4b6SJiaxun Yang      u32 value of the base of parent HyperTransport vector allocated
27da10a4b6SJiaxun Yang      to PCH MSI.
28*43d78445SRob Herring    $ref: /schemas/types.yaml#/definitions/uint32
29086e9074SRob Herring    minimum: 0
30da10a4b6SJiaxun Yang    maximum: 255
31da10a4b6SJiaxun Yang
32da10a4b6SJiaxun Yang  loongson,msi-num-vecs:
33da10a4b6SJiaxun Yang    description:
34da10a4b6SJiaxun Yang      u32 value of the number of parent HyperTransport vectors allocated
35da10a4b6SJiaxun Yang      to PCH MSI.
36*43d78445SRob Herring    $ref: /schemas/types.yaml#/definitions/uint32
37086e9074SRob Herring    minimum: 1
38da10a4b6SJiaxun Yang    maximum: 256
39da10a4b6SJiaxun Yang
40da10a4b6SJiaxun Yang  msi-controller: true
41da10a4b6SJiaxun Yang
42da10a4b6SJiaxun Yangrequired:
43da10a4b6SJiaxun Yang  - compatible
44da10a4b6SJiaxun Yang  - reg
45da10a4b6SJiaxun Yang  - msi-controller
46da10a4b6SJiaxun Yang  - loongson,msi-base-vec
47da10a4b6SJiaxun Yang  - loongson,msi-num-vecs
48da10a4b6SJiaxun Yang
495be478f9SRob HerringadditionalProperties: true # fixme
505be478f9SRob Herring
51da10a4b6SJiaxun Yangexamples:
52da10a4b6SJiaxun Yang  - |
53da10a4b6SJiaxun Yang    #include <dt-bindings/interrupt-controller/irq.h>
54da10a4b6SJiaxun Yang    msi: msi-controller@2ff00000 {
55da10a4b6SJiaxun Yang      compatible = "loongson,pch-msi-1.0";
56da10a4b6SJiaxun Yang      reg = <0x2ff00000 0x4>;
57da10a4b6SJiaxun Yang      msi-controller;
58da10a4b6SJiaxun Yang      loongson,msi-base-vec = <64>;
59da10a4b6SJiaxun Yang      loongson,msi-num-vecs = <64>;
60da10a4b6SJiaxun Yang      interrupt-parent = <&htvec>;
61da10a4b6SJiaxun Yang    };
62da10a4b6SJiaxun Yang...
63