mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter
authorLorenzo Bianconi <lorenzo@kernel.org>
Thu, 17 Mar 2022 17:02:22 +0000 (18:02 +0100)
committerFelix Fietkau <nbd@nbd.name>
Fri, 13 May 2022 07:39:34 +0000 (09:39 +0200)
mt7921 is currently using rxfilter defined in mt76_dev for rx filter
configuration. Fix mt7921_configure_filter implementation.

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7921/main.c
drivers/net/wireless/mediatek/mt76/mt7921/mt7921.h

index 775524f369117b6c0c0d4c93cd0503dd2ac2a333..1783866c3daf6dac57a5dd997208f68b9c0f9d06 100644 (file)
@@ -566,7 +566,6 @@ static void mt7921_configure_filter(struct ieee80211_hw *hw,
                                    u64 multicast)
 {
        struct mt7921_dev *dev = mt7921_hw_dev(hw);
-       struct mt7921_phy *phy = mt7921_hw_phy(hw);
        u32 ctl_flags = MT_WF_RFCR1_DROP_ACK |
                        MT_WF_RFCR1_DROP_BF_POLL |
                        MT_WF_RFCR1_DROP_BA |
@@ -576,23 +575,23 @@ static void mt7921_configure_filter(struct ieee80211_hw *hw,
 
 #define MT76_FILTER(_flag, _hw) do {                                   \
                flags |= *total_flags & FIF_##_flag;                    \
-               phy->rxfilter &= ~(_hw);                                \
-               phy->rxfilter |= !(flags & FIF_##_flag) * (_hw);        \
+               dev->mt76.rxfilter &= ~(_hw);                           \
+               dev->mt76.rxfilter |= !(flags & FIF_##_flag) * (_hw);   \
        } while (0)
 
        mt7921_mutex_acquire(dev);
 
-       phy->rxfilter &= ~(MT_WF_RFCR_DROP_OTHER_BSS |
-                          MT_WF_RFCR_DROP_OTHER_BEACON |
-                          MT_WF_RFCR_DROP_FRAME_REPORT |
-                          MT_WF_RFCR_DROP_PROBEREQ |
-                          MT_WF_RFCR_DROP_MCAST_FILTERED |
-                          MT_WF_RFCR_DROP_MCAST |
-                          MT_WF_RFCR_DROP_BCAST |
-                          MT_WF_RFCR_DROP_DUPLICATE |
-                          MT_WF_RFCR_DROP_A2_BSSID |
-                          MT_WF_RFCR_DROP_UNWANTED_CTL |
-                          MT_WF_RFCR_DROP_STBC_MULTI);
+       dev->mt76.rxfilter &= ~(MT_WF_RFCR_DROP_OTHER_BSS |
+                               MT_WF_RFCR_DROP_OTHER_BEACON |
+                               MT_WF_RFCR_DROP_FRAME_REPORT |
+                               MT_WF_RFCR_DROP_PROBEREQ |
+                               MT_WF_RFCR_DROP_MCAST_FILTERED |
+                               MT_WF_RFCR_DROP_MCAST |
+                               MT_WF_RFCR_DROP_BCAST |
+                               MT_WF_RFCR_DROP_DUPLICATE |
+                               MT_WF_RFCR_DROP_A2_BSSID |
+                               MT_WF_RFCR_DROP_UNWANTED_CTL |
+                               MT_WF_RFCR_DROP_STBC_MULTI);
 
        MT76_FILTER(OTHER_BSS, MT_WF_RFCR_DROP_OTHER_TIM |
                               MT_WF_RFCR_DROP_A3_MAC |
@@ -606,7 +605,7 @@ static void mt7921_configure_filter(struct ieee80211_hw *hw,
                             MT_WF_RFCR_DROP_NDPA);
 
        *total_flags = flags;
-       mt76_wr(dev, MT_WF_RFCR(0), phy->rxfilter);
+       mt76_wr(dev, MT_WF_RFCR(0), dev->mt76.rxfilter);
 
        if (*total_flags & FIF_CONTROL)
                mt76_clear(dev, MT_WF_RFCR1(0), ctl_flags);
index 459226c5bb11edc13c3ff65e457dc90f2113b07e..eae223a31000508dffe89c8c71ad6bdb9f2c38e3 100644 (file)
@@ -155,7 +155,6 @@ struct mt7921_phy {
 
        struct ieee80211_sband_iftype_data iftype[NUM_NL80211_BANDS][NUM_NL80211_IFTYPES];
 
-       u32 rxfilter;
        u64 omac_mask;
 
        u16 noise;