|
@@ -1261,6 +1261,15 @@ int iwl_dvm_send_cmd(struct iwl_priv *priv, struct iwl_host_cmd *cmd)
|
|
|
return -EIO;
|
|
|
}
|
|
|
|
|
|
+ /*
|
|
|
+ * This can happen upon FW ASSERT: we clear the STATUS_FW_ERROR flag
|
|
|
+ * in iwl_down but cancel the workers only later.
|
|
|
+ */
|
|
|
+ if (!priv->ucode_loaded) {
|
|
|
+ IWL_ERR(priv, "Fw not loaded - dropping CMD: %x\n", cmd->id);
|
|
|
+ return -EIO;
|
|
|
+ }
|
|
|
+
|
|
|
/*
|
|
|
* Synchronous commands from this op-mode must hold
|
|
|
* the mutex, this ensures we don't try to send two
|