]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/mac80211/main.c
Merge branches 'topic/fix/hda' and 'topic/fix/sound-core' into for-linus
[karo-tx-linux.git] / net / mac80211 / main.c
index 7d2d5a041e26a45c1736e89685d857c19981133e..ae62ad40ad63715bed2372be5344ce3c4e4889bc 100644 (file)
@@ -542,6 +542,7 @@ void ieee80211_tx_status(struct ieee80211_hw *hw, struct sk_buff *skb)
        struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
        u16 frag, type;
        __le16 fc;
+       struct ieee80211_supported_band *sband;
        struct ieee80211_tx_status_rtap_hdr *rthdr;
        struct ieee80211_sub_if_data *sdata;
        struct net_device *prev_dev = NULL;
@@ -588,7 +589,8 @@ void ieee80211_tx_status(struct ieee80211_hw *hw, struct sk_buff *skb)
                        sta->tx_retry_count += info->status.retry_count;
                }
 
-               rate_control_tx_status(local->mdev, skb);
+               sband = local->hw.wiphy->bands[info->band];
+               rate_control_tx_status(local, sband, sta, skb);
        }
 
        rcu_read_unlock();
@@ -1013,6 +1015,10 @@ static int __init ieee80211_init(void)
        BUILD_BUG_ON(offsetof(struct ieee80211_tx_info, driver_data) +
                     IEEE80211_TX_INFO_DRIVER_DATA_SIZE > sizeof(skb->cb));
 
+       ret = rc80211_minstrel_init();
+       if (ret)
+               return ret;
+
        ret = rc80211_pid_init();
        if (ret)
                return ret;
@@ -1025,6 +1031,7 @@ static int __init ieee80211_init(void)
 static void __exit ieee80211_exit(void)
 {
        rc80211_pid_exit();
+       rc80211_minstrel_exit();
 
        /*
         * For key todo, it'll be empty by now but the work