diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2014-08-26 12:03:33 +0200 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2014-09-03 15:10:49 +0200 |
commit | ebc6de0056e277a0283845536fd219a96806fc80 (patch) | |
tree | c7501324d38c7a3f3dfc3de19f67382bbfeb4079 /drivers/irqchip | |
parent | irqchip: zevio: Convert to handle_domain_irq (diff) | |
download | linux-ebc6de0056e277a0283845536fd219a96806fc80.tar.xz linux-ebc6de0056e277a0283845536fd219a96806fc80.zip |
irqchip: gic-v3: Convert to handle_domain_irq
Use the new handle_domain_irq method to handle interrupts.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Link: https://lkml.kernel.org/r/1409047421-27649-19-git-send-email-marc.zyngier@arm.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'drivers/irqchip')
-rw-r--r-- | drivers/irqchip/irq-gic-v3.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c index 57eaa5a0b1e3..9e3144975696 100644 --- a/drivers/irqchip/irq-gic-v3.c +++ b/drivers/irqchip/irq-gic-v3.c @@ -274,14 +274,13 @@ static asmlinkage void __exception_irq_entry gic_handle_irq(struct pt_regs *regs irqnr = gic_read_iar(); if (likely(irqnr > 15 && irqnr < 1020)) { - u64 irq = irq_find_mapping(gic_data.domain, irqnr); - if (likely(irq)) { - handle_IRQ(irq, regs); - continue; + int err; + err = handle_domain_irq(gic_data.domain, irqnr, regs); + if (err) { + WARN_ONCE(true, "Unexpected SPI received!\n"); + gic_write_eoir(irqnr); } - - WARN_ONCE(true, "Unexpected SPI received!\n"); - gic_write_eoir(irqnr); + continue; } if (irqnr < 16) { gic_write_eoir(irqnr); |