ixgbe: always call setup_mac_link for multispeed fiber
Remove the logic which would previously skip the link configuration in the case where we are already at the requested speed in ixgbe_setup_mac_link_multispeed_fiber(). By exiting early we are skipping the link configuration and as such the driver may not always configure the PHY correctly for SFP+. Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:
parent
410a494902
commit
08ed48e182
@ -4121,15 +4121,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 = hw->mac.ops.check_link(hw, &link_speed, &link_up,
|
||||
false);
|
||||
if (status)
|
||||
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:
|
||||
@ -4181,15 +4172,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 = hw->mac.ops.check_link(hw, &link_speed, &link_up,
|
||||
false);
|
||||
if (status)
|
||||
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:
|
||||
|
Loading…
Reference in New Issue
Block a user