mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 10:33:41 +02:00
wifi: iwlwifi: mld: fix HE SIG-B MCS/DCM/compression
These values should be taken from SIG-A, indicating how SIG-B is encoded. The values taken from SIG-B (the corresponding register) indicate how the data portion (for that user) is encoded. For the SIG-B compression value the correct mask was applied to the wrong value. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Reviewed-by: Benjamin Berg <benjamin.berg@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20251110150012.4d625e05dece.If295eb9382fc681d63b0853261d884cd1a833ba5@changeid
This commit is contained in:
parent
3b6e7afaf7
commit
772fe513e1
|
|
@ -1090,7 +1090,9 @@ struct iwl_vht_sigs {
|
|||
struct iwl_he_sigs {
|
||||
#define OFDM_RX_FRAME_HE_BEAM_CHANGE 0x00000001
|
||||
#define OFDM_RX_FRAME_HE_UL_FLAG 0x00000002
|
||||
/* SU/ER-SU: MCS, MU: SIG-B MCS */
|
||||
#define OFDM_RX_FRAME_HE_MCS 0x0000003c
|
||||
/* SU/ER-SU: DCM, MU: SIG-B DCM */
|
||||
#define OFDM_RX_FRAME_HE_DCM 0x00000040
|
||||
#define OFDM_RX_FRAME_HE_BSS_COLOR 0x00001f80
|
||||
#define OFDM_RX_FRAME_HE_SPATIAL_REUSE 0x0001e000
|
||||
|
|
|
|||
|
|
@ -396,11 +396,11 @@ iwl_mld_decode_he_mu(struct iwl_mld_rx_phy_data *phy_data,
|
|||
{
|
||||
u32 rate_n_flags = phy_data->rate_n_flags;
|
||||
|
||||
he_mu->flags1 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.b,
|
||||
OFDM_RX_FRAME_HE_SIGB_DCM,
|
||||
he_mu->flags1 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.a1,
|
||||
OFDM_RX_FRAME_HE_DCM,
|
||||
IEEE80211_RADIOTAP_HE_MU_FLAGS1_SIG_B_DCM);
|
||||
he_mu->flags1 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.b,
|
||||
OFDM_RX_FRAME_HE_SIGB_MCS,
|
||||
he_mu->flags1 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.a1,
|
||||
OFDM_RX_FRAME_HE_MCS,
|
||||
IEEE80211_RADIOTAP_HE_MU_FLAGS1_SIG_B_MCS);
|
||||
he_mu->flags2 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.a1,
|
||||
OFDM_RX_FRAME_HE_PRMBL_PUNC_TYPE,
|
||||
|
|
@ -408,7 +408,7 @@ iwl_mld_decode_he_mu(struct iwl_mld_rx_phy_data *phy_data,
|
|||
he_mu->flags2 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.a2,
|
||||
OFDM_RX_FRAME_HE_MU_NUM_OF_SIGB_SYM_OR_USER_NUM,
|
||||
IEEE80211_RADIOTAP_HE_MU_FLAGS2_SIG_B_SYMS_USERS);
|
||||
he_mu->flags2 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.b,
|
||||
he_mu->flags2 |= RTAP_ENC_HE(phy_data->ntfy->sigs.he.a2,
|
||||
OFDM_RX_FRAME_HE_MU_SIGB_COMP,
|
||||
IEEE80211_RADIOTAP_HE_MU_FLAGS2_SIG_B_COMP);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user