staging: rtl8712: Convert timers to use timer_setup()

In preparation for unconditionally passing the struct timer_list pointer to
all timer callbacks, switch to using the new timer_setup() and from_timer()
to pass the timer pointer explicitly.

Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Florian Schilhabel <florian.c.schilhabel@googlemail.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Tejaswini Poluri <tejaswinipoluri3@gmail.com>
Cc: Scott Matheina <scott@matheina.com>
Cc: Varsha Rao <rvarsha016@gmail.com>
Cc: Julia Lawall <julia.lawall@lip6.fr>
Cc: Aleksey Kurbatov <alkbt@yandex.ru>
Cc: Vijai Kumar K <vijaikumar.kanagarajan@gmail.com>
Cc: Wei Yongjun <weiyongjun1@huawei.com>
Cc: "Raphaël Beamonte" <raphael.beamonte@gmail.com>
Cc: Jannik Becher <becher.jannik@gmail.com>
Cc: Joseph Wright <rjosephwright@gmail.com>
Cc: devel@driverdev.osuosl.org
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Kees Cook 2017-10-16 16:24:36 -07:00 committed by Greg Kroah-Hartman
parent e8c5027d85
commit 36aeebd485
5 changed files with 34 additions and 33 deletions

View File

@ -32,39 +32,45 @@
#include "drv_types.h"
#include "mlme_osdep.h"
static void sitesurvey_ctrl_handler(unsigned long data)
static void sitesurvey_ctrl_handler(struct timer_list *t)
{
struct _adapter *adapter = (struct _adapter *)data;
struct _adapter *adapter =
from_timer(adapter, t,
mlmepriv.sitesurveyctrl.sitesurvey_ctrl_timer);
_r8712_sitesurvey_ctrl_handler(adapter);
mod_timer(&adapter->mlmepriv.sitesurveyctrl.sitesurvey_ctrl_timer,
jiffies + msecs_to_jiffies(3000));
}
static void join_timeout_handler (unsigned long data)
static void join_timeout_handler (struct timer_list *t)
{
struct _adapter *adapter = (struct _adapter *)data;
struct _adapter *adapter =
from_timer(adapter, t, mlmepriv.assoc_timer);
_r8712_join_timeout_handler(adapter);
}
static void _scan_timeout_handler (unsigned long data)
static void _scan_timeout_handler (struct timer_list *t)
{
struct _adapter *adapter = (struct _adapter *)data;
struct _adapter *adapter =
from_timer(adapter, t, mlmepriv.scan_to_timer);
r8712_scan_timeout_handler(adapter);
}
static void dhcp_timeout_handler (unsigned long data)
static void dhcp_timeout_handler (struct timer_list *t)
{
struct _adapter *adapter = (struct _adapter *)data;
struct _adapter *adapter =
from_timer(adapter, t, mlmepriv.dhcp_timer);
_r8712_dhcp_timeout_handler(adapter);
}
static void wdg_timeout_handler (unsigned long data)
static void wdg_timeout_handler (struct timer_list *t)
{
struct _adapter *adapter = (struct _adapter *)data;
struct _adapter *adapter =
from_timer(adapter, t, mlmepriv.wdg_timer);
_r8712_wdg_timeout_handler(adapter);
@ -76,17 +82,12 @@ void r8712_init_mlme_timer(struct _adapter *padapter)
{
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
setup_timer(&pmlmepriv->assoc_timer, join_timeout_handler,
(unsigned long)padapter);
setup_timer(&pmlmepriv->sitesurveyctrl.sitesurvey_ctrl_timer,
sitesurvey_ctrl_handler,
(unsigned long)padapter);
setup_timer(&pmlmepriv->scan_to_timer, _scan_timeout_handler,
(unsigned long)padapter);
setup_timer(&pmlmepriv->dhcp_timer, dhcp_timeout_handler,
(unsigned long)padapter);
setup_timer(&pmlmepriv->wdg_timer, wdg_timeout_handler,
(unsigned long)padapter);
timer_setup(&pmlmepriv->assoc_timer, join_timeout_handler, 0);
timer_setup(&pmlmepriv->sitesurveyctrl.sitesurvey_ctrl_timer,
sitesurvey_ctrl_handler, 0);
timer_setup(&pmlmepriv->scan_to_timer, _scan_timeout_handler, 0);
timer_setup(&pmlmepriv->dhcp_timer, dhcp_timeout_handler, 0);
timer_setup(&pmlmepriv->wdg_timer, wdg_timeout_handler, 0);
}
void r8712_os_indicate_connect(struct _adapter *adapter)
@ -118,9 +119,8 @@ void r8712_os_indicate_disconnect(struct _adapter *adapter)
adapter->securitypriv.btkip_countermeasure;
memset((unsigned char *)&adapter->securitypriv, 0,
sizeof(struct security_priv));
setup_timer(&adapter->securitypriv.tkip_timer,
r8712_use_tkipkey_handler,
(unsigned long)adapter);
timer_setup(&adapter->securitypriv.tkip_timer,
r8712_use_tkipkey_handler, 0);
/* Restore the PMK information to securitypriv structure
* for the following connection.
*/

View File

@ -313,8 +313,8 @@ u8 r8712_init_drv_sw(struct _adapter *padapter)
_r8712_init_recv_priv(&padapter->recvpriv, padapter);
memset((unsigned char *)&padapter->securitypriv, 0,
sizeof(struct security_priv));
setup_timer(&padapter->securitypriv.tkip_timer,
r8712_use_tkipkey_handler, (unsigned long)padapter);
timer_setup(&padapter->securitypriv.tkip_timer,
r8712_use_tkipkey_handler, 0);
_r8712_init_sta_priv(&padapter->stapriv);
padapter->stapriv.padapter = padapter;
r8712_init_bcmc_stainfo(padapter);

View File

@ -164,9 +164,10 @@ static void rpwm_workitem_callback(struct work_struct *work)
}
}
static void rpwm_check_handler (unsigned long data)
static void rpwm_check_handler (struct timer_list *t)
{
struct _adapter *adapter = (struct _adapter *)data;
struct _adapter *adapter =
from_timer(adapter, t, pwrctrlpriv.rpwm_check_timer);
_rpwm_check_handler(adapter);
}
@ -185,8 +186,7 @@ void r8712_init_pwrctrl_priv(struct _adapter *padapter)
r8712_write8(padapter, 0x1025FE58, 0);
INIT_WORK(&pwrctrlpriv->SetPSModeWorkItem, SetPSModeWorkItemCallback);
INIT_WORK(&pwrctrlpriv->rpwm_workitem, rpwm_workitem_callback);
setup_timer(&pwrctrlpriv->rpwm_check_timer, rpwm_check_handler,
(unsigned long)padapter);
timer_setup(&pwrctrlpriv->rpwm_check_timer, rpwm_check_handler, 0);
}
/*

View File

@ -1402,9 +1402,10 @@ u32 r8712_aes_decrypt(struct _adapter *padapter, u8 *precvframe)
return _SUCCESS;
}
void r8712_use_tkipkey_handler(unsigned long data)
void r8712_use_tkipkey_handler(struct timer_list *t)
{
struct _adapter *padapter = (struct _adapter *)data;
struct _adapter *padapter =
from_timer(padapter, t, securitypriv.tkip_timer);
padapter->securitypriv.busetkipkey = true;
}

View File

@ -224,7 +224,7 @@ void r8712_wep_encrypt(struct _adapter *padapter, u8 *pxmitframe);
u32 r8712_aes_decrypt(struct _adapter *padapter, u8 *precvframe);
u32 r8712_tkip_decrypt(struct _adapter *padapter, u8 *precvframe);
void r8712_wep_decrypt(struct _adapter *padapter, u8 *precvframe);
void r8712_use_tkipkey_handler(unsigned long data);
void r8712_use_tkipkey_handler(struct timer_list *t);
#endif /*__RTL871X_SECURITY_H_ */