diff options
Diffstat (limited to 'drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c')
-rw-r--r-- | drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c | 46 |
1 files changed, 22 insertions, 24 deletions
diff --git a/drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c b/drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c index f98bb03..602be09 100644 --- a/drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c +++ b/drivers/staging/rtl8192u/ieee80211/rtl819x_TSProc.c @@ -3,13 +3,13 @@ #include <linux/slab.h> #include "rtl819x_TS.h" -static void TsSetupTimeOut(unsigned long data) +static void TsSetupTimeOut(struct timer_list *unused) { // Not implement yet // This is used for WMMSA and ACM , that would send ADDTSReq frame. } -static void TsInactTimeout(unsigned long data) +static void TsInactTimeout(struct timer_list *unused) { // Not implement yet // This is used for WMMSA and ACM. @@ -22,9 +22,9 @@ static void TsInactTimeout(unsigned long data) * return: NULL * notice: ********************************************************************************************************************/ -static void RxPktPendingTimeout(unsigned long data) +static void RxPktPendingTimeout(struct timer_list *t) { - PRX_TS_RECORD pRxTs = (PRX_TS_RECORD)data; + PRX_TS_RECORD pRxTs = from_timer(pRxTs, t, RxPktPendingTimer); struct ieee80211_device *ieee = container_of(pRxTs, struct ieee80211_device, RxTsRecord[pRxTs->num]); PRX_REORDER_ENTRY pReorderEntry = NULL; @@ -89,9 +89,9 @@ static void RxPktPendingTimeout(unsigned long data) * return: NULL * notice: ********************************************************************************************************************/ -static void TsAddBaProcess(unsigned long data) +static void TsAddBaProcess(struct timer_list *t) { - PTX_TS_RECORD pTxTs = (PTX_TS_RECORD)data; + PTX_TS_RECORD pTxTs = from_timer(pTxTs, t, TsAddBaTimer); u8 num = pTxTs->num; struct ieee80211_device *ieee = container_of(pTxTs, struct ieee80211_device, TxTsRecord[num]); @@ -145,16 +145,15 @@ void TSInitialize(struct ieee80211_device *ieee) pTxTS->num = count; // The timers for the operation of Traffic Stream and Block Ack. // DLS related timer will be add here in the future!! - setup_timer(&pTxTS->TsCommonInfo.SetupTimer, TsSetupTimeOut, - (unsigned long)pTxTS); - setup_timer(&pTxTS->TsCommonInfo.InactTimer, TsInactTimeout, - (unsigned long)pTxTS); - setup_timer(&pTxTS->TsAddBaTimer, TsAddBaProcess, - (unsigned long)pTxTS); - setup_timer(&pTxTS->TxPendingBARecord.Timer, BaSetupTimeOut, - (unsigned long)pTxTS); - setup_timer(&pTxTS->TxAdmittedBARecord.Timer, - TxBaInactTimeout, (unsigned long)pTxTS); + timer_setup(&pTxTS->TsCommonInfo.SetupTimer, TsSetupTimeOut, + 0); + timer_setup(&pTxTS->TsCommonInfo.InactTimer, TsInactTimeout, + 0); + timer_setup(&pTxTS->TsAddBaTimer, TsAddBaProcess, 0); + timer_setup(&pTxTS->TxPendingBARecord.Timer, BaSetupTimeOut, + 0); + timer_setup(&pTxTS->TxAdmittedBARecord.Timer, + TxBaInactTimeout, 0); ResetTxTsEntry(pTxTS); list_add_tail(&pTxTS->TsCommonInfo.List, &ieee->Tx_TS_Unused_List); pTxTS++; @@ -167,14 +166,13 @@ void TSInitialize(struct ieee80211_device *ieee) for(count = 0; count < TOTAL_TS_NUM; count++) { pRxTS->num = count; INIT_LIST_HEAD(&pRxTS->RxPendingPktList); - setup_timer(&pRxTS->TsCommonInfo.SetupTimer, TsSetupTimeOut, - (unsigned long)pRxTS); - setup_timer(&pRxTS->TsCommonInfo.InactTimer, TsInactTimeout, - (unsigned long)pRxTS); - setup_timer(&pRxTS->RxAdmittedBARecord.Timer, - RxBaInactTimeout, (unsigned long)pRxTS); - setup_timer(&pRxTS->RxPktPendingTimer, RxPktPendingTimeout, - (unsigned long)pRxTS); + timer_setup(&pRxTS->TsCommonInfo.SetupTimer, TsSetupTimeOut, + 0); + timer_setup(&pRxTS->TsCommonInfo.InactTimer, TsInactTimeout, + 0); + timer_setup(&pRxTS->RxAdmittedBARecord.Timer, + RxBaInactTimeout, 0); + timer_setup(&pRxTS->RxPktPendingTimer, RxPktPendingTimeout, 0); ResetRxTsEntry(pRxTS); list_add_tail(&pRxTS->TsCommonInfo.List, &ieee->Rx_TS_Unused_List); pRxTS++; |