#ifndef WMI_H
#define WMI_H
struct wmi_event_txrate { … } __packed;
struct wmi_cmd_hdr { … } __packed;
struct wmi_fw_version { … } __packed;
struct wmi_event_swba { … } __packed;
#define HTC_MAX_TX_STATUS …
#define ATH9K_HTC_TXSTAT_ACK …
#define ATH9K_HTC_TXSTAT_FILT …
#define ATH9K_HTC_TXSTAT_RTC_CTS …
#define ATH9K_HTC_TXSTAT_MCS …
#define ATH9K_HTC_TXSTAT_CW40 …
#define ATH9K_HTC_TXSTAT_SGI …
#define ATH9K_HTC_TXSTAT_RATE …
#define ATH9K_HTC_TXSTAT_RATE_S …
#define ATH9K_HTC_TXSTAT_EPID …
#define ATH9K_HTC_TXSTAT_EPID_S …
struct __wmi_event_txstatus { … };
struct wmi_event_txstatus { … } __packed;
enum wmi_cmd_id { … };
enum wmi_event_id { … };
#define MAX_CMD_NUMBER …
#define MAX_RMW_CMD_NUMBER …
struct register_write { … };
struct register_rmw { … } __packed;
struct ath9k_htc_tx_event { … };
struct wmi { … };
struct wmi *ath9k_init_wmi(struct ath9k_htc_priv *priv);
int ath9k_wmi_connect(struct htc_target *htc, struct wmi *wmi,
enum htc_endpoint_id *wmi_ctrl_epid);
int ath9k_wmi_cmd(struct wmi *wmi, enum wmi_cmd_id cmd_id,
u8 *cmd_buf, u32 cmd_len,
u8 *rsp_buf, u32 rsp_len,
u32 timeout);
void ath9k_wmi_event_tasklet(struct tasklet_struct *t);
void ath9k_fatal_work(struct work_struct *work);
void ath9k_wmi_event_drain(struct ath9k_htc_priv *priv);
void ath9k_stop_wmi(struct ath9k_htc_priv *priv);
void ath9k_destroy_wmi(struct ath9k_htc_priv *priv);
#define WMI_CMD(_wmi_cmd) …
#define WMI_CMD_BUF(_wmi_cmd, _buf) …
#endif