aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/libertas/cmdresp.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/cmdresp.c b/drivers/net/wireless/libertas/cmdresp.c
index 4d384612afa7..0cd96628293a 100644
--- a/drivers/net/wireless/libertas/cmdresp.c
+++ b/drivers/net/wireless/libertas/cmdresp.c
@@ -665,6 +665,16 @@ int lbs_process_rx_command(struct lbs_private *priv)
665 goto done; 665 goto done;
666 } 666 }
667 667
668 if (resp->result == cpu_to_le16(0x0004)) {
669 /* 0x0004 means -EAGAIN. Drop the response, let it time out
670 and be resubmitted */
671 lbs_pr_info("Firmware returns DEFER to command %x. Will let it time out...\n",
672 le16_to_cpu(resp->command));
673 spin_unlock_irqrestore(&priv->driver_lock, flags);
674 ret = -1;
675 goto done;
676 }
677
668 /* Now we got response from FW, cancel the command timer */ 678 /* Now we got response from FW, cancel the command timer */
669 del_timer(&priv->command_timer); 679 del_timer(&priv->command_timer);
670 priv->cmd_timed_out = 0; 680 priv->cmd_timed_out = 0;