diff --git a/arch/arm/common/gic.c b/arch/arm/common/gic.c
index 788658cca960b1b638a84daeaa7b1f174cf54a27..4b4ccf31e083ae5ef6c02af9087935b33238f1e7 100644
--- a/arch/arm/common/gic.c
+++ b/arch/arm/common/gic.c
@@ -767,6 +767,9 @@ void __init gic_init_bases(unsigned int gic_nr, int irq_start,
 #ifdef CONFIG_SMP
 	set_smp_cross_call(gic_raise_softirq);
 #endif
+
+	set_handle_irq(gic_handle_irq);
+
 	gic_chip.flags |= gic_arch_extn.flags;
 	gic_dist_init(gic);
 	gic_cpu_init(gic);