Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 14e865ba authored by Dan Williams's avatar Dan Williams Committed by David S. Miller
Browse files

libertas: make lbs_cmd() usage nicer



Define a macro that relieves the caller from having to use sizeof on
the command structure when calling lbs_cmd(), and move the prototype
of __lbs_cmd() to a new cmd.h file.

Signed-off-by: default avatarDan Williams <dcbw@redhat.com>
Signed-off-by: default avatarDavid Woodhouse <dwmw2@infradead.org>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 4f679496
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1994,7 +1994,7 @@ void lbs_ps_confirm_sleep(struct lbs_private *priv, u16 psmode)
 *                      the result code from the firmware
 */

int lbs_cmd(struct lbs_private *priv, uint16_t command, void *cmd, int cmd_size,
int __lbs_cmd(struct lbs_private *priv, uint16_t command, void *cmd, int cmd_size,
	      int (*callback)(struct lbs_private *, unsigned long, struct cmd_ds_command *),
	      unsigned long callback_arg)
{
@@ -2066,6 +2066,6 @@ int lbs_cmd(struct lbs_private *priv, uint16_t command, void *cmd, int cmd_size,
	lbs_deb_leave_args(LBS_DEB_HOST, "ret %d", ret);
	return ret;
}
EXPORT_SYMBOL_GPL(lbs_cmd);
EXPORT_SYMBOL_GPL(__lbs_cmd);

+16 −0
Original line number Diff line number Diff line
/* Copyright (C) 2007, Red Hat, Inc. */

#ifndef _LBS_CMD_H_
#define _LBS_CMD_H_

#include "hostcmd.h"
#include "dev.h"

#define lbs_cmd(priv, cmdnr, cmd, callback, callback_arg) \
	__lbs_cmd(priv, cmdnr, &cmd, sizeof(cmd), callback, callback_arg)

int __lbs_cmd(struct lbs_private *priv, uint16_t command, void *cmd, int cmd_size, 
	      int (*callback)(struct lbs_private *, unsigned long, struct cmd_ds_command *),
	      unsigned long callback_arg);

#endif /* _LBS_CMD_H */
+0 −4
Original line number Diff line number Diff line
@@ -23,10 +23,6 @@ void lbs_send_tx_feedback(struct lbs_private *priv);

int lbs_free_cmd_buffer(struct lbs_private *priv);

int lbs_cmd(struct lbs_private *priv, uint16_t command, void *cmd, int cmd_size, 
	    int (*callback)(struct lbs_private *, unsigned long, struct cmd_ds_command *),
	    unsigned long callback_arg);

int lbs_prepare_and_send_command(struct lbs_private *priv,
	u16 cmd_no,
	u16 cmd_action,
+2 −1
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@
#include "decl.h"
#include "defs.h"
#include "dev.h"
#include "cmd.h"
#include "if_usb.h"

#define MESSAGE_HEADER_LEN	4
@@ -108,7 +109,7 @@ static void if_usb_set_boot2_ver(struct lbs_private *priv)
	b2_cmd.action = 0;
	b2_cmd.version = priv->boot2_version;

	if (lbs_cmd(priv, CMD_SET_BOOT2_VER, &b2_cmd, sizeof(b2_cmd), NULL, 0))
	if (lbs_cmd(priv, CMD_SET_BOOT2_VER, b2_cmd, NULL, 0))
		lbs_deb_usb("Setting boot2 version failed\n");
}