1*4882a593Smuzhiyun* Mediatek 27xx cirq 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunIn Mediatek SOCs, the CIRQ is a low power interrupt controller designed to 4*4882a593Smuzhiyunwork outside MCUSYS which comprises with Cortex-Ax cores,CCI and GIC. 5*4882a593SmuzhiyunThe external interrupts (outside MCUSYS) will feed through CIRQ and connect 6*4882a593Smuzhiyunto GIC in MCUSYS. When CIRQ is enabled, it will record the edge-sensitive 7*4882a593Smuzhiyuninterrupts and generate a pulse signal to parent interrupt controller when 8*4882a593Smuzhiyunflush command is executed. With CIRQ, MCUSYS can be completely turned off 9*4882a593Smuzhiyunto improve the system power consumption without losing interrupts. 10*4882a593Smuzhiyun 11*4882a593SmuzhiyunRequired properties: 12*4882a593Smuzhiyun- compatible: should be one of 13*4882a593Smuzhiyun - "mediatek,mt2701-cirq" for mt2701 CIRQ 14*4882a593Smuzhiyun - "mediatek,mt8135-cirq" for mt8135 CIRQ 15*4882a593Smuzhiyun - "mediatek,mt8173-cirq" for mt8173 CIRQ 16*4882a593Smuzhiyun and "mediatek,cirq" as a fallback. 17*4882a593Smuzhiyun- interrupt-controller : Identifies the node as an interrupt controller. 18*4882a593Smuzhiyun- #interrupt-cells : Use the same format as specified by GIC in arm,gic.txt. 19*4882a593Smuzhiyun- reg: Physical base address of the cirq registers and length of memory 20*4882a593Smuzhiyun mapped region. 21*4882a593Smuzhiyun- mediatek,ext-irq-range: Identifies external irq number range in different 22*4882a593Smuzhiyun SOCs. 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunExample: 25*4882a593Smuzhiyun cirq: interrupt-controller@10204000 { 26*4882a593Smuzhiyun compatible = "mediatek,mt2701-cirq", 27*4882a593Smuzhiyun "mediatek,mtk-cirq"; 28*4882a593Smuzhiyun interrupt-controller; 29*4882a593Smuzhiyun #interrupt-cells = <3>; 30*4882a593Smuzhiyun interrupt-parent = <&sysirq>; 31*4882a593Smuzhiyun reg = <0 0x10204000 0 0x400>; 32*4882a593Smuzhiyun mediatek,ext-irq-start = <32 200>; 33*4882a593Smuzhiyun }; 34