dt-bindings: anybus-controller: document devicetree binding
authorSven Van Asbroeck <thesven73@gmail.com>
Tue, 16 Apr 2019 15:56:15 +0000 (11:56 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Apr 2019 10:07:31 +0000 (12:07 +0200)
This patch adds devicetree binding documentation for the
Arcx anybus controller.

Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Sven Van Asbroeck <TheSven73@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/devicetree/bindings/fieldbus/arcx,anybus-controller.txt [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/fieldbus/arcx,anybus-controller.txt b/Documentation/devicetree/bindings/fieldbus/arcx,anybus-controller.txt
new file mode 100644 (file)
index 0000000..b1f9474
--- /dev/null
@@ -0,0 +1,71 @@
+* Arcx Anybus-S controller
+
+This chip communicates with the SoC over a parallel bus. It is
+expected that its Device Tree node is specified as the child of a node
+corresponding to the parallel bus used for communication.
+
+Required properties:
+--------------------
+
+  - compatible : The following chip-specific string:
+        "arcx,anybus-controller"
+
+  - reg : three areas:
+       index 0: bus memory area where the cpld registers are located.
+       index 1: bus memory area of the first  host's dual-port ram.
+       index 2: bus memory area of the second host's dual-port ram.
+
+  - reset-gpios : the GPIO pin connected to the reset line of the controller.
+
+  - interrupts : two interrupts:
+               index 0: interrupt connected to the first  host
+               index 1: interrupt connected to the second host
+       Generic interrupt client node bindings are described in
+       interrupt-controller/interrupts.txt
+
+Optional: use of subnodes
+-------------------------
+
+The card connected to a host may need additional properties. These can be
+specified in subnodes to the controller node.
+
+The subnodes are identified by the standard 'reg' property. Which information
+exactly can be specified depends on the bindings for the function driver
+for the subnode.
+
+Required controller node properties when using subnodes:
+- #address-cells: should be one.
+- #size-cells: should be zero.
+
+Required subnode properties:
+- reg: Must contain the host index of the card this subnode describes:
+               <0>     for the first  host on the controller
+               <1>     for the second host on the controller
+       Note that only a single card can be plugged into a host, so the host
+       index uniquely describes the card location.
+
+Example of usage:
+-----------------
+
+This example places the bridge on top of the i.MX WEIM parallel bus, see:
+Documentation/devicetree/bindings/bus/imx-weim.txt
+
+&weim {
+       controller@0,0 {
+               compatible = "arcx,anybus-controller";
+               reg = <0 0 0x100>, <0 0x400000 0x800>, <1 0x400000 0x800>;
+               reset-gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
+               interrupt-parent = <&gpio1>;
+               interrupts = <1 IRQ_TYPE_LEVEL_LOW>, <5 IRQ_TYPE_LEVEL_LOW>;
+               /* fsl,weim-cs-timing is a i.MX WEIM bus specific property */
+               fsl,weim-cs-timing = <0x024400b1 0x00001010 0x20081100
+                               0x00000000 0xa0000240 0x00000000>;
+               /* optional subnode for a card plugged into the first host */
+               #address-cells = <1>;
+               #size-cells = <0>;
+               card@0 {
+                       reg = <0>;
+                       /* card specific properties go here */
+               };
+       };
+};