xref: /freebsd-src/sys/contrib/device-tree/Bindings/interrupt-controller/marvell,armada-370-xp-mpic.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotMarvell Armada 370, 375, 38x, XP Interrupt Controller
2*c66ec88fSEmmanuel Vadot-----------------------------------------------------
3*c66ec88fSEmmanuel Vadot
4*c66ec88fSEmmanuel VadotRequired properties:
5*c66ec88fSEmmanuel Vadot- compatible: Should be "marvell,mpic"
6*c66ec88fSEmmanuel Vadot- interrupt-controller: Identifies the node as an interrupt controller.
7*c66ec88fSEmmanuel Vadot- msi-controller: Identifies the node as an PCI Message Signaled
8*c66ec88fSEmmanuel Vadot  Interrupt controller.
9*c66ec88fSEmmanuel Vadot- #interrupt-cells: The number of cells to define the interrupts. Should be 1.
10*c66ec88fSEmmanuel Vadot  The cell is the IRQ number
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel Vadot- reg: Should contain PMIC registers location and length. First pair
13*c66ec88fSEmmanuel Vadot  for the main interrupt registers, second pair for the per-CPU
14*c66ec88fSEmmanuel Vadot  interrupt registers. For this last pair, to be compliant with SMP
15*c66ec88fSEmmanuel Vadot  support, the "virtual" must be use (For the record, these registers
16*c66ec88fSEmmanuel Vadot  automatically map to the interrupt controller registers of the
17*c66ec88fSEmmanuel Vadot  current CPU)
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel VadotOptional properties:
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel Vadot- interrupts: If defined, then it indicates that this MPIC is
22*c66ec88fSEmmanuel Vadot  connected as a slave to another interrupt controller. This is
23*c66ec88fSEmmanuel Vadot  typically the case on Armada 375 and Armada 38x, where the MPIC is
24*c66ec88fSEmmanuel Vadot  connected as a slave to the Cortex-A9 GIC. The provided interrupt
25*c66ec88fSEmmanuel Vadot  indicate to which GIC interrupt the MPIC output is connected.
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel VadotExample:
28*c66ec88fSEmmanuel Vadot
29*c66ec88fSEmmanuel Vadot        mpic: interrupt-controller@d0020000 {
30*c66ec88fSEmmanuel Vadot              compatible = "marvell,mpic";
31*c66ec88fSEmmanuel Vadot              #interrupt-cells = <1>;
32*c66ec88fSEmmanuel Vadot              #address-cells = <1>;
33*c66ec88fSEmmanuel Vadot              #size-cells = <1>;
34*c66ec88fSEmmanuel Vadot              interrupt-controller;
35*c66ec88fSEmmanuel Vadot              msi-controller;
36*c66ec88fSEmmanuel Vadot              reg = <0xd0020a00 0x1d0>,
37*c66ec88fSEmmanuel Vadot                    <0xd0021070 0x58>;
38*c66ec88fSEmmanuel Vadot        };
39