staging: rtl8192e: Pass ieee80211_device to callbacks
authorMike McCormack <mikem@ring3k.org>
Thu, 10 Mar 2011 13:39:50 +0000 (22:39 +0900)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 14 Mar 2011 19:24:46 +0000 (12:24 -0700)
Signed-off-by: Mike McCormack <mikem@ring3k.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/rtl8192e/ieee80211/ieee80211.h
drivers/staging/rtl8192e/ieee80211/ieee80211_rx.c
drivers/staging/rtl8192e/ieee80211/ieee80211_softmac.c
drivers/staging/rtl8192e/ieee80211/ieee80211_softmac_wx.c
drivers/staging/rtl8192e/ieee80211/ieee80211_tx.c
drivers/staging/rtl8192e/ieee80211/rtl819x_BAProc.c
drivers/staging/rtl8192e/ieee80211/rtl819x_HTProc.c
drivers/staging/rtl8192e/r8192E_core.c
drivers/staging/rtl8192e/r8192E_dm.c
drivers/staging/rtl8192e/r819xE_phy.c
drivers/staging/rtl8192e/r819xE_phy.h

index 527c368..3ca3881 100644 (file)
@@ -2186,20 +2186,20 @@ struct ieee80211_device {
        void (*stop_send_beacons) (struct ieee80211_device *dev);
 
        /* power save mode related */
        void (*stop_send_beacons) (struct ieee80211_device *dev);
 
        /* power save mode related */
-       void (*sta_wake_up) (struct net_device *dev);
-       void (*enter_sleep_state) (struct net_device *dev, u32 th, u32 tl);
-       short (*ps_is_queue_empty) (struct net_device *dev);
-        int (*handle_beacon) (struct net_device * dev, struct ieee80211_beacon * beacon, struct ieee80211_network * network);
-        int (*handle_assoc_response) (struct net_device * dev, struct ieee80211_assoc_response_frame * resp, struct ieee80211_network * network);
+       void (*sta_wake_up) (struct ieee80211_device *ieee80211);
+       void (*enter_sleep_state) (struct ieee80211_device *ieee80211, u32 th, u32 tl);
+       short (*ps_is_queue_empty) (struct ieee80211_device *ieee80211);
+        int (*handle_beacon) (struct ieee80211_device *ieee80211, struct ieee80211_beacon *beacon, struct ieee80211_network *network);
+        int (*handle_assoc_response) (struct ieee80211_device *ieee80211, struct ieee80211_assoc_response_frame *resp, struct ieee80211_network *network);
 
        /* check whether Tx hw resouce available */
 
        /* check whether Tx hw resouce available */
-       short (*check_nic_enough_desc)(struct net_device *dev, int queue_index);
+       short (*check_nic_enough_desc)(struct ieee80211_device *ieee80211, int queue_index);
        //added by wb for HT related
        //added by wb for HT related
-       void (*SetBWModeHandler)(struct net_device *dev, HT_CHANNEL_WIDTH Bandwidth, HT_EXTCHNL_OFFSET Offset);
-       bool (*GetNmodeSupportBySecCfg)(struct net_device* dev);
-       void (*SetWirelessMode)(struct net_device* dev, u8 wireless_mode);
-       bool (*GetHalfNmodeSupportByAPsHandler)(struct net_device* dev);
-       void (*InitialGainHandler)(struct net_device *dev, u8 Operation);
+       void (*SetBWModeHandler)(struct ieee80211_device *ieee80211, HT_CHANNEL_WIDTH Bandwidth, HT_EXTCHNL_OFFSET Offset);
+       bool (*GetNmodeSupportBySecCfg)(struct ieee80211_device *ieee80211);
+       void (*SetWirelessMode)(struct ieee80211_device *ieee80211, u8 wireless_mode);
+       bool (*GetHalfNmodeSupportByAPsHandler)(struct ieee80211_device *ieee80211);
+       void (*InitialGainHandler)(struct ieee80211_device *ieee80211, u8 Operation);
 
        /* This must be the last item so that it points to the data
         * allocated beyond this structure by alloc_ieee80211 */
 
        /* This must be the last item so that it points to the data
         * allocated beyond this structure by alloc_ieee80211 */
index c57a90e..add015e 100644 (file)
@@ -2634,7 +2634,7 @@ static inline void ieee80211_process_probe_response(
        if (is_beacon(beacon->header.frame_ctl)&&is_same_network(&ieee->current_network, &network, ieee)&&\
                (ieee->state == IEEE80211_LINKED)) {
                if(ieee->handle_beacon != NULL) {
        if (is_beacon(beacon->header.frame_ctl)&&is_same_network(&ieee->current_network, &network, ieee)&&\
                (ieee->state == IEEE80211_LINKED)) {
                if(ieee->handle_beacon != NULL) {
-                       ieee->handle_beacon(ieee->dev,beacon,&ieee->current_network);
+                       ieee->handle_beacon(ieee, beacon, &ieee->current_network);
                }
        }
 }
                }
        }
 }
