18c2ecf20Sopenharmony_ci* Freescale Layerscape external IRQs
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciSome Layerscape SOCs (LS1021A, LS1043A, LS1046A) support inverting
48c2ecf20Sopenharmony_cithe polarity of certain external interrupt lines.
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciThe device node must be a child of the node representing the
78c2ecf20Sopenharmony_ciSupplemental Configuration Unit (SCFG).
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciRequired properties:
108c2ecf20Sopenharmony_ci- compatible: should be "fsl,<soc-name>-extirq", e.g. "fsl,ls1021a-extirq".
118c2ecf20Sopenharmony_ci- #interrupt-cells: Must be 2. The first element is the index of the
128c2ecf20Sopenharmony_ci  external interrupt line. The second element is the trigger type.
138c2ecf20Sopenharmony_ci- #address-cells: Must be 0.
148c2ecf20Sopenharmony_ci- interrupt-controller: Identifies the node as an interrupt controller
158c2ecf20Sopenharmony_ci- reg: Specifies the Interrupt Polarity Control Register (INTPCR) in
168c2ecf20Sopenharmony_ci  the SCFG.
178c2ecf20Sopenharmony_ci- interrupt-map: Specifies the mapping from external interrupts to GIC
188c2ecf20Sopenharmony_ci  interrupts.
198c2ecf20Sopenharmony_ci- interrupt-map-mask: Must be <0xffffffff 0>.
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciExample:
228c2ecf20Sopenharmony_ci	scfg: scfg@1570000 {
238c2ecf20Sopenharmony_ci		compatible = "fsl,ls1021a-scfg", "syscon";
248c2ecf20Sopenharmony_ci		reg = <0x0 0x1570000 0x0 0x10000>;
258c2ecf20Sopenharmony_ci		big-endian;
268c2ecf20Sopenharmony_ci		#address-cells = <1>;
278c2ecf20Sopenharmony_ci		#size-cells = <1>;
288c2ecf20Sopenharmony_ci		ranges = <0x0 0x0 0x1570000 0x10000>;
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci		extirq: interrupt-controller@1ac {
318c2ecf20Sopenharmony_ci			compatible = "fsl,ls1021a-extirq";
328c2ecf20Sopenharmony_ci			#interrupt-cells = <2>;
338c2ecf20Sopenharmony_ci			#address-cells = <0>;
348c2ecf20Sopenharmony_ci			interrupt-controller;
358c2ecf20Sopenharmony_ci			reg = <0x1ac 4>;
368c2ecf20Sopenharmony_ci			interrupt-map =
378c2ecf20Sopenharmony_ci				<0 0 &gic GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
388c2ecf20Sopenharmony_ci				<1 0 &gic GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
398c2ecf20Sopenharmony_ci				<2 0 &gic GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
408c2ecf20Sopenharmony_ci				<3 0 &gic GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>,
418c2ecf20Sopenharmony_ci				<4 0 &gic GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
428c2ecf20Sopenharmony_ci				<5 0 &gic GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
438c2ecf20Sopenharmony_ci			interrupt-map-mask = <0xffffffff 0x0>;
448c2ecf20Sopenharmony_ci		};
458c2ecf20Sopenharmony_ci	};
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci	interrupts-extended = <&gic GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
498c2ecf20Sopenharmony_ci			      <&extirq 1 IRQ_TYPE_LEVEL_LOW>;
50