mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
iwlagn: update write pointers for all tx queues after wakeup
Wakeup interrupt has been updating write pointers (indexes, actually) only for tx queues 0-5. This is adequate just for 3945, but inadequate for other devices, all of which have more tx queues. Now updating all tx/command queues, so device can be aware of all new tx and host commands enqueued while device was asleep. This can potentially improve data traffic bandwidth and/or latency. Signed-off-by: Ben Cahill <ben.m.cahill@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
c72cd19fab
commit
c2e61da29d
@ -890,6 +890,7 @@ static void iwl_irq_tasklet_legacy(struct iwl_priv *priv)
|
||||
u32 inta, handled = 0;
|
||||
u32 inta_fh;
|
||||
unsigned long flags;
|
||||
u32 i;
|
||||
#ifdef CONFIG_IWLWIFI_DEBUG
|
||||
u32 inta_mask;
|
||||
#endif
|
||||
@ -1007,19 +1008,17 @@ static void iwl_irq_tasklet_legacy(struct iwl_priv *priv)
|
||||
handled |= CSR_INT_BIT_SW_ERR;
|
||||
}
|
||||
|
||||
/* uCode wakes up after power-down sleep */
|
||||
/*
|
||||
* uCode wakes up after power-down sleep.
|
||||
* Tell device about any new tx or host commands enqueued,
|
||||
* and about any Rx buffers made available while asleep.
|
||||
*/
|
||||
if (inta & CSR_INT_BIT_WAKEUP) {
|
||||
IWL_DEBUG_ISR(priv, "Wakeup interrupt\n");
|
||||
iwl_rx_queue_update_write_ptr(priv, &priv->rxq);
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[0]);
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[1]);
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[2]);
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[3]);
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[4]);
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[5]);
|
||||
|
||||
for (i = 0; i < priv->hw_params.max_txq_num; i++)
|
||||
iwl_txq_update_write_ptr(priv, &priv->txq[i]);
|
||||
priv->isr_stats.wakeup++;
|
||||
|
||||
handled |= CSR_INT_BIT_WAKEUP;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user