summaryrefslogtreecommitdiffstats
path: root/arch/mips
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tsbogend@alpha.franken.de>1997-07-29 21:58:04 +0000
committerThomas Bogendoerfer <tsbogend@alpha.franken.de>1997-07-29 21:58:04 +0000
commit807196c7c442fb553ea1549c82f186a795c8128b (patch)
treec519c4c1b3bff5f0938171f4c1bc54b9b3edf4a7 /arch/mips
parent5c7d64ad04066bd3bebf092afbf0e0eb2f89557a (diff)
increased number of (working) interrupts to 32
Diffstat (limited to 'arch/mips')
-rw-r--r--arch/mips/kernel/entry.S4
-rw-r--r--arch/mips/kernel/irq.c8
2 files changed, 9 insertions, 3 deletions
diff --git a/arch/mips/kernel/entry.S b/arch/mips/kernel/entry.S
index 682e00cda..00c321a35 100644
--- a/arch/mips/kernel/entry.S
+++ b/arch/mips/kernel/entry.S
@@ -229,10 +229,10 @@ EXPORT(exception_handlers)
.fill 32,PTRSIZE,0
/*
- * Interrupt handler table with 16 entries.
+ * Interrupt handler table with 32 entries.
*/
EXPORT(IRQ_vectors)
- .fill 16,PTRSIZE,0
+ .fill 32,PTRSIZE,0
/*
* Table of syscalls
diff --git a/arch/mips/kernel/irq.c b/arch/mips/kernel/irq.c
index 32bc5a133..b2d112373 100644
--- a/arch/mips/kernel/irq.c
+++ b/arch/mips/kernel/irq.c
@@ -11,7 +11,7 @@
*
* Mips support by Ralf Baechle and Andreas Busse
*
- * $Id: irq.c,v 1.2 1997/06/28 23:26:25 ralf Exp $
+ * $Id: irq.c,v 1.2 1997/07/01 08:59:07 ralf Exp $
*/
#include <linux/config.h>
#include <linux/errno.h>
@@ -51,6 +51,9 @@ unsigned long spurious_count = 0;
static inline void mask_irq(unsigned int irq_nr)
{
unsigned char mask;
+
+ if (irq_nr >= 16)
+ return;
mask = 1 << (irq_nr & 7);
if (irq_nr < 8) {
@@ -66,6 +69,9 @@ static inline void unmask_irq(unsigned int irq_nr)
{
unsigned char mask;
+ if (irq_nr >= 16)
+ return;
+
mask = ~(1 << (irq_nr & 7));
if (irq_nr < 8) {
cache_21 &= mask;