[MIPS] Complete fixes after removal of pt_regs argument to int handlers.
[linux-2.6.git] / arch / mips / qemu / q-irq.c
blobf5ea2fe10f141d598b70a85f3d6514b73c54331c
1 #include <linux/init.h>
2 #include <linux/linkage.h>
4 #include <asm/i8259.h>
5 #include <asm/mipsregs.h>
6 #include <asm/qemu.h>
7 #include <asm/system.h>
8 #include <asm/time.h>
10 extern asmlinkage void qemu_handle_int(void);
12 asmlinkage void plat_irq_dispatch(void)
14 unsigned int pending = read_c0_status() & read_c0_cause();
16 if (pending & 0x8000) {
17 ll_timer_interrupt(Q_COUNT_COMPARE_IRQ);
18 return;
20 if (pending & 0x0400) {
21 int irq = i8259_irq();
23 if (likely(irq >= 0))
24 do_IRQ(irq);
26 return;
30 void __init arch_init_irq(void)
32 mips_hpt_frequency = QEMU_C0_COUNTER_CLOCK; /* 100MHz */
34 init_i8259_irqs();
35 set_c0_status(0x8400);