summaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/i8259.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2007-09-21 18:13:55 +0200
committerRalf Baechle <ralf@linux-mips.org>2007-09-24 19:13:02 +0200
commit1146fe30504a1edd8a434f500e1be139492570c9 (patch)
treeba6dec916c23506580be7a5756dd583105da41ba /arch/mips/kernel/i8259.c
parentMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rol... (diff)
downloadlinux-1146fe30504a1edd8a434f500e1be139492570c9.tar.xz
linux-1146fe30504a1edd8a434f500e1be139492570c9.zip
[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.c5
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:
outb(cached_master_mask, PIC_MASTER_IMR);
outb(0x60+irq,PIC_MASTER_CMD); /* 'Specific EOI to master */
}
-#ifdef CONFIG_MIPS_MT_SMTC
- if (irq_hwmask[irq] & ST0_IM)
- set_c0_status(irq_hwmask[irq] & ST0_IM);
-#endif /* CONFIG_MIPS_MT_SMTC */
+ smtc_im_ack_irq(irq);
spin_unlock_irqrestore(&i8259A_lock, flags);
return;