Quellcode durchsuchen

iwlwifi: move firmware completion wait

This doesn't belong into the op_mode, it has
to be in the drv stop flow instead.

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>
Johannes Berg vor 13 Jahren
Ursprung
Commit
2e7eb11758
2 geänderte Dateien mit 2 neuen und 2 gelöschten Zeilen
  1. 0 2
      drivers/net/wireless/iwlwifi/iwl-agn.c
  2. 2 0
      drivers/net/wireless/iwlwifi/iwl-drv.c

+ 0 - 2
drivers/net/wireless/iwlwifi/iwl-agn.c

@@ -1371,8 +1371,6 @@ static void iwl_op_mode_dvm_stop(struct iwl_op_mode *op_mode)
 {
 	struct iwl_priv *priv = IWL_OP_MODE_GET_DVM(op_mode);
 
-	wait_for_completion(&nic(priv)->request_firmware_complete);
-
 	IWL_DEBUG_INFO(priv, "*** UNLOAD DRIVER ***\n");
 
 	iwl_dbgfs_unregister(priv);

+ 2 - 0
drivers/net/wireless/iwlwifi/iwl-drv.c

@@ -720,6 +720,8 @@ int iwl_drv_start(struct iwl_shared *shrd,
 
 void iwl_drv_stop(struct iwl_shared *shrd)
 {
+	wait_for_completion(&shrd->nic->request_firmware_complete);
+
 	/* op_mode can be NULL if its start failed */
 	if (shrd->nic->op_mode)
 		iwl_op_mode_stop(shrd->nic->op_mode);