xref: /freebsd-src/sys/contrib/device-tree/Bindings/interrupt-controller/marvell,sei.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotMarvell SEI (System Error Interrupt) Controller
2*c66ec88fSEmmanuel Vadot-----------------------------------------------
3*c66ec88fSEmmanuel Vadot
4*c66ec88fSEmmanuel VadotMarvell SEI (System Error Interrupt) controller is an interrupt
5*c66ec88fSEmmanuel Vadotaggregator. It receives interrupts from several sources and aggregates
6*c66ec88fSEmmanuel Vadotthem to a single interrupt line (an SPI) on the parent interrupt
7*c66ec88fSEmmanuel Vadotcontroller.
8*c66ec88fSEmmanuel Vadot
9*c66ec88fSEmmanuel VadotThis interrupt controller can handle up to 64 SEIs, a set comes from the
10*c66ec88fSEmmanuel VadotAP and is wired while a second set comes from the CPs by the mean of
11*c66ec88fSEmmanuel VadotMSIs.
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel VadotRequired properties:
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel Vadot- compatible: should be one of:
16*c66ec88fSEmmanuel Vadot              * "marvell,ap806-sei"
17*c66ec88fSEmmanuel Vadot- reg: SEI registers location and length.
18*c66ec88fSEmmanuel Vadot- interrupts: identifies the parent IRQ that will be triggered.
19*c66ec88fSEmmanuel Vadot- #interrupt-cells: number of cells to define an SEI wired interrupt
20*c66ec88fSEmmanuel Vadot                    coming from the AP, should be 1. The cell is the IRQ
21*c66ec88fSEmmanuel Vadot                    number.
22*c66ec88fSEmmanuel Vadot- interrupt-controller: identifies the node as an interrupt controller
23*c66ec88fSEmmanuel Vadot                        for AP interrupts.
24*c66ec88fSEmmanuel Vadot- msi-controller: identifies the node as an MSI controller for the CPs
25*c66ec88fSEmmanuel Vadot                  interrupts.
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel VadotExample:
28*c66ec88fSEmmanuel Vadot
29*c66ec88fSEmmanuel Vadot        sei: interrupt-controller@3f0200 {
30*c66ec88fSEmmanuel Vadot                compatible = "marvell,ap806-sei";
31*c66ec88fSEmmanuel Vadot                reg = <0x3f0200 0x40>;
32*c66ec88fSEmmanuel Vadot                interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
33*c66ec88fSEmmanuel Vadot                #interrupt-cells = <1>;
34*c66ec88fSEmmanuel Vadot                interrupt-controller;
35*c66ec88fSEmmanuel Vadot                msi-controller;
36*c66ec88fSEmmanuel Vadot        };
37