diff options
author | PJ Waskiewicz <peter.p.waskiewicz.jr@intel.com> | 2009-11-24 18:51:28 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-11-29 00:33:58 -0800 |
commit | 9bbe3a570b4984ff2e90014074ba3a06a05384a0 (patch) | |
tree | 4b79ccc727cfd192dc2fa839c6c80fa92e1e9030 /drivers/net/ixgbe/ixgbe_common.c | |
parent | cfb3f91af49dff9b50de6929dc4de06100c4cfa8 (diff) | |
download | blackbird-op-linux-9bbe3a570b4984ff2e90014074ba3a06a05384a0.tar.gz blackbird-op-linux-9bbe3a570b4984ff2e90014074ba3a06a05384a0.zip |
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>
Diffstat (limited to 'drivers/net/ixgbe/ixgbe_common.c')
-rw-r--r-- | drivers/net/ixgbe/ixgbe_common.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/ixgbe/ixgbe_common.c b/drivers/net/ixgbe/ixgbe_common.c index 40ff120a9ad4..f42a954ef660 100644 --- a/drivers/net/ixgbe/ixgbe_common.c +++ b/drivers/net/ixgbe/ixgbe_common.c @@ -1784,6 +1784,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 */ |