xref: /linux/Documentation/devicetree/bindings/interrupt-controller/abilis,tb10x-ictl.txt (revision 3eb66e91a25497065c5322b1268cbc3953642227)
1*b06eb017SChristian RuppertTB10x Top Level Interrupt Controller
2*b06eb017SChristian Ruppert====================================
3*b06eb017SChristian Ruppert
4*b06eb017SChristian RuppertThe Abilis TB10x SOC contains a custom interrupt controller. It performs
5*b06eb017SChristian Ruppertone-to-one mapping of external interrupt sources to CPU interrupts and
6*b06eb017SChristian Ruppertprovides support for reconfigurable trigger modes.
7*b06eb017SChristian Ruppert
8*b06eb017SChristian RuppertRequired properties
9*b06eb017SChristian Ruppert-------------------
10*b06eb017SChristian Ruppert
11*b06eb017SChristian Ruppert- compatible: Should be "abilis,tb10x-ictl"
12*b06eb017SChristian Ruppert- reg: specifies physical base address and size of register range.
13*b06eb017SChristian Ruppert- interrupt-congroller: Identifies the node as an interrupt controller.
14*b06eb017SChristian Ruppert- #interrupt cells: Specifies the number of cells used to encode an interrupt
15*b06eb017SChristian Ruppert  source connected to this controller. The value shall be 2.
16*b06eb017SChristian Ruppert- interrupts: Specifies the list of interrupt lines which are handled by
17*b06eb017SChristian Ruppert  the interrupt controller in the parent controller's notation. Interrupts
18*b06eb017SChristian Ruppert  are mapped one-to-one to parent interrupts.
19*b06eb017SChristian Ruppert
20*b06eb017SChristian RuppertExample
21*b06eb017SChristian Ruppert-------
22*b06eb017SChristian Ruppert
23*b06eb017SChristian Ruppertintc: interrupt-controller {	/* Parent interrupt controller */
24*b06eb017SChristian Ruppert	interrupt-controller;
25*b06eb017SChristian Ruppert	#interrupt-cells = <1>;	/* For example below */
26*b06eb017SChristian Ruppert	/* ... */
27*b06eb017SChristian Ruppert};
28*b06eb017SChristian Ruppert
29*b06eb017SChristian Rupperttb10x_ictl: pic@2000 {		/* TB10x interrupt controller */
30*b06eb017SChristian Ruppert	compatible = "abilis,tb10x-ictl";
31*b06eb017SChristian Ruppert	reg = <0x2000 0x20>;
32*b06eb017SChristian Ruppert	interrupt-controller;
33*b06eb017SChristian Ruppert	#interrupt-cells = <2>;
34*b06eb017SChristian Ruppert	interrupt-parent = <&intc>;
35*b06eb017SChristian Ruppert	interrupts = <5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
36*b06eb017SChristian Ruppert			20 21 22 23 24 25 26 27 28 29 30 31>;
37*b06eb017SChristian Ruppert};
38