diff options
Diffstat (limited to 'arch/m68k/kernel/ints.c')
-rw-r--r-- | arch/m68k/kernel/ints.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/arch/m68k/kernel/ints.c b/arch/m68k/kernel/ints.c index 4b85514792e7..895a56d69eba 100644 --- a/arch/m68k/kernel/ints.c +++ b/arch/m68k/kernel/ints.c | |||
@@ -248,19 +248,16 @@ static void dummy_free_irq(unsigned int irq, void *dev_id) | |||
248 | printk("calling uninitialized disable_irq()\n"); | 248 | printk("calling uninitialized disable_irq()\n"); |
249 | } | 249 | } |
250 | 250 | ||
251 | asmlinkage void process_int(unsigned long vec, struct pt_regs *fp) | 251 | asmlinkage void m68k_handle_int(unsigned int irq, struct pt_regs *regs) |
252 | { | 252 | { |
253 | if (vec >= VEC_INT1 && vec <= VEC_INT7 && !MACH_IS_BVME6000) { | 253 | kstat_cpu(0).irqs[irq]++; |
254 | vec -= VEC_SPUR; | 254 | irq_list[irq].handler(irq, irq_list[irq].dev_id, regs); |
255 | kstat_cpu(0).irqs[vec]++; | 255 | } |
256 | irq_list[vec].handler(vec, irq_list[vec].dev_id, fp); | 256 | |
257 | } else { | 257 | asmlinkage void handle_badint(struct pt_regs *regs) |
258 | if (mach_process_int) | 258 | { |
259 | mach_process_int(vec, fp); | 259 | kstat_cpu(0).irqs[0]++; |
260 | else | 260 | printk("unexpected interrupt from %u\n", regs->vector); |
261 | panic("Can't process interrupt vector %ld\n", vec); | ||
262 | return; | ||
263 | } | ||
264 | } | 261 | } |
265 | 262 | ||
266 | int show_interrupts(struct seq_file *p, void *v) | 263 | int show_interrupts(struct seq_file *p, void *v) |