-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
net/phy: micrel: Add OF configuration support for ksz9021
Some boards require custom PHY configuration, for example due to trace length differences. Add the ability to configure these registers in order to get the PHY to function on boards that need it. Because PHYs are auto-detected based on MDIO device IDs, allow PHY configuration to be specified in the parent Ethernet device node if no PHY device node is present. Signed-off-by: Sean Cross <xobs@kosagi.com> Signed-off-by: David S. Miller <davem@davemloft.net>
- Loading branch information
Sean Cross
authored and
David S. Miller
committed
Aug 21, 2013
1 parent
9fd0784
commit 954c396
Showing
2 changed files
with
151 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
Micrel KSZ9021 Gigabit Ethernet PHY | ||
|
||
Some boards require special tuning values, particularly when it comes to | ||
clock delays. You can specify clock delay values by adding | ||
micrel-specific properties to an Ethernet OF device node. | ||
|
||
All skew control options are specified in picoseconds. The minimum | ||
value is 0, and the maximum value is 3000. | ||
|
||
Optional properties: | ||
- rxc-skew-ps : Skew control of RXC pad | ||
- rxdv-skew-ps : Skew control of RX CTL pad | ||
- txc-skew-ps : Skew control of TXC pad | ||
- txen-skew-ps : Skew control of TX_CTL pad | ||
- rxd0-skew-ps : Skew control of RX data 0 pad | ||
- rxd1-skew-ps : Skew control of RX data 1 pad | ||
- rxd2-skew-ps : Skew control of RX data 2 pad | ||
- rxd3-skew-ps : Skew control of RX data 3 pad | ||
- txd0-skew-ps : Skew control of TX data 0 pad | ||
- txd1-skew-ps : Skew control of TX data 1 pad | ||
- txd2-skew-ps : Skew control of TX data 2 pad | ||
- txd3-skew-ps : Skew control of TX data 3 pad | ||
|
||
Examples: | ||
|
||
/* Attach to an Ethernet device with autodetected PHY */ | ||
&enet { | ||
rxc-skew-ps = <3000>; | ||
rxdv-skew-ps = <0>; | ||
txc-skew-ps = <3000>; | ||
txen-skew-ps = <0>; | ||
status = "okay"; | ||
}; | ||
|
||
/* Attach to an explicitly-specified PHY */ | ||
mdio { | ||
phy0: ethernet-phy@0 { | ||
rxc-skew-ps = <3000>; | ||
rxdv-skew-ps = <0>; | ||
txc-skew-ps = <3000>; | ||
txen-skew-ps = <0>; | ||
reg = <0>; | ||
}; | ||
}; | ||
ethernet@70000 { | ||
status = "okay"; | ||
phy = <&phy0>; | ||
phy-mode = "rgmii-id"; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters