if (priv->status & STATUS_RF_KILL_MASK) {
if (priv->status & STATUS_RF_KILL_HW) {
static int ipw_send_cmd(struct ipw_priv *priv, struct host_cmd *cmd){	int rc = 0;	unsigned long flags;	spin_lock_irqsave(&priv->lock, flags);	if (priv->status & STATUS_HCMD_ACTIVE) {		IPW_ERROR("Already sending a command\n");		spin_unlock_irqrestore(&priv->lock, flags);		return -1;	}	priv->status |= STATUS_HCMD_ACTIVE;	IPW_DEBUG_HC("Sending %s command (#%d), %d bytes\n",		     get_cmd_string(cmd->cmd), cmd->cmd, cmd->len);	printk_buf(IPW_DL_HOST_COMMAND, (u8 *) cmd->param, cmd->len);	rc = ipw_queue_tx_hcmd(priv, cmd->cmd, &cmd->param, cmd->len, 0);	if (rc) {		priv->status &= ~STATUS_HCMD_ACTIVE;		spin_unlock_irqrestore(&priv->lock, flags);		return rc;	}	spin_unlock_irqrestore(&priv->lock, flags);	rc = wait_event_interruptible_timeout(priv->wait_command_queue,					      !(priv->						status & STATUS_HCMD_ACTIVE),					      HOST_COMPLETE_TIMEOUT);	if (rc == 0) {		spin_lock_irqsave(&priv->lock, flags);		if (priv->status & STATUS_HCMD_ACTIVE) {			IPW_DEBUG_INFO("Command completion failed out after "				       "%dms.\n",				       1000 * (HOST_COMPLETE_TIMEOUT / HZ));			priv->status &= ~STATUS_HCMD_ACTIVE;			spin_unlock_irqrestore(&priv->lock, flags);			return -EIO;		}		spin_unlock_irqrestore(&priv->lock, flags);	}	if (priv->status & STATUS_RF_KILL_MASK) {		IPW_DEBUG_INFO("Command aborted due to RF Kill Switch\n");		return -EIO;	}	return 0;}