diff options
author | Carolyn Wyborny <carolyn.wyborny@intel.com> | 2012-11-21 20:24:08 -0500 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2012-12-01 06:11:58 -0500 |
commit | a0483e2eb63d3b2f14a821edb21b3e610bfba5bd (patch) | |
tree | d04efb05b239bfd6d9dff105659c5016eb615871 | |
parent | 7916a53d203f12461095886cf72d58e9281240d9 (diff) |
igb: Workaround for global device reset problem on 82580.
Due to a hw errata, the global device reset doesn't always work on 82580
devices. This patch works around the problem not trying to do a global
device reset on these devices.
Signed-off-by: Carolyn Wyborny <carolyn.wyborny@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r-- | drivers/net/ethernet/intel/igb/e1000_82575.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/igb/e1000_82575.c b/drivers/net/ethernet/intel/igb/e1000_82575.c index 8c12dbd0d6ce..db40b68819d8 100644 --- a/drivers/net/ethernet/intel/igb/e1000_82575.c +++ b/drivers/net/ethernet/intel/igb/e1000_82575.c | |||
@@ -1927,6 +1927,12 @@ static s32 igb_reset_hw_82580(struct e1000_hw *hw) | |||
1927 | 1927 | ||
1928 | hw->dev_spec._82575.global_device_reset = false; | 1928 | hw->dev_spec._82575.global_device_reset = false; |
1929 | 1929 | ||
1930 | /* due to hw errata, global device reset doesn't always | ||
1931 | * work on 82580 | ||
1932 | */ | ||
1933 | if (hw->mac.type == e1000_82580) | ||
1934 | global_device_reset = false; | ||
1935 | |||
1930 | /* Get current control state. */ | 1936 | /* Get current control state. */ |
1931 | ctrl = rd32(E1000_CTRL); | 1937 | ctrl = rd32(E1000_CTRL); |
1932 | 1938 | ||