mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
20a980e957
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>
72 lines
2.4 KiB
Plaintext
72 lines
2.4 KiB
Plaintext
* 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 */
|
|
};
|
|
};
|
|
};
|