diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2013-08-01 12:07:13 +0200 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2013-09-10 01:57:19 +0100 |
commit | f939bb619736f1f6ae06d6670751730bf82a413d (patch) | |
tree | 5438916b21e96fdfa7ca3e2e58254eeaaf41d95a | |
parent | 14d747003cb7bb0484fa1b76d9745b8432b2f692 (diff) |
iwl4965: set power mode early
commit eca396d7a5bdcc1fd67b1b12f737c213ac78a6f4 upstream.
If device was put into a sleep and system was restarted or module
reloaded, we have to wake device up before sending other commands.
Otherwise it will fail to start with Microcode error.
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
[bwh: Backported to 3.2: adjust filename, context, naming]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r-- | drivers/net/wireless/iwlegacy/iwl4965-base.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlegacy/iwl4965-base.c b/drivers/net/wireless/iwlegacy/iwl4965-base.c index d2fba9eae153..dd9846cb5f5e 100644 --- a/drivers/net/wireless/iwlegacy/iwl4965-base.c +++ b/drivers/net/wireless/iwlegacy/iwl4965-base.c @@ -1764,6 +1764,9 @@ static void iwl4965_alive_start(struct iwl_priv *priv) priv->active_rate = IWL_RATES_MASK; + iwl_legacy_power_update_mode(priv, true); + IWL_DEBUG_INFO(priv, "Updated power mode\n"); + if (iwl_legacy_is_associated_ctx(ctx)) { struct iwl_legacy_rxon_cmd *active_rxon = (struct iwl_legacy_rxon_cmd *)&ctx->active; @@ -1796,9 +1799,6 @@ static void iwl4965_alive_start(struct iwl_priv *priv) IWL_DEBUG_INFO(priv, "ALIVE processing complete.\n"); wake_up(&priv->wait_command_queue); - iwl_legacy_power_update_mode(priv, true); - IWL_DEBUG_INFO(priv, "Updated power mode\n"); - return; restart: |