aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000e/ich8lan.c
diff options
context:
space:
mode:
authorBruce Allan <bruce.w.allan@intel.com>2011-02-25 02:44:51 -0500
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2011-03-11 05:23:21 -0500
commit23e4f061306798dfb1941bd2f399949b705822c6 (patch)
treec5e5dcf8e64dffc9a5de9577f0cf78e85b5b3abe /drivers/net/e1000e/ich8lan.c
parent6cc7aaed70c96c3933fbacbad582fc79b7d6e335 (diff)
e1000e: disable jumbo frames on 82579 when MACsec enabled in EEPROM
If/when an OEM enables MACsec in the 82579 EEPROM, disable jumbo frames support in the driver due to an interoperability issue in hardware that prevents jumbo packets from being transmitted or received. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Tested-by: Jeff Pieper <jeffrey.e.pieper@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/e1000e/ich8lan.c')
-rw-r--r--drivers/net/e1000e/ich8lan.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c
index 9b434c0cbc9..ce1dbfdca11 100644
--- a/drivers/net/e1000e/ich8lan.c
+++ b/drivers/net/e1000e/ich8lan.c
@@ -758,7 +758,13 @@ static s32 e1000_get_variants_ich8lan(struct e1000_adapter *adapter)
758 if (rc) 758 if (rc)
759 return rc; 759 return rc;
760 760
761 if (adapter->hw.phy.type == e1000_phy_ife) { 761 /*
762 * Disable Jumbo Frame support on parts with Intel 10/100 PHY or
763 * on parts with MACsec enabled in NVM (reflected in CTRL_EXT).
764 */
765 if ((adapter->hw.phy.type == e1000_phy_ife) ||
766 ((adapter->hw.mac.type >= e1000_pch2lan) &&
767 (!(er32(CTRL_EXT) & E1000_CTRL_EXT_LSECCK)))) {
762 adapter->flags &= ~FLAG_HAS_JUMBO_FRAMES; 768 adapter->flags &= ~FLAG_HAS_JUMBO_FRAMES;
763 adapter->max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN; 769 adapter->max_hw_frame_size = ETH_FRAME_LEN + ETH_FCS_LEN;
764 } 770 }