Blame SOURCES/0089-Revert-iwlwifi-mvm-implement-CSI-reporting.patch

deb259
From dbaa837f62011f9a7b57e38747a30153a0a1a163 Mon Sep 17 00:00:00 2001
deb259
From: Eugene Syromiatnikov <esyr@redhat.com>
deb259
Date: Fri, 6 Sep 2019 02:11:21 +0200
deb259
Subject: [PATCH 1/4] Revert "iwlwifi: mvm: implement CSI reporting"
deb259
deb259
This reverts commit 5213e8a8a28d2c4c143fec94e57c866a958ed52d.
deb259
---
deb259
 .../net/wireless/intel/iwlwifi/fw/api/datapath.h   | 55 ----------------------
deb259
 .../net/wireless/intel/iwlwifi/fw/api/location.h   | 20 --------
deb259
 drivers/net/wireless/intel/iwlwifi/fw/api/rx.h     |  2 -
deb259
 drivers/net/wireless/intel/iwlwifi/fw/file.h       |  7 +--
deb259
 drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c   |  1 -
deb259
 drivers/net/wireless/intel/iwlwifi/mvm/ops.c       |  1 -
deb259
 drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c      |  8 +---
deb259
 7 files changed, 2 insertions(+), 92 deletions(-)
deb259
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/fw/api/datapath.h
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/fw/api/datapath.h	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/fw/api/datapath.h	2019-09-06 15:31:57.823938961 +0200
deb259
@@ -105,12 +105,6 @@
deb259
 	HE_AIR_SNIFFER_CONFIG_CMD = 0x13,
deb259
 
deb259
 	/**
deb259
-	 * @CHEST_COLLECTOR_FILTER_CONFIG_CMD: Configure the CSI
deb259
-	 *	matrix collection, uses &struct iwl_channel_estimation_cfg
deb259
-	 */
deb259
-	CHEST_COLLECTOR_FILTER_CONFIG_CMD = 0x14,
deb259
-
deb259
-	/**
deb259
 	 * @RX_NO_DATA_NOTIF: &struct iwl_rx_no_data
deb259
 	 */
deb259
 	RX_NO_DATA_NOTIF = 0xF5,
deb259
@@ -162,53 +156,4 @@
deb259
 	__le32 user_position[4];
deb259
 } __packed; /* MU_GROUP_MNG_NTFY_API_S_VER_1 */
deb259
 
deb259
-enum iwl_channel_estimation_flags {
deb259
-	IWL_CHANNEL_ESTIMATION_ENABLE	= BIT(0),
deb259
-	IWL_CHANNEL_ESTIMATION_TIMER	= BIT(1),
deb259
-	IWL_CHANNEL_ESTIMATION_COUNTER	= BIT(2),
deb259
-};
deb259
-
deb259
-/**
deb259
- * struct iwl_channel_estimation_cfg - channel estimation reporting config
deb259
- */
deb259
-struct iwl_channel_estimation_cfg {
deb259
-	/**
deb259
-	 * @flags: flags, see &enum iwl_channel_estimation_flags
deb259
-	 */
deb259
-	__le32 flags;
deb259
-	/**
deb259
-	 * @timer: if enabled via flags, automatically disable after this many
deb259
-	 *	microseconds
deb259
-	 */
deb259
-	__le32 timer;
deb259
-	/**
deb259
-	 * @count: if enabled via flags, automatically disable after this many
deb259
-	 *	frames with channel estimation matrix were captured
deb259
-	 */
deb259
-	__le32 count;
deb259
-	/**
deb259
-	 * @rate_n_flags_mask: only try to record the channel estimation matrix
deb259
-	 *	if the rate_n_flags value for the received frame (let's call
deb259
-	 *	that rx_rnf) matches the mask/value given here like this:
deb259
-	 *	(rx_rnf & rate_n_flags_mask) == rate_n_flags_val.
deb259
-	 */
deb259
-	__le32 rate_n_flags_mask;
deb259
-	/**
deb259
-	 * @rate_n_flags_val: see @rate_n_flags_mask
deb259
-	 */
deb259
-	__le32 rate_n_flags_val;
deb259
-	/**
deb259
-	 * @reserved: reserved (for alignment)
deb259
-	 */
deb259
-	__le32 reserved;
deb259
-	/**
deb259
-	 * @frame_types: bitmap of frame types to capture, the received frame's
deb259
-	 *	subtype|type takes 6 bits in the frame and the corresponding bit
deb259
-	 *	in this field must be set to 1 to capture channel estimation for
deb259
-	 *	that frame type. Set to all-ones to enable capturing for all
deb259
-	 *	frame types.
deb259
-	 */
deb259
-	__le64 frame_types;
deb259
-} __packed; /* CHEST_COLLECTOR_FILTER_CMD_API_S_VER_1 */
deb259
-
deb259
 #endif /* __iwl_fw_api_datapath_h__ */
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/fw/api/location.h
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/fw/api/location.h	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/fw/api/location.h	2019-09-06 15:31:57.823938961 +0200
deb259
@@ -94,15 +94,6 @@
deb259
 	 */
deb259
 	TOF_RESPONDER_DYN_CONFIG_CMD = 0x5,
deb259
 	/**
deb259
-	 * @CSI_HEADER_NOTIFICATION: CSI header
deb259
-	 */
deb259
-	CSI_HEADER_NOTIFICATION = 0xFA,
deb259
-	/**
deb259
-	 * @CSI_CHUNKS_NOTIFICATION: CSI chunk,
deb259
-	 *	uses &struct iwl_csi_chunk_notification
deb259
-	 */
deb259
-	CSI_CHUNKS_NOTIFICATION = 0xFB,
deb259
-	/**
deb259
 	 * @TOF_LC_NOTIF: used for LCI/civic location, contains just
deb259
 	 *	the action frame
deb259
 	 */
deb259
@@ -697,15 +688,4 @@
deb259
 	__le16 reserved;
deb259
 } __packed; /* TOF_RESPONDER_STATISTICS_NTFY_S_VER_2 */
deb259
 
deb259
-#define IWL_CSI_CHUNK_CTL_NUM_MASK	0x3
deb259
-#define IWL_CSI_CHUNK_CTL_IDX_MASK	0xc
deb259
-
deb259
-struct iwl_csi_chunk_notification {
deb259
-	__le32 token;
deb259
-	__le16 seq;
deb259
-	__le16 ctl;
deb259
-	__le32 size;
deb259
-	u8 data[];
deb259
-} __packed; /* CSI_CHUNKS_HDR_NTFY_API_S_VER_1 */
deb259
-
deb259
 #endif /* __iwl_fw_api_location_h__ */
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/fw/api/rx.h
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/fw/api/rx.h	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/fw/api/rx.h	2019-09-06 15:31:57.824938945 +0200
deb259
@@ -333,8 +333,6 @@
deb259
 	IWL_RX_MPDU_PHY_AMPDU		= BIT(5),
deb259
 	IWL_RX_MPDU_PHY_AMPDU_TOGGLE	= BIT(6),
deb259
 	IWL_RX_MPDU_PHY_SHORT_PREAMBLE	= BIT(7),
deb259
-	/* short preamble is only for CCK, for non-CCK overridden by this */
deb259
-	IWL_RX_MPDU_PHY_NCCK_ADDTL_NTFY	= BIT(7),
deb259
 	IWL_RX_MPDU_PHY_TSF_OVERLOAD	= BIT(8),
deb259
 };
deb259
 
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/fw/file.h
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/fw/file.h	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/fw/file.h	2019-09-06 15:31:57.824938945 +0200
deb259
@@ -383,13 +383,10 @@
deb259
  * @IWL_UCODE_TLV_CAPA_TX_POWER_ACK: reduced TX power API has larger
deb259
  *	command size (command version 4) that supports toggling ACK TX
deb259
  *	power reduction.
deb259
+ * @IWL_UCODE_TLV_CAPA_MLME_OFFLOAD: supports MLME offload
deb259
  * @IWL_UCODE_TLV_CAPA_D3_DEBUG: supports debug recording during D3
deb259
  * @IWL_UCODE_TLV_CAPA_MCC_UPDATE_11AX_SUPPORT: MCC response support 11ax
deb259
  *	capability.
deb259
- * @IWL_UCODE_TLV_CAPA_CSI_REPORTING: firmware is capable of being configured
deb259
- *	to report the CSI information with (certain) RX frames
deb259
- *
deb259
- * @IWL_UCODE_TLV_CAPA_MLME_OFFLOAD: supports MLME offload
deb259
  *
deb259
  * @NUM_IWL_UCODE_TLV_CAPA: number of bits used
deb259
  */
deb259
@@ -445,8 +442,6 @@
deb259
 	IWL_UCODE_TLV_CAPA_D3_DEBUG			= (__force iwl_ucode_tlv_capa_t)87,
deb259
 	IWL_UCODE_TLV_CAPA_LED_CMD_SUPPORT		= (__force iwl_ucode_tlv_capa_t)88,
deb259
 	IWL_UCODE_TLV_CAPA_MCC_UPDATE_11AX_SUPPORT	= (__force iwl_ucode_tlv_capa_t)89,
deb259
-	IWL_UCODE_TLV_CAPA_CSI_REPORTING		= (__force iwl_ucode_tlv_capa_t)90,
deb259
-
deb259
 	IWL_UCODE_TLV_CAPA_MLME_OFFLOAD			= (__force iwl_ucode_tlv_capa_t)96,
deb259
 
deb259
 	NUM_IWL_UCODE_TLV_CAPA
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/mvm/debugfs.c	2019-09-06 15:31:57.824938945 +0200
deb259
@@ -69,7 +69,6 @@
deb259
 #include "sta.h"
deb259
 #include "iwl-io.h"
deb259
 #include "debugfs.h"
deb259
-#include "iwl-modparams.h"
deb259
 #include "fw/error-dump.h"
deb259
 
deb259
 static ssize_t iwl_dbgfs_ctdp_budget_read(struct file *file,
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/mvm/ops.c
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/mvm/ops.c	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/mvm/ops.c	2019-09-06 15:31:57.825938929 +0200
deb259
@@ -446,7 +446,6 @@
deb259
 	HCMD_NAME(TRIGGER_RX_QUEUES_NOTIF_CMD),
deb259
 	HCMD_NAME(RFH_QUEUE_CONFIG_CMD),
deb259
 	HCMD_NAME(TLC_MNG_CONFIG_CMD),
deb259
-	HCMD_NAME(CHEST_COLLECTOR_FILTER_CONFIG_CMD),
deb259
 	HCMD_NAME(STA_PM_NOTIF),
deb259
 	HCMD_NAME(MU_GROUP_MGMT_NOTIF),
deb259
 	HCMD_NAME(RX_QUEUES_NOTIFICATION),
deb259
Index: src/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c
deb259
===================================================================
deb259
--- src.orig/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c	2019-09-06 15:31:38.601243739 +0200
deb259
+++ src/drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c	2019-09-06 15:31:57.825938929 +0200
deb259
@@ -951,15 +951,9 @@
deb259
 		bool toggle_bit = phy_info & IWL_RX_MPDU_PHY_AMPDU_TOGGLE;
deb259
 
deb259
 		rx_status->flag |= RX_FLAG_AMPDU_DETAILS;
deb259
-		/*
deb259
-		 * Toggle is switched whenever new aggregation starts. Make
deb259
-		 * sure ampdu_reference is never 0 so we can later use it to
deb259
-		 * see if the frame was really part of an A-MPDU or not.
deb259
-		 */
deb259
+		/* toggle is switched whenever new aggregation starts */
deb259
 		if (toggle_bit != mvm->ampdu_toggle) {
deb259
 			mvm->ampdu_ref++;
deb259
-			if (mvm->ampdu_ref == 0)
deb259
-				mvm->ampdu_ref++;
deb259
 			mvm->ampdu_toggle = toggle_bit;
deb259
 		}
deb259
 		rx_status->ampdu_reference = mvm->ampdu_ref;