18c2ecf20Sopenharmony_ciKeystone 2 IRQ controller IP
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciOn Keystone SOCs, DSP cores can send interrupts to ARM
48c2ecf20Sopenharmony_cihost using the IRQ controller IP. It provides 28 IRQ signals to ARM.
58c2ecf20Sopenharmony_ciThe IRQ handler running on HOST OS can identify DSP signal source by
68c2ecf20Sopenharmony_cianalyzing SRCCx bits in IPCARx registers. This is one of the component
78c2ecf20Sopenharmony_ciused by the IPC mechanism used on Keystone SOCs.
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciRequired Properties:
108c2ecf20Sopenharmony_ci- compatible: should be "ti,keystone-irq"
118c2ecf20Sopenharmony_ci- ti,syscon-dev : phandle and offset pair. The phandle to syscon used to
128c2ecf20Sopenharmony_ci			access device control registers and the offset inside
138c2ecf20Sopenharmony_ci			device control registers range.
148c2ecf20Sopenharmony_ci- interrupt-controller : Identifies the node as an interrupt controller
158c2ecf20Sopenharmony_ci- #interrupt-cells : Specifies the number of cells needed to encode interrupt
168c2ecf20Sopenharmony_ci					 source should be 1.
178c2ecf20Sopenharmony_ci- interrupts: interrupt reference to primary interrupt controller
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciPlease refer to interrupts.txt in this directory for details of the common
208c2ecf20Sopenharmony_ciInterrupt Controllers bindings used by client devices.
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciExample:
238c2ecf20Sopenharmony_ci	kirq0: keystone_irq0@26202a0 {
248c2ecf20Sopenharmony_ci		compatible = "ti,keystone-irq";
258c2ecf20Sopenharmony_ci		ti,syscon-dev = <&devctrl 0x2a0>;
268c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>;
278c2ecf20Sopenharmony_ci		interrupt-controller;
288c2ecf20Sopenharmony_ci		#interrupt-cells = <1>;
298c2ecf20Sopenharmony_ci	};
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci	dsp0: dsp0 {
328c2ecf20Sopenharmony_ci		compatible = "linux,rproc-user";
338c2ecf20Sopenharmony_ci		...
348c2ecf20Sopenharmony_ci		interrupt-parent = <&kirq0>;
358c2ecf20Sopenharmony_ci		interrupts = <10 2>;
368c2ecf20Sopenharmony_ci	};
37