iwlwifi: pcie: clean up ICT allocation code
Since iwl_trans_pcie_alloc_ict is called in the PCIe allocation code, we always set CSR_INT_BIT_RX_PERIODIC. Move that bit to the default list of interrupts we enable and simplify the code. Also use dma_zalloc_ and avoid to memset the memory afterwards. trans_pcie->ict_index is 0 since trans_pcie has just been kzalloced, remove the redundant assignment. Reviewed-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
This commit is contained in:
parent
cf4ef65446
commit
eef31718eb
@ -198,7 +198,8 @@
|
||||
CSR_INT_BIT_RF_KILL | \
|
||||
CSR_INT_BIT_SW_RX | \
|
||||
CSR_INT_BIT_WAKEUP | \
|
||||
CSR_INT_BIT_ALIVE)
|
||||
CSR_INT_BIT_ALIVE | \
|
||||
CSR_INT_BIT_RX_PERIODIC)
|
||||
|
||||
/* interrupt flags in FH (flow handler) (PCI busmaster DMA) */
|
||||
#define CSR_FH_INT_BIT_ERR (1 << 31) /* Error */
|
||||
|
@ -1048,7 +1048,7 @@ int iwl_pcie_alloc_ict(struct iwl_trans *trans)
|
||||
struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans);
|
||||
|
||||
trans_pcie->ict_tbl =
|
||||
dma_alloc_coherent(trans->dev, ICT_SIZE,
|
||||
dma_zalloc_coherent(trans->dev, ICT_SIZE,
|
||||
&trans_pcie->ict_tbl_dma,
|
||||
GFP_KERNEL);
|
||||
if (!trans_pcie->ict_tbl)
|
||||
@ -1060,17 +1060,10 @@ int iwl_pcie_alloc_ict(struct iwl_trans *trans)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
IWL_DEBUG_ISR(trans, "ict dma addr %Lx\n",
|
||||
(unsigned long long)trans_pcie->ict_tbl_dma);
|
||||
IWL_DEBUG_ISR(trans, "ict dma addr %Lx ict vir addr %p\n",
|
||||
(unsigned long long)trans_pcie->ict_tbl_dma,
|
||||
trans_pcie->ict_tbl);
|
||||
|
||||
IWL_DEBUG_ISR(trans, "ict vir addr %p\n", trans_pcie->ict_tbl);
|
||||
|
||||
/* reset table and index to all 0 */
|
||||
memset(trans_pcie->ict_tbl, 0, ICT_SIZE);
|
||||
trans_pcie->ict_index = 0;
|
||||
|
||||
/* add periodic RX interrupt */
|
||||
trans_pcie->inta_mask |= CSR_INT_BIT_RX_PERIODIC;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user