From: Clark Wang In phy_probe(), genphy_c45_read_eee_abilities() is only called when a driver uses phydrv->features. Drivers that implement .get_features are responsible for reading the EEE abilities themselves. yt8521_get_features() does not do this, so phydev->supported_eee stays empty for YT8521/YT8531S and "ethtool --show-eee" reports "EEE status: not supported", even though the PHY has the standard EEE capability registers. Call genphy_c45_read_eee_abilities() at the end of yt8521_get_features() to populate supported_eee. Fixes: 70479a40954c ("net: phy: Add driver for Motorcomm yt8521 gigabit ethernet phy") Signed-off-by: Clark Wang --- drivers/net/phy/motorcomm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/phy/motorcomm.c b/drivers/net/phy/motorcomm.c index b49897500a59..46efa3406841 100644 --- a/drivers/net/phy/motorcomm.c +++ b/drivers/net/phy/motorcomm.c @@ -2439,6 +2439,9 @@ static int yt8521_get_features(struct phy_device *phydev) /* add fiber's features to phydev->supported */ yt8521_prepare_fiber_features(phydev, phydev->supported); } + + genphy_c45_read_eee_abilities(phydev); + return ret; } -- 2.34.1