Commit 493004d0 authored by David Ertman's avatar David Ertman Committed by Jeff Kirsher

e1000e: Fix CRC errors with jumbo traffic

Modifying the jumbo frame workaround for 82579, i217 and i218 client parts
to increase the gap between the read and write pointers in the Tx FIFO.
Signed-off-by: default avatarDave Ertman <david.m.ertman@intel.com>
Tested-by: default avatarAaron Brown <aaron.f.brown@intel.com>
Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
parent e90dd264
...@@ -342,6 +342,7 @@ ...@@ -342,6 +342,7 @@
#define E1000_TIPG_IPGR2_SHIFT 20 #define E1000_TIPG_IPGR2_SHIFT 20
#define MAX_JUMBO_FRAME_SIZE 0x3F00 #define MAX_JUMBO_FRAME_SIZE 0x3F00
#define E1000_TX_PTR_GAP 0x1F
/* Extended Configuration Control and Size */ /* Extended Configuration Control and Size */
#define E1000_EXTCNF_CTRL_MDIO_SW_OWNERSHIP 0x00000020 #define E1000_EXTCNF_CTRL_MDIO_SW_OWNERSHIP 0x00000020
......
...@@ -2444,7 +2444,7 @@ s32 e1000_lv_jumbo_workaround_ich8lan(struct e1000_hw *hw, bool enable) ...@@ -2444,7 +2444,7 @@ s32 e1000_lv_jumbo_workaround_ich8lan(struct e1000_hw *hw, bool enable)
return ret_val; return ret_val;
e1e_rphy(hw, PHY_REG(776, 20), &data); e1e_rphy(hw, PHY_REG(776, 20), &data);
data &= ~(0x3FF << 2); data &= ~(0x3FF << 2);
data |= (0x1A << 2); data |= (E1000_TX_PTR_GAP << 2);
ret_val = e1e_wphy(hw, PHY_REG(776, 20), data); ret_val = e1e_wphy(hw, PHY_REG(776, 20), data);
if (ret_val) if (ret_val)
return ret_val; return ret_val;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment