forked from Minki/linux
e9976d7c96
Add a driver for BCM8706 and BCM8727 devices. These are a 10Gig PHYs which use MII_ADDR_C45 addressing. They are always 10G full duplex, so there is no autonegotiation. All we do is report link state and send interrupts when it changes. If the PHY has a device tree of_node associated with it, the "broadcom,c45-reg-init" property is used to supply register initialization values when config_init() is called. Signed-off-by: David Daney <david.daney@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
30 lines
1020 B
Plaintext
30 lines
1020 B
Plaintext
The Broadcom BCM87XX devices are a family of 10G Ethernet PHYs. They
|
|
have these bindings in addition to the standard PHY bindings.
|
|
|
|
Compatible: Should contain "broadcom,bcm8706" or "broadcom,bcm8727" and
|
|
"ethernet-phy-ieee802.3-c45"
|
|
|
|
Optional Properties:
|
|
|
|
- broadcom,c45-reg-init : one of more sets of 4 cells. The first cell
|
|
is the MDIO Manageable Device (MMD) address, the second a register
|
|
address within the MMD, the third cell contains a mask to be ANDed
|
|
with the existing register value, and the fourth cell is ORed with
|
|
he result to yield the new register value. If the third cell has a
|
|
value of zero, no read of the existing value is performed.
|
|
|
|
Example:
|
|
|
|
ethernet-phy@5 {
|
|
reg = <5>;
|
|
compatible = "broadcom,bcm8706", "ethernet-phy-ieee802.3-c45";
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <12 8>; /* Pin 12, active low */
|
|
/*
|
|
* Set PMD Digital Control Register for
|
|
* GPIO[1] Tx/Rx
|
|
* GPIO[0] R64 Sync Acquired
|
|
*/
|
|
broadcom,c45-reg-init = <1 0xc808 0xff8f 0x70>;
|
|
};
|