From: Bruce Allan Date: Tue, 23 Sep 2008 22:46:38 +0000 (-0700) Subject: e1000e: remove failed request for sw/fw/hw flag X-Git-Tag: v2.6.28-rc1~717^2~186 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=2e2e8d53c3f34684af7a7475098b7524a6b854c2;p=linux-2.6-omap-h63xx.git e1000e: remove failed request for sw/fw/hw flag When the driver fails to acquire the control flag used to serialize NVM and PHY accesses between the driver, firmware and hardware, remove the request for the flag otherwise the hardware might grant the flag when it becomes available but the driver will not release the flag. This could cause the firmware to prevent the driver getting the flag for all future attempts. Signed-off-by: Bruce Allan Signed-off-by: Jeff Kirsher Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c index 019b9c0bcdc..692251b6091 100644 --- a/drivers/net/e1000e/ich8lan.c +++ b/drivers/net/e1000e/ich8lan.c @@ -398,6 +398,8 @@ static s32 e1000_acquire_swflag_ich8lan(struct e1000_hw *hw) if (!timeout) { hw_dbg(hw, "FW or HW has locked the resource for too long.\n"); + extcnf_ctrl &= ~E1000_EXTCNF_CTRL_SWFLAG; + ew32(EXTCNF_CTRL, extcnf_ctrl); return -E1000_ERR_CONFIG; }