If we are not using in-band autonegotiation, there is no point passing
the request to restart autonegotiation on to the driver.

Signed-off-by: Russell King <rmk+ker...@armlinux.org.uk>
---
 drivers/net/phy/phylink.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c
index 7cda1646bbf7..494af91535ba 100644
--- a/drivers/net/phy/phylink.c
+++ b/drivers/net/phy/phylink.c
@@ -429,7 +429,8 @@ static void phylink_mac_config_up(struct phylink *pl,
 static void phylink_mac_pcs_an_restart(struct phylink *pl)
 {
        if (pl->link_config.an_enabled &&
-           phy_interface_mode_is_8023z(pl->link_config.interface)) {
+           phy_interface_mode_is_8023z(pl->link_config.interface) &&
+           phylink_autoneg_inband(pl->cur_link_an_mode)) {
                if (pl->pcs_ops)
                        pl->pcs_ops->pcs_an_restart(pl->config);
                else
-- 
2.20.1

Reply via email to