aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/irqchip
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2014-08-26 06:03:28 -0400
committerJason Cooper <jason@lakedaemon.net>2014-09-03 09:10:42 -0400
commit21d06d91c23ddb24895bbe82ba96633864891f6e (patch)
tree15f234251163950388f587f9031f9564d21a8156 /drivers/irqchip
parentc15018e9192bbaa1a0f68ebee0284f701491b800 (diff)
irqchip: sun4i: 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-14-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-sun4i.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/irqchip/irq-sun4i.c b/drivers/irqchip/irq-sun4i.c
index 6fcef4a95a18..64155b686081 100644
--- a/drivers/irqchip/irq-sun4i.c
+++ b/drivers/irqchip/irq-sun4i.c
@@ -136,7 +136,7 @@ IRQCHIP_DECLARE(allwinner_sun4i_ic, "allwinner,sun4i-a10-ic", sun4i_of_init);
136 136
137static void __exception_irq_entry sun4i_handle_irq(struct pt_regs *regs) 137static void __exception_irq_entry sun4i_handle_irq(struct pt_regs *regs)
138{ 138{
139 u32 irq, hwirq; 139 u32 hwirq;
140 140
141 /* 141 /*
142 * hwirq == 0 can mean one of 3 things: 142 * hwirq == 0 can mean one of 3 things:
@@ -154,8 +154,7 @@ static void __exception_irq_entry sun4i_handle_irq(struct pt_regs *regs)
154 return; 154 return;
155 155
156 do { 156 do {
157 irq = irq_find_mapping(sun4i_irq_domain, hwirq); 157 handle_domain_irq(sun4i_irq_domain, hwirq, regs);
158 handle_IRQ(irq, regs);
159 hwirq = readl(sun4i_irq_base + SUN4I_IRQ_VECTOR_REG) >> 2; 158 hwirq = readl(sun4i_irq_base + SUN4I_IRQ_VECTOR_REG) >> 2;
160 } while (hwirq != 0); 159 } while (hwirq != 0);
161} 160}