]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
dt-bindings: gpio: Add bindings for Cadence GPIO
authorJan Kotas <jank@cadence.com>
Tue, 18 Dec 2018 16:10:41 +0000 (16:10 +0000)
committerLinus Walleij <linus.walleij@linaro.org>
Fri, 21 Dec 2018 10:39:24 +0000 (11:39 +0100)
This patch adds a DT binding documentation for
Cadence GPIO controller.

Signed-off-by: Jan Kotas <jank@cadence.com>
Reviewed-by: Rob Herring <robh@kernel.org>
[Removed interrupt-parent]
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Documentation/devicetree/bindings/gpio/cdns,gpio.txt [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/gpio/cdns,gpio.txt b/Documentation/devicetree/bindings/gpio/cdns,gpio.txt
new file mode 100644 (file)
index 0000000..706ef00
--- /dev/null
@@ -0,0 +1,43 @@
+Cadence GPIO controller bindings
+
+Required properties:
+- compatible: should be "cdns,gpio-r1p02".
+- reg: the register base address and size.
+- #gpio-cells: should be 2.
+       * first cell is the GPIO number.
+       * second cell specifies the GPIO flags, as defined in
+               <dt-bindings/gpio/gpio.h>. Only the GPIO_ACTIVE_HIGH
+               and GPIO_ACTIVE_LOW flags are supported.
+- gpio-controller: marks the device as a GPIO controller.
+- clocks: should contain one entry referencing the peripheral clock driving
+       the GPIO controller.
+
+Optional properties:
+- ngpios: integer number of gpio lines supported by this controller, up to 32.
+- interrupts: interrupt specifier for the controllers interrupt.
+- interrupt-controller: marks the device as an interrupt controller. When
+       defined, interrupts, interrupt-parent and #interrupt-cells
+       are required.
+- interrupt-cells: should be 2.
+       * first cell is the GPIO number you want to use as an IRQ source.
+       * second cell specifies the IRQ type, as defined in
+               <dt-bindings/interrupt-controller/irq.h>.
+               Currently only level sensitive IRQs are supported.
+
+
+Example:
+       gpio0: gpio-controller@fd060000 {
+               compatible = "cdns,gpio-r1p02";
+               reg =<0xfd060000 0x1000>;
+
+               clocks = <&gpio_clk>;
+
+               interrupt-parent = <&gic>;
+               interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>;
+
+               gpio-controller;
+               #gpio-cells = <2>;
+
+               interrupt-controller;
+               #interrupt-cells = <2>;
+       };