mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 19:31:53 +00:00
0102788f3c
Document cavium-pip rx-delay/tx-delay properties. Currently the board specific values need to be hardcoded in the platform code, which we want to avoid when moving to DT-only booting. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Rob Herring <robh@kernel.org>
100 lines
2.6 KiB
Plaintext
100 lines
2.6 KiB
Plaintext
* PIP Ethernet nexus.
|
|
|
|
The PIP Ethernet nexus can control several data packet input/output
|
|
devices. The devices have a two level grouping scheme. There may be
|
|
several interfaces, and each interface may have several ports. These
|
|
ports might be an individual Ethernet PHY.
|
|
|
|
|
|
Properties for the PIP nexus:
|
|
- compatible: "cavium,octeon-3860-pip"
|
|
|
|
Compatibility with all cn3XXX, cn5XXX and cn6XXX SOCs.
|
|
|
|
- reg: The base address of the PIP's register bank.
|
|
|
|
- #address-cells: Must be <1>.
|
|
|
|
- #size-cells: Must be <0>.
|
|
|
|
Properties for PIP interfaces which is a child the PIP nexus:
|
|
- compatible: "cavium,octeon-3860-pip-interface"
|
|
|
|
Compatibility with all cn3XXX, cn5XXX and cn6XXX SOCs.
|
|
|
|
- reg: The interface number.
|
|
|
|
- #address-cells: Must be <1>.
|
|
|
|
- #size-cells: Must be <0>.
|
|
|
|
Properties for PIP port which is a child the PIP interface:
|
|
- compatible: "cavium,octeon-3860-pip-port"
|
|
|
|
Compatibility with all cn3XXX, cn5XXX and cn6XXX SOCs.
|
|
|
|
- reg: The port number within the interface group.
|
|
|
|
- phy-handle: Optional, see ethernet.txt file in the same directory.
|
|
|
|
- rx-delay: Delay value for RGMII receive clock. Optional. Disabled if 0.
|
|
Value range is 1-31, and mapping to the actual delay varies depending on HW.
|
|
|
|
- tx-delay: Delay value for RGMII transmit clock. Optional. Disabled if 0.
|
|
Value range is 1-31, and mapping to the actual delay varies depending on HW.
|
|
|
|
Example:
|
|
|
|
pip@11800a0000000 {
|
|
compatible = "cavium,octeon-3860-pip";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0x11800 0xa0000000 0x0 0x2000>;
|
|
|
|
interface@0 {
|
|
compatible = "cavium,octeon-3860-pip-interface";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <0>; /* interface */
|
|
|
|
ethernet@0 {
|
|
compatible = "cavium,octeon-3860-pip-port";
|
|
reg = <0x0>; /* Port */
|
|
local-mac-address = [ 00 0f b7 10 63 60 ];
|
|
phy-handle = <&phy2>;
|
|
};
|
|
ethernet@1 {
|
|
compatible = "cavium,octeon-3860-pip-port";
|
|
reg = <0x1>; /* Port */
|
|
local-mac-address = [ 00 0f b7 10 63 61 ];
|
|
phy-handle = <&phy3>;
|
|
};
|
|
ethernet@2 {
|
|
compatible = "cavium,octeon-3860-pip-port";
|
|
reg = <0x2>; /* Port */
|
|
local-mac-address = [ 00 0f b7 10 63 62 ];
|
|
phy-handle = <&phy4>;
|
|
};
|
|
ethernet@3 {
|
|
compatible = "cavium,octeon-3860-pip-port";
|
|
reg = <0x3>; /* Port */
|
|
local-mac-address = [ 00 0f b7 10 63 63 ];
|
|
phy-handle = <&phy5>;
|
|
};
|
|
};
|
|
|
|
interface@1 {
|
|
compatible = "cavium,octeon-3860-pip-interface";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
reg = <1>; /* interface */
|
|
|
|
ethernet@0 {
|
|
compatible = "cavium,octeon-3860-pip-port";
|
|
reg = <0x0>; /* Port */
|
|
local-mac-address = [ 00 0f b7 10 63 64 ];
|
|
phy-handle = <&phy6>;
|
|
};
|
|
};
|
|
};
|