diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c index 9ff8eb5166664bf1b00755a7e0734b6ab14bfaa7..75464df191ef71dcb0ecb8870275f800f6b15e27 100644 --- a/drivers/net/phy/phylink.c +++ b/drivers/net/phy/phylink.c @@ -1669,7 +1669,7 @@ static int phylink_attach_phy(struct phylink *pl, struct phy_device *phy, { if (WARN_ON(pl->cfg_link_an_mode == MLO_AN_FIXED || (pl->cfg_link_an_mode == MLO_AN_INBAND && - phy_interface_mode_is_8023z(interface)))) + phy_interface_mode_is_8023z(interface) && !pl->sfp_bus))) return -EINVAL; if (pl->phydev) @@ -2918,9 +2918,6 @@ static int phylink_sfp_config_phy(struct phylink *pl, u8 mode, return ret; } - if (phy_interface_mode_is_8023z(iface) && pl->phydev) - return -EINVAL; - pl->link_port = pl->sfp_port; phylink_sfp_set_config(pl, mode, support, &config);