Back to home page

OSCL-LXR

 
 

    


0001 * Advanced Interrupt Controller (AIC)
0002 
0003 Required properties:
0004 - compatible: Should be:
0005     - "atmel,<chip>-aic" where  <chip> can be "at91rm9200", "sama5d2",
0006       "sama5d3" or "sama5d4"
0007     - "microchip,<chip>-aic" where <chip> can be "sam9x60"
0008 
0009 - interrupt-controller: Identifies the node as an interrupt controller.
0010 - #interrupt-cells: The number of cells to define the interrupts. It should be 3.
0011   The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet).
0012   The second cell is used to specify flags:
0013     bits[3:0] trigger type and level flags:
0014       1 = low-to-high edge triggered.
0015       2 = high-to-low edge triggered.
0016       4 = active high level-sensitive.
0017       8 = active low level-sensitive.
0018       Valid combinations are 1, 2, 3, 4, 8.
0019       Default flag for internal sources should be set to 4 (active high).
0020   The third cell is used to specify the irq priority from 0 (lowest) to 7
0021   (highest).
0022 - reg: Should contain AIC registers location and length
0023 - atmel,external-irqs: u32 array of external irqs.
0024 
0025 Examples:
0026         /*
0027          * AIC
0028          */
0029         aic: interrupt-controller@fffff000 {
0030                 compatible = "atmel,at91rm9200-aic";
0031                 interrupt-controller;
0032                 #interrupt-cells = <3>;
0033                 reg = <0xfffff000 0x200>;
0034         };
0035 
0036         /*
0037          * An interrupt generating device that is wired to an AIC.
0038          */
0039         dma: dma-controller@ffffec00 {
0040                 compatible = "atmel,at91sam9g45-dma";
0041                 reg = <0xffffec00 0x200>;
0042                 interrupts = <21 4 5>;
0043         };