2011-11-23 01:26:09 +04:00
* Advanced Interrupt Controller (AIC)
Required properties:
2019-09-09 14:00:35 +03:00
- compatible: Should be:
- "atmel,<chip>-aic" where <chip> can be "at91rm9200", "sama5d2",
"sama5d3" or "sama5d4"
- "microchip,<chip>-aic" where <chip> can be "sam9x60"
2011-11-23 01:26:09 +04:00
- interrupt-controller: Identifies the node as an interrupt controller.
2013-01-14 10:14:56 +04:00
- #interrupt-cells: The number of cells to define the interrupts. It should be 3.
2011-11-23 01:26:09 +04:00
The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet).
The second cell is used to specify flags:
bits[3:0] trigger type and level flags:
1 = low-to-high edge triggered.
2 = high-to-low edge triggered.
4 = active high level-sensitive.
8 = active low level-sensitive.
Valid combinations are 1, 2, 3, 4, 8.
Default flag for internal sources should be set to 4 (active high).
2012-06-20 18:13:30 +04:00
The third cell is used to specify the irq priority from 0 (lowest) to 7
(highest).
2011-11-23 01:26:09 +04:00
- reg: Should contain AIC registers location and length
2012-04-09 15:36:36 +04:00
- atmel,external-irqs: u32 array of external irqs.
2011-11-23 01:26:09 +04:00
Examples:
/*
* AIC
*/
aic: interrupt-controller@fffff000 {
compatible = "atmel,at91rm9200-aic";
interrupt-controller;
2012-06-20 18:13:30 +04:00
#interrupt-cells = <3>;
2011-11-23 01:26:09 +04:00
reg = <0xfffff000 0x200>;
};
/*
* An interrupt generating device that is wired to an AIC.
*/
dma: dma-controller@ffffec00 {
compatible = "atmel,at91sam9g45-dma";
reg = <0xffffec00 0x200>;
2012-06-20 18:13:30 +04:00
interrupts = <21 4 5>;
2011-11-23 01:26:09 +04:00
};