Messages in this thread Patch in this message |  | | | Date | Fri, 15 Oct 2010 00:05:23 -0400 | | From | Kyle McMartin <> | | Subject | [PATCH 2/4] cris: convert arch-v10 away from __do_IRQ |
| |
Looks like handle_simple_irq will be fine here, since the do_IRQ code is masking the interrupts for us.
Also remove a pile of unneeded handlers where the defaults filled in by the genirq layer will do.
Signed-off-by: Kyle McMartin <kyle@redhat.com> --- arch/cris/arch-v10/kernel/irq.c | 26 +++++--------------------- 1 files changed, 5 insertions(+), 21 deletions(-) diff --git a/arch/cris/arch-v10/kernel/irq.c b/arch/cris/arch-v10/kernel/irq.c index 25d6252..07f17ce 100644 --- a/arch/cris/arch-v10/kernel/irq.c +++ b/arch/cris/arch-v10/kernel/irq.c @@ -104,16 +104,6 @@ static void (*interrupt[NR_IRQS])(void) = { IRQ31_interrupt }; -static void enable_crisv10_irq(unsigned int irq); - -static unsigned int startup_crisv10_irq(unsigned int irq) -{ - enable_crisv10_irq(irq); - return 0; -} - -#define shutdown_crisv10_irq disable_crisv10_irq - static void enable_crisv10_irq(unsigned int irq) { crisv10_unmask_irq(irq); @@ -124,22 +114,16 @@ static void disable_crisv10_irq(unsigned int irq) crisv10_mask_irq(irq); } -static void ack_crisv10_irq(unsigned int irq) -{ -} - -static void end_crisv10_irq(unsigned int irq) +static void crisv10_noop(unsigned int irq) { } static struct irq_chip crisv10_irq_type = { .name = "CRISv10", - .startup = startup_crisv10_irq, - .shutdown = shutdown_crisv10_irq, - .enable = enable_crisv10_irq, + .unmask = enable_crisv10_irq, + .mask = disable_crisv10_irq, .disable = disable_crisv10_irq, - .ack = ack_crisv10_irq, - .end = end_crisv10_irq, + .ack = crisv10_noop, .set_affinity = NULL }; @@ -221,7 +205,7 @@ init_IRQ(void) /* Initialize IRQ handler descriptors. */ for(i = 2; i < NR_IRQS; i++) { - set_irq_chip_and_handler(i, &crisv10_irq_type, cris_do_IRQ); + set_irq_chip_and_handler(i, &crisv10_irq_type, handle_simple_irq); set_int_vector(i, interrupt[i]); } -- 1.7.3.1
|  |