dt-bindings: mtk-cirq: Add binding document
authorYoulin Pei <youlin.pei@mediatek.com>
Fri, 7 Apr 2017 08:06:35 +0000 (16:06 +0800)
committerMarc Zyngier <marc.zyngier@arm.com>
Fri, 7 Apr 2017 09:52:21 +0000 (10:52 +0100)
This commit adds the device tree binding document for
the mediatek cirq.

Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Youlin Pei <youlin.pei@mediatek.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Documentation/devicetree/bindings/interrupt-controller/mediatek,cirq.txt [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/interrupt-controller/mediatek,cirq.txt b/Documentation/devicetree/bindings/interrupt-controller/mediatek,cirq.txt
new file mode 100644 (file)
index 0000000..a7efdbc
--- /dev/null
@@ -0,0 +1,35 @@
+* 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.
+- interrupt-parent: phandle of irq parent for cirq. The parent must
+  use the same interrupt-cells format as GIC.
+- 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>;
+       };