ixgbe: Do not support flow control autonegotiation for X553
Flow control autonegotiation is not supported for fiber on X553. Add device ID checks in ixgbe_device_supports_autoneg_fc() to return the appropriate value. Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> 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:
committed by
Jeff Kirsher
parent
48301cf22f
commit
ae84dbf7ff
@@ -79,6 +79,13 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw)
|
|||||||
|
|
||||||
switch (hw->phy.media_type) {
|
switch (hw->phy.media_type) {
|
||||||
case ixgbe_media_type_fiber:
|
case ixgbe_media_type_fiber:
|
||||||
|
/* flow control autoneg black list */
|
||||||
|
switch (hw->device_id) {
|
||||||
|
case IXGBE_DEV_ID_X550EM_A_SFP:
|
||||||
|
case IXGBE_DEV_ID_X550EM_A_SFP_N:
|
||||||
|
supported = false;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
hw->mac.ops.check_link(hw, &speed, &link_up, false);
|
hw->mac.ops.check_link(hw, &speed, &link_up, false);
|
||||||
/* if link is down, assume supported */
|
/* if link is down, assume supported */
|
||||||
if (link_up)
|
if (link_up)
|
||||||
@@ -86,6 +93,8 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw)
|
|||||||
true : false;
|
true : false;
|
||||||
else
|
else
|
||||||
supported = true;
|
supported = true;
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case ixgbe_media_type_backplane:
|
case ixgbe_media_type_backplane:
|
||||||
supported = true;
|
supported = true;
|
||||||
@@ -111,6 +120,10 @@ bool ixgbe_device_supports_autoneg_fc(struct ixgbe_hw *hw)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!supported)
|
||||||
|
hw_dbg(hw, "Device %x does not support flow control autoneg\n",
|
||||||
|
hw->device_id);
|
||||||
|
|
||||||
return supported;
|
return supported;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user