staging: rtl8192e: Convert timers to use timer_setup()
PATCH 1/1 staging: rtl8192e: 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 Greg Kroah-Hartman <[email protected]>
Cc Derek Robson <[email protected]>
Cc Suniel Mahesh <[email protected]>
Cc Malcolm Priestley <[email protected]>
Cc Gargi Sharma <[email protected]>
Cc Julia Lawall <[email protected]>
Cc "David S. Miller" <[email protected]>
Cc Johannes Berg <[email protected]>
Cc Yamanappagouda Patil <[email protected]>
Cc Georgiana Rodica Chelu <[email protected]>
Cc Colin Ian King <[email protected]>
Cc Baoyou Xie <[email protected]>
Cc Greg Kroah-Hartman <[email protected]>
Cc Derek Robson <[email protected]>
Cc Suniel Mahesh <[email protected]>
Cc Malcolm Priestley <[email protected]>
Cc Gargi Sharma <[email protected]>
Cc Julia Lawall <[email protected]>
Cc Yamanappagouda Patil <[email protected]>
Cc "David S. Miller" <[email protected]>
Cc Johannes Berg <[email protected]>
Cc Georgiana Rodica Chelu <[email protected]>
Cc Colin Ian King <[email protected]>
Cc Baoyou Xie <[email protected]>
Signed-off-by Kees Cook <[email protected]>
--- drivers/staging/rtl8192e/rtl8192e/rtl_core.c | 25 ++++++------- drivers/staging/rtl8192e/rtl8192e/rtl_core.h | 2 +- drivers/staging/rtl8192e/rtl8192e/rtl_dm.c | 11 +++--- drivers/staging/rtl8192e/rtl8192e/rtl_pm.c | 2 +- drivers/staging/rtl8192e/rtl819x_BAProc.c | 15 +++++--- drivers/staging/rtl8192e/rtl819x_TSProc.c | 56 ++++++++++++---------------- drivers/staging/rtl8192e/rtllib.h | 6 +-- drivers/staging/rtl8192e/rtllib_softmac.c | 18 ++++----- 8 files changed, 61 insertions(+), 74 deletions(-)
drivers/staging/rtl8192e/rtl8192e/rtl_core.c +11 -14
@@ -85,7 +85,7 @@ static struct pci_driver rtl8192_pci_driver = {static short _rtl92e_is_tx_queue_empty (struct net_device *dev);static void _rtl92e_watchdog_wq_cb (void *data); -static void _rtl92e_watchdog_timer_cb (unsigned long data); +static void _rtl92e_watchdog_timer_cb (struct timer_list *t);static void _rtl92e_hard_data_xmit (struct sk_buff *skb,struct net_device *dev,int rate);static int _rtl92e_hard_start_xmit (struct sk_buff *skb,struct net_device *dev);
@@ -766,12 +766,12 @@ static int _rtl92e_sta_up(struct net_device *dev, bool is_silent_reset) priv->bfirst_init = false;if (priv->polling_timer_on ==0 ) -rtl92e_check_rfctrl_gpio_timer ((unsigned long )dev); +rtl92e_check_rfctrl_gpio_timer (&priv->gpio_polling_timer);if (priv->rtllib->state !=RTLLIB_LINKED )rtllib_softmac_start_protocol (priv->rtllib,0 );rtllib_reset_queue (priv->rtllib); -_rtl92e_watchdog_timer_cb ((unsigned long )dev); +_rtl92e_watchdog_timer_cb (&priv->watch_dog_timer);if (!netif_queue_stopped (dev))netif_start_queue (dev);
@@ -1075,13 +1075,10 @@ static short _rtl92e_init(struct net_device *dev)rtl92e_dm_init (dev); -setup_timer (&priv->watch_dog_timer, - _rtl92e_watchdog_timer_cb, - (unsigned long )dev); +timer_setup (&priv->watch_dog_timer, _rtl92e_watchdog_timer_cb,0 ); -setup_timer (&priv->gpio_polling_timer, - rtl92e_check_rfctrl_gpio_timer, - (unsigned long )dev); +timer_setup (&priv->gpio_polling_timer, rtl92e_check_rfctrl_gpio_timer, +0 );rtl92e_irq_disable (dev);if (request_irq (dev->irq, _rtl92e_irq,IRQF_SHARED , dev->name, dev)) {
@@ -1531,9 +1528,9 @@ static void _rtl92e_watchdog_wq_cb(void *data)RT_TRACE (COMP_TRACE ," <==RtUsbCheckForHangWorkItemCallback()\n" ); } -static void _rtl92e_watchdog_timer_cb (unsigned long data) +static void _rtl92e_watchdog_timer_cb (struct timer_list *t) { -struct r8192_priv *priv =rtllib_priv ((struct net_device *)data); +struct r8192_priv *priv =from_timer (priv, t, watch_dog_timer);schedule_delayed_work (&priv->watch_dog_wq,0 ); mod_timer(&priv->watch_dog_timer, jiffies +
@@ -2535,7 +2532,7 @@ static int _rtl92e_pci_probe(struct pci_dev *pdev,RT_TRACE (COMP_INIT ,"dev name: %s\n" , dev->name);if (priv->polling_timer_on ==0 ) -rtl92e_check_rfctrl_gpio_timer ((unsigned long )dev); +rtl92e_check_rfctrl_gpio_timer (&priv->gpio_polling_timer);RT_TRACE (COMP_INIT ,"Driver probe completed\n" );return 0 ;
@@ -2648,9 +2645,9 @@ bool rtl92e_disable_nic(struct net_device *dev)module_pci_driver (rtl8192_pci_driver); -void rtl92e_check_rfctrl_gpio_timer (unsigned long data) +void rtl92e_check_rfctrl_gpio_timer (struct timer_list *t) { -struct r8192_priv *priv =rtllib_priv ((struct net_device *)data); +struct r8192_priv *priv =from_timer (priv, t, gpio_polling_timer); priv->polling_timer_on =1 ;
drivers/staging/rtl8192e/rtl8192e/rtl_core.h +1 -1
@@ -587,7 +587,7 @@ void rtl92e_tx_enable(struct net_device *);void rtl92e_hw_sleep_wq (void *data);void rtl92e_commit (struct net_device *dev); -void rtl92e_check_rfctrl_gpio_timer (unsigned long data); +void rtl92e_check_rfctrl_gpio_timer (struct timer_list *t);void rtl92e_hw_wakeup_wq (void *data);
drivers/staging/rtl8192e/rtl8192e/rtl_dm.c +5 -6
@@ -196,7 +196,7 @@ static void _rtl92e_dm_check_txrateandretrycount(struct net_device *dev);static void _rtl92e_dm_check_ac_dc_power (struct net_device *dev);static void _rtl92e_dm_check_fsync (struct net_device *dev);static void _rtl92e_dm_check_rf_ctrl_gpio (void *data); -static void _rtl92e_dm_fsync_timer_callback (unsigned long data); +static void _rtl92e_dm_fsync_timer_callback (struct timer_list *t);/*---------------------Define local function prototype-----------------------*/
@@ -2125,8 +2125,7 @@ static void _rtl92e_dm_init_fsync(struct net_device *dev) priv->rtllib->fsync_state = Default_Fsync; priv->framesyncMonitor =1 ; -setup_timer (&priv->fsync_timer, _rtl92e_dm_fsync_timer_callback, - (unsigned long )dev); +timer_setup (&priv->fsync_timer, _rtl92e_dm_fsync_timer_callback,0 ); }
@@ -2137,10 +2136,10 @@ static void _rtl92e_dm_deinit_fsync(struct net_device *dev)del_timer_sync (&priv->fsync_timer); } -static void _rtl92e_dm_fsync_timer_callback (unsigned long data) +static void _rtl92e_dm_fsync_timer_callback (struct timer_list *t) { -struct net_device *dev = (struct net_device *)data; -struct r8192_priv *priv =rtllib_priv ((struct net_device *)data); +struct r8192_priv *priv =from_timer (priv, t, fsync_timer); +struct net_device *dev = priv->rtllib->dev;u32 rate_index, rate_count =0 , rate_count_diff =0 ;bool bSwitchFromCountDiff = false;bool bDoubleTimeInterval = false;
drivers/staging/rtl8192e/rtl8192e/rtl_pm.c +1 -1
@@ -91,7 +91,7 @@ int rtl92e_resume(struct pci_dev *pdev)pci_enable_wake (pdev,PCI_D0 ,0 );if (priv->polling_timer_on ==0 ) -rtl92e_check_rfctrl_gpio_timer ((unsigned long )dev); +rtl92e_check_rfctrl_gpio_timer (&priv->gpio_polling_timer);if (!netif_running (dev)) { netdev_info(dev,
drivers/staging/rtl8192e/rtl819x_BAProc.c +9 -6
@@ -528,18 +528,20 @@ void TsInitDelBA(struct rtllib_device *ieee, } } -void BaSetupTimeOut (unsigned long data) +void BaSetupTimeOut (struct timer_list *t) { -struct tx_ts_record *pTxTs = (struct tx_ts_record *)data; +struct tx_ts_record *pTxTs =from_timer (pTxTs, t, + TxPendingBARecord.Timer); pTxTs->bAddBaReqInProgress = false; pTxTs->bAddBaReqDelayed = true; pTxTs->TxPendingBARecord.bValid = false; } -void TxBaInactTimeout (unsigned long data) +void TxBaInactTimeout (struct timer_list *t) { -struct tx_ts_record *pTxTs = (struct tx_ts_record *)data; +struct tx_ts_record *pTxTs =from_timer (pTxTs, t, + TxAdmittedBARecord.Timer); struct rtllib_device *ieee = container_of(pTxTs, struct rtllib_device, TxTsRecord[pTxTs->num]);TxTsDeleteBA (ieee, pTxTs);
@@ -548,9 +550,10 @@ void TxBaInactTimeout(unsigned long data) DELBA_REASON_TIMEOUT); } -void RxBaInactTimeout (unsigned long data) +void RxBaInactTimeout (struct timer_list *t) { -struct rx_ts_record *pRxTs = (struct rx_ts_record *)data; +struct rx_ts_record *pRxTs =from_timer (pRxTs, t, + RxAdmittedBARecord.Timer); struct rtllib_device *ieee = container_of(pRxTs, struct rtllib_device, RxTsRecord[pRxTs->num]);
drivers/staging/rtl8192e/rtl819x_TSProc.c +23 -33
94 lines not on this page · raw message
drivers/staging/rtl8192e/rtllib.h +3 -3
@@ -2113,9 +2113,9 @@ void TsInitAddBA(struct rtllib_device *ieee, struct tx_ts_record *pTS,void TsInitDelBA (struct rtllib_device *ieee,struct ts_common_info *pTsCommonInfo,enum tr_select TxRxSelect); -void BaSetupTimeOut (unsigned long data); -void TxBaInactTimeout (unsigned long data); -void RxBaInactTimeout (unsigned long data); +void BaSetupTimeOut (struct timer_list *t); +void TxBaInactTimeout (struct timer_list *t); +void RxBaInactTimeout (struct timer_list *t);void ResetBaEntry (struct ba_record *pBA);bool GetTs (struct rtllib_device *ieee,struct ts_common_info **ppTS,u8 *Addr,u8 TID ,enum tr_select TxRxSelect,bool bAddNewTs);
drivers/staging/rtl8192e/rtllib_softmac.c +8 -10
@@ -393,10 +393,10 @@ static void rtllib_send_beacon(struct rtllib_device *ieee) } -static void rtllib_send_beacon_cb (unsigned long _ieee) +static void rtllib_send_beacon_cb (struct timer_list *t) {struct rtllib_device *ieee = - (struct rtllib_device *) _ieee; +from_timer (ieee, t, beacon_timer);unsigned long flags;spin_lock_irqsave (&ieee->beacon_lock, flags);
@@ -1427,9 +1427,11 @@ static void rtllib_associate_abort(struct rtllib_device *ieee)spin_unlock_irqrestore (&ieee->lock, flags); } -static void rtllib_associate_abort_cb (unsigned long dev) +static void rtllib_associate_abort_cb (struct timer_list *t) { -rtllib_associate_abort ((struct rtllib_device *) dev); +struct rtllib_device *dev =from_timer (dev, t, associate_timer); + +rtllib_associate_abort (dev); }static void rtllib_associate_step1 (struct rtllib_device *ieee,u8 *daddr)
@@ -3012,13 +3014,9 @@ void rtllib_softmac_init(struct rtllib_device *ieee) ieee->tx_pending.txb =NULL ; -setup_timer (&ieee->associate_timer, - rtllib_associate_abort_cb, - (unsigned long ) ieee); +timer_setup (&ieee->associate_timer, rtllib_associate_abort_cb,0 ); -setup_timer (&ieee->beacon_timer, - rtllib_send_beacon_cb, - (unsigned long ) ieee); +timer_setup (&ieee->beacon_timer, rtllib_send_beacon_cb,0 );INIT_DELAYED_WORK_RSL (&ieee->link_change_wq, (void *)rtllib_link_change_wq, ieee);
Signature · 6 lines
2.7.4 -- Kees Cook Pixel Security