| * NXP LPC32xx MIC, SIC1 and SIC2 Interrupt Controllers | |
| Required properties: | |
| - compatible: "nxp,lpc3220-mic" or "nxp,lpc3220-sic". | |
| - reg: should contain IC registers location and length. | |
| - interrupt-controller: identifies the node as an interrupt controller. | |
| - #interrupt-cells: the number of cells to define an interrupt, should be 2. | |
| The first cell is the IRQ number, the second cell is used to specify | |
| one of the supported IRQ types: | |
| IRQ_TYPE_EDGE_RISING = low-to-high edge triggered, | |
| IRQ_TYPE_EDGE_FALLING = high-to-low edge triggered, | |
| IRQ_TYPE_LEVEL_HIGH = active high level-sensitive, | |
| IRQ_TYPE_LEVEL_LOW = active low level-sensitive. | |
| Reset value is IRQ_TYPE_LEVEL_LOW. | |
| Optional properties: | |
| - interrupt-parent: empty for MIC interrupt controller, link to parent | |
| MIC interrupt controller for SIC1 and SIC2 | |
| - interrupts: empty for MIC interrupt controller, cascaded MIC | |
| hardware interrupts for SIC1 and SIC2 | |
| Examples: | |
| /* LPC32xx MIC, SIC1 and SIC2 interrupt controllers */ | |
| mic: interrupt-controller@40008000 { | |
| compatible = "nxp,lpc3220-mic"; | |
| reg = <0x40008000 0x4000>; | |
| interrupt-controller; | |
| #interrupt-cells = <2>; | |
| }; | |
| sic1: interrupt-controller@4000c000 { | |
| compatible = "nxp,lpc3220-sic"; | |
| reg = <0x4000c000 0x4000>; | |
| interrupt-controller; | |
| #interrupt-cells = <2>; | |
| interrupt-parent = <&mic>; | |
| interrupts = <0 IRQ_TYPE_LEVEL_LOW>, | |
| <30 IRQ_TYPE_LEVEL_LOW>; | |
| }; | |
| sic2: interrupt-controller@40010000 { | |
| compatible = "nxp,lpc3220-sic"; | |
| reg = <0x40010000 0x4000>; | |
| interrupt-controller; | |
| #interrupt-cells = <2>; | |
| interrupt-parent = <&mic>; | |
| interrupts = <1 IRQ_TYPE_LEVEL_LOW>, | |
| <31 IRQ_TYPE_LEVEL_LOW>; | |
| }; | |
| /* ADC */ | |
| adc@40048000 { | |
| compatible = "nxp,lpc3220-adc"; | |
| reg = <0x40048000 0x1000>; | |
| interrupt-parent = <&sic1>; | |
| interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; | |
| }; |