#include <linux/etherdevice.h>
#include <net/mac80211.h>
#include "sta.h"
#include "wfx.h"
#include "fwio.h"
#include "bh.h"
#include "key.h"
#include "scan.h"
#include "debug.h"
#include "hif_tx.h"
#include "hif_tx_mib.h"
#define HIF_MAX_ARP_IP_ADDRTABLE_ENTRIES …
void wfx_cooling_timeout_work(struct work_struct *work)
{ … }
void wfx_suspend_hot_dev(struct wfx_dev *wdev, enum sta_notify_cmd cmd)
{ … }
static void wfx_filter_beacon(struct wfx_vif *wvif, bool filter_beacon)
{ … }
void wfx_configure_filter(struct ieee80211_hw *hw, unsigned int changed_flags,
unsigned int *total_flags, u64 unused)
{ … }
static int wfx_get_ps_timeout(struct wfx_vif *wvif, bool *enable_ps)
{ … }
int wfx_update_pm(struct wfx_vif *wvif)
{ … }
int wfx_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
unsigned int link_id, u16 queue,
const struct ieee80211_tx_queue_params *params)
{ … }
int wfx_set_rts_threshold(struct ieee80211_hw *hw, u32 value)
{ … }
void wfx_event_report_rssi(struct wfx_vif *wvif, u8 raw_rcpi_rssi)
{ … }
static void wfx_beacon_loss_work(struct work_struct *work)
{ … }
void wfx_set_default_unicast_key(struct ieee80211_hw *hw, struct ieee80211_vif *vif, int idx)
{ … }
void wfx_reset(struct wfx_vif *wvif)
{ … }
int wfx_sta_add(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta)
{ … }
int wfx_sta_remove(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta)
{ … }
static int wfx_upload_ap_templates(struct wfx_vif *wvif)
{ … }
static int wfx_set_mfp_ap(struct wfx_vif *wvif)
{ … }
int wfx_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
struct ieee80211_bss_conf *link_conf)
{ … }
void wfx_stop_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
struct ieee80211_bss_conf *link_conf)
{ … }
static void wfx_join(struct wfx_vif *wvif)
{ … }
static void wfx_join_finalize(struct wfx_vif *wvif, struct ieee80211_bss_conf *info)
{ … }
int wfx_join_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
void wfx_leave_ibss(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
static void wfx_enable_beacon(struct wfx_vif *wvif, bool enable)
{ … }
void wfx_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
struct ieee80211_bss_conf *info, u64 changed)
{ … }
static int wfx_update_tim(struct wfx_vif *wvif)
{ … }
static void wfx_update_tim_work(struct work_struct *work)
{ … }
int wfx_set_tim(struct ieee80211_hw *hw, struct ieee80211_sta *sta, bool set)
{ … }
void wfx_suspend_resume_mc(struct wfx_vif *wvif, enum sta_notify_cmd notify_cmd)
{ … }
int wfx_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
struct ieee80211_ampdu_params *params)
{ … }
int wfx_add_chanctx(struct ieee80211_hw *hw, struct ieee80211_chanctx_conf *conf)
{ … }
void wfx_remove_chanctx(struct ieee80211_hw *hw, struct ieee80211_chanctx_conf *conf)
{ … }
void wfx_change_chanctx(struct ieee80211_hw *hw, struct ieee80211_chanctx_conf *conf, u32 changed)
{ … }
int wfx_assign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
struct ieee80211_bss_conf *link_conf,
struct ieee80211_chanctx_conf *conf)
{ … }
void wfx_unassign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
struct ieee80211_bss_conf *link_conf,
struct ieee80211_chanctx_conf *conf)
{ … }
int wfx_config(struct ieee80211_hw *hw, u32 changed)
{ … }
int wfx_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
void wfx_remove_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
{ … }
int wfx_start(struct ieee80211_hw *hw)
{ … }
void wfx_stop(struct ieee80211_hw *hw, bool suspend)
{ … }