xref: /freebsd-src/sys/contrib/device-tree/Bindings/interrupt-controller/sigma,smp8642-intc.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotSigma Designs SMP86xx/SMP87xx secondary interrupt controller
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotRequired properties:
4*c66ec88fSEmmanuel Vadot- compatible: should be "sigma,smp8642-intc"
5*c66ec88fSEmmanuel Vadot- reg: physical address of MMIO region
6*c66ec88fSEmmanuel Vadot- ranges: address space mapping of child nodes
7*c66ec88fSEmmanuel Vadot- interrupt-controller: boolean
8*c66ec88fSEmmanuel Vadot- #address-cells: should be <1>
9*c66ec88fSEmmanuel Vadot- #size-cells: should be <1>
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel VadotOne child node per control block with properties:
12*c66ec88fSEmmanuel Vadot- reg: address of registers for this control block
13*c66ec88fSEmmanuel Vadot- interrupt-controller: boolean
14*c66ec88fSEmmanuel Vadot- #interrupt-cells: should be <2>, interrupt index and flags per interrupts.txt
15*c66ec88fSEmmanuel Vadot- interrupts: interrupt spec of primary interrupt controller
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel VadotExample:
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel Vadotinterrupt-controller@6e000 {
20*c66ec88fSEmmanuel Vadot	compatible = "sigma,smp8642-intc";
21*c66ec88fSEmmanuel Vadot	reg = <0x6e000 0x400>;
22*c66ec88fSEmmanuel Vadot	ranges = <0x0 0x6e000 0x400>;
23*c66ec88fSEmmanuel Vadot	interrupt-parent = <&gic>;
24*c66ec88fSEmmanuel Vadot	interrupt-controller;
25*c66ec88fSEmmanuel Vadot	#address-cells = <1>;
26*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
27*c66ec88fSEmmanuel Vadot
28*c66ec88fSEmmanuel Vadot	irq0: interrupt-controller@0 {
29*c66ec88fSEmmanuel Vadot		reg = <0x000 0x100>;
30*c66ec88fSEmmanuel Vadot		interrupt-controller;
31*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
32*c66ec88fSEmmanuel Vadot		interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
33*c66ec88fSEmmanuel Vadot	};
34*c66ec88fSEmmanuel Vadot
35*c66ec88fSEmmanuel Vadot	irq1: interrupt-controller@100 {
36*c66ec88fSEmmanuel Vadot		reg = <0x100 0x100>;
37*c66ec88fSEmmanuel Vadot		interrupt-controller;
38*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
39*c66ec88fSEmmanuel Vadot		interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
40*c66ec88fSEmmanuel Vadot	};
41*c66ec88fSEmmanuel Vadot
42*c66ec88fSEmmanuel Vadot	irq2: interrupt-controller@300 {
43*c66ec88fSEmmanuel Vadot		reg = <0x300 0x100>;
44*c66ec88fSEmmanuel Vadot		interrupt-controller;
45*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
46*c66ec88fSEmmanuel Vadot		interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
47*c66ec88fSEmmanuel Vadot	};
48*c66ec88fSEmmanuel Vadot};
49