Analog Core Revision
The Analog Core revision is a component of the PHY Versioning register (0x3E0)
PHY Analog Core(u8 on)
- If this is an N PHY
- If argument "on" is zero
If the PHY revision >= 3
Write 0x07FF to PHY Register 0x8F
Write 0x00FD to PHY Register 0xA6
Write 0x07FF to PHY Register 0xA5
Write 0x00FD to PHY Register 0xA7
- Otherwise
Write 0x7FFF to PHY Register 0xA5
- Otherwise
If the PHY revision >= 3
Write 0x000D to PHY Register 0xA6
Write 0 to PHY Register 0x8F
Write 0x000D to PHY Register 0xA7
Write 0 to PHY Register 0xA5
- Otherwise
Write 0 to PHY Register 0xA5
- If argument "on" is zero
- Else if this in an LP PHY OR if this is an SSLPN PHY
- If argument "on" is zero
OR PHY Register 0x43C with 7
OR PHY Register 0x43B with 7
- Otherwise
AND PHY Register 0x43B with 0xFFF8
- If argument "on" is zero
- Otherwise (Note: This branch is for A and G PHYs when a "unified" control is in effect.)
- If argument "on" is 0
- Set Core Register 0x3E6 to 0xF4
- Otherwise
- Set Core Register 0x3E6 to 0
- If argument "on" is 0