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