Currently phy_read_status() considers that either the PHY driver has the read_status() callback or uses the generic callback.
For C45 PHYs we need to use the gen10g_read_status() callback. Signed-off-by: Jose Abreu <[email protected]> Cc: Andrew Lunn <[email protected]> Cc: Florian Fainelli <[email protected]> Cc: "David S. Miller" <[email protected]> Cc: Joao Pinto <[email protected]> --- include/linux/phy.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/phy.h b/include/linux/phy.h index 333b56d8f746..872899136fdc 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h @@ -1030,6 +1030,8 @@ static inline int phy_read_status(struct phy_device *phydev) if (phydev->drv->read_status) return phydev->drv->read_status(phydev); + else if (phydev->is_c45) + return gen10g_read_status(phydev); else return genphy_read_status(phydev); } -- 2.7.4