index 92cd71c..f6922d4 100644 (file)
@@ -259,8 +259,8 @@ inline void softmac_mgmt_xmit(struct sk_buff *skb, struct ieee80211_device *ieee
                        ieee->seq_ctrl[0]++;
 
                /* check wether the managed packet queued greater than 5 */
                        ieee->seq_ctrl[0]++;
 
                /* check wether the managed packet queued greater than 5 */
-               if(!ieee->check_nic_enough_desc(ieee->dev,tcb_desc->queue_index)||\
-                               (skb_queue_len(&ieee->skb_waitQ[tcb_desc->queue_index]) != 0)||\
+               if(!ieee->check_nic_enough_desc(ieee, tcb_desc->queue_index)||
+                               (skb_queue_len(&ieee->skb_waitQ[tcb_desc->queue_index]) != 0)||
                                (ieee->queue_stop) ) {
                        /* insert the skb packet to the management queue */
                        /* as for the completion function, it does not need
                                (ieee->queue_stop) ) {
                        /* insert the skb packet to the management queue */
                        /* as for the completion function, it does not need
@@ -1508,11 +1508,11 @@ inline void ieee80211_softmac_new_net(struct ieee80211_device *ieee, struct ieee
                                        if(ieee80211_is_54g(ieee->current_network) &&
                                                (ieee->modulation & IEEE80211_OFDM_MODULATION)){
                                                ieee->rate = 108;
                                        if(ieee80211_is_54g(ieee->current_network) &&
                                                (ieee->modulation & IEEE80211_OFDM_MODULATION)){
                                                ieee->rate = 108;
-                                               ieee->SetWirelessMode(ieee->dev, IEEE_G);
+                                               ieee->SetWirelessMode(ieee, IEEE_G);
                                                printk(KERN_INFO"Using G rates\n");
                                        }else{
                                                ieee->rate = 22;
                                                printk(KERN_INFO"Using G rates\n");
                                        }else{
                                                ieee->rate = 22;
-                                               ieee->SetWirelessMode(ieee->dev, IEEE_B);
+                                               ieee->SetWirelessMode(ieee, IEEE_B);
                                                printk(KERN_INFO"Using B rates\n");
                                        }
                                        memset(ieee->dot11HTOperationalRateSet, 0, 16);
                                                printk(KERN_INFO"Using B rates\n");
                                        }
                                        memset(ieee->dot11HTOperationalRateSet, 0, 16);
@@ -1845,13 +1845,13 @@ inline void ieee80211_sta_ps(struct ieee80211_device *ieee)
        }
        if(sleep == 1){
                if(ieee->sta_sleep == 1){
        }
        if(sleep == 1){
                if(ieee->sta_sleep == 1){
-                       ieee->enter_sleep_state(ieee->dev,th,tl);
+                       ieee->enter_sleep_state(ieee, th, tl);
                }
 
                else if(ieee->sta_sleep == 0){
                        spin_lock(&ieee->mgmt_tx_lock);
 
                }
 
                else if(ieee->sta_sleep == 0){
                        spin_lock(&ieee->mgmt_tx_lock);
 
-                       if(ieee->ps_is_queue_empty(ieee->dev)){
+                       if (ieee->ps_is_queue_empty(ieee)) {
                                ieee->sta_sleep = 2;
                                ieee->ack_tx_to_ieee = 1;
                                ieee80211_sta_ps_send_null_frame(ieee,1);
                                ieee->sta_sleep = 2;
                                ieee->ack_tx_to_ieee = 1;
                                ieee80211_sta_ps_send_null_frame(ieee,1);
@@ -1897,7 +1897,7 @@ void ieee80211_sta_wakeup(struct ieee80211_device *ieee, short nl)
        }
 
        if(ieee->sta_sleep == 1)
        }
 
        if(ieee->sta_sleep == 1)
-               ieee->sta_wake_up(ieee->dev);
+               ieee->sta_wake_up(ieee);
        if(nl){
 
                        if(ieee->pHTInfo->IOTAction & HT_IOT_ACT_NULL_DATA_POWER_SAVING)
        if(nl){
 
                        if(ieee->pHTInfo->IOTAction & HT_IOT_ACT_NULL_DATA_POWER_SAVING)
@@ -1929,7 +1929,7 @@ void ieee80211_ps_tx_ack(struct ieee80211_device *ieee, short success)
                /* Null frame with PS bit set */
                if(success){
                        ieee->sta_sleep = 1;
                /* Null frame with PS bit set */
                if(success){
                        ieee->sta_sleep = 1;
-                       ieee->enter_sleep_state(ieee->dev,ieee->ps_th,ieee->ps_tl);
+                       ieee->enter_sleep_state(ieee, ieee->ps_th, ieee->ps_tl);
                }
        } else {/* 21112005 - tx again null without PS bit if lost */
 
                }
        } else {/* 21112005 - tx again null without PS bit if lost */
 
@@ -2028,7 +2028,7 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
                                                        memcpy(ieee->pHTInfo->PeerHTInfoBuf, network->bssht.bdHTInfoBuf, network->bssht.bdHTInfoLen);
                                                }
                                                if (ieee->handle_assoc_response != NULL)
                                                        memcpy(ieee->pHTInfo->PeerHTInfoBuf, network->bssht.bdHTInfoBuf, network->bssht.bdHTInfoLen);
                                                }
                                                if (ieee->handle_assoc_response != NULL)
-                                                       ieee->handle_assoc_response(ieee->dev, (struct ieee80211_assoc_response_frame*)header, network);
+                                                       ieee->handle_assoc_response(ieee, (struct ieee80211_assoc_response_frame*)header, network);
                                        }
                                        ieee80211_associate_complete(ieee);
                                } else {
                                        }
                                        ieee80211_associate_complete(ieee);
                                } else {
@@ -2072,7 +2072,7 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
                                                                ieee->softmac_stats.rx_auth_rs_ok++;
                                                                if(!(ieee->pHTInfo->IOTAction&HT_IOT_ACT_PURE_N_MODE))
                                                                {
                                                                ieee->softmac_stats.rx_auth_rs_ok++;
                                                                if(!(ieee->pHTInfo->IOTAction&HT_IOT_ACT_PURE_N_MODE))
                                                                {
-                                                                       if (!ieee->GetNmodeSupportBySecCfg(ieee->dev))
+                                                                       if (!ieee->GetNmodeSupportBySecCfg(ieee))
                                                                        {
                                                                                // WEP or TKIP encryption
                                                                                if(IsHTHalfNmodeAPs(ieee))
                                                                        {
                                                                                // WEP or TKIP encryption
                                                                                if(IsHTHalfNmodeAPs(ieee))
@@ -2091,12 +2091,12 @@ ieee80211_rx_frame_softmac(struct ieee80211_device *ieee, struct sk_buff *skb,
                                                                /* Dummy wirless mode setting to avoid encryption issue */
                                                                if(bSupportNmode) {
                                                                        //N mode setting
                                                                /* Dummy wirless mode setting to avoid encryption issue */
                                                                if(bSupportNmode) {
                                                                        //N mode setting
-                                                                       ieee->SetWirelessMode(ieee->dev, \
+                                                                       ieee->SetWirelessMode(ieee,
                                                                                        ieee->current_network.mode);
                                                                }else{
                                                                        //b/g mode setting
                                                                        /*TODO*/
                                                                                        ieee->current_network.mode);
                                                                }else{
                                                                        //b/g mode setting
                                                                        /*TODO*/
-                                                                       ieee->SetWirelessMode(ieee->dev, IEEE_G);
+                                                                       ieee->SetWirelessMode(ieee, IEEE_G);
                                                                }
 
                                                                if (ieee->current_network.mode == IEEE_N_24G && bHalfSupportNmode == true)
                                                                }
 
                                                                if (ieee->current_network.mode == IEEE_N_24G && bHalfSupportNmode == true)
@@ -2207,7 +2207,7 @@ void ieee80211_softmac_xmit(struct ieee80211_txb *txb, struct ieee80211_device *
 #else
                if ((skb_queue_len(&ieee->skb_waitQ[queue_index]) != 0) ||
 #endif
 #else
                if ((skb_queue_len(&ieee->skb_waitQ[queue_index]) != 0) ||
 #endif
-               (!ieee->check_nic_enough_desc(ieee->dev,queue_index))||\
+               (!ieee->check_nic_enough_desc(ieee, queue_index))||
                     (ieee->queue_stop)) {
                        /* insert the skb packet to the wait queue */
                        /* as for the completion function, it does not need
                     (ieee->queue_stop)) {
                        /* insert the skb packet to the wait queue */
                        /* as for the completion function, it does not need
@@ -2457,7 +2457,7 @@ void ieee80211_start_ibss_wq(struct work_struct *work)
 
                // By default, WMM function will be disabled in IBSS mode
                ieee->current_network.QoS_Enable = 0;
 
                // By default, WMM function will be disabled in IBSS mode
                ieee->current_network.QoS_Enable = 0;
-               ieee->SetWirelessMode(ieee->dev, IEEE_G);
+               ieee->SetWirelessMode(ieee, IEEE_G);
                ieee->current_network.atim_window = 0;
                ieee->current_network.capability = WLAN_CAPABILITY_IBSS;
                if(ieee->short_slot)
                ieee->current_network.atim_window = 0;
                ieee->current_network.capability = WLAN_CAPABILITY_IBSS;
                if(ieee->short_slot)
index fcafe19..d8a068e 100644 (file)
@@ -322,13 +322,13 @@ void ieee80211_wx_sync_scan_wq(struct work_struct *work)
 
        ieee->state = IEEE80211_LINKED_SCANNING;
        ieee->link_change(ieee);
 
        ieee->state = IEEE80211_LINKED_SCANNING;
        ieee->link_change(ieee);
-       ieee->InitialGainHandler(ieee->dev,IG_Backup);
+       ieee->InitialGainHandler(ieeeIG_Backup);
        if (ieee->pHTInfo->bCurrentHTSupport && ieee->pHTInfo->bEnableHT && ieee->pHTInfo->bCurBW40MHz) {
                b40M = 1;
                chan_offset = ieee->pHTInfo->CurSTAExtChnlOffset;
                bandwidth = (HT_CHANNEL_WIDTH)ieee->pHTInfo->bCurBW40MHz;
                printk("Scan in 40M, force to 20M first:%d, %d\n", chan_offset, bandwidth);
        if (ieee->pHTInfo->bCurrentHTSupport && ieee->pHTInfo->bEnableHT && ieee->pHTInfo->bCurBW40MHz) {
                b40M = 1;
                chan_offset = ieee->pHTInfo->CurSTAExtChnlOffset;
                bandwidth = (HT_CHANNEL_WIDTH)ieee->pHTInfo->bCurBW40MHz;
                printk("Scan in 40M, force to 20M first:%d, %d\n", chan_offset, bandwidth);
-               ieee->SetBWModeHandler(ieee->dev, HT_CHANNEL_WIDTH_20, HT_EXTCHNL_OFFSET_NO_EXT);
+               ieee->SetBWModeHandler(ieee, HT_CHANNEL_WIDTH_20, HT_EXTCHNL_OFFSET_NO_EXT);
                }
        ieee80211_start_scan_syncro(ieee);
        if (b40M) {
                }
        ieee80211_start_scan_syncro(ieee);
        if (b40M) {
@@ -339,12 +339,12 @@ void ieee80211_wx_sync_scan_wq(struct work_struct *work)
                        ieee->set_chan(ieee, chan - 2);
                else
                        ieee->set_chan(ieee, chan);
                        ieee->set_chan(ieee, chan - 2);
                else
                        ieee->set_chan(ieee, chan);
-               ieee->SetBWModeHandler(ieee->dev, bandwidth, chan_offset);
+               ieee->SetBWModeHandler(ieee, bandwidth, chan_offset);
        } else {
                ieee->set_chan(ieee, chan);
        }
 
        } else {
                ieee->set_chan(ieee, chan);
        }
 
-       ieee->InitialGainHandler(ieee->dev,IG_Restore);
+       ieee->InitialGainHandler(ieeeIG_Restore);
        ieee->state = IEEE80211_LINKED;
        ieee->link_change(ieee);
 
        ieee->state = IEEE80211_LINKED;
        ieee->link_change(ieee);
 
index ea715a2..995346d 100644 (file)
@@ -330,7 +330,7 @@ void ieee80211_tx_query_agg_cap(struct ieee80211_device* ieee, struct sk_buff* s
 
 
 #if 1
 
 
 #if 1
-       if(!ieee->GetNmodeSupportBySecCfg(ieee->dev))
+       if (!ieee->GetNmodeSupportBySecCfg(ieee))
        {
                return;
        }
        {
                return;
        }
index 2bfa48c..b690cbc 100644 (file)
@@ -353,7 +353,7 @@ int ieee80211_rx_ADDBAReq( struct ieee80211_device* ieee, struct sk_buff *skb)
        pBA->BaTimeoutValue = *pBaTimeoutVal;
        pBA->BaStartSeqCtrl = *pBaStartSeqCtrl;
        //for half N mode we only aggregate 1 frame
        pBA->BaTimeoutValue = *pBaTimeoutVal;
        pBA->BaStartSeqCtrl = *pBaStartSeqCtrl;
        //for half N mode we only aggregate 1 frame
-       if (ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev))
+       if (ieee->GetHalfNmodeSupportByAPsHandler(ieee))
        pBA->BaParamSet.field.BufferSize = 1;
        else
        pBA->BaParamSet.field.BufferSize = 32;
        pBA->BaParamSet.field.BufferSize = 1;
        else
        pBA->BaParamSet.field.BufferSize = 32;
index 5e0b0b5..a2a4fe9 100644 (file)
@@ -223,7 +223,7 @@ bool IsHTHalfNmode40Bandwidth(struct ieee80211_device* ieee)
                retValue = false;
        else if(pHTInfo->bRegBW40MHz == false)  // station supports 40 bw
                retValue = false;
                retValue = false;
        else if(pHTInfo->bRegBW40MHz == false)  // station supports 40 bw
                retValue = false;
-       else if(!ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev))      // station in half n mode
+       else if (!ieee->GetHalfNmodeSupportByAPsHandler(ieee))  // station in half n mode
                retValue = false;
        else if(((PHT_CAPABILITY_ELE)(pHTInfo->PeerHTCapBuf))->ChlWidth) // ap support 40 bw
                retValue = true;
                retValue = false;
        else if(((PHT_CAPABILITY_ELE)(pHTInfo->PeerHTCapBuf))->ChlWidth) // ap support 40 bw
                retValue = true;
@@ -240,7 +240,7 @@ bool IsHTHalfNmodeSGI(struct ieee80211_device* ieee, bool is40MHz)
 
        if(pHTInfo->bCurrentHTSupport == false )        // wireless is n mode
                retValue = false;
 
        if(pHTInfo->bCurrentHTSupport == false )        // wireless is n mode
                retValue = false;
-       else if(!ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev))      // station in half n mode
+       else if (!ieee->GetHalfNmodeSupportByAPsHandler(ieee))  // station in half n mode
                retValue = false;
        else if(is40MHz) // ap support 40 bw
        {
                retValue = false;
        else if(is40MHz) // ap support 40 bw
        {
@@ -652,7 +652,7 @@ void HTConstructCapabilityElement(struct ieee80211_device* ieee, u8* posHTCap, u
 
        //HT capability info
        pCapELE->AdvCoding              = 0; // This feature is not supported now!!
 
        //HT capability info
        pCapELE->AdvCoding              = 0; // This feature is not supported now!!
-       if(ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev))
+       if (ieee->GetHalfNmodeSupportByAPsHandler(ieee))
        {
                pCapELE->ChlWidth = 0;
        }
        {
                pCapELE->ChlWidth = 0;
        }
@@ -705,7 +705,7 @@ void HTConstructCapabilityElement(struct ieee80211_device* ieee, u8* posHTCap, u
 
        // 2008.06.12
        // For RTL819X, if pairwisekey = wep/tkip, ap is ralink, we support only MCS0~7.
 
        // 2008.06.12
        // For RTL819X, if pairwisekey = wep/tkip, ap is ralink, we support only MCS0~7.
-       if(ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev))
+       if (ieee->GetHalfNmodeSupportByAPsHandler(ieee))
        {
                int i;
                for(i = 1; i< 16; i++)
        {
                int i;
                for(i = 1; i< 16; i++)
@@ -993,7 +993,7 @@ u8 HTFilterMCSRate( struct ieee80211_device* ieee, u8* pSupportMCS, u8* pOperate
        HT_PickMCSRate(ieee, pOperateMCS);
 
        // For RTL819X, if pairwisekey = wep/tkip, we support only MCS0~7.
        HT_PickMCSRate(ieee, pOperateMCS);
 
        // For RTL819X, if pairwisekey = wep/tkip, we support only MCS0~7.
-       if(ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev))
+       if (ieee->GetHalfNmodeSupportByAPsHandler(ieee))
                pOperateMCS[1] = 0;
 
        //
                pOperateMCS[1] = 0;
 
        //
@@ -1679,7 +1679,7 @@ void HTSetConnectBwMode(struct ieee80211_device* ieee, HT_CHANNEL_WIDTH   Bandwidt
                return;
        }
        //if in half N mode, set to 20M bandwidth please 09.08.2008 WB.
                return;
        }
        //if in half N mode, set to 20M bandwidth please 09.08.2008 WB.
-       if(Bandwidth==HT_CHANNEL_WIDTH_20_40 && (!ieee->GetHalfNmodeSupportByAPsHandler(ieee->dev)))
+       if (Bandwidth==HT_CHANNEL_WIDTH_20_40 && (!ieee->GetHalfNmodeSupportByAPsHandler(ieee)))
         {
                        // Handle Illegal extention channel offset!!
                if(ieee->current_network.channel<2 && Offset==HT_EXTCHNL_OFFSET_LOWER)
         {
                        // Handle Illegal extention channel offset!!
                if(ieee->current_network.channel<2 && Offset==HT_EXTCHNL_OFFSET_LOWER)
@@ -1722,10 +1722,10 @@ void HTSetConnectBwModeCallback(struct ieee80211_device* ieee)
                else
                        ieee->set_chan(ieee, ieee->current_network.channel);
 
                else
                        ieee->set_chan(ieee, ieee->current_network.channel);
 
-               ieee->SetBWModeHandler(ieee->dev, HT_CHANNEL_WIDTH_20_40, pHTInfo->CurSTAExtChnlOffset);
+               ieee->SetBWModeHandler(ieee, HT_CHANNEL_WIDTH_20_40, pHTInfo->CurSTAExtChnlOffset);
        } else {
                ieee->set_chan(ieee, ieee->current_network.channel);
        } else {
                ieee->set_chan(ieee, ieee->current_network.channel);
-               ieee->SetBWModeHandler(ieee->dev, HT_CHANNEL_WIDTH_20, HT_EXTCHNL_OFFSET_NO_EXT);
+               ieee->SetBWModeHandler(ieee, HT_CHANNEL_WIDTH_20, HT_EXTCHNL_OFFSET_NO_EXT);
        }
 
        pHTInfo->bSwBwInProgress = false;
        }
 
        pHTInfo->bSwBwInProgress = false;
index 661c904..d1cb528 100644 (file)
@@ -583,9 +583,9 @@ static void rtl8192_proc_init_one(struct r8192_priv *priv)
        }
 }
 
        }
 }
 
-static short check_nic_enough_desc(struct net_device *dev, int prio)
+static short check_nic_enough_desc(struct ieee80211_device *ieee, int prio)
 {
 {
-    struct r8192_priv *priv = ieee80211_priv(dev);
+    struct r8192_priv *priv = ieee80211_priv(ieee->dev);
     struct rtl8192_tx_ring *ring = &priv->tx_ring[prio];
 
     /* for now we reserve two free descriptor as a safety boundary
     struct rtl8192_tx_ring *ring = &priv->tx_ring[prio];
 
     /* for now we reserve two free descriptor as a safety boundary
@@ -1597,11 +1597,11 @@ static int rtl8192_qos_handle_probe_response(struct r8192_priv *priv,
 }
 
 /* handle manage frame frame beacon and probe response */
 }
 
 /* handle manage frame frame beacon and probe response */
-static int rtl8192_handle_beacon(struct net_device * dev,
+static int rtl8192_handle_beacon(struct ieee80211_device *ieee,
                               struct ieee80211_beacon * beacon,
                               struct ieee80211_network * network)
 {
                               struct ieee80211_beacon * beacon,
                               struct ieee80211_network * network)
 {
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
 
        rtl8192_qos_handle_probe_response(priv,1,network);
 
 
        rtl8192_qos_handle_probe_response(priv,1,network);
 
@@ -1663,11 +1663,11 @@ static int rtl8192_qos_association_resp(struct r8192_priv *priv,
 }
 
 
 }
 
 
-static int rtl8192_handle_assoc_response(struct net_device *dev,
+static int rtl8192_handle_assoc_response(struct ieee80211_device *ieee,
                                      struct ieee80211_assoc_response_frame *resp,
                                      struct ieee80211_network *network)
 {
                                      struct ieee80211_assoc_response_frame *resp,
                                      struct ieee80211_network *network)
 {
-        struct r8192_priv *priv = ieee80211_priv(dev);
+        struct r8192_priv *priv = ieee80211_priv(ieee->dev);
         rtl8192_qos_association_resp(priv, network);
         return 0;
 }
         rtl8192_qos_association_resp(priv, network);
         return 0;
 }
@@ -1719,11 +1719,8 @@ static void rtl8192_update_ratr_table(struct r8192_priv* priv)
        write_nic_byte(priv, UFWP, 1);
 }
 
        write_nic_byte(priv, UFWP, 1);
 }
 
-static bool GetNmodeSupportBySecCfg8190Pci(struct net_device*dev)
+static bool GetNmodeSupportBySecCfg8190Pci(struct ieee80211_device *ieee)
 {
 {
-       struct r8192_priv *priv = ieee80211_priv(dev);
-       struct ieee80211_device *ieee = priv->ieee80211;
-
        return !(ieee->rtllib_ap_sec_type &&
                 (ieee->rtllib_ap_sec_type(ieee)&(SEC_ALG_WEP|SEC_ALG_TKIP)));
 }
        return !(ieee->rtllib_ap_sec_type &&
                 (ieee->rtllib_ap_sec_type(ieee)&(SEC_ALG_WEP|SEC_ALG_TKIP)));
 }
@@ -1745,9 +1742,9 @@ static u8 rtl8192_getSupportedWireleeMode(void)
        return (WIRELESS_MODE_N_24G|WIRELESS_MODE_G|WIRELESS_MODE_B);
 }
 
        return (WIRELESS_MODE_N_24G|WIRELESS_MODE_G|WIRELESS_MODE_B);
 }
 
-static void rtl8192_SetWirelessMode(struct net_device* dev, u8 wireless_mode)
+static void rtl8192_SetWirelessMode(struct ieee80211_device *ieee, u8 wireless_mode)
 {
 {
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
        u8 bSupportMode = rtl8192_getSupportedWireleeMode();
 
        if ((wireless_mode == WIRELESS_MODE_AUTO) || ((wireless_mode&bSupportMode)==0))
        u8 bSupportMode = rtl8192_getSupportedWireleeMode();
 
        if ((wireless_mode == WIRELESS_MODE_AUTO) || ((wireless_mode&bSupportMode)==0))
@@ -1787,18 +1784,16 @@ static void rtl8192_SetWirelessMode(struct net_device* dev, u8 wireless_mode)
        rtl8192_refresh_supportrate(priv);
 }
 
        rtl8192_refresh_supportrate(priv);
 }
 
-static bool GetHalfNmodeSupportByAPs819xPci(struct net_device* dev)
+static bool GetHalfNmodeSupportByAPs819xPci(struct ieee80211_device* ieee)
 {
 {
-       struct r8192_priv* priv = ieee80211_priv(dev);
-       struct ieee80211_device* ieee = priv->ieee80211;
-
        return ieee->bHalfWirelessN24GMode;
 }
 
        return ieee->bHalfWirelessN24GMode;
 }
 
-static short rtl8192_is_tx_queue_empty(struct net_device *dev)
+static short rtl8192_is_tx_queue_empty(struct ieee80211_device *ieee)
 {
        int i=0;
 {
        int i=0;
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
+
        for (i=0; i<=MGNT_QUEUE; i++)
        {
                if ((i== TXCMD_QUEUE) || (i == HCCA_QUEUE) )
        for (i=0; i<=MGNT_QUEUE; i++)
        {
                if ((i== TXCMD_QUEUE) || (i == HCCA_QUEUE) )
@@ -1816,9 +1811,9 @@ static void rtl8192_hw_sleep_down(struct r8192_priv *priv)
        MgntActSet_RF_State(priv, eRfSleep, RF_CHANGE_BY_PS);
 }
 
        MgntActSet_RF_State(priv, eRfSleep, RF_CHANGE_BY_PS);
 }
 
-static void rtl8192_hw_wakeup(struct net_device* dev)
+static void rtl8192_hw_wakeup(struct ieee80211_device *ieee)
 {
 {
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
        MgntActSet_RF_State(priv, eRfOn, RF_CHANGE_BY_PS);
 }
 
        MgntActSet_RF_State(priv, eRfOn, RF_CHANGE_BY_PS);
 }
 
@@ -1826,16 +1821,15 @@ static void rtl8192_hw_wakeup_wq (struct work_struct *work)
 {
        struct delayed_work *dwork = container_of(work,struct delayed_work,work);
        struct ieee80211_device *ieee = container_of(dwork,struct ieee80211_device,hw_wakeup_wq);
 {
        struct delayed_work *dwork = container_of(work,struct delayed_work,work);
        struct ieee80211_device *ieee = container_of(dwork,struct ieee80211_device,hw_wakeup_wq);
-       struct net_device *dev = ieee->dev;
-       rtl8192_hw_wakeup(dev);
 
 
+       rtl8192_hw_wakeup(ieee);
 }
 
 #define MIN_SLEEP_TIME 50
 #define MAX_SLEEP_TIME 10000
 }
 
 #define MIN_SLEEP_TIME 50
 #define MAX_SLEEP_TIME 10000
-static void rtl8192_hw_to_sleep(struct net_device *dev, u32 th, u32 tl)
+static void rtl8192_hw_to_sleep(struct ieee80211_device *ieee, u32 th, u32 tl)
 {
 {
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
        u32 tmp;
        u32 rb = jiffies;
 
        u32 tmp;
        u32 rb = jiffies;
 
@@ -2658,7 +2652,7 @@ static RT_STATUS rtl8192_adapter_start(struct r8192_priv *priv)
        write_nic_byte(priv, ACK_TIMEOUT, 0x30);
 
        if(priv->ResetProgress == RESET_TYPE_NORESET)
        write_nic_byte(priv, ACK_TIMEOUT, 0x30);
 
        if(priv->ResetProgress == RESET_TYPE_NORESET)
-       rtl8192_SetWirelessMode(dev, priv->ieee80211->mode);
+       rtl8192_SetWirelessMode(priv->ieee80211, priv->ieee80211->mode);
        //-----------------------------------------------------------------------------
        // Set up security related. 070106, by rcnjko:
        // 1. Clear all H/W keys.
        //-----------------------------------------------------------------------------
        // Set up security related. 070106, by rcnjko:
        // 1. Clear all H/W keys.
@@ -3055,7 +3049,7 @@ bool MgntActSet_802_11_PowerSaveMode(struct r8192_priv *priv, u8 rtPsMode)
        if(priv->ieee80211->sta_sleep != 0 && rtPsMode == IEEE80211_PS_DISABLED)
        {
                // Notify the AP we awke.
        if(priv->ieee80211->sta_sleep != 0 && rtPsMode == IEEE80211_PS_DISABLED)
        {
                // Notify the AP we awke.
-               rtl8192_hw_wakeup(priv->ieee80211->dev);
+               rtl8192_hw_wakeup(priv->ieee80211);
                priv->ieee80211->sta_sleep = 0;
 
                 spin_lock(&priv->ieee80211->mgmt_tx_lock);
                priv->ieee80211->sta_sleep = 0;
 
                 spin_lock(&priv->ieee80211->mgmt_tx_lock);
@@ -4294,13 +4288,12 @@ static void TranslateRxSignalStuff819xpci(struct r8192_priv *priv,
 static void rtl8192_tx_resume(struct r8192_priv *priv)
 {
        struct ieee80211_device *ieee = priv->ieee80211;
 static void rtl8192_tx_resume(struct r8192_priv *priv)
 {
        struct ieee80211_device *ieee = priv->ieee80211;
-       struct net_device *dev = priv->ieee80211->dev;
        struct sk_buff *skb;
        int i;
 
        for (i = BK_QUEUE; i < TXCMD_QUEUE; i++) {
                while ((!skb_queue_empty(&ieee->skb_waitQ[i])) &&
        struct sk_buff *skb;
        int i;
 
        for (i = BK_QUEUE; i < TXCMD_QUEUE; i++) {
                while ((!skb_queue_empty(&ieee->skb_waitQ[i])) &&
-                      (priv->ieee80211->check_nic_enough_desc(dev, i) > 0)) {
+                      (priv->ieee80211->check_nic_enough_desc(ieee, i) > 0)) {
                        /* 1. dequeue the packet from the wait queue */
                        skb = skb_dequeue(&ieee->skb_waitQ[i]);
                        /* 2. tx the packet directly */
                        /* 1. dequeue the packet from the wait queue */
                        skb = skb_dequeue(&ieee->skb_waitQ[i]);
                        /* 2. tx the packet directly */
@@ -4313,7 +4306,6 @@ static void rtl8192_irq_tx_tasklet(unsigned long arg)
 {
        struct r8192_priv *priv = (struct r8192_priv*) arg;
        struct rtl8192_tx_ring *mgnt_ring = &priv->tx_ring[MGNT_QUEUE];
 {
        struct r8192_priv *priv = (struct r8192_priv*) arg;
        struct rtl8192_tx_ring *mgnt_ring = &priv->tx_ring[MGNT_QUEUE];
-       struct net_device *dev = priv->ieee80211->dev;
        unsigned long flags;
 
        /* check if we need to report that the management queue is drained */
        unsigned long flags;
 
        /* check if we need to report that the management queue is drained */
@@ -4321,7 +4313,7 @@ static void rtl8192_irq_tx_tasklet(unsigned long arg)
 
        if (!skb_queue_len(&mgnt_ring->queue) &&
            priv->ieee80211->ack_tx_to_ieee &&
 
        if (!skb_queue_len(&mgnt_ring->queue) &&
            priv->ieee80211->ack_tx_to_ieee &&
-           rtl8192_is_tx_queue_empty(dev)) {
+           rtl8192_is_tx_queue_empty(priv->ieee80211)) {
                priv->ieee80211->ack_tx_to_ieee = 0;
                ieee80211_ps_tx_ack(priv->ieee80211, 1);
        }
                priv->ieee80211->ack_tx_to_ieee = 0;
                ieee80211_ps_tx_ack(priv->ieee80211, 1);
        }
index 974555b..68ac73e 100644 (file)
@@ -313,7 +313,7 @@ static void dm_check_rate_adaptive(struct r8192_priv *priv)
                }
 
                // For RTL819X, if pairwisekey = wep/tkip, we support only MCS0~7.
                }
 
                // For RTL819X, if pairwisekey = wep/tkip, we support only MCS0~7.
-               if(priv->ieee80211->GetHalfNmodeSupportByAPsHandler(priv->ieee80211->dev))
+               if(priv->ieee80211->GetHalfNmodeSupportByAPsHandler(priv->ieee80211))
                        targetRATR &=  0xf00fffff;
 
                //
                        targetRATR &=  0xf00fffff;
 
                //
index 338fb04..dfa4e11 100644 (file)
@@ -2125,9 +2125,9 @@ void rtl8192_SetBWModeWorkItem(struct r8192_priv *priv)
  *    Note:  I doubt whether SetBWModeInProgress flag is necessary as we can
  *          test whether current work in the queue or not.//do I?
  * ***************************************************************************/
  *    Note:  I doubt whether SetBWModeInProgress flag is necessary as we can
  *          test whether current work in the queue or not.//do I?
  * ***************************************************************************/
-void rtl8192_SetBWMode(struct net_device *dev, HT_CHANNEL_WIDTH        Bandwidth, HT_EXTCHNL_OFFSET Offset)
+void rtl8192_SetBWMode(struct ieee80211_device *ieee, HT_CHANNEL_WIDTH Bandwidth, HT_EXTCHNL_OFFSET Offset)
 {
 {
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
 
 
        if(priv->SetBWModeInProgress)
 
 
        if(priv->SetBWModeInProgress)
@@ -2152,11 +2152,11 @@ void rtl8192_SetBWMode(struct net_device *dev, HT_CHANNEL_WIDTH Bandwidth, HT_EX
 }
 
 
 }
 
 
-void InitialGain819xPci(struct net_device *dev, u8 Operation)
+void InitialGain819xPci(struct ieee80211_device *ieee, u8 Operation)
 {
 #define SCAN_RX_INITIAL_GAIN   0x17
 #define POWER_DETECTION_TH     0x08
 {
 #define SCAN_RX_INITIAL_GAIN   0x17
 #define POWER_DETECTION_TH     0x08
-       struct r8192_priv *priv = ieee80211_priv(dev);
+       struct r8192_priv *priv = ieee80211_priv(ieee->dev);
        u32                                     BitMask;
        u8                                      initial_gain;
 
        u32                                     BitMask;
        u8                                      initial_gain;
 
index faab39b..496e76f 100644 (file)
@@ -119,13 +119,13 @@ u8 rtl8192_phy_ConfigRFWithHeaderFile(struct r8192_priv *priv,
 
 u8 rtl8192_phy_SwChnl(struct ieee80211_device *ieee80211, u8 channel);
 
 
 u8 rtl8192_phy_SwChnl(struct ieee80211_device *ieee80211, u8 channel);
 
-void rtl8192_SetBWMode(struct net_device *dev,
+void rtl8192_SetBWMode(struct ieee80211_device *ieee80211,
                HT_CHANNEL_WIDTH Bandwidth, HT_EXTCHNL_OFFSET Offset);
 
 void rtl8192_SwChnl_WorkItem(struct r8192_priv *priv);
 
 void rtl8192_SetBWModeWorkItem(struct r8192_priv *priv);
 
                HT_CHANNEL_WIDTH Bandwidth, HT_EXTCHNL_OFFSET Offset);
 
 void rtl8192_SwChnl_WorkItem(struct r8192_priv *priv);
 
 void rtl8192_SetBWModeWorkItem(struct r8192_priv *priv);
 
-void InitialGain819xPci(struct net_device *dev, u8 Operation);
+void InitialGain819xPci(struct ieee80211_device *ieee, u8 Operation);
 
 #endif /* _R819XU_PHY_H */
 
 #endif /* _R819XU_PHY_H */