aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/pcie/tx.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlwifi/pcie/tx.c')
-rw-r--r--drivers/net/wireless/iwlwifi/pcie/tx.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/pcie/tx.c b/drivers/net/wireless/iwlwifi/pcie/tx.c
index 3b14fa8abfc7..3d549008b3e2 100644
--- a/drivers/net/wireless/iwlwifi/pcie/tx.c
+++ b/drivers/net/wireless/iwlwifi/pcie/tx.c
@@ -289,13 +289,15 @@ static void iwl_pcie_txq_inval_byte_cnt_tbl(struct iwl_trans *trans,
289 */ 289 */
290void iwl_pcie_txq_inc_wr_ptr(struct iwl_trans *trans, struct iwl_txq *txq) 290void iwl_pcie_txq_inc_wr_ptr(struct iwl_trans *trans, struct iwl_txq *txq)
291{ 291{
292 struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
292 u32 reg = 0; 293 u32 reg = 0;
293 int txq_id = txq->q.id; 294 int txq_id = txq->q.id;
294 295
295 if (txq->need_update == 0) 296 if (txq->need_update == 0)
296 return; 297 return;
297 298
298 if (trans->cfg->base_params->shadow_reg_enable) { 299 if (trans->cfg->base_params->shadow_reg_enable ||
300 txq_id == trans_pcie->cmd_queue) {
299 /* shadow register enabled */ 301 /* shadow register enabled */
300 iwl_write32(trans, HBUS_TARG_WRPTR, 302 iwl_write32(trans, HBUS_TARG_WRPTR,
301 txq->q.write_ptr | (txq_id << 8)); 303 txq->q.write_ptr | (txq_id << 8));