34 lines
1.3 KiB
Plaintext
34 lines
1.3 KiB
Plaintext
|
* Mediatek 27xx cirq
|
||
|
|
||
|
In Mediatek SOCs, the CIRQ is a low power interrupt controller designed to
|
||
|
work outside MCUSYS which comprises with Cortex-Ax cores,CCI and GIC.
|
||
|
The external interrupts (outside MCUSYS) will feed through CIRQ and connect
|
||
|
to GIC in MCUSYS. When CIRQ is enabled, it will record the edge-sensitive
|
||
|
interrupts and generate a pulse signal to parent interrupt controller when
|
||
|
flush command is executed. With CIRQ, MCUSYS can be completely turned off
|
||
|
to improve the system power consumption without losing interrupts.
|
||
|
|
||
|
Required properties:
|
||
|
- compatible: should be one of
|
||
|
- "mediatek,mt2701-cirq" for mt2701 CIRQ
|
||
|
- "mediatek,mt8135-cirq" for mt8135 CIRQ
|
||
|
- "mediatek,mt8173-cirq" for mt8173 CIRQ
|
||
|
and "mediatek,cirq" as a fallback.
|
||
|
- interrupt-controller : Identifies the node as an interrupt controller.
|
||
|
- #interrupt-cells : Use the same format as specified by GIC in arm,gic.txt.
|
||
|
- reg: Physical base address of the cirq registers and length of memory
|
||
|
mapped region.
|
||
|
- mediatek,ext-irq-range: Identifies external irq number range in different
|
||
|
SOCs.
|
||
|
|
||
|
Example:
|
||
|
cirq: interrupt-controller@10204000 {
|
||
|
compatible = "mediatek,mt2701-cirq",
|
||
|
"mediatek,mtk-cirq";
|
||
|
interrupt-controller;
|
||
|
#interrupt-cells = <3>;
|
||
|
interrupt-parent = <&sysirq>;
|
||
|
reg = <0 0x10204000 0 0x400>;
|
||
|
mediatek,ext-irq-start = <32 200>;
|
||
|
};
|