summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h
diff options
context:
space:
mode:
authorGregory Greenman <gregory.greenman@intel.com>2017-03-06 11:15:41 +0200
committerLuca Coelho <luciano.coelho@intel.com>2017-06-05 21:45:41 +0300
commitea42d1cbe3f067fb714c3ec3e1792fa273b99561 (patch)
tree2b55085e980eb7699ff0154d88881c30611f15d3 /drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h
parent6d18c732b95c0a9d35e9f978b4438bba15412284 (diff)
downloadtalos-obmc-linux-ea42d1cbe3f067fb714c3ec3e1792fa273b99561.tar.gz
talos-obmc-linux-ea42d1cbe3f067fb714c3ec3e1792fa273b99561.zip
iwlwifi: mvm: rs: start using LQ command color
Up until now, the driver was comparing the rate reported by the FW and the rate of the latest LQ command to avoid processing data belonging to the old LQ command. Recently, FW changed the meaning of the initial rate field in tx response and it holds the actual rate (which is not necessarily the initial rate of LQ's rate table). Use instead LQ cmd color to be able to filter out tx responses/BA notifications which where sent during earlier LQ commands' time frame. This fixes some throughput degradation in noisy environments. Signed-off-by: Gregory Greenman <gregory.greenman@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h b/drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h
index 81b98915b1a4..1360ebfdc51b 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/fw-api-tx.h
@@ -519,8 +519,11 @@ struct agg_tx_status {
* bit-7 invalid rate indication
*/
#define TX_RES_INIT_RATE_INDEX_MSK 0x0f
+#define TX_RES_RATE_TABLE_COLOR_POS 4
#define TX_RES_RATE_TABLE_COLOR_MSK 0x70
#define TX_RES_INV_RATE_INDEX_MSK 0x80
+#define TX_RES_RATE_TABLE_COL_GET(_f) (((_f) & TX_RES_RATE_TABLE_COLOR_MSK) >>\
+ TX_RES_RATE_TABLE_COLOR_POS)
#define IWL_MVM_TX_RES_GET_TID(_ra_tid) ((_ra_tid) & 0x0f)
#define IWL_MVM_TX_RES_GET_RA(_ra_tid) ((_ra_tid) >> 4)
OpenPOWER on IntegriCloud