ixgbe: Disable Flow Control for certain devices

Flow Control autoneg should be disabled for certain adapters
that don't support autonegotiation of Flow Control at 10 gigabit.
These interfaces are the 10GBASE-T devices, CX4, and SFP+, all
running at 10 gigabit only.  1 gigabit is fine.

Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
PJ Waskiewicz 2009-11-24 18:51:28 +00:00 committed by David S. Miller
parent cfb3f91af4
commit 9bbe3a570b
1 changed files with 14 additions and 0 deletions

View File

@ -1783,6 +1783,20 @@ s32 ixgbe_fc_autoneg(struct ixgbe_hw *hw)
}
}
/*
* Bail out on
* - copper or CX4 adapters
* - fiber adapters running at 10gig
*/
if ((hw->phy.media_type == ixgbe_media_type_copper) ||
(hw->phy.media_type == ixgbe_media_type_cx4) ||
((hw->phy.media_type == ixgbe_media_type_fiber) &&
(speed == IXGBE_LINK_SPEED_10GB_FULL))) {
hw->fc.fc_was_autonegged = false;
hw->fc.current_mode = hw->fc.requested_mode;
goto out;
}
/*
* Read the AN advertisement and LP ability registers and resolve
* local flow control settings accordingly