aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/iwlwifi/iwl4965-base.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c
index d60adcb9bd4a..d5107bb413cd 100644
--- a/drivers/net/wireless/iwlwifi/iwl4965-base.c
+++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c
@@ -5156,9 +5156,10 @@ static irqreturn_t iwl_isr(int irq, void *data)
5156 } 5156 }
5157 5157
5158 if ((inta == 0xFFFFFFFF) || ((inta & 0xFFFFFFF0) == 0xa5a5a5a0)) { 5158 if ((inta == 0xFFFFFFFF) || ((inta & 0xFFFFFFF0) == 0xa5a5a5a0)) {
5159 /* Hardware disappeared */ 5159 /* Hardware disappeared. It might have already raised
5160 * an interrupt */
5160 IWL_WARNING("HARDWARE GONE?? INTA == 0x%080x\n", inta); 5161 IWL_WARNING("HARDWARE GONE?? INTA == 0x%080x\n", inta);
5161 goto none; 5162 goto unplugged;
5162 } 5163 }
5163 5164
5164 IWL_DEBUG_ISR("ISR inta 0x%08x, enabled 0x%08x, fh 0x%08x\n", 5165 IWL_DEBUG_ISR("ISR inta 0x%08x, enabled 0x%08x, fh 0x%08x\n",
@@ -5166,8 +5167,9 @@ static irqreturn_t iwl_isr(int irq, void *data)
5166 5167
5167 /* iwl_irq_tasklet() will service interrupts and re-enable them */ 5168 /* iwl_irq_tasklet() will service interrupts and re-enable them */
5168 tasklet_schedule(&priv->irq_tasklet); 5169 tasklet_schedule(&priv->irq_tasklet);
5169 spin_unlock(&priv->lock);
5170 5170
5171 unplugged:
5172 spin_unlock(&priv->lock);
5171 return IRQ_HANDLED; 5173 return IRQ_HANDLED;
5172 5174
5173 none: 5175 none: