GIC: fix return value from retrigger
The generic irq layer expects a return value of 0 for failure to
retrigger an interrupt.
The MSM architecture doesn't have a retrigger mechanism and needs
to rely on the tasklet to rerun an interrupt.
Hence fix the code to return a 0 instead of -ENXIO when no retrigger
mechanism is present. This will make the genirq code to retrigger
the interrupt via tasklet.
Change-Id: I6ae86101af1e7a6d39a9b724047dee61c751df2c
Signed-off-by: Abhijeet Dharmapurikar <adharmap@codeaurora.org>
diff --git a/arch/arm/common/gic.c b/arch/arm/common/gic.c
index 786f4fa..dbf3427 100644
--- a/arch/arm/common/gic.c
+++ b/arch/arm/common/gic.c
@@ -277,7 +277,8 @@
if (gic_arch_extn.irq_retrigger)
return gic_arch_extn.irq_retrigger(d);
- return -ENXIO;
+ /* the retrigger expects 0 for failure */
+ return 0;
}
#ifdef CONFIG_SMP