* 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 */ }; }; };