net: phy: don't change modes we don't care about in genphy_c45_read_lpa

Because 1000BaseT isn't covered by Clause 45, the 1000BaseT flags in
phydev->lp_advertising may have been set based on vendor registers
already. genphy_c45_read_lpa() would clear these flags as of today.
Therefore switch to mii_lpa_mod_linkmode_lpa_t.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Heiner Kallweit 2019-02-22 23:50:49 +01:00 committed by David S. Miller
parent 09c4c57f7b
commit 3b845d87d8

View File

@ -275,7 +275,7 @@ int genphy_c45_read_lpa(struct phy_device *phydev)
if (val < 0)
return val;
mii_lpa_to_linkmode_lpa_t(phydev->lp_advertising, val);
mii_lpa_mod_linkmode_lpa_t(phydev->lp_advertising, val);
phydev->pause = val & LPA_PAUSE_CAP ? 1 : 0;
phydev->asym_pause = val & LPA_PAUSE_ASYM ? 1 : 0;