mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-24 15:42:32 +00:00
ixgb: make sure jumbos stay enabled after reset
Currently a device reset (ethtool -r ethX) would cause the adapter to fall back to regular MTU sizes. Signed-off-by: Matheos Worku <matheos.worku@sun.com> Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
parent
470738758d
commit
3fd7131fea
1 changed files with 14 additions and 2 deletions
|
@ -320,10 +320,22 @@ ixgb_down(struct ixgb_adapter *adapter, boolean_t kill_watchdog)
|
||||||
void
|
void
|
||||||
ixgb_reset(struct ixgb_adapter *adapter)
|
ixgb_reset(struct ixgb_adapter *adapter)
|
||||||
{
|
{
|
||||||
|
struct ixgb_hw *hw = &adapter->hw;
|
||||||
|
|
||||||
ixgb_adapter_stop(&adapter->hw);
|
ixgb_adapter_stop(hw);
|
||||||
if(!ixgb_init_hw(&adapter->hw))
|
if (!ixgb_init_hw(hw))
|
||||||
DPRINTK(PROBE, ERR, "ixgb_init_hw failed.\n");
|
DPRINTK(PROBE, ERR, "ixgb_init_hw failed.\n");
|
||||||
|
|
||||||
|
/* restore frame size information */
|
||||||
|
IXGB_WRITE_REG(hw, MFS, hw->max_frame_size << IXGB_MFS_SHIFT);
|
||||||
|
if (hw->max_frame_size >
|
||||||
|
IXGB_MAX_ENET_FRAME_SIZE_WITHOUT_FCS + ENET_FCS_LENGTH) {
|
||||||
|
u32 ctrl0 = IXGB_READ_REG(hw, CTRL0);
|
||||||
|
if (!(ctrl0 & IXGB_CTRL0_JFE)) {
|
||||||
|
ctrl0 |= IXGB_CTRL0_JFE;
|
||||||
|
IXGB_WRITE_REG(hw, CTRL0, ctrl0);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue