libertas: clean up direct command handling

Move direct command handling through __lbs_cmd() over to using the
header as the first member of the command structure, and only define
the __lbs_cmd() callback in one place rather than 3.  Convert boot2
version command to new usage.

Signed-off-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Dan Williams
2007-12-11 12:33:30 -05:00
committed by David S. Miller
parent b15152a403
commit 7ad994dec7
4 changed files with 31 additions and 18 deletions

View File

@@ -861,9 +861,10 @@ int lbs_process_rx_command(struct lbs_private *priv)
spin_unlock_irqrestore(&priv->driver_lock, flags);
if (priv->cur_cmd && priv->cur_cmd->callback)
ret = priv->cur_cmd->callback(priv, priv->cur_cmd->callback_arg, resp);
else
if (priv->cur_cmd && priv->cur_cmd->callback) {
ret = priv->cur_cmd->callback(priv, priv->cur_cmd->callback_arg,
(struct cmd_header *) resp);
} else
ret = handle_cmd_response(priv, 0, resp);
spin_lock_irqsave(&priv->driver_lock, flags);