diff options
author | Jesse Brandeburg <jesse.brandeburg@intel.com> | 2008-10-03 03:33:20 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-10-03 05:28:12 +0400 |
commit | 37f40239f49fbc0b489d0327a700fee5b3898ac2 (patch) | |
tree | bcce45dade552bcff9840ea5c38e6998726cb813 /drivers/net/e1000e | |
parent | 6babc32c41e3642d875372cb6afbd9ade7a9f311 (diff) | |
download | linux-37f40239f49fbc0b489d0327a700fee5b3898ac2.tar.xz |
e1000e: reset swflag after resetting hardware
in the process of debugging things, noticed that the swflag is not reset
by the driver after reset, and the swflag is probably not reset unless
management firmware clears it after 100ms.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/net/e1000e')
-rw-r--r-- | drivers/net/e1000e/ich8lan.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c index d8efba884134..f4b6744d71df 100644 --- a/drivers/net/e1000e/ich8lan.c +++ b/drivers/net/e1000e/ich8lan.c @@ -1778,6 +1778,9 @@ static s32 e1000_reset_hw_ich8lan(struct e1000_hw *hw) ew32(CTRL, (ctrl | E1000_CTRL_RST)); msleep(20); + /* release the swflag because it is not reset by hardware reset */ + e1000_release_swflag_ich8lan(hw); + ret_val = e1000e_get_auto_rd_done(hw); if (ret_val) { /* |