summaryrefslogtreecommitdiffstats
path: root/arch/mips/sgi/kernel
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-11-23 02:00:47 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-11-23 02:00:47 +0000
commit06615f62b17d7de6e12d2f5ec6b88cf30af08413 (patch)
tree8766f208847d4876a6db619aebbf54d53b76eb44 /arch/mips/sgi/kernel
parentfa9bdb574f4febb751848a685d9a9017e04e1d53 (diff)
Merge with Linux 2.4.0-test10.
Diffstat (limited to 'arch/mips/sgi/kernel')
-rw-r--r--arch/mips/sgi/kernel/indy_int.c18
-rw-r--r--arch/mips/sgi/kernel/time.c16
2 files changed, 16 insertions, 18 deletions
diff --git a/arch/mips/sgi/kernel/indy_int.c b/arch/mips/sgi/kernel/indy_int.c
index 1ad77fc18..ab9168cb6 100644
--- a/arch/mips/sgi/kernel/indy_int.c
+++ b/arch/mips/sgi/kernel/indy_int.c
@@ -284,7 +284,7 @@ asmlinkage void do_IRQ(int irq, struct pt_regs * regs)
int do_random, cpu;
cpu = smp_processor_id();
- irq_enter(cpu);
+ irq_enter(cpu, irq);
kstat.irqs[0][irq]++;
printk("Got irq %d, press a key.", irq);
@@ -320,7 +320,7 @@ asmlinkage void do_IRQ(int irq, struct pt_regs * regs)
add_interrupt_randomness(irq);
__cli();
}
- irq_exit(cpu);
+ irq_exit(cpu, irq);
/* unmasking and bottom half handling is done magically for us. */
}
@@ -455,18 +455,16 @@ void indy_local0_irqdispatch(struct pt_regs *regs)
/* if action == NULL, then we do have a handler for the irq */
if ( action == NULL ) { goto no_handler; }
- irq_enter(cpu);
+ irq_enter(cpu, irq);
kstat.irqs[0][irq + 16]++;
action->handler(irq, action->dev_id, regs);
- irq_exit(cpu);
+ irq_exit(cpu, irq);
goto end;
no_handler:
printk("No handler for local0 irq: %i\n", irq);
end:
- return;
-
}
void indy_local1_irqdispatch(struct pt_regs *regs)
@@ -493,10 +491,10 @@ void indy_local1_irqdispatch(struct pt_regs *regs)
/* if action == NULL, then we do have a handler for the irq */
if ( action == NULL ) { goto no_handler; }
- irq_enter(cpu);
+ irq_enter(cpu, irq);
kstat.irqs[0][irq + 24]++;
action->handler(irq, action->dev_id, regs);
- irq_exit(cpu);
+ irq_exit(cpu, irq);
goto end;
no_handler:
@@ -511,13 +509,13 @@ void indy_buserror_irq(struct pt_regs *regs)
int cpu = smp_processor_id();
int irq = 6;
- irq_enter(cpu);
+ irq_enter(cpu, irq);
kstat.irqs[0][irq]++;
printk("Got a bus error IRQ, shouldn't happen yet\n");
show_regs(regs);
printk("Spinning...\n");
while(1);
- irq_exit(cpu);
+ irq_exit(cpu, irq);
}
/* Misc. crap just to keep the kernel linking... */
diff --git a/arch/mips/sgi/kernel/time.c b/arch/mips/sgi/kernel/time.c
index ea85b75db..47ee4f163 100644
--- a/arch/mips/sgi/kernel/time.c
+++ b/arch/mips/sgi/kernel/time.c
@@ -9,13 +9,13 @@
void indy_8254timer_irq(void)
{
- int cpu = smp_processor_id();
- int irq = 4;
+ int cpu = smp_processor_id();
+ int irq = 4;
- irq_enter(cpu);
- kstat.irqs[0][irq]++;
- printk("indy_8254timer_irq: Whoops, should not have gotten this IRQ\n");
- prom_getchar();
- prom_imode();
- irq_exit(cpu);
+ irq_enter(cpu, irq);
+ kstat.irqs[0][irq]++;
+ printk("indy_8254timer_irq: Whoops, should not have gotten this IRQ\n");
+ prom_getchar();
+ prom_imode();
+ irq_exit(cpu, irq);
}