aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2014-08-26 06:03:19 -0400
committerJason Cooper <jason@lakedaemon.net>2014-09-03 09:10:19 -0400
commitd1f6f28f68507e3ae67203de3e7ab7e5b9bf0082 (patch)
treee86760801fc11cddad3a8f0c853b53d4d04625af /arch
parenta71b092a9c68685a270ebdde7b5986ba8787e575 (diff)
openrisc: Convert handle_IRQ to use __handle_domain_irq
In order to limit code duplication, convert the architecture specific handle_IRQ to use the generic __handle_domain_irq function. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Acked-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi> Link: https://lkml.kernel.org/r/1409047421-27649-5-git-send-email-marc.zyngier@arm.com Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'arch')
-rw-r--r--arch/openrisc/Kconfig1
-rw-r--r--arch/openrisc/kernel/irq.c9
2 files changed, 2 insertions, 8 deletions
diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
index 88e83368bbf5..e5a693b16da2 100644
--- a/arch/openrisc/Kconfig
+++ b/arch/openrisc/Kconfig
@@ -8,6 +8,7 @@ config OPENRISC
8 select OF 8 select OF
9 select OF_EARLY_FLATTREE 9 select OF_EARLY_FLATTREE
10 select IRQ_DOMAIN 10 select IRQ_DOMAIN
11 select HANDLE_DOMAIN_IRQ
11 select HAVE_MEMBLOCK 12 select HAVE_MEMBLOCK
12 select ARCH_REQUIRE_GPIOLIB 13 select ARCH_REQUIRE_GPIOLIB
13 select HAVE_ARCH_TRACEHOOK 14 select HAVE_ARCH_TRACEHOOK
diff --git a/arch/openrisc/kernel/irq.c b/arch/openrisc/kernel/irq.c
index 967eb1430203..e9aaf280b7d9 100644
--- a/arch/openrisc/kernel/irq.c
+++ b/arch/openrisc/kernel/irq.c
@@ -50,14 +50,7 @@ void __init set_handle_irq(void (*handle_irq)(struct pt_regs *))
50 50
51void handle_IRQ(unsigned int irq, struct pt_regs *regs) 51void handle_IRQ(unsigned int irq, struct pt_regs *regs)
52{ 52{
53 struct pt_regs *old_regs = set_irq_regs(regs); 53 __handle_domain_irq(NULL, irq, false, regs);
54
55 irq_enter();
56
57 generic_handle_irq(irq);
58
59 irq_exit();
60 set_irq_regs(old_regs);
61} 54}
62 55
63void __irq_entry do_IRQ(struct pt_regs *regs) 56void __irq_entry do_IRQ(struct pt_regs *regs)