diff options
Diffstat (limited to 'arch/m32r/kernel/irq.c')
-rw-r--r-- | arch/m32r/kernel/irq.c | 45 |
1 files changed, 1 insertions, 44 deletions
diff --git a/arch/m32r/kernel/irq.c b/arch/m32r/kernel/irq.c index 7db26f1f082d..c7272b894283 100644 --- a/arch/m32r/kernel/irq.c +++ b/arch/m32r/kernel/irq.c | |||
@@ -18,53 +18,10 @@ | |||
18 | 18 | ||
19 | #include <linux/kernel_stat.h> | 19 | #include <linux/kernel_stat.h> |
20 | #include <linux/interrupt.h> | 20 | #include <linux/interrupt.h> |
21 | #include <linux/seq_file.h> | ||
22 | #include <linux/module.h> | 21 | #include <linux/module.h> |
23 | #include <asm/uaccess.h> | 22 | #include <asm/uaccess.h> |
24 | 23 | ||
25 | /* | 24 | /* |
26 | * Generic, controller-independent functions: | ||
27 | */ | ||
28 | |||
29 | int show_interrupts(struct seq_file *p, void *v) | ||
30 | { | ||
31 | int i = *(loff_t *) v, j; | ||
32 | struct irqaction * action; | ||
33 | unsigned long flags; | ||
34 | |||
35 | if (i == 0) { | ||
36 | seq_printf(p, " "); | ||
37 | for_each_online_cpu(j) | ||
38 | seq_printf(p, "CPU%d ",j); | ||
39 | seq_putc(p, '\n'); | ||
40 | } | ||
41 | |||
42 | if (i < NR_IRQS) { | ||
43 | raw_spin_lock_irqsave(&irq_desc[i].lock, flags); | ||
44 | action = irq_desc[i].action; | ||
45 | if (!action) | ||
46 | goto skip; | ||
47 | seq_printf(p, "%3d: ",i); | ||
48 | #ifndef CONFIG_SMP | ||
49 | seq_printf(p, "%10u ", kstat_irqs(i)); | ||
50 | #else | ||
51 | for_each_online_cpu(j) | ||
52 | seq_printf(p, "%10u ", kstat_irqs_cpu(i, j)); | ||
53 | #endif | ||
54 | seq_printf(p, " %14s", irq_desc[i].chip->name); | ||
55 | seq_printf(p, " %s", action->name); | ||
56 | |||
57 | for (action=action->next; action; action = action->next) | ||
58 | seq_printf(p, ", %s", action->name); | ||
59 | |||
60 | seq_putc(p, '\n'); | ||
61 | skip: | ||
62 | raw_spin_unlock_irqrestore(&irq_desc[i].lock, flags); | ||
63 | } | ||
64 | return 0; | ||
65 | } | ||
66 | |||
67 | /* | ||
68 | * do_IRQ handles all normal device IRQs (the special | 25 | * do_IRQ handles all normal device IRQs (the special |
69 | * SMP cross-CPU interrupts have their own specific | 26 | * SMP cross-CPU interrupts have their own specific |
70 | * handlers). | 27 | * handlers). |
@@ -78,7 +35,7 @@ asmlinkage unsigned int do_IRQ(int irq, struct pt_regs *regs) | |||
78 | #ifdef CONFIG_DEBUG_STACKOVERFLOW | 35 | #ifdef CONFIG_DEBUG_STACKOVERFLOW |
79 | /* FIXME M32R */ | 36 | /* FIXME M32R */ |
80 | #endif | 37 | #endif |
81 | __do_IRQ(irq); | 38 | generic_handle_irq(irq); |
82 | irq_exit(); | 39 | irq_exit(); |
83 | set_irq_regs(old_regs); | 40 | set_irq_regs(old_regs); |
84 | 41 | ||