Message ID | 1614395158-5294-1-git-send-email-tanhuazhong@huawei.com |
---|---|
State | New |
Headers | show |
Series | [V2,net] net: phy: fix save wrong speed and duplex problem if autoneg is on | expand |
Hello: This patch was applied to netdev/net.git (refs/heads/master): On Sat, 27 Feb 2021 11:05:58 +0800 you wrote: > From: Guangbin Huang <huangguangbin2@huawei.com> > > If phy uses generic driver and autoneg is on, enter command > "ethtool -s eth0 speed 50" will not change phy speed actually, but > command "ethtool eth0" shows speed is 50Mb/s because phydev->speed > has been set to 50 and no update later. > > [...] Here is the summary with links: - [V2,net] net: phy: fix save wrong speed and duplex problem if autoneg is on https://git.kernel.org/netdev/net/c/d9032dba5a2b You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html
diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c index 1be07e4..fc2e7cb 100644 --- a/drivers/net/phy/phy.c +++ b/drivers/net/phy/phy.c @@ -276,14 +276,16 @@ int phy_ethtool_ksettings_set(struct phy_device *phydev, phydev->autoneg = autoneg; - phydev->speed = speed; + if (autoneg == AUTONEG_DISABLE) { + phydev->speed = speed; + phydev->duplex = duplex; + } linkmode_copy(phydev->advertising, advertising); linkmode_mod_bit(ETHTOOL_LINK_MODE_Autoneg_BIT, phydev->advertising, autoneg == AUTONEG_ENABLE); - phydev->duplex = duplex; phydev->master_slave_set = cmd->base.master_slave_cfg; phydev->mdix_ctrl = cmd->base.eth_tp_mdix_ctrl;