From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753988AbYI3DUp (ORCPT ); Mon, 29 Sep 2008 23:20:45 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752060AbYI3DTe (ORCPT ); Mon, 29 Sep 2008 23:19:34 -0400 Received: from mga01.intel.com ([192.55.52.88]:59268 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751937AbYI3DTd (ORCPT ); Mon, 29 Sep 2008 23:19:33 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.33,334,1220252400"; d="scan'208";a="621752558" From: Jesse Brandeburg Subject: [RFC PATCH 03/12] e1000e: reset swflag after resetting hardware To: linux-kernel@vger.kernel.org Cc: linux-netdev@vger.kernel.org, kkeil@suse.de, agospoda@redhat.com, arjan@linux.intel.com, david.graham@intel.com, bruce.w.allan@intel.com, jkosina@suse.cz, john.ronciak@intel.com, tglx@linutronix.de, chris.jones@canonical.com, tim.gardner@intel.com, airlied@gmail.com, Jesse Brandeburg Date: Mon, 29 Sep 2008 20:19:32 -0700 Message-ID: <20080930031932.22950.49943.stgit@jbrandeb-bw.jf.intel.com> In-Reply-To: <20080930030825.22950.18891.stgit@jbrandeb-bw.jf.intel.com> References: <20080930030825.22950.18891.stgit@jbrandeb-bw.jf.intel.com> User-Agent: StGIT/0.14.3.163.g06f9.dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 30 Sep 2008 03:19:32.0497 (UTC) FILETIME=[5B669010:01C922AB] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- 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 9e38452..a076079 100644 --- a/drivers/net/e1000e/ich8lan.c +++ b/drivers/net/e1000e/ich8lan.c @@ -1720,6 +1720,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) { /*