summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2008-06-12 09:47:04 +0800
committerJohn W. Linville <linville@tuxdriver.com>2008-06-14 12:18:07 -0400
commitf3d5b45b40c42b0b55710667740cc545b6e17c10 (patch)
treeef44ebb909b934d656dabf3831d9eb37550430fe
parent64e72c3efc2e4753ddfdd27ba8c7a31d6b11faba (diff)
iwlwifi: fix resart flow after fw error
Clear STATUS_FW_ERROR in the _up_ flow before reseting NIC. UP flow will otherwise call restart again causing endless restart loop. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/iwlwifi/iwl4965-base.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c
index 7a9567c634c..3f54decb310 100644
--- a/drivers/net/wireless/iwlwifi/iwl4965-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c
@@ -2857,9 +2857,6 @@ static void iwl_alive_start(struct iwl_priv *priv)
/* After the ALIVE response, we can send host commands to 4965 uCode */
set_bit(STATUS_ALIVE, &priv->status);
- /* Clear out the uCode error bit if it is set */
- clear_bit(STATUS_FW_ERROR, &priv->status);
-
if (iwl_is_rfkill(priv))
return;
@@ -3099,6 +3096,9 @@ static int __iwl4965_up(struct iwl_priv *priv)
continue;
}
+ /* Clear out the uCode error bit if it is set */
+ clear_bit(STATUS_FW_ERROR, &priv->status);
+
/* start card; "initialize" will load runtime ucode */
iwl4965_nic_start(priv);