mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
wifi: mt76: mt7996: fix the capability of reception of EHT MU PPDU
This commit includes two changes. First, enable "EHT MU PPDU With 4x
EHT-LTF And 0.8us GI" in EHT Phy capabilities element since hardware
can support. Second, fix the value of "Maximum number of supported
EHT LTFs" in the same element, where the previous setting of 3 in
Bit 3-4 was incorrect.
Fixes: 348533eb968d ("wifi: mt76: mt7996: add EHT capability init")
Signed-off-by: Howard Hsu <[email protected]>
Signed-off-by: Shayne Chen <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
committed by
Felix Fietkau
parent
731070da2c
commit
99d8ed164a
+2
-3
@@ -1353,21 +1353,20 @@ mt7996_init_eht_caps(struct mt7996_phy *phy, enum nl80211_band band,
|
|||||||
IEEE80211_EHT_PHY_CAP3_CODEBOOK_7_5_MU_FDBK;
|
IEEE80211_EHT_PHY_CAP3_CODEBOOK_7_5_MU_FDBK;
|
||||||
|
|
||||||
eht_cap_elem->phy_cap_info[4] =
|
eht_cap_elem->phy_cap_info[4] =
|
||||||
|
IEEE80211_EHT_PHY_CAP4_EHT_MU_PPDU_4_EHT_LTF_08_GI |
|
||||||
u8_encode_bits(min_t(int, sts - 1, 2),
|
u8_encode_bits(min_t(int, sts - 1, 2),
|
||||||
IEEE80211_EHT_PHY_CAP4_MAX_NC_MASK);
|
IEEE80211_EHT_PHY_CAP4_MAX_NC_MASK);
|
||||||
|
|
||||||
eht_cap_elem->phy_cap_info[5] =
|
eht_cap_elem->phy_cap_info[5] =
|
||||||
u8_encode_bits(IEEE80211_EHT_PHY_CAP5_COMMON_NOMINAL_PKT_PAD_16US,
|
u8_encode_bits(IEEE80211_EHT_PHY_CAP5_COMMON_NOMINAL_PKT_PAD_16US,
|
||||||
IEEE80211_EHT_PHY_CAP5_COMMON_NOMINAL_PKT_PAD_MASK) |
|
IEEE80211_EHT_PHY_CAP5_COMMON_NOMINAL_PKT_PAD_MASK) |
|
||||||
u8_encode_bits(u8_get_bits(0x11, GENMASK(1, 0)),
|
u8_encode_bits(u8_get_bits(1, GENMASK(1, 0)),
|
||||||
IEEE80211_EHT_PHY_CAP5_MAX_NUM_SUPP_EHT_LTF_MASK);
|
IEEE80211_EHT_PHY_CAP5_MAX_NUM_SUPP_EHT_LTF_MASK);
|
||||||
|
|
||||||
val = width == NL80211_CHAN_WIDTH_320 ? 0xf :
|
val = width == NL80211_CHAN_WIDTH_320 ? 0xf :
|
||||||
width == NL80211_CHAN_WIDTH_160 ? 0x7 :
|
width == NL80211_CHAN_WIDTH_160 ? 0x7 :
|
||||||
width == NL80211_CHAN_WIDTH_80 ? 0x3 : 0x1;
|
width == NL80211_CHAN_WIDTH_80 ? 0x3 : 0x1;
|
||||||
eht_cap_elem->phy_cap_info[6] =
|
eht_cap_elem->phy_cap_info[6] =
|
||||||
u8_encode_bits(u8_get_bits(0x11, GENMASK(4, 2)),
|
|
||||||
IEEE80211_EHT_PHY_CAP6_MAX_NUM_SUPP_EHT_LTF_MASK) |
|
|
||||||
u8_encode_bits(val, IEEE80211_EHT_PHY_CAP6_MCS15_SUPP_MASK);
|
u8_encode_bits(val, IEEE80211_EHT_PHY_CAP6_MCS15_SUPP_MASK);
|
||||||
|
|
||||||
val = u8_encode_bits(nss, IEEE80211_EHT_MCS_NSS_RX) |
|
val = u8_encode_bits(nss, IEEE80211_EHT_MCS_NSS_RX) |
|
||||||
|
|||||||
Reference in New Issue
Block a user