Browse Source

Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next

John W. Linville 11 years ago
parent
commit
cfa9c3fba7
1 changed files with 3 additions and 1 deletions
  1. 3 1
      drivers/net/wireless/iwlwifi/pcie/tx.c

+ 3 - 1
drivers/net/wireless/iwlwifi/pcie/tx.c

@@ -289,13 +289,15 @@ static void iwl_pcie_txq_inval_byte_cnt_tbl(struct iwl_trans *trans,
  */
  */
 void iwl_pcie_txq_inc_wr_ptr(struct iwl_trans *trans, struct iwl_txq *txq)
 void iwl_pcie_txq_inc_wr_ptr(struct iwl_trans *trans, struct iwl_txq *txq)
 {
 {
+	struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
 	u32 reg = 0;
 	u32 reg = 0;
 	int txq_id = txq->q.id;
 	int txq_id = txq->q.id;
 
 
 	if (txq->need_update == 0)
 	if (txq->need_update == 0)
 		return;
 		return;
 
 
-	if (trans->cfg->base_params->shadow_reg_enable) {
+	if (trans->cfg->base_params->shadow_reg_enable ||
+	    txq_id == trans_pcie->cmd_queue) {
 		/* shadow register enabled */
 		/* shadow register enabled */
 		iwl_write32(trans, HBUS_TARG_WRPTR,
 		iwl_write32(trans, HBUS_TARG_WRPTR,
 			    txq->q.write_ptr | (txq_id << 8));
 			    txq->q.write_ptr | (txq_id << 8));