frv: Use generic show_interrupts()
authorThomas Gleixner <tglx@linutronix.de>
Thu, 24 Mar 2011 17:48:36 +0000 (18:48 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 29 Mar 2011 12:48:18 +0000 (14:48 +0200)
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/frv/Kconfig
arch/frv/kernel/irq.c

index 1872c42a507619a0bd6a309effa44dd98d88b4a5..e06e3c3434a4a3206a4ddcba4727214593877299 100644 (file)
@@ -6,6 +6,7 @@ config FRV
        select HAVE_IRQ_WORK
        select HAVE_PERF_EVENTS
        select HAVE_GENERIC_HARDIRQS
+       select GENERIC_IRQ_SHOW
        select GENERIC_HARDIRQS_NO_DEPRECATED
 
 config ZONE_DMA
index 3bbd2c68e9b843738e151fa17c1acb312e78a347..a5f624a9f5593de4221f8d038077fb56bce9e5f9 100644 (file)
@@ -47,48 +47,10 @@ extern void __init mb93493_init(void);
 
 atomic_t irq_err_count;
 
-/*
- * Generic, controller-independent functions:
- */
-int show_interrupts(struct seq_file *p, void *v)
+int arch_show_interrupts(struct seq_file *p, int prec)
 {
-       int i = *(loff_t *) v, cpu;
-       struct irqaction * action;
-       unsigned long flags;
-
-       if (i == 0) {
-               char cpuname[12];
-
-               seq_printf(p, "    ");
-               for_each_present_cpu(cpu) {
-                       sprintf(cpuname, "CPU%d", cpu);
-                       seq_printf(p, " %10s", cpuname);
-               }
-               seq_putc(p, '\n');
-       }
-
-       if (i < NR_IRQS) {
-               raw_spin_lock_irqsave(&irq_desc[i].lock, flags);
-               action = irq_desc[i].action;
-               if (action) {
-                       seq_printf(p, "%3d: ", i);
-                       for_each_present_cpu(cpu)
-                               seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu));
-                       seq_printf(p, " %10s", irq_desc[i].chip->name ? : "-");
-                       seq_printf(p, "  %s", action->name);
-                       for (action = action->next;
-                            action;
-                            action = action->next)
-                               seq_printf(p, ", %s", action->name);
-
-                       seq_putc(p, '\n');
-               }
-
-               raw_spin_unlock_irqrestore(&irq_desc[i].lock, flags);
-       } else if (i == NR_IRQS) {
-               seq_printf(p, "Err: %10u\n", atomic_read(&irq_err_count));
-       }
-
+       seq_printf(p, "%*s: ", prec, "ERR");
+       seq_printf(p, "%10u\n", atomic_read(&irq_err_count));
        return 0;
 }