net: phylink: fix SGMII inband autoneg enable
When we are operating in SGMII inband mode, it implies that there is a PHY connected, and the ethtool advertisement for autoneg applies to the PHY, not the SGMII link. When in 1000base-X mode, then this applies to the 802.3z link and needs to be applied to the PCS. Fix this. Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Link: https://lore.kernel.org/r/E1o9Ng2-005Qbe-3H@rmk-PC.armlinux.org.uk Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
40ad0a52ef
commit
6d1ce9c038
|
@ -3040,7 +3040,9 @@ int phylink_mii_c22_pcs_config(struct mdio_device *pcs, unsigned int mode,
|
|||
|
||||
/* Ensure ISOLATE bit is disabled */
|
||||
if (mode == MLO_AN_INBAND &&
|
||||
linkmode_test_bit(ETHTOOL_LINK_MODE_Autoneg_BIT, advertising))
|
||||
(interface == PHY_INTERFACE_MODE_SGMII ||
|
||||
interface == PHY_INTERFACE_MODE_QSGMII ||
|
||||
linkmode_test_bit(ETHTOOL_LINK_MODE_Autoneg_BIT, advertising)))
|
||||
bmcr = BMCR_ANENABLE;
|
||||
else
|
||||
bmcr = 0;
|
||||
|
|
Loading…
Reference in New Issue