aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/irqchip
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2014-08-26 06:03:22 -0400
committerJason Cooper <jason@lakedaemon.net>2014-09-03 09:10:32 -0400
commita8e10cb769eb94277658d3f3bce12e10b5652b7f (patch)
treee53778b9c397bb1e74be6b655e22adae11e55150 /drivers/irqchip
parente89c6a06b876239161653da84dbb2a0e243768b8 (diff)
irqchip: clps711x: 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-8-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-clps711x.c18
1 files changed, 7 insertions, 11 deletions
diff --git a/drivers/irqchip/irq-clps711x.c b/drivers/irqchip/irq-clps711x.c
index 33340dc97d1d..33127f131d78 100644
--- a/drivers/irqchip/irq-clps711x.c
+++ b/drivers/irqchip/irq-clps711x.c
@@ -76,24 +76,20 @@ static struct {
76 76
77static asmlinkage void __exception_irq_entry clps711x_irqh(struct pt_regs *regs) 77static asmlinkage void __exception_irq_entry clps711x_irqh(struct pt_regs *regs)
78{ 78{
79 u32 irqnr, irqstat; 79 u32 irqstat;
80 80
81 do { 81 do {
82 irqstat = readw_relaxed(clps711x_intc->intmr[0]) & 82 irqstat = readw_relaxed(clps711x_intc->intmr[0]) &
83 readw_relaxed(clps711x_intc->intsr[0]); 83 readw_relaxed(clps711x_intc->intsr[0]);
84 if (irqstat) { 84 if (irqstat)
85 irqnr = irq_find_mapping(clps711x_intc->domain, 85 handle_domain_irq(clps711x_intc->domain,
86 fls(irqstat) - 1); 86 fls(irqstat) - 1, regs);
87 handle_IRQ(irqnr, regs);
88 }
89 87
90 irqstat = readw_relaxed(clps711x_intc->intmr[1]) & 88 irqstat = readw_relaxed(clps711x_intc->intmr[1]) &
91 readw_relaxed(clps711x_intc->intsr[1]); 89 readw_relaxed(clps711x_intc->intsr[1]);
92 if (irqstat) { 90 if (irqstat)
93 irqnr = irq_find_mapping(clps711x_intc->domain, 91 handle_domain_irq(clps711x_intc->domain,
94 fls(irqstat) - 1 + 16); 92 fls(irqstat) - 1 + 16, regs);
95 handle_IRQ(irqnr, regs);
96 }
97 } while (irqstat); 93 } while (irqstat);
98} 94}
99 95