aboutsummaryrefslogtreecommitdiff
path: root/arch/mips/philips
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-03-19 20:13:56 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-03-19 20:13:56 -0700
commit62b6e9ff08ced882b36c9583e350699f28912e51 (patch)
treeceff09a936b9605011486b05aad523700202bcc4 /arch/mips/philips
parent8718d75ef23e858a6b947f5b1a43094acf3b6e23 (diff)
parent7df4246117cb0adc6c3ed54bdb2d2faf4656d9cd (diff)
Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Export except_vec_vi_{mori,lui,ori} as text symbols. [MIPS] mips-boards: More liberal check for mips-board console [MIPS] Misc fixes for plat_irq_dispatch functions [MIPS] Qemu: Fix Symmetric Uniprocessor support. [MIPS] VI: TRACE_IRQS_OFF clobbers $v0, so save & restore around call.
Diffstat (limited to 'arch/mips/philips')
-rw-r--r--arch/mips/philips/pnx8550/common/int.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/arch/mips/philips/pnx8550/common/int.c b/arch/mips/philips/pnx8550/common/int.c
index b1c4805a0b9..aad03429a5e 100644
--- a/arch/mips/philips/pnx8550/common/int.c
+++ b/arch/mips/philips/pnx8550/common/int.c
@@ -83,16 +83,15 @@ static void timer_irqdispatch(int irq)
asmlinkage void plat_irq_dispatch(void)
{
- unsigned int pending = read_c0_status() & read_c0_cause();
+ unsigned int pending = read_c0_status() & read_c0_cause() & ST0_IM;
if (pending & STATUSF_IP2)
hw0_irqdispatch(2);
else if (pending & STATUSF_IP7) {
if (read_c0_config7() & 0x01c0)
timer_irqdispatch(7);
- }
-
- spurious_interrupt();
+ } else
+ spurious_interrupt();
}
static inline void modify_cp0_intmask(unsigned clr_mask, unsigned set_mask)