#include <linux/etherdevice.h>
#include "mvm.h"
#include "time-event.h"
#include "iwl-io.h"
#include "iwl-prph.h"
#define TU_TO_US(x) …
#define TU_TO_MS(x) …
void iwl_mvm_teardown_tdls_peers(struct iwl_mvm *mvm)
{ … }
int iwl_mvm_tdls_sta_count(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
{ … }
static void iwl_mvm_tdls_config(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
{ … }
void iwl_mvm_recalc_tdls_state(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
bool sta_added)
{ … }
void iwl_mvm_mac_mgd_protect_tdls_discover(struct ieee80211_hw *hw,
struct ieee80211_vif *vif,
unsigned int link_id)
{ … }
static const char *
iwl_mvm_tdls_cs_state_str(enum iwl_mvm_tdls_cs_state state)
{ … }
static void iwl_mvm_tdls_update_cs_state(struct iwl_mvm *mvm,
enum iwl_mvm_tdls_cs_state state)
{ … }
void iwl_mvm_rx_tdls_notif(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb)
{ … }
static int
iwl_mvm_tdls_check_action(struct iwl_mvm *mvm,
enum iwl_tdls_channel_switch_type type,
const u8 *peer, bool peer_initiator, u32 timestamp)
{ … }
static int
iwl_mvm_tdls_config_channel_switch(struct iwl_mvm *mvm,
struct ieee80211_vif *vif,
enum iwl_tdls_channel_switch_type type,
const u8 *peer, bool peer_initiator,
u8 oper_class,
struct cfg80211_chan_def *chandef,
u32 timestamp, u16 switch_time,
u16 switch_timeout, struct sk_buff *skb,
u32 ch_sw_tm_ie)
{ … }
void iwl_mvm_tdls_ch_switch_work(struct work_struct *work)
{ … }
int
iwl_mvm_tdls_channel_switch(struct ieee80211_hw *hw,
struct ieee80211_vif *vif,
struct ieee80211_sta *sta, u8 oper_class,
struct cfg80211_chan_def *chandef,
struct sk_buff *tmpl_skb, u32 ch_sw_tm_ie)
{ … }
void iwl_mvm_tdls_cancel_channel_switch(struct ieee80211_hw *hw,
struct ieee80211_vif *vif,
struct ieee80211_sta *sta)
{ … }
void
iwl_mvm_tdls_recv_channel_switch(struct ieee80211_hw *hw,
struct ieee80211_vif *vif,
struct ieee80211_tdls_ch_sw_params *params)
{ … }