diff options
author | David Woodhouse <dwmw2@infradead.org> | 2007-12-10 13:36:10 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 15:06:34 -0800 |
commit | 1309b55b4de18bbfe19c73225a5481d6cdc8a463 (patch) | |
tree | 7993651309a0a35f8ec954fffa0b7b04003f9d32 /drivers/net/wireless/libertas/cmdresp.c | |
parent | b6b8abe4ddec2cfb3471ea60f965a137cd4d529d (diff) |
libertas: add opaque extra argument to cmd callback function
This will be useful for letting callbacks do stuff like copying the
response into a buffer provided by the caller of lbs_cmd()
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/cmdresp.c')
-rw-r--r-- | drivers/net/wireless/libertas/cmdresp.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/wireless/libertas/cmdresp.c b/drivers/net/wireless/libertas/cmdresp.c index ab6e729efac..7bad257fd9c 100644 --- a/drivers/net/wireless/libertas/cmdresp.c +++ b/drivers/net/wireless/libertas/cmdresp.c @@ -552,12 +552,13 @@ static int lbs_ret_802_11_subscribe_event(struct lbs_private *priv, return 0; } -static inline int handle_cmd_response(u16 respcmd, - struct cmd_ds_command *resp, - struct lbs_private *priv) +static inline int handle_cmd_response(struct lbs_private *priv, + unsigned long dummy, + struct cmd_ds_command *resp) { int ret = 0; unsigned long flags; + uint16_t respcmd = le16_to_cpu(resp->command); lbs_deb_enter(LBS_DEB_HOST); @@ -861,9 +862,9 @@ 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(respcmd, resp, priv); + ret = priv->cur_cmd->callback(priv, priv->cur_cmd->callback_arg, resp); else - ret = handle_cmd_response(respcmd, resp, priv); + ret = handle_cmd_response(priv, 0, resp); spin_lock_irqsave(&priv->driver_lock, flags); |