Commit e8b1844a authored by Kees Cook's avatar Kees Cook Committed by Greg Kroah-Hartman

staging: rtl8723bs: 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. This performs some refactoring to
remove needless wrapper functions, and adds a pointer back to the desired
adapter.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Shreeya Patel <shreeya.patel23498@gmail.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Himanshu Jha <himanshujha199640@gmail.com>
Cc: Joe Perches <joe@perches.com>
Cc: Derek Robson <robsonde@gmail.com>
Cc: Harsha Sharma <harshasharmaiitr@gmail.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Stephen Hemminger <stephen@networkplumber.org>
Cc: yuan linyu <Linyu.Yuan@alcatel-sbell.com.cn>
Cc: Johannes Berg <johannes.berg@intel.com>
Cc: devel@driverdev.osuosl.org
Signed-off-by: default avatarKees Cook <keescook@chromium.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 1663b8fa
...@@ -1814,8 +1814,10 @@ void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf) ...@@ -1814,8 +1814,10 @@ void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf)
* _rtw_join_timeout_handler - Timeout/failure handler for CMD JoinBss * _rtw_join_timeout_handler - Timeout/failure handler for CMD JoinBss
* @adapter: pointer to struct adapter structure * @adapter: pointer to struct adapter structure
*/ */
void _rtw_join_timeout_handler (struct adapter *adapter) void _rtw_join_timeout_handler(struct timer_list *t)
{ {
struct adapter *adapter = from_timer(adapter, t,
mlmepriv.assoc_timer);
struct mlme_priv *pmlmepriv = &adapter->mlmepriv; struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
DBG_871X("%s, fw_state =%x\n", __func__, get_fwstate(pmlmepriv)); DBG_871X("%s, fw_state =%x\n", __func__, get_fwstate(pmlmepriv));
...@@ -1867,8 +1869,10 @@ void _rtw_join_timeout_handler (struct adapter *adapter) ...@@ -1867,8 +1869,10 @@ void _rtw_join_timeout_handler (struct adapter *adapter)
* rtw_scan_timeout_handler - Timeout/Failure handler for CMD SiteSurvey * rtw_scan_timeout_handler - Timeout/Failure handler for CMD SiteSurvey
* @adapter: pointer to struct adapter structure * @adapter: pointer to struct adapter structure
*/ */
void rtw_scan_timeout_handler (struct adapter *adapter) void rtw_scan_timeout_handler(struct timer_list *t)
{ {
struct adapter *adapter = from_timer(adapter, t,
mlmepriv.scan_to_timer);
struct mlme_priv *pmlmepriv = &adapter->mlmepriv; struct mlme_priv *pmlmepriv = &adapter->mlmepriv;
DBG_871X(FUNC_ADPT_FMT" fw_state =%x\n", FUNC_ADPT_ARG(adapter), get_fwstate(pmlmepriv)); DBG_871X(FUNC_ADPT_FMT" fw_state =%x\n", FUNC_ADPT_ARG(adapter), get_fwstate(pmlmepriv));
...@@ -1931,7 +1935,7 @@ static void rtw_auto_scan_handler(struct adapter *padapter) ...@@ -1931,7 +1935,7 @@ static void rtw_auto_scan_handler(struct adapter *padapter)
return; return;
} }
void rtw_dynamic_check_timer_handlder(struct adapter *adapter) void rtw_dynamic_check_timer_handler(struct adapter *adapter)
{ {
if (!adapter) if (!adapter)
return; return;
......
...@@ -5830,8 +5830,10 @@ void linked_status_chk(struct adapter *padapter) ...@@ -5830,8 +5830,10 @@ void linked_status_chk(struct adapter *padapter)
} }
void survey_timer_hdl(struct adapter *padapter) void survey_timer_hdl(struct timer_list *t)
{ {
struct adapter *padapter =
from_timer(padapter, t, mlmeextpriv.survey_timer);
struct cmd_obj *ph2c; struct cmd_obj *ph2c;
struct sitesurvey_parm *psurveyPara; struct sitesurvey_parm *psurveyPara;
struct cmd_priv *pcmdpriv = &padapter->cmdpriv; struct cmd_priv *pcmdpriv = &padapter->cmdpriv;
...@@ -5877,8 +5879,10 @@ void survey_timer_hdl(struct adapter *padapter) ...@@ -5877,8 +5879,10 @@ void survey_timer_hdl(struct adapter *padapter)
return; return;
} }
void link_timer_hdl(struct adapter *padapter) void link_timer_hdl(struct timer_list *t)
{ {
struct adapter *padapter =
from_timer(padapter, t, mlmeextpriv.link_timer);
/* static unsigned int rx_pkt = 0; */ /* static unsigned int rx_pkt = 0; */
/* static u64 tx_cnt = 0; */ /* static u64 tx_cnt = 0; */
/* struct xmit_priv *pxmitpriv = &(padapter->xmitpriv); */ /* struct xmit_priv *pxmitpriv = &(padapter->xmitpriv); */
...@@ -5927,8 +5931,9 @@ void link_timer_hdl(struct adapter *padapter) ...@@ -5927,8 +5931,9 @@ void link_timer_hdl(struct adapter *padapter)
return; return;
} }
void addba_timer_hdl(struct sta_info *psta) void addba_timer_hdl(struct timer_list *t)
{ {
struct sta_info *psta = from_timer(psta, t, addba_retry_timer);
struct ht_priv *phtpriv; struct ht_priv *phtpriv;
if (!psta) if (!psta)
...@@ -5943,8 +5948,10 @@ void addba_timer_hdl(struct sta_info *psta) ...@@ -5943,8 +5948,10 @@ void addba_timer_hdl(struct sta_info *psta)
} }
} }
void sa_query_timer_hdl(struct adapter *padapter) void sa_query_timer_hdl(struct timer_list *t)
{ {
struct adapter *padapter =
from_timer(padapter, t, mlmeextpriv.sa_query_timer);
struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
/* disconnect */ /* disconnect */
spin_lock_bh(&pmlmepriv->lock); spin_lock_bh(&pmlmepriv->lock);
......
...@@ -201,10 +201,12 @@ void rtw_ps_processor(struct adapter *padapter) ...@@ -201,10 +201,12 @@ void rtw_ps_processor(struct adapter *padapter)
return; return;
} }
void pwr_state_check_handler(RTW_TIMER_HDL_ARGS); static void pwr_state_check_handler(struct timer_list *t)
void pwr_state_check_handler(RTW_TIMER_HDL_ARGS)
{ {
struct adapter *padapter = (struct adapter *)FunctionContext; struct pwrctrl_priv *pwrctrlpriv =
from_timer(pwrctrlpriv, t, pwr_state_check_timer);
struct adapter *padapter = pwrctrlpriv->adapter;
rtw_ps_cmd(padapter); rtw_ps_cmd(padapter);
} }
...@@ -823,14 +825,10 @@ static void rpwmtimeout_workitem_callback(struct work_struct *work) ...@@ -823,14 +825,10 @@ static void rpwmtimeout_workitem_callback(struct work_struct *work)
/* /*
* This function is a timer handler, can't do any IO in it. * This function is a timer handler, can't do any IO in it.
*/ */
static void pwr_rpwm_timeout_handler(void *FunctionContext) static void pwr_rpwm_timeout_handler(struct timer_list *t)
{ {
struct adapter *padapter; struct pwrctrl_priv *pwrpriv = from_timer(pwrpriv, t, pwr_rpwm_timer);
struct pwrctrl_priv *pwrpriv;
padapter = FunctionContext;
pwrpriv = adapter_to_pwrctl(padapter);
DBG_871X("+%s: rpwm = 0x%02X cpwm = 0x%02X\n", __func__, pwrpriv->rpwm, pwrpriv->cpwm); DBG_871X("+%s: rpwm = 0x%02X cpwm = 0x%02X\n", __func__, pwrpriv->rpwm, pwrpriv->cpwm);
if ((pwrpriv->rpwm == pwrpriv->cpwm) || (pwrpriv->cpwm >= PS_STATE_S2)) { if ((pwrpriv->rpwm == pwrpriv->cpwm) || (pwrpriv->cpwm >= PS_STATE_S2)) {
...@@ -1173,10 +1171,11 @@ void rtw_init_pwrctrl_priv(struct adapter *padapter) ...@@ -1173,10 +1171,11 @@ void rtw_init_pwrctrl_priv(struct adapter *padapter)
_init_workitem(&pwrctrlpriv->cpwm_event, cpwm_event_callback, NULL); _init_workitem(&pwrctrlpriv->cpwm_event, cpwm_event_callback, NULL);
pwrctrlpriv->brpwmtimeout = false; pwrctrlpriv->brpwmtimeout = false;
pwrctrlpriv->adapter = padapter;
_init_workitem(&pwrctrlpriv->rpwmtimeoutwi, rpwmtimeout_workitem_callback, NULL); _init_workitem(&pwrctrlpriv->rpwmtimeoutwi, rpwmtimeout_workitem_callback, NULL);
_init_timer(&pwrctrlpriv->pwr_rpwm_timer, padapter->pnetdev, pwr_rpwm_timeout_handler, padapter); timer_setup(&pwrctrlpriv->pwr_rpwm_timer, pwr_rpwm_timeout_handler, 0);
timer_setup(&pwrctrlpriv->pwr_state_check_timer,
rtw_init_timer(&pwrctrlpriv->pwr_state_check_timer, padapter, pwr_state_check_handler); pwr_state_check_handler, 0);
pwrctrlpriv->wowlan_mode = false; pwrctrlpriv->wowlan_mode = false;
pwrctrlpriv->wowlan_ap_mode = false; pwrctrlpriv->wowlan_ap_mode = false;
......
...@@ -26,7 +26,7 @@ u8 rtw_rfc1042_header[] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 }; ...@@ -26,7 +26,7 @@ u8 rtw_rfc1042_header[] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 };
/* Bridge-Tunnel header (for EtherTypes ETH_P_AARP and ETH_P_IPX) */ /* Bridge-Tunnel header (for EtherTypes ETH_P_AARP and ETH_P_IPX) */
u8 rtw_bridge_tunnel_header[] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 }; u8 rtw_bridge_tunnel_header[] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 };
void rtw_signal_stat_timer_hdl(RTW_TIMER_HDL_ARGS); static void rtw_signal_stat_timer_hdl(struct timer_list *t);
void _rtw_init_sta_recv_priv(struct sta_recv_priv *psta_recvpriv) void _rtw_init_sta_recv_priv(struct sta_recv_priv *psta_recvpriv)
{ {
...@@ -86,7 +86,8 @@ sint _rtw_init_recv_priv(struct recv_priv *precvpriv, struct adapter *padapter) ...@@ -86,7 +86,8 @@ sint _rtw_init_recv_priv(struct recv_priv *precvpriv, struct adapter *padapter)
res = rtw_hal_init_recv_priv(padapter); res = rtw_hal_init_recv_priv(padapter);
rtw_init_timer(&precvpriv->signal_stat_timer, padapter, rtw_signal_stat_timer_hdl); timer_setup(&precvpriv->signal_stat_timer, rtw_signal_stat_timer_hdl,
0);
precvpriv->signal_stat_sampling_interval = 2000; /* ms */ precvpriv->signal_stat_sampling_interval = 2000; /* ms */
...@@ -2354,9 +2355,10 @@ int recv_indicatepkt_reorder(struct adapter *padapter, union recv_frame *prframe ...@@ -2354,9 +2355,10 @@ int recv_indicatepkt_reorder(struct adapter *padapter, union recv_frame *prframe
} }
void rtw_reordering_ctrl_timeout_handler(void *pcontext) void rtw_reordering_ctrl_timeout_handler(struct timer_list *t)
{ {
struct recv_reorder_ctrl *preorder_ctrl = pcontext; struct recv_reorder_ctrl *preorder_ctrl =
from_timer(preorder_ctrl, t, reordering_ctrl_timer);
struct adapter *padapter = preorder_ctrl->padapter; struct adapter *padapter = preorder_ctrl->padapter;
struct __queue *ppending_recvframe_queue = &preorder_ctrl->pending_recvframe_queue; struct __queue *ppending_recvframe_queue = &preorder_ctrl->pending_recvframe_queue;
...@@ -2597,9 +2599,10 @@ s32 rtw_recv_entry(union recv_frame *precvframe) ...@@ -2597,9 +2599,10 @@ s32 rtw_recv_entry(union recv_frame *precvframe)
return ret; return ret;
} }
void rtw_signal_stat_timer_hdl(RTW_TIMER_HDL_ARGS) static void rtw_signal_stat_timer_hdl(struct timer_list *t)
{ {
struct adapter *adapter = (struct adapter *)FunctionContext; struct adapter *adapter =
from_timer(adapter, t, recvpriv.signal_stat_timer);
struct recv_priv *recvpriv = &adapter->recvpriv; struct recv_priv *recvpriv = &adapter->recvpriv;
u32 tmp_s, tmp_q; u32 tmp_s, tmp_q;
......
...@@ -118,8 +118,6 @@ int _rtw_netif_rx(_nic_hdl ndev, struct sk_buff *skb); ...@@ -118,8 +118,6 @@ int _rtw_netif_rx(_nic_hdl ndev, struct sk_buff *skb);
extern void _rtw_init_queue(struct __queue *pqueue); extern void _rtw_init_queue(struct __queue *pqueue);
extern void rtw_init_timer(_timer *ptimer, void *padapter, void *pfunc);
static __inline void thread_enter(char *name) static __inline void thread_enter(char *name)
{ {
allow_signal(SIGTERM); allow_signal(SIGTERM);
......
...@@ -88,16 +88,6 @@ __inline static struct list_head *get_list_head(struct __queue *queue) ...@@ -88,16 +88,6 @@ __inline static struct list_head *get_list_head(struct __queue *queue)
#define LIST_CONTAINOR(ptr, type, member) \ #define LIST_CONTAINOR(ptr, type, member) \
container_of(ptr, type, member) container_of(ptr, type, member)
#define RTW_TIMER_HDL_ARGS void *FunctionContext
__inline static void _init_timer(_timer *ptimer, _nic_hdl nic_hdl, void *pfunc, void* cntx)
{
/* setup_timer(ptimer, pfunc, (u32)cntx); */
ptimer->function = pfunc;
ptimer->data = (unsigned long)cntx;
init_timer(ptimer);
}
__inline static void _set_timer(_timer *ptimer, u32 delay_time) __inline static void _set_timer(_timer *ptimer, u32 delay_time)
{ {
mod_timer(ptimer , (jiffies+(delay_time*HZ/1000))); mod_timer(ptimer , (jiffies+(delay_time*HZ/1000)));
...@@ -109,7 +99,6 @@ __inline static void _cancel_timer(_timer *ptimer, u8 *bcancelled) ...@@ -109,7 +99,6 @@ __inline static void _cancel_timer(_timer *ptimer, u8 *bcancelled)
*bcancelled = true;/* true == 1; false == 0 */ *bcancelled = true;/* true == 1; false == 0 */
} }
__inline static void _init_workitem(_workitem *pwork, void *pfunc, void *cntx) __inline static void _init_workitem(_workitem *pwork, void *pfunc, void *cntx)
{ {
INIT_WORK(pwork, pfunc); INIT_WORK(pwork, pfunc);
......
...@@ -518,8 +518,8 @@ extern void rtw_atimdone_event_callback(struct adapter *adapter, u8 *pbuf); ...@@ -518,8 +518,8 @@ extern void rtw_atimdone_event_callback(struct adapter *adapter, u8 *pbuf);
extern void rtw_cpwm_event_callback(struct adapter *adapter, u8 *pbuf); extern void rtw_cpwm_event_callback(struct adapter *adapter, u8 *pbuf);
extern void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf); extern void rtw_wmm_event_callback(struct adapter *padapter, u8 *pbuf);
extern void rtw_join_timeout_handler(RTW_TIMER_HDL_ARGS); extern void rtw_join_timeout_handler(struct timer_list *t);
extern void _rtw_scan_timeout_handler(RTW_TIMER_HDL_ARGS); extern void _rtw_scan_timeout_handler(struct timer_list *t);
int event_thread(void *context); int event_thread(void *context);
...@@ -618,10 +618,10 @@ extern void rtw_update_registrypriv_dev_network(struct adapter *adapter); ...@@ -618,10 +618,10 @@ extern void rtw_update_registrypriv_dev_network(struct adapter *adapter);
extern void rtw_get_encrypt_decrypt_from_registrypriv(struct adapter *adapter); extern void rtw_get_encrypt_decrypt_from_registrypriv(struct adapter *adapter);
extern void _rtw_join_timeout_handler(struct adapter *adapter); extern void _rtw_join_timeout_handler(struct timer_list *t);
extern void rtw_scan_timeout_handler(struct adapter *adapter); extern void rtw_scan_timeout_handler(struct timer_list *t);
extern void rtw_dynamic_check_timer_handlder(struct adapter *adapter); extern void rtw_dynamic_check_timer_handler(struct adapter *adapter);
bool rtw_is_scan_deny(struct adapter *adapter); bool rtw_is_scan_deny(struct adapter *adapter);
void rtw_clear_scan_deny(struct adapter *adapter); void rtw_clear_scan_deny(struct adapter *adapter);
void rtw_set_scan_deny_timer_hdl(struct adapter *adapter); void rtw_set_scan_deny_timer_hdl(struct adapter *adapter);
......
...@@ -719,10 +719,10 @@ void linked_status_chk(struct adapter *padapter); ...@@ -719,10 +719,10 @@ void linked_status_chk(struct adapter *padapter);
void _linked_info_dump(struct adapter *padapter); void _linked_info_dump(struct adapter *padapter);
void survey_timer_hdl (struct adapter *padapter); void survey_timer_hdl (struct timer_list *t);
void link_timer_hdl (struct adapter *padapter); void link_timer_hdl (struct timer_list *t);
void addba_timer_hdl(struct sta_info *psta); void addba_timer_hdl(struct timer_list *t);
void sa_query_timer_hdl(struct adapter *padapter); void sa_query_timer_hdl(struct timer_list *t);
/* void reauth_timer_hdl(struct adapter *padapter); */ /* void reauth_timer_hdl(struct adapter *padapter); */
/* void reassoc_timer_hdl(struct adapter *padapter); */ /* void reassoc_timer_hdl(struct adapter *padapter); */
......
...@@ -300,6 +300,7 @@ struct pwrctrl_priv ...@@ -300,6 +300,7 @@ struct pwrctrl_priv
u64 wowlan_fw_iv; u64 wowlan_fw_iv;
#endif /* CONFIG_WOWLAN */ #endif /* CONFIG_WOWLAN */
_timer pwr_state_check_timer; _timer pwr_state_check_timer;
struct adapter *adapter;
int pwr_state_check_interval; int pwr_state_check_interval;
u8 pwr_state_check_cnts; u8 pwr_state_check_cnts;
......
...@@ -411,7 +411,7 @@ sint rtw_enqueue_recvbuf_to_head(struct recv_buf *precvbuf, struct __queue *queu ...@@ -411,7 +411,7 @@ sint rtw_enqueue_recvbuf_to_head(struct recv_buf *precvbuf, struct __queue *queu
sint rtw_enqueue_recvbuf(struct recv_buf *precvbuf, struct __queue *queue); sint rtw_enqueue_recvbuf(struct recv_buf *precvbuf, struct __queue *queue);
struct recv_buf *rtw_dequeue_recvbuf (struct __queue *queue); struct recv_buf *rtw_dequeue_recvbuf (struct __queue *queue);
void rtw_reordering_ctrl_timeout_handler(void *pcontext); void rtw_reordering_ctrl_timeout_handler(struct timer_list *t);
__inline static u8 *get_rxmem(union recv_frame *precvframe) __inline static u8 *get_rxmem(union recv_frame *precvframe)
{ {
......
...@@ -19,18 +19,21 @@ ...@@ -19,18 +19,21 @@
#include <drv_types.h> #include <drv_types.h>
#include <rtw_debug.h> #include <rtw_debug.h>
static void _dynamic_check_timer_handlder(void *FunctionContext) static void _dynamic_check_timer_handler(struct timer_list *t)
{ {
struct adapter *adapter = FunctionContext; struct adapter *adapter =
from_timer(adapter, t, mlmepriv.dynamic_chk_timer);
rtw_dynamic_check_timer_handlder(adapter); rtw_dynamic_check_timer_handler(adapter);
_set_timer(&adapter->mlmepriv.dynamic_chk_timer, 2000); _set_timer(&adapter->mlmepriv.dynamic_chk_timer, 2000);
} }
static void _rtw_set_scan_deny_timer_hdl(void *FunctionContext) static void _rtw_set_scan_deny_timer_hdl(struct timer_list *t)
{ {
struct adapter *adapter = FunctionContext; struct adapter *adapter =
from_timer(adapter, t, mlmepriv.set_scan_deny_timer);
rtw_set_scan_deny_timer_hdl(adapter); rtw_set_scan_deny_timer_hdl(adapter);
} }
...@@ -38,13 +41,12 @@ void rtw_init_mlme_timer(struct adapter *padapter) ...@@ -38,13 +41,12 @@ void rtw_init_mlme_timer(struct adapter *padapter)
{ {
struct mlme_priv *pmlmepriv = &padapter->mlmepriv; struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
_init_timer(&(pmlmepriv->assoc_timer), padapter->pnetdev, _rtw_join_timeout_handler, padapter); timer_setup(&pmlmepriv->assoc_timer, _rtw_join_timeout_handler, 0);
/* _init_timer(&(pmlmepriv->sitesurveyctrl.sitesurvey_ctrl_timer), padapter->pnetdev, sitesurvey_ctrl_handler, padapter); */ timer_setup(&pmlmepriv->scan_to_timer, rtw_scan_timeout_handler, 0);
_init_timer(&(pmlmepriv->scan_to_timer), padapter->pnetdev, rtw_scan_timeout_handler, padapter); timer_setup(&pmlmepriv->dynamic_chk_timer,
_dynamic_check_timer_handler, 0);
_init_timer(&(pmlmepriv->dynamic_chk_timer), padapter->pnetdev, _dynamic_check_timer_handlder, padapter); timer_setup(&pmlmepriv->set_scan_deny_timer,
_rtw_set_scan_deny_timer_hdl, 0);
_init_timer(&(pmlmepriv->set_scan_deny_timer), padapter->pnetdev, _rtw_set_scan_deny_timer_hdl, padapter);
} }
void rtw_os_indicate_connect(struct adapter *adapter) void rtw_os_indicate_connect(struct adapter *adapter)
...@@ -191,14 +193,14 @@ void rtw_report_sec_ie(struct adapter *adapter, u8 authmode, u8 *sec_ie) ...@@ -191,14 +193,14 @@ void rtw_report_sec_ie(struct adapter *adapter, u8 authmode, u8 *sec_ie)
void init_addba_retry_timer(struct adapter *padapter, struct sta_info *psta) void init_addba_retry_timer(struct adapter *padapter, struct sta_info *psta)
{ {
_init_timer(&psta->addba_retry_timer, padapter->pnetdev, addba_timer_hdl, psta); timer_setup(&psta->addba_retry_timer, addba_timer_hdl, 0);
} }
void init_mlme_ext_timer(struct adapter *padapter) void init_mlme_ext_timer(struct adapter *padapter)
{ {
struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv; struct mlme_ext_priv *pmlmeext = &padapter->mlmeextpriv;
_init_timer(&pmlmeext->survey_timer, padapter->pnetdev, survey_timer_hdl, padapter); timer_setup(&pmlmeext->survey_timer, survey_timer_hdl, 0);
_init_timer(&pmlmeext->link_timer, padapter->pnetdev, link_timer_hdl, padapter); timer_setup(&pmlmeext->link_timer, link_timer_hdl, 0);
_init_timer(&pmlmeext->sa_query_timer, padapter->pnetdev, sa_query_timer_hdl, padapter); timer_setup(&pmlmeext->sa_query_timer, sa_query_timer_hdl, 0);
} }
...@@ -66,13 +66,6 @@ inline int _rtw_netif_rx(_nic_hdl ndev, struct sk_buff *skb) ...@@ -66,13 +66,6 @@ inline int _rtw_netif_rx(_nic_hdl ndev, struct sk_buff *skb)
return netif_rx(skb); return netif_rx(skb);
} }
void rtw_init_timer(_timer *ptimer, void *padapter, void *pfunc)
{
struct adapter *adapter = padapter;
_init_timer(ptimer, adapter->pnetdev, pfunc, adapter);
}
void _rtw_init_queue(struct __queue *pqueue) void _rtw_init_queue(struct __queue *pqueue)
{ {
INIT_LIST_HEAD(&(pqueue->queue)); INIT_LIST_HEAD(&(pqueue->queue));
......
...@@ -356,8 +356,7 @@ int rtw_recv_indicatepkt(struct adapter *padapter, union recv_frame *precv_frame ...@@ -356,8 +356,7 @@ int rtw_recv_indicatepkt(struct adapter *padapter, union recv_frame *precv_frame
void rtw_init_recv_timer(struct recv_reorder_ctrl *preorder_ctrl) void rtw_init_recv_timer(struct recv_reorder_ctrl *preorder_ctrl)
{ {
struct adapter *padapter = preorder_ctrl->padapter; timer_setup(&preorder_ctrl->reordering_ctrl_timer,
rtw_reordering_ctrl_timeout_handler, 0);
_init_timer(&(preorder_ctrl->reordering_ctrl_timer), padapter->pnetdev, rtw_reordering_ctrl_timeout_handler, preorder_ctrl);
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment