aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl4965-base.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl4965-base.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl4965-base.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c
index c856835b1f20..131cf5adbd79 100644
--- a/drivers/net/wireless/iwlwifi/iwl4965-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c
@@ -5137,8 +5137,9 @@ static void iwl4965_irq_tasklet(struct iwl4965_priv *priv)
5137#ifdef CONFIG_IWL4965_DEBUG 5137#ifdef CONFIG_IWL4965_DEBUG
5138 if (iwl4965_debug_level & (IWL_DL_ISR)) { 5138 if (iwl4965_debug_level & (IWL_DL_ISR)) {
5139 /* NIC fires this, but we don't use it, redundant with WAKEUP */ 5139 /* NIC fires this, but we don't use it, redundant with WAKEUP */
5140 if (inta & CSR_INT_BIT_MAC_CLK_ACTV) 5140 if (inta & CSR_INT_BIT_SCD)
5141 IWL_DEBUG_ISR("Microcode started or stopped.\n"); 5141 IWL_DEBUG_ISR("Scheduler finished to transmit "
5142 "the frame/frames.\n");
5142 5143
5143 /* Alive notification via Rx interrupt will do the real work */ 5144 /* Alive notification via Rx interrupt will do the real work */
5144 if (inta & CSR_INT_BIT_ALIVE) 5145 if (inta & CSR_INT_BIT_ALIVE)
@@ -5146,7 +5147,7 @@ static void iwl4965_irq_tasklet(struct iwl4965_priv *priv)
5146 } 5147 }
5147#endif 5148#endif
5148 /* Safely ignore these bits for debug checks below */ 5149 /* Safely ignore these bits for debug checks below */
5149 inta &= ~(CSR_INT_BIT_MAC_CLK_ACTV | CSR_INT_BIT_ALIVE); 5150 inta &= ~(CSR_INT_BIT_SCD | CSR_INT_BIT_ALIVE);
5150 5151
5151 /* HW RF KILL switch toggled */ 5152 /* HW RF KILL switch toggled */
5152 if (inta & CSR_INT_BIT_RF_KILL) { 5153 if (inta & CSR_INT_BIT_RF_KILL) {
@@ -5275,8 +5276,11 @@ static irqreturn_t iwl4965_isr(int irq, void *data)
5275 IWL_DEBUG_ISR("ISR inta 0x%08x, enabled 0x%08x, fh 0x%08x\n", 5276 IWL_DEBUG_ISR("ISR inta 0x%08x, enabled 0x%08x, fh 0x%08x\n",
5276 inta, inta_mask, inta_fh); 5277 inta, inta_mask, inta_fh);
5277 5278
5279 inta &= ~CSR_INT_BIT_SCD;
5280
5278 /* iwl4965_irq_tasklet() will service interrupts and re-enable them */ 5281 /* iwl4965_irq_tasklet() will service interrupts and re-enable them */
5279 tasklet_schedule(&priv->irq_tasklet); 5282 if (likely(inta || inta_fh))
5283 tasklet_schedule(&priv->irq_tasklet);
5280 5284
5281 unplugged: 5285 unplugged:
5282 spin_unlock(&priv->lock); 5286 spin_unlock(&priv->lock);