Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at c9a28fa7b9ac19b676deefa0a171ce7df8755c08 61 lines 2.5 kB view raw
1/* Copyright (C) 2007, Red Hat, Inc. */ 2 3#ifndef _LBS_CMD_H_ 4#define _LBS_CMD_H_ 5 6#include "hostcmd.h" 7#include "dev.h" 8 9/* lbs_cmd() infers the size of the buffer to copy data back into, from 10 the size of the target of the pointer. Since the command to be sent 11 may often be smaller, that size is set in cmd->size by the caller.*/ 12#define lbs_cmd(priv, cmdnr, cmd, cb, cb_arg) ({ \ 13 uint16_t __sz = le16_to_cpu((cmd)->hdr.size); \ 14 (cmd)->hdr.size = cpu_to_le16(sizeof(*(cmd))); \ 15 __lbs_cmd(priv, cmdnr, &(cmd)->hdr, __sz, cb, cb_arg); \ 16}) 17 18#define lbs_cmd_with_response(priv, cmdnr, cmd) \ 19 lbs_cmd(priv, cmdnr, cmd, lbs_cmd_copyback, (unsigned long) (cmd)) 20 21/* __lbs_cmd() will free the cmdnode and return success/failure. 22 __lbs_cmd_async() requires that the callback free the cmdnode */ 23struct cmd_ctrl_node *__lbs_cmd_async(struct lbs_private *priv, uint16_t command, 24 struct cmd_header *in_cmd, int in_cmd_size, 25 int (*callback)(struct lbs_private *, unsigned long, struct cmd_header *), 26 unsigned long callback_arg); 27int __lbs_cmd(struct lbs_private *priv, uint16_t command, 28 struct cmd_header *in_cmd, int in_cmd_size, 29 int (*callback)(struct lbs_private *, unsigned long, struct cmd_header *), 30 unsigned long callback_arg); 31 32int lbs_cmd_copyback(struct lbs_private *priv, unsigned long extra, 33 struct cmd_header *resp); 34 35int lbs_update_hw_spec(struct lbs_private *priv); 36 37int lbs_mesh_access(struct lbs_private *priv, uint16_t cmd_action, 38 struct cmd_ds_mesh_access *cmd); 39 40int lbs_get_data_rate(struct lbs_private *priv); 41int lbs_set_data_rate(struct lbs_private *priv, u8 rate); 42 43int lbs_get_channel(struct lbs_private *priv); 44int lbs_set_channel(struct lbs_private *priv, u8 channel); 45 46int lbs_mesh_config(struct lbs_private *priv, uint16_t enable, uint16_t chan); 47 48int lbs_host_sleep_cfg(struct lbs_private *priv, uint32_t criteria); 49int lbs_suspend(struct lbs_private *priv); 50int lbs_resume(struct lbs_private *priv); 51 52int lbs_cmd_802_11_inactivity_timeout(struct lbs_private *priv, 53 uint16_t cmd_action, uint16_t *timeout); 54int lbs_cmd_802_11_sleep_params(struct lbs_private *priv, uint16_t cmd_action, 55 struct sleep_params *sp); 56int lbs_cmd_802_11_set_wep(struct lbs_private *priv, uint16_t cmd_action, 57 struct assoc_request *assoc); 58int lbs_cmd_802_11_enable_rsn(struct lbs_private *priv, uint16_t cmd_action, 59 uint16_t *enable); 60 61#endif /* _LBS_CMD_H */