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