On Thu, Jan 12, 2017 at 10:49:41PM +0100, Andrew Lunn wrote: > How are you using the PHY. What phy-mode do you have set? Do you > happen to be using it as an RGMII to SERDES/SGMII bridge? This is what > Russell King is doing, i think.
No - the 88E1512 here is connected to the ethernet host via SGMII. Armada 8040 ----SGMII----> 88E1512 ----> RJ45 The problem that my commit fixes is that when the 88E1512 is used in this mode, the copper page reflects the status of the RJ45-side link, and the fiber page reflects the Armada 8040 side of the link. Without my patch, the 88E1512 read_status function spots that the fiber page reports its link is up (because the Armada 8040 side is indeed up) and decides to report that as the link settings, rather than the (correct) copper side. > The point is, the phylib will continue polling the PHY registers, > reading them. If the FIBRE is up, we want to read the FIBRE values, > not the copper. ... but only if we aren't connected in SGMII mode to the ethernet host! The 88E1512 has the RGMII pins, and it has the Serdes pins. The Serdes pins are used for the optical transceiver, or they're used for a SGMII connection to an ethernet host. So they can't do both. -- RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up according to speedtest.net.