#ifndef __WL1251_CMD_H__
#define __WL1251_CMD_H__
#include "wl1251.h"
#include <net/cfg80211.h>
struct acx_header;
int wl1251_cmd_send(struct wl1251 *wl, u16 type, void *buf, size_t buf_len);
int wl1251_cmd_test(struct wl1251 *wl, void *buf, size_t buf_len, u8 answer);
int wl1251_cmd_interrogate(struct wl1251 *wl, u16 id, void *buf, size_t len);
int wl1251_cmd_configure(struct wl1251 *wl, u16 id, void *buf, size_t len);
int wl1251_cmd_vbm(struct wl1251 *wl, u8 identity,
void *bitmap, u16 bitmap_len, u8 bitmap_control);
int wl1251_cmd_data_path_rx(struct wl1251 *wl, u8 channel, bool enable);
int wl1251_cmd_data_path_tx(struct wl1251 *wl, u8 channel, bool enable);
int wl1251_cmd_join(struct wl1251 *wl, u8 bss_type, u8 channel,
u16 beacon_interval, u8 dtim_interval);
int wl1251_cmd_ps_mode(struct wl1251 *wl, u8 ps_mode);
int wl1251_cmd_read_memory(struct wl1251 *wl, u32 addr, void *answer,
size_t len);
int wl1251_cmd_template_set(struct wl1251 *wl, u16 cmd_id,
void *buf, size_t buf_len);
int wl1251_cmd_scan(struct wl1251 *wl, u8 *ssid, size_t ssid_len,
struct ieee80211_channel *channels[],
unsigned int n_channels, unsigned int n_probes);
int wl1251_cmd_trigger_scan_to(struct wl1251 *wl, u32 timeout);
#define WL1251_COMMAND_TIMEOUT …
enum wl1251_commands { … };
#define MAX_CMD_PARAMS …
struct wl1251_cmd_header { … } __packed;
struct wl1251_command { … } __packed;
enum { … };
#define MAX_READ_SIZE …
struct cmd_read_write_memory { … } __packed;
#define CMDMBOX_HEADER_LEN …
#define CMDMBOX_INFO_ELEM_HEADER_LEN …
#define WL1251_SCAN_OPT_PASSIVE …
#define WL1251_SCAN_OPT_5GHZ_BAND …
#define WL1251_SCAN_OPT_TRIGGERD_SCAN …
#define WL1251_SCAN_OPT_PRIORITY_HIGH …
#define WL1251_SCAN_MIN_DURATION …
#define WL1251_SCAN_MAX_DURATION …
#define WL1251_SCAN_NUM_PROBES …
struct wl1251_scan_parameters { … } __packed;
struct wl1251_scan_ch_parameters { … } __packed;
#define SCAN_MAX_NUM_OF_CHANNELS …
struct wl1251_cmd_scan { … } __packed;
enum { … };
#define JOIN_CMD_CTRL_TX_FLUSH …
#define JOIN_CMD_CTRL_EARLY_WAKEUP_ENABLE …
struct cmd_join { … } __packed;
struct cmd_enabledisable_path { … } __packed;
#define WL1251_MAX_TEMPLATE_SIZE …
struct wl1251_cmd_packet_template { … } __packed;
#define TIM_ELE_ID …
#define PARTIAL_VBM_MAX …
struct wl1251_tim { … } __packed;
struct wl1251_cmd_vbm_update { … } __packed;
enum wl1251_cmd_ps_mode { … };
struct wl1251_cmd_ps_params { … } __packed;
struct wl1251_cmd_trigger_scan_to { … } __packed;
#define NUM_ACCESS_CATEGORIES_COPY …
#define MAX_KEY_SIZE …
#define DF_ENCRYPTION_DISABLE …
#define DF_SNIFF_MODE_ENABLE …
enum wl1251_cmd_key_action { … };
enum wl1251_cmd_key_type { … };
struct wl1251_cmd_set_keys { … } __packed;
#endif