diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-09-21 12:13:55 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-09-24 13:13:02 -0400 |
commit | 1146fe30504a1edd8a434f500e1be139492570c9 (patch) | |
tree | ba6dec916c23506580be7a5756dd583105da41ba /arch/mips/kernel/i8259.c | |
parent | 7bae705ef2c2daac1993de03e5be93b5c300fc5e (diff) |
[MIPS] SMTC: Make ack_bad_irq() safe with no IM backstop.
Issue reported and original patch by Kevin Kissel, cleaner (imho)
implementation by me.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/i8259.c')
-rw-r--r-- | arch/mips/kernel/i8259.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/mips/kernel/i8259.c b/arch/mips/kernel/i8259.c index b6c30800c667..3a2d255361bc 100644 --- a/arch/mips/kernel/i8259.c +++ b/arch/mips/kernel/i8259.c | |||
@@ -177,10 +177,7 @@ handle_real_irq: | |||
177 | outb(cached_master_mask, PIC_MASTER_IMR); | 177 | outb(cached_master_mask, PIC_MASTER_IMR); |
178 | outb(0x60+irq,PIC_MASTER_CMD); /* 'Specific EOI to master */ | 178 | outb(0x60+irq,PIC_MASTER_CMD); /* 'Specific EOI to master */ |
179 | } | 179 | } |
180 | #ifdef CONFIG_MIPS_MT_SMTC | 180 | smtc_im_ack_irq(irq); |
181 | if (irq_hwmask[irq] & ST0_IM) | ||
182 | set_c0_status(irq_hwmask[irq] & ST0_IM); | ||
183 | #endif /* CONFIG_MIPS_MT_SMTC */ | ||
184 | spin_unlock_irqrestore(&i8259A_lock, flags); | 181 | spin_unlock_irqrestore(&i8259A_lock, flags); |
185 | return; | 182 | return; |
186 | 183 | ||