summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h')
-rwxr-xr-xdrivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h39
1 files changed, 35 insertions, 4 deletions
diff --git a/drivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h b/drivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h
index 61f808ee20c0..284e99c27b68 100755
--- a/drivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h
+++ b/drivers/net/wireless/rtl8723as/include/rtw_mlme_ext.h
@@ -504,7 +504,11 @@ struct mlme_ext_priv
u8 mlmeext_init;
ATOMIC_T event_seq;
u16 mgnt_seq;
-
+#ifdef CONFIG_IEEE80211W
+ u16 sa_query_seq;
+ u64 mgnt_80211w_IPN;
+ u64 mgnt_80211w_IPN_rx;
+#endif //CONFIG_IEEE80211W
//struct fw_priv fwpriv;
unsigned char cur_channel;
@@ -523,6 +527,9 @@ struct mlme_ext_priv
//for ap mode, network includes ap's cap_info
_timer survey_timer;
_timer link_timer;
+#ifdef CONFIG_IEEE80211W
+ _timer sa_query_timer;
+#endif //CONFIG_IEEE80211W
//_timer ADDBA_timer;
u16 chan_scan_time;
@@ -583,13 +590,15 @@ u8 rtw_get_oper_bw(_adapter *adapter);
void rtw_set_oper_bw(_adapter *adapter, u8 bw);
u8 rtw_get_oper_choffset(_adapter *adapter);
void rtw_set_oper_choffset(_adapter *adapter, u8 offset);
+u32 rtw_get_on_oper_ch_time(_adapter *adapter);
+u32 rtw_get_on_cur_ch_time(_adapter *adapter);
void set_channel_bwmode(_adapter *padapter, unsigned char channel, unsigned char channel_offset, unsigned short bwmode);
void SelectChannel(_adapter *padapter, unsigned char channel);
void SetBWMode(_adapter *padapter, unsigned short bwmode, unsigned char channel_offset);
unsigned int decide_wait_for_beacon_timeout(unsigned int bcn_interval);
-
+void read_cam(_adapter *padapter ,u8 entry);
void write_cam(_adapter *padapter, u8 entry, u16 ctrl, u8 *mac, u8 *key);
void clear_cam_entry(_adapter *padapter, u8 entry);
@@ -641,6 +650,11 @@ void update_tx_basic_rate(_adapter *padapter, u8 modulation);
void update_bmc_sta_support_rate(_adapter *padapter, u32 mac_id);
int update_sta_support_rate(_adapter *padapter, u8* pvar_ie, uint var_ie_len, int cam_idx);
+#ifdef CONFIG_WOWLAN
+void rtw_get_current_ip_address(PADAPTER padapter, u8 *pcurrentip);
+void rtw_get_sec_iv(PADAPTER padapter, u8*pcur_dot11txpn, u8 *StaAddr);
+#endif
+
//for sta/adhoc mode
void update_sta_info(_adapter *padapter, struct sta_info *psta);
unsigned int update_basic_rate(unsigned char *ptn, unsigned int ptn_sz);
@@ -694,6 +708,9 @@ int issue_deauth(_adapter *padapter, unsigned char *da, unsigned short reason);
int issue_deauth_ex(_adapter *padapter, u8 *da, unsigned short reason, int try_cnt, int wait_ms);
void issue_action_spct_ch_switch(_adapter *padapter, u8 *ra, u8 new_ch, u8 ch_offset);
void issue_action_BA(_adapter *padapter, unsigned char *raddr, unsigned char action, unsigned short status);
+#ifdef CONFIG_IEEE80211W
+void issue_action_SA_Query(_adapter *padapter, unsigned char *raddr, unsigned char action, unsigned short tid);
+#endif //CONFIG_IEEE80211W
unsigned int send_delba(_adapter *padapter, u8 initiator, u8 *addr);
unsigned int send_beacon(_adapter *padapter);
@@ -721,6 +738,9 @@ unsigned int OnAction_dls(_adapter *padapter, union recv_frame *precv_frame);
unsigned int OnAction_back(_adapter *padapter, union recv_frame *precv_frame);
unsigned int on_action_public(_adapter *padapter, union recv_frame *precv_frame);
unsigned int OnAction_ht(_adapter *padapter, union recv_frame *precv_frame);
+#ifdef CONFIG_IEEE80211W
+unsigned int OnAction_sa_query(_adapter *padapter, union recv_frame *precv_frame);
+#endif //CONFIG_IEEE80211W
unsigned int OnAction_wmm(_adapter *padapter, union recv_frame *precv_frame);
unsigned int OnAction_p2p(_adapter *padapter, union recv_frame *precv_frame);
@@ -734,6 +754,9 @@ void linked_status_chk(_adapter *padapter);
void survey_timer_hdl (_adapter *padapter);
void link_timer_hdl (_adapter *padapter);
void addba_timer_hdl(struct sta_info *psta);
+#ifdef CONFIG_IEEE80211W
+void sa_query_timer_hdl(_adapter *padapter);
+#endif //CONFIG_IEEE80211W
//void reauth_timer_hdl(_adapter *padapter);
//void reassoc_timer_hdl(_adapter *padapter);
@@ -748,7 +771,13 @@ void addba_timer_hdl(struct sta_info *psta);
/*DBG_871X("%s set_link_timer(%p, %d)\n", __FUNCTION__, (mlmeext), (ms));*/ \
_set_timer(&(mlmeext)->link_timer, (ms)); \
} while(0)
-
+#ifdef CONFIG_IEEE80211W
+#define set_sa_query_timer(mlmeext, ms) \
+ do { \
+ DBG_871X("%s set_sa_query_timer(%p, %d)\n", __FUNCTION__, (mlmeext), (ms)); \
+ _set_timer(&(mlmeext)->sa_query_timer, (ms)); \
+ } while(0)
+#endif //CONFIG_IEEE80211W
extern int cckrates_included(unsigned char *rate, int ratelen);
extern int cckratesonly_included(unsigned char *rate, int ratelen);
@@ -760,7 +789,6 @@ extern void correct_TSF(_adapter *padapter, struct mlme_ext_priv *pmlmeext);
#ifdef CONFIG_CONCURRENT_MODE
sint check_buddy_mlmeinfo_state(_adapter *padapter, u32 state);
-int concurrent_chk_start_clnt_join(_adapter *padapter);
void concurrent_chk_joinbss_done(_adapter *padapter, int join_res);
#endif //CONFIG_CONCURRENT_MODE
@@ -779,6 +807,9 @@ void dc_resume_xmit(_adapter *padapter);
u8 dc_check_xmit(_adapter *padapter);
#endif
+int rtw_chk_start_clnt_join(_adapter *padapter);
+int rtw_get_ch_setting_union(_adapter *adapter, u8 *ch, u8 *bw, u8 *offset);
+
struct cmd_hdl {
uint parmsize;
u8 (*h2cfuns)(struct _ADAPTER *padapter, u8 *pbuf);