aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-tx.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2009-11-06 17:52:51 -0500
committerJohn W. Linville <linville@tuxdriver.com>2009-11-11 15:23:43 -0500
commit1a716557a5ed3b814cb32b8be79848d53e470871 (patch)
tree9c2ef89f9038edffd3eb31094fcc67d8c478964f /drivers/net/wireless/iwlwifi/iwl-tx.c
parenta221e6f7b48ee2d9352827af8aec8b49272b5b43 (diff)
iwlwifi: fix FIFO vs. queue confusion
When I added that code setting the swq_id, I evidently did not understand the distinction between FIFO and TX queue yet and added code to compare a queue ID and a FIFO number, which is bogus. However, the code there need not be this specific, it can just set all queues to the identity mapping which will be overwritten by the aggregation queue code. As a bit of defensive coding, don't assign an swq_id to the command queue so that if we ever use it for frames we notice quickly. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-tx.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-tx.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-tx.c b/drivers/net/wireless/iwlwifi/iwl-tx.c
index 05e75109d842..905ceca88b95 100644
--- a/drivers/net/wireless/iwlwifi/iwl-tx.c
+++ b/drivers/net/wireless/iwlwifi/iwl-tx.c
@@ -364,8 +364,13 @@ int iwl_tx_queue_init(struct iwl_priv *priv, struct iwl_tx_queue *txq,
364 364
365 txq->need_update = 0; 365 txq->need_update = 0;
366 366
367 /* aggregation TX queues will get their ID when aggregation begins */ 367 /*
368 if (txq_id <= IWL_TX_FIFO_AC3) 368 * Aggregation TX queues will get their ID when aggregation begins;
369 * they overwrite the setting done here. The command FIFO doesn't
370 * need an swq_id so don't set one to catch errors, all others can
371 * be set up to the identity mapping.
372 */
373 if (txq_id != IWL_CMD_QUEUE_NUM)
369 txq->swq_id = txq_id; 374 txq->swq_id = txq_id;
370 375
371 /* TFD_QUEUE_SIZE_MAX must be power-of-two size, otherwise 376 /* TFD_QUEUE_SIZE_MAX must be power-of-two size, otherwise