You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
4.4 KiB
109 lines
4.4 KiB
From 60ebb3bcd2e41735bd3ac849e7cee373022d3804 Mon Sep 17 00:00:00 2001
|
|
From: Eugene Syromiatnikov <esyr@redhat.com>
|
|
Date: Thu, 5 Sep 2019 18:45:50 +0200
|
|
Subject: [PATCH 16/43] Revert "iwlwifi: mvm: show more HE radiotap data for TB
|
|
PPDUs"
|
|
|
|
This reverts commit 69f3ca8ed33dd39937ba0ea0c6643d78663db46a.
|
|
---
|
|
drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c | 67 ++++++++++++++-------------
|
|
1 file changed, 36 insertions(+), 31 deletions(-)
|
|
|
|
Index: src/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c
|
|
===================================================================
|
|
--- src.orig/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c 2019-09-06 01:25:43.040323389 +0200
|
|
+++ src/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c 2019-09-06 01:25:43.205321284 +0200
|
|
@@ -1045,41 +1045,16 @@
|
|
{
|
|
u32 he_type = rate_n_flags & RATE_MCS_HE_TYPE_MSK;
|
|
bool sigb_data;
|
|
- u16 d1known = IEEE80211_RADIOTAP_HE_DATA1_LDPC_XSYMSEG_KNOWN |
|
|
- IEEE80211_RADIOTAP_HE_DATA1_UL_DL_KNOWN |
|
|
- IEEE80211_RADIOTAP_HE_DATA1_SPTL_REUSE_KNOWN |
|
|
- IEEE80211_RADIOTAP_HE_DATA1_DOPPLER_KNOWN |
|
|
- IEEE80211_RADIOTAP_HE_DATA1_BSS_COLOR_KNOWN;
|
|
- u16 d2known = IEEE80211_RADIOTAP_HE_DATA2_PRE_FEC_PAD_KNOWN |
|
|
- IEEE80211_RADIOTAP_HE_DATA2_PE_DISAMBIG_KNOWN |
|
|
- IEEE80211_RADIOTAP_HE_DATA2_TXOP_KNOWN;
|
|
|
|
- he->data1 |= cpu_to_le16(d1known);
|
|
- he->data2 |= cpu_to_le16(d2known);
|
|
+ he->data1 |= cpu_to_le16(IEEE80211_RADIOTAP_HE_DATA1_BSS_COLOR_KNOWN);
|
|
he->data3 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_BSS_COLOR_MASK,
|
|
he_phy_data),
|
|
IEEE80211_RADIOTAP_HE_DATA3_BSS_COLOR);
|
|
- he->data3 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_UPLINK,
|
|
- he_phy_data),
|
|
- IEEE80211_RADIOTAP_HE_DATA3_UL_DL);
|
|
- he->data3 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_LDPC_EXT_SYM,
|
|
- he_phy_data),
|
|
- IEEE80211_RADIOTAP_HE_DATA3_LDPC_XSYMSEG);
|
|
- he->data4 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_SPATIAL_REUSE_MASK,
|
|
- he_phy_data),
|
|
- IEEE80211_RADIOTAP_HE_DATA4_SU_MU_SPTL_REUSE);
|
|
- he->data5 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_PRE_FEC_PAD_MASK,
|
|
- he_phy_data),
|
|
- IEEE80211_RADIOTAP_HE_DATA5_PRE_FEC_PAD);
|
|
- he->data5 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_PE_DISAMBIG,
|
|
- he_phy_data),
|
|
- IEEE80211_RADIOTAP_HE_DATA5_PE_DISAMBIG);
|
|
+
|
|
+ he->data2 |= cpu_to_le16(IEEE80211_RADIOTAP_HE_DATA2_TXOP_KNOWN);
|
|
he->data6 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_TXOP_DUR_MASK,
|
|
he_phy_data),
|
|
IEEE80211_RADIOTAP_HE_DATA6_TXOP);
|
|
- he->data6 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_DOPPLER,
|
|
- he_phy_data),
|
|
- IEEE80211_RADIOTAP_HE_DATA6_DOPPLER);
|
|
|
|
switch (he_type) {
|
|
case RATE_MCS_HE_TYPE_MU:
|
|
@@ -1109,8 +1084,7 @@
|
|
IWL_RX_HE_PHY_INFO_TYPE_MU_EXT_INFO;
|
|
if (sigb_data)
|
|
iwl_mvm_decode_he_sigb(mvm, desc, rate_n_flags, he_mu);
|
|
- /* fall through */
|
|
- case RATE_MCS_HE_TYPE_TRIG:
|
|
+
|
|
he->data2 |=
|
|
cpu_to_le16(IEEE80211_RADIOTAP_HE_DATA2_NUM_LTF_SYMS_KNOWN);
|
|
he->data5 |=
|
|
@@ -1129,6 +1103,37 @@
|
|
break;
|
|
}
|
|
|
|
+ if (he_type != RATE_MCS_HE_TYPE_TRIG) {
|
|
+ u16 d1known = IEEE80211_RADIOTAP_HE_DATA1_LDPC_XSYMSEG_KNOWN |
|
|
+ IEEE80211_RADIOTAP_HE_DATA1_UL_DL_KNOWN |
|
|
+ IEEE80211_RADIOTAP_HE_DATA1_SPTL_REUSE_KNOWN |
|
|
+ IEEE80211_RADIOTAP_HE_DATA1_DOPPLER_KNOWN;
|
|
+ u16 d2known = IEEE80211_RADIOTAP_HE_DATA2_PRE_FEC_PAD_KNOWN |
|
|
+ IEEE80211_RADIOTAP_HE_DATA2_PE_DISAMBIG_KNOWN;
|
|
+
|
|
+ he->data1 |= cpu_to_le16(d1known);
|
|
+ he->data2 |= cpu_to_le16(d2known);
|
|
+
|
|
+ he->data3 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_UPLINK,
|
|
+ he_phy_data),
|
|
+ IEEE80211_RADIOTAP_HE_DATA3_UL_DL);
|
|
+ he->data3 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_LDPC_EXT_SYM,
|
|
+ he_phy_data),
|
|
+ IEEE80211_RADIOTAP_HE_DATA3_LDPC_XSYMSEG);
|
|
+ he->data4 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_SPATIAL_REUSE_MASK,
|
|
+ he_phy_data),
|
|
+ IEEE80211_RADIOTAP_HE_DATA4_SU_MU_SPTL_REUSE);
|
|
+ he->data5 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_PRE_FEC_PAD_MASK,
|
|
+ he_phy_data),
|
|
+ IEEE80211_RADIOTAP_HE_DATA5_PRE_FEC_PAD);
|
|
+ he->data5 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_PE_DISAMBIG,
|
|
+ he_phy_data),
|
|
+ IEEE80211_RADIOTAP_HE_DATA5_PE_DISAMBIG);
|
|
+ he->data6 |= le16_encode_bits(FIELD_GET(IWL_RX_HE_PHY_DOPPLER,
|
|
+ he_phy_data),
|
|
+ IEEE80211_RADIOTAP_HE_DATA6_DOPPLER);
|
|
+ }
|
|
+
|
|
switch (FIELD_GET(IWL_RX_HE_PHY_INFO_TYPE_MASK, he_phy_data)) {
|
|
case IWL_RX_HE_PHY_INFO_TYPE_MU:
|
|
case IWL_RX_HE_PHY_INFO_TYPE_MU_EXT_INFO:
|