diff options
author | David Howells <dhowells@redhat.com> | 2010-10-27 17:28:58 +0100 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2010-10-27 17:28:58 +0100 |
commit | 6044cf1d9426dfd5cdc1e7b9cf8eaed6418e1ff6 (patch) | |
tree | 3f6f209d37328ce1635df8f5d0b5df1cef1afe30 /arch/mn10300/kernel/irq.c | |
parent | 730c1fad0ee22a170d2ee76a904709ee304931c0 (diff) | |
download | blackbird-op-linux-6044cf1d9426dfd5cdc1e7b9cf8eaed6418e1ff6.tar.gz blackbird-op-linux-6044cf1d9426dfd5cdc1e7b9cf8eaed6418e1ff6.zip |
MN10300: ASB2364: Handle the IRQ multiplexer in the FPGA
Handle the IRQ multiplexer in the FPGA by implementing a cascade interrupt
driver for it.
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'arch/mn10300/kernel/irq.c')
-rw-r--r-- | arch/mn10300/kernel/irq.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/mn10300/kernel/irq.c b/arch/mn10300/kernel/irq.c index 2f66a45dcd18..c2e44597c22b 100644 --- a/arch/mn10300/kernel/irq.c +++ b/arch/mn10300/kernel/irq.c @@ -381,9 +381,16 @@ int show_interrupts(struct seq_file *p, void *v) seq_printf(p, "%3d: ", i); for_each_present_cpu(cpu) seq_printf(p, "%10u ", kstat_irqs_cpu(i, cpu)); - seq_printf(p, " %14s.%u", irq_desc[i].chip->name, - (GxICR(i) & GxICR_LEVEL) >> - GxICR_LEVEL_SHIFT); + + if (i < NR_CPU_IRQS) + seq_printf(p, " %14s.%u", + irq_desc[i].chip->name, + (GxICR(i) & GxICR_LEVEL) >> + GxICR_LEVEL_SHIFT); + else + seq_printf(p, " %14s", + irq_desc[i].chip->name); + seq_printf(p, " %s", action->name); for (action = action->next; |