mt76: mt7915: fix queue/tid mapping for airtime reporting
authorFelix Fietkau <nbd@nbd.name>
Tue, 1 Sep 2020 21:41:30 +0000 (23:41 +0200)
committerFelix Fietkau <nbd@nbd.name>
Thu, 24 Sep 2020 16:10:18 +0000 (18:10 +0200)
Unlike 7615, 7915 uses the same AC index for rx and tx, which matches the
LMAC queue mapping

Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7915/mac.c

index 54088d8..defd0a9 100644 (file)
@@ -105,12 +105,6 @@ static void mt7915_mac_sta_poll(struct mt7915_dev *dev)
                [IEEE80211_AC_VI] = 4,
                [IEEE80211_AC_VO] = 6
        };
-       static const u8 hw_queue_map[] = {
-               [IEEE80211_AC_BK] = 0,
-               [IEEE80211_AC_BE] = 1,
-               [IEEE80211_AC_VI] = 2,
-               [IEEE80211_AC_VO] = 3,
-       };
        struct ieee80211_sta *sta;
        struct mt7915_sta *msta;
        u32 tx_time[IEEE80211_NUM_ACS], rx_time[IEEE80211_NUM_ACS];
@@ -169,8 +163,9 @@ static void mt7915_mac_sta_poll(struct mt7915_dev *dev)
                sta = container_of((void *)msta, struct ieee80211_sta,
                                   drv_priv);
                for (i = 0; i < IEEE80211_NUM_ACS; i++) {
-                       u32 tx_cur = tx_time[i];
-                       u32 rx_cur = rx_time[hw_queue_map[i]];
+                       u8 q = mt7915_lmac_mapping(dev, i);
+                       u32 tx_cur = tx_time[q];
+                       u32 rx_cur = rx_time[q];
                        u8 tid = ac_to_tid[i];
 
                        if (!tx_cur && !rx_cur)