From 7834b63510fd3806eef2934ab3c7db1e31afe62f Mon Sep 17 00:00:00 2001 From: Xiao Wang Date: Sun, 25 Sep 2016 17:00:15 +0800 Subject: [PATCH] net/ixgbe/base: fix skipping PHY config By exiting early we could skip the PHY configuration and as such the driver may not configure the PHY correctly for SFP+. This patch removes the logic which would previously skip the PHY configuration in the case where we are already at the requested speed in ixgbe_setup_mac_link_multispeed_fiber(). Fixes: f3430431abaf ("ixgbe/base: add SFP+ dual-speed support") Signed-off-by: Xiao Wang Acked-by: Wenzhuo Lu --- drivers/net/ixgbe/base/ixgbe_common.c | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/drivers/net/ixgbe/base/ixgbe_common.c b/drivers/net/ixgbe/base/ixgbe_common.c index e0dc3b50c5..8230ae11da 100644 --- a/drivers/net/ixgbe/base/ixgbe_common.c +++ b/drivers/net/ixgbe/base/ixgbe_common.c @@ -5060,14 +5060,6 @@ s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, speedcnt++; highest_link_speed = IXGBE_LINK_SPEED_10GB_FULL; - /* If we already have link at this speed, just jump out */ - status = ixgbe_check_link(hw, &link_speed, &link_up, false); - if (status != IXGBE_SUCCESS) - return status; - - if ((link_speed == IXGBE_LINK_SPEED_10GB_FULL) && link_up) - goto out; - /* Set the module link speed */ switch (hw->phy.media_type) { case ixgbe_media_type_fiber: @@ -5118,14 +5110,6 @@ s32 ixgbe_setup_mac_link_multispeed_fiber(struct ixgbe_hw *hw, if (highest_link_speed == IXGBE_LINK_SPEED_UNKNOWN) highest_link_speed = IXGBE_LINK_SPEED_1GB_FULL; - /* If we already have link at this speed, just jump out */ - status = ixgbe_check_link(hw, &link_speed, &link_up, false); - if (status != IXGBE_SUCCESS) - return status; - - if ((link_speed == IXGBE_LINK_SPEED_1GB_FULL) && link_up) - goto out; - /* Set the module link speed */ switch (hw->phy.media_type) { case ixgbe_media_type_fiber: -- 2.20.1