blob: 1953b0c1b7c5bc92b0c86c2cadf24382cf378840 [file] [log] [blame]
Nicolas Ferree2615012011-11-22 22:26:09 +01001* Advanced Interrupt Controller (AIC)
2
3Required properties:
4- compatible: Should be "atmel,<chip>-aic"
5- interrupt-controller: Identifies the node as an interrupt controller.
6- interrupt-parent: For single AIC system, it is an empty property.
7- #interrupt-cells: The number of cells to define the interrupts. It sould be 2.
8 The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet).
9 The second cell is used to specify flags:
10 bits[3:0] trigger type and level flags:
11 1 = low-to-high edge triggered.
12 2 = high-to-low edge triggered.
13 4 = active high level-sensitive.
14 8 = active low level-sensitive.
15 Valid combinations are 1, 2, 3, 4, 8.
16 Default flag for internal sources should be set to 4 (active high).
17- reg: Should contain AIC registers location and length
Jean-Christophe PLAGNIOL-VILLARDc6573942012-04-09 19:36:36 +080018- atmel,external-irqs: u32 array of external irqs.
Nicolas Ferree2615012011-11-22 22:26:09 +010019
20Examples:
21 /*
22 * AIC
23 */
24 aic: interrupt-controller@fffff000 {
25 compatible = "atmel,at91rm9200-aic";
26 interrupt-controller;
27 interrupt-parent;
28 #interrupt-cells = <2>;
29 reg = <0xfffff000 0x200>;
30 };
31
32 /*
33 * An interrupt generating device that is wired to an AIC.
34 */
35 dma: dma-controller@ffffec00 {
36 compatible = "atmel,at91sam9g45-dma";
37 reg = <0xffffec00 0x200>;
38 interrupts = <21 4>;
39 };