net: wireless: rockchip_wlan: add rtl8188eu support
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8188eu / os_dep / linux / mlme_linux.c
old mode 100755 (executable)
new mode 100644 (file)
index 4a12ed5..dd52afa
@@ -128,6 +128,10 @@ void rtw_init_mlme_timer(_adapter *padapter)
        //_init_timer(&(pmlmepriv->sitesurveyctrl.sitesurvey_ctrl_timer), padapter->pnetdev, sitesurvey_ctrl_handler, padapter);
        _init_timer(&(pmlmepriv->scan_to_timer), padapter->pnetdev, _rtw_scan_timeout_handler, padapter);
 
+       #ifdef CONFIG_DFS_MASTER
+       _init_timer(&(pmlmepriv->dfs_master_timer), padapter->pnetdev, rtw_dfs_master_timer_hdl, padapter);
+       #endif
+
        _init_timer(&(pmlmepriv->dynamic_chk_timer), padapter->pnetdev, _dynamic_check_timer_handlder, padapter);
 
        #ifdef CONFIG_SET_SCAN_DENY_TIMER
@@ -245,6 +249,8 @@ void rtw_reset_securitypriv( _adapter *adapter )
        }
        // add for CONFIG_IEEE80211W, none 11w also can use
        _exit_critical_bh(&adapter->security_key_mutex, &irqL);
+
+       DBG_871X(FUNC_ADPT_FMT" - End to Disconnect\n", FUNC_ADPT_ARG(adapter));
 }
 
 void rtw_os_indicate_disconnect( _adapter *adapter )
@@ -285,39 +291,41 @@ _func_enter_;
        if(authmode==_WPA_IE_ID_)
        {
                RT_TRACE(_module_mlme_osdep_c_,_drv_info_,("rtw_report_sec_ie, authmode=%d\n", authmode));
-               
-               buff = rtw_malloc(IW_CUSTOM_MAX);
-               
-               _rtw_memset(buff,0,IW_CUSTOM_MAX);
-               
-               p=buff;
-               
+
+               buff = rtw_zmalloc(IW_CUSTOM_MAX);
+               if (NULL == buff) {
+                       DBG_871X(FUNC_ADPT_FMT ": alloc memory FAIL!!\n",
+                               FUNC_ADPT_ARG(adapter));
+                       return;
+               }
+               p = buff;
+
                p+=sprintf(p,"ASSOCINFO(ReqIEs=");
 
                len = sec_ie[1]+2;
-               len =  (len < IW_CUSTOM_MAX) ? len:IW_CUSTOM_MAX;
+               len = (len < IW_CUSTOM_MAX) ? len:IW_CUSTOM_MAX;
                        
                for(i=0;i<len;i++){
                        p+=sprintf(p,"%02x",sec_ie[i]);
                }
 
                p+=sprintf(p,")");
-               
+
                _rtw_memset(&wrqu,0,sizeof(wrqu));
-               
+
                wrqu.data.length=p-buff;
-               
+
                wrqu.data.length = (wrqu.data.length<IW_CUSTOM_MAX) ? wrqu.data.length:IW_CUSTOM_MAX;
-               
+
 #ifndef CONFIG_IOCTL_CFG80211
                wireless_send_event(adapter->pnetdev,IWEVCUSTOM,&wrqu,buff);
 #endif
 
-               if(buff)
-                   rtw_mfree(buff, IW_CUSTOM_MAX);
-               
+               rtw_mfree(buff, IW_CUSTOM_MAX);
        }
 
+exit:
+
 _func_exit_;
 
 }
@@ -342,11 +350,19 @@ void _addba_timer_hdl(void *FunctionContext)
 }
 
 #ifdef CONFIG_IEEE80211W
+
 void _sa_query_timer_hdl (void *FunctionContext)
 {
-       _adapter *padapter = (_adapter *)FunctionContext;
-       sa_query_timer_hdl(padapter);
+       struct sta_info *psta = (struct sta_info *)FunctionContext;
+       
+       sa_query_timer_hdl(psta);
 }
+
+void init_dot11w_expire_timer(_adapter *padapter, struct sta_info *psta)
+{
+       _init_timer(&psta->dot11w_expire_timer, padapter->pnetdev, _sa_query_timer_hdl, psta);
+}
+
 #endif //CONFIG_IEEE80211W
 
 void init_addba_retry_timer(_adapter *padapter, struct sta_info *psta)
@@ -375,9 +391,7 @@ void init_mlme_ext_timer(_adapter *padapter)
 
        _init_timer(&pmlmeext->survey_timer, padapter->pnetdev, _survey_timer_hdl, padapter);
        _init_timer(&pmlmeext->link_timer, padapter->pnetdev, _link_timer_hdl, padapter);
-#ifdef CONFIG_IEEE80211W
-       _init_timer(&pmlmeext->sa_query_timer, padapter->pnetdev, _sa_query_timer_hdl, padapter);
-#endif //CONFIG_IEEE80211W
+
        //_init_timer(&pmlmeext->ADDBA_timer, padapter->pnetdev, _addba_timer_hdl, padapter);
 
        //_init_timer(&pmlmeext->reauth_timer, padapter->pnetdev, _reauth_timer_hdl, padapter);