aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/kernel/irq.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm64/kernel/irq.c')
-rw-r--r--arch/arm64/kernel/irq.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/arch/arm64/kernel/irq.c b/arch/arm64/kernel/irq.c
index 0373c6609eaf..ecb3354292ed 100644
--- a/arch/arm64/kernel/irq.c
+++ b/arch/arm64/kernel/irq.c
@@ -25,7 +25,7 @@
25#include <linux/irq.h> 25#include <linux/irq.h>
26#include <linux/smp.h> 26#include <linux/smp.h>
27#include <linux/init.h> 27#include <linux/init.h>
28#include <linux/of_irq.h> 28#include <linux/irqchip.h>
29#include <linux/seq_file.h> 29#include <linux/seq_file.h>
30#include <linux/ratelimit.h> 30#include <linux/ratelimit.h>
31 31
@@ -67,18 +67,17 @@ void handle_IRQ(unsigned int irq, struct pt_regs *regs)
67 set_irq_regs(old_regs); 67 set_irq_regs(old_regs);
68} 68}
69 69
70/* 70void __init set_handle_irq(void (*handle_irq)(struct pt_regs *))
71 * Interrupt controllers supported by the kernel. 71{
72 */ 72 if (handle_arch_irq)
73static const struct of_device_id intctrl_of_match[] __initconst = { 73 return;
74 /* IRQ controllers { .compatible, .data } info to go here */ 74
75 {} 75 handle_arch_irq = handle_irq;
76}; 76}
77 77
78void __init init_IRQ(void) 78void __init init_IRQ(void)
79{ 79{
80 of_irq_init(intctrl_of_match); 80 irqchip_init();
81
82 if (!handle_arch_irq) 81 if (!handle_arch_irq)
83 panic("No interrupt controller found."); 82 panic("No interrupt controller found.");
84} 83}