summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-ucode.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-03-06 13:30:57 -0800
committerJohn W. Linville <linville@tuxdriver.com>2012-03-07 13:56:32 -0500
commitf47208934b2aba432722baeb86a72fcbfd26b593 (patch)
tree3d0651281cb07aefc67146dac95a346f35da143a /drivers/net/wireless/iwlwifi/iwl-ucode.c
parent6794f3ee1dc4a2f7ebed99a4c075f00bbebbcfdc (diff)
downloadop-kernel-dev-f47208934b2aba432722baeb86a72fcbfd26b593.zip
op-kernel-dev-f47208934b2aba432722baeb86a72fcbfd26b593.tar.gz
iwlwifi: fix notification wait bug
In "iwlwifi: consolidate the start_device flow" Emmanuel added the return if the fw isn't there but forgot to take into account that the struct for notification wait needs to be added only after the check -- fix that. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-ucode.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-ucode.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-ucode.c b/drivers/net/wireless/iwlwifi/iwl-ucode.c
index c1c5e1f..686d456 100644
--- a/drivers/net/wireless/iwlwifi/iwl-ucode.c
+++ b/drivers/net/wireless/iwlwifi/iwl-ucode.c
@@ -533,9 +533,6 @@ int iwl_load_ucode_wait_alive(struct iwl_priv *priv,
int ret;
enum iwl_ucode_type old_type;
- iwl_init_notification_wait(priv->shrd, &alive_wait, REPLY_ALIVE,
- iwl_alive_fn, &alive_data);
-
old_type = priv->shrd->ucode_type;
priv->shrd->ucode_type = ucode_type;
fw = iwl_get_ucode_image(priv, ucode_type);
@@ -543,6 +540,9 @@ int iwl_load_ucode_wait_alive(struct iwl_priv *priv,
if (!fw)
return -EINVAL;
+ iwl_init_notification_wait(priv->shrd, &alive_wait, REPLY_ALIVE,
+ iwl_alive_fn, &alive_data);
+
ret = iwl_trans_start_fw(trans(priv), fw);
if (ret) {
priv->shrd->ucode_type = old_type;
OpenPOWER on IntegriCloud