diff options
author | James Bottomley <James.Bottomley@HansenPartnership.com> | 2010-12-03 03:01:05 +0100 |
---|---|---|
committer | Kyle McMartin <kyle@mcmartin.ca> | 2010-12-04 17:15:19 +0100 |
commit | 51890613f2bfa70453a5cc22c91c63946dd311cd (patch) | |
tree | 72450f5f53939d42444f260708fa6639c41a8904 /arch/parisc/kernel/irq.c | |
parent | parisc: fix dino/gsc interrupts (diff) | |
download | linux-51890613f2bfa70453a5cc22c91c63946dd311cd.tar.xz linux-51890613f2bfa70453a5cc22c91c63946dd311cd.zip |
parisc: convert the rest of the irq handlers to simple/percpu
The generic conversion eliminates the spurious no_ack and no_end
routines, converts all the cascaded handlers to handle_simple_irq() and
makes iosapic use a modified handle_percpu_irq() to become the same as
the CPU irq's. This isn't an essential change, but it eliminates the
mask/unmask overhead of handle_level_irq().
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Tested-by: Helge Deller <deller@gmx.de>
Signed-off-by: Kyle McMartin <kyle@mcmartin.ca>
Diffstat (limited to 'arch/parisc/kernel/irq.c')
-rw-r--r-- | arch/parisc/kernel/irq.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/parisc/kernel/irq.c b/arch/parisc/kernel/irq.c index 48aa71106db8..d7d94b845dc2 100644 --- a/arch/parisc/kernel/irq.c +++ b/arch/parisc/kernel/irq.c @@ -75,9 +75,6 @@ static void cpu_unmask_irq(unsigned int irq) smp_send_all_nop(); } -void no_ack_irq(unsigned int irq) { } -void no_end_irq(unsigned int irq) { } - void cpu_ack_irq(unsigned int irq) { unsigned long mask = EIEM_MASK(irq); @@ -241,7 +238,7 @@ int cpu_claim_irq(unsigned int irq, struct irq_chip *type, void *data) /* for iosapic interrupts */ if (type) { - set_irq_chip_and_handler(irq, type, handle_level_irq); + set_irq_chip_and_handler(irq, type, handle_percpu_irq); set_irq_chip_data(irq, data); cpu_unmask_irq(irq); } |