summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJesse Brandeburg <jesse.brandeburg@intel.com>2008-10-02 23:33:20 (GMT)
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-03 01:28:12 (GMT)
commit37f40239f49fbc0b489d0327a700fee5b3898ac2 (patch)
treebcce45dade552bcff9840ea5c38e6998726cb813
parent6babc32c41e3642d875372cb6afbd9ade7a9f311 (diff)
downloadlinux-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>
-rw-r--r--drivers/net/e1000e/ich8lan.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c
index d8efba8..f4b6744 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) {
/*