Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / Documentation / devicetree / bindings / gpio / gpio-davinci.txt
diff --git a/kernel/Documentation/devicetree/bindings/gpio/gpio-davinci.txt b/kernel/Documentation/devicetree/bindings/gpio/gpio-davinci.txt
new file mode 100644 (file)
index 0000000..5079ba7
--- /dev/null
@@ -0,0 +1,62 @@
+Davinci/Keystone GPIO controller bindings
+
+Required Properties:
+- compatible: should be "ti,dm6441-gpio", "ti,keystone-gpio"
+
+- reg: Physical base address of the controller and the size of memory mapped
+       registers.
+
+- gpio-controller : Marks the device node as a gpio controller.
+
+- #gpio-cells : Should be two.
+  - first cell is the pin number
+  - second cell is used to specify optional parameters (unused)
+
+- interrupt-parent: phandle of the parent interrupt controller.
+
+- interrupts: Array of GPIO interrupt number. Only banked or unbanked IRQs are
+             supported at a time.
+
+- ti,ngpio: The number of GPIO pins supported.
+
+- ti,davinci-gpio-unbanked: The number of GPIOs that have an individual interrupt
+                            line to processor.
+
+The GPIO controller also acts as an interrupt controller. It uses the default
+two cells specifier as described in Documentation/devicetree/bindings/
+interrupt-controller/interrupts.txt.
+
+Example:
+
+gpio: gpio@1e26000 {
+       compatible = "ti,dm6441-gpio";
+       gpio-controller;
+       #gpio-cells = <2>;
+       reg = <0x226000 0x1000>;
+       interrupt-parent = <&intc>;
+       interrupts = <42 IRQ_TYPE_EDGE_BOTH 43 IRQ_TYPE_EDGE_BOTH
+               44 IRQ_TYPE_EDGE_BOTH 45 IRQ_TYPE_EDGE_BOTH
+               46 IRQ_TYPE_EDGE_BOTH 47 IRQ_TYPE_EDGE_BOTH
+               48 IRQ_TYPE_EDGE_BOTH 49 IRQ_TYPE_EDGE_BOTH
+               50 IRQ_TYPE_EDGE_BOTH>;
+       ti,ngpio = <144>;
+       ti,davinci-gpio-unbanked = <0>;
+       interrupt-controller;
+       #interrupt-cells = <2>;
+};
+
+leds {
+       compatible = "gpio-leds";
+
+       led1 {
+               label = "davinci:green:usr1";
+               gpios = <&gpio 10 GPIO_ACTIVE_HIGH>;
+               ...
+       };
+
+       led2 {
+               label = "davinci:red:debug1";
+               gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
+               ...
+       };
+};