blob: 993fbbc4ef9daa941383866db52a16d99337ac53 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
Fix potential driver lockup problem
Since we have already store the inta to priv->isr_inta in the
interrupt handler we don't need to get it from the hardware again
in the tasklet. Some people find ipw3945-1.2.1 still didn't
resolve the boot lockup problem as reported in bugzilla #1096.
If you still find the lockup problem in ipw3945-1.2.1, please try
this patch and report if it resolves your problem or not to
yi.zhu@intel.com.
Thanks to Egon for providing this patch!
Signed-off-by: Egon <anannatrak@yahoo.it>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
--
--- a/ipw3945.c 2007-04-11 14:46:58.000000000 +0800
+++ b/ipw3945.c 2007-05-14 15:55:56.000000000 +0800
@@ -2769,8 +2769,8 @@ static void ipw_irq_tasklet(struct ipw_p
spin_lock_irqsave(&priv->lock, flags);
- inta = ipw_read32(priv, CSR_INT);
- inta_mask = ipw_read32(priv, CSR_INT_MASK);
+ inta = 0;
+ inta_mask = 0;
ipw_write32(priv, CSR_INT, inta);
inta &= (CSR_INI_SET_MASK & inta_mask);
|