wifi: mt76: mt7915: also MT7981 is 3T3R but nss2 on 5 GHz band
authorStanleyYP Wang <StanleyYP.Wang@mediatek.com>
Mon, 6 Nov 2023 22:39:31 +0000 (22:39 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jan 2024 23:35:24 +0000 (15:35 -0800)
[ Upstream commit ff434cc129d6907e6dbc89dd0ebc59fd3646d4c2 ]

Just like MT7916 also MT7981 can handle 3T3R DBDC frontend and should
hence be included in the corresponding conditional expression in the
driver. Add it.

Fixes: 6bad146d162e ("wifi: mt76: mt7915: add support for MT7981")
Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/mediatek/mt76/mt7915/main.c

index d85105a..3196f56 100644 (file)
@@ -1047,8 +1047,9 @@ mt7915_set_antenna(struct ieee80211_hw *hw, u32 tx_ant, u32 rx_ant)
 
        phy->mt76->antenna_mask = tx_ant;
 
-       /* handle a variant of mt7916 which has 3T3R but nss2 on 5 GHz band */
-       if (is_mt7916(&dev->mt76) && band && hweight8(tx_ant) == max_nss)
+       /* handle a variant of mt7916/mt7981 which has 3T3R but nss2 on 5 GHz band */
+       if ((is_mt7916(&dev->mt76) || is_mt7981(&dev->mt76)) &&
+           band && hweight8(tx_ant) == max_nss)
                phy->mt76->chainmask = (dev->chainmask >> chainshift) << chainshift;
        else
                phy->mt76->chainmask = tx_ant << (chainshift * band);