diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-03-12 01:09:35 -0400 |
---|---|---|
committer | Paul Mundt <lethal@hera.kernel.org> | 2007-05-06 22:10:53 -0400 |
commit | be782df54c51b50dd4dbc363a5a5afa04565fc60 (patch) | |
tree | be45290a6d46e8746b5b9b51c1c3b804c6816177 /arch/sh | |
parent | fa69151173b1fc6fa3ced0edd5c2ea83b5d32bc1 (diff) |
sh: NR_IRQS consolidation.
Each board sets the total number of IRQs that it's interested in via
the machvec. Previously we cared about the off vs on-chip IRQ range,
but any code relying on that is long dead. Set NR_IRQS to something
sensible given the vector range, and allow boards to cap it if they
really care.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh')
-rw-r--r-- | arch/sh/kernel/irq.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c index 9bdd8a00cd4a..27b923c45b3d 100644 --- a/arch/sh/kernel/irq.c +++ b/arch/sh/kernel/irq.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/seq_file.h> | 13 | #include <linux/seq_file.h> |
14 | #include <linux/irq.h> | 14 | #include <linux/irq.h> |
15 | #include <asm/processor.h> | 15 | #include <asm/processor.h> |
16 | #include <asm/machvec.h> | ||
16 | #include <asm/uaccess.h> | 17 | #include <asm/uaccess.h> |
17 | #include <asm/thread_info.h> | 18 | #include <asm/thread_info.h> |
18 | #include <asm/cpu/mmu_context.h> | 19 | #include <asm/cpu/mmu_context.h> |
@@ -44,7 +45,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
44 | seq_putc(p, '\n'); | 45 | seq_putc(p, '\n'); |
45 | } | 46 | } |
46 | 47 | ||
47 | if (i < NR_IRQS) { | 48 | if (i < sh_mv.mv_nr_irqs) { |
48 | spin_lock_irqsave(&irq_desc[i].lock, flags); | 49 | spin_lock_irqsave(&irq_desc[i].lock, flags); |
49 | action = irq_desc[i].action; | 50 | action = irq_desc[i].action; |
50 | if (!action) | 51 | if (!action) |
@@ -61,7 +62,7 @@ int show_interrupts(struct seq_file *p, void *v) | |||
61 | seq_putc(p, '\n'); | 62 | seq_putc(p, '\n'); |
62 | unlock: | 63 | unlock: |
63 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); | 64 | spin_unlock_irqrestore(&irq_desc[i].lock, flags); |
64 | } else if (i == NR_IRQS) | 65 | } else if (i == sh_mv.mv_nr_irqs) |
65 | seq_printf(p, "Err: %10u\n", atomic_read(&irq_err_count)); | 66 | seq_printf(p, "Err: %10u\n", atomic_read(&irq_err_count)); |
66 | 67 | ||
67 | return 0; | 68 | return 0; |