|
@@ -1339,8 +1339,8 @@ int lbs_execute_next_command(struct lbs_private *priv)
|
|
|
cpu_to_le16(PS_MODE_ACTION_EXIT_PS)) {
|
|
|
lbs_deb_host(
|
|
|
"EXEC_NEXT_CMD: ignore ENTER_PS cmd\n");
|
|
|
- list_del(&cmdnode->list);
|
|
|
spin_lock_irqsave(&priv->driver_lock, flags);
|
|
|
+ list_del(&cmdnode->list);
|
|
|
lbs_complete_command(priv, cmdnode, 0);
|
|
|
spin_unlock_irqrestore(&priv->driver_lock, flags);
|
|
|
|
|
@@ -1352,8 +1352,8 @@ int lbs_execute_next_command(struct lbs_private *priv)
|
|
|
(priv->psstate == PS_STATE_PRE_SLEEP)) {
|
|
|
lbs_deb_host(
|
|
|
"EXEC_NEXT_CMD: ignore EXIT_PS cmd in sleep\n");
|
|
|
- list_del(&cmdnode->list);
|
|
|
spin_lock_irqsave(&priv->driver_lock, flags);
|
|
|
+ list_del(&cmdnode->list);
|
|
|
lbs_complete_command(priv, cmdnode, 0);
|
|
|
spin_unlock_irqrestore(&priv->driver_lock, flags);
|
|
|
priv->needtowakeup = 1;
|
|
@@ -1366,7 +1366,9 @@ int lbs_execute_next_command(struct lbs_private *priv)
|
|
|
"EXEC_NEXT_CMD: sending EXIT_PS\n");
|
|
|
}
|
|
|
}
|
|
|
+ spin_lock_irqsave(&priv->driver_lock, flags);
|
|
|
list_del(&cmdnode->list);
|
|
|
+ spin_unlock_irqrestore(&priv->driver_lock, flags);
|
|
|
lbs_deb_host("EXEC_NEXT_CMD: sending command 0x%04x\n",
|
|
|
le16_to_cpu(cmd->command));
|
|
|
lbs_submit_command(priv, cmdnode);
|