]> git.baikalelectronics.ru Git - kernel.git/commit
iwlwifi: mvm: support dqa queue sharing
authorLiad Kaufman <liad.kaufman@intel.com>
Mon, 2 May 2016 11:01:14 +0000 (14:01 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Tue, 5 Jul 2016 21:47:41 +0000 (00:47 +0300)
commitab0cdc481abf129ade30a8d148be9770530ce2f5
treeebdecbc6d151e15a1362eac57269e0ca2317bb10
parent9527d6f0d7f0ef6f9934c09afb000e99b78a15bf
iwlwifi: mvm: support dqa queue sharing

Support DQA queue sharing when no free queue exists for
allocation to a STA that already exists. This means that
a single queue will serve more than a single TID (although
the RA will be the same for all TIDs served).

We try to choose the lowest AC possible, to ensure the
shared queues have the lowest possible combined AC
requirements. The queue to share is chosen only from the
same RA's DATA queues as follows (in descending priority):
 1. An AC_BE queue
 2. Same AC queue
 3. Highest AC queue that is lower than new AC
 4. Any existing AC (there always is at least 1 DATA queue)

If any aggregations existed for any of the TIDs of the
shared queue - they are stopped (the FW is notified), but
no delBA is sent.

Signed-off-by: Liad Kaufman <liad.kaufman@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/iwl-trans.h
drivers/net/wireless/intel/iwlwifi/mvm/mvm.h
drivers/net/wireless/intel/iwlwifi/mvm/sta.c
drivers/net/wireless/intel/iwlwifi/mvm/utils.c
drivers/net/wireless/intel/iwlwifi/pcie/internal.h
drivers/net/wireless/intel/iwlwifi/pcie/trans.c
drivers/net/wireless/intel/iwlwifi/pcie/tx.c