diff options
| author | Russell King <rmk+kernel@armlinux.org.uk> | 2017-05-30 16:21:51 +0100 |
|---|---|---|
| committer | Ben Hutchings <ben@decadent.org.uk> | 2017-09-15 18:30:49 +0100 |
| commit | d1b97be8a3b27b466f468a97e99821c341bef3ea (patch) | |
| tree | 70df3e495a874bb9d1b521e9f0502dbe602e8295 /drivers | |
| parent | 99da954f8787a01791c59517caa7aa3cc28eb0ae (diff) | |
| download | linux-d1b97be8a3b27b466f468a97e99821c341bef3ea.tar.gz linux-d1b97be8a3b27b466f468a97e99821c341bef3ea.tar.bz2 linux-d1b97be8a3b27b466f468a97e99821c341bef3ea.zip | |
net: phy: fix marvell phy status reading
commit 898805e0cdf7fd860ec21bf661d3a0285a3defbd upstream.
The Marvell driver incorrectly provides phydev->lp_advertising as the
logical and of the link partner's advert and our advert. This is
incorrect - this field is supposed to store the link parter's unmodified
advertisment.
This allows ethtool to report the correct link partner auto-negotiation
status.
Fixes: be937f1f89ca ("Marvell PHY m88e1111 driver fix")
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/net/phy/marvell.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c index e8b9c53c304b..6c8b1f68023b 100644 --- a/drivers/net/phy/marvell.c +++ b/drivers/net/phy/marvell.c @@ -653,8 +653,6 @@ static int marvell_read_status(struct phy_device *phydev) if (adv < 0) return adv; - lpa &= adv; - if (status & MII_M1011_PHY_STATUS_FULLDUPLEX) phydev->duplex = DUPLEX_FULL; else |
