[PATCH V3 39/63] GIC: Added dummy handlers for Power Management Suspend Resume

Viresh Kumar viresh.kumar at st.com
Mon Dec 20 03:25:59 EST 2010


From: Deepak Sikri <deepak.sikri at st.com>

enable_irq_wake() has a callback for interrupt controllers.
But since gic handler did not had this call back associated, it was always
returning -ENXIO, which was breaking the existing drivers. This patch
adds dummy handlers in gic in order to avoid breaking of existing drivers.

Signed-off-by: Deepak Sikri <deepak.sikri at st.com>
Signed-off-by: Viresh Kumar <viresh.kumar at st.com>
---
 arch/arm/common/gic.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/arch/arm/common/gic.c b/arch/arm/common/gic.c
index e6388dc..f5561b7 100644
--- a/arch/arm/common/gic.c
+++ b/arch/arm/common/gic.c
@@ -193,6 +193,18 @@ static void gic_handle_cascade_irq(unsigned int irq, struct irq_desc *desc)
 	chip->unmask(irq);
 }
 
+#ifdef CONFIG_PM
+
+static int gic_set_wake(unsigned int irq, unsigned int on)
+{
+	return 0;
+}
+
+#else
+
+#define gic_set_wake NULL
+#endif
+
 static struct irq_chip gic_chip = {
 	.name		= "GIC",
 	.ack		= gic_ack_irq,
@@ -202,6 +214,7 @@ static struct irq_chip gic_chip = {
 #ifdef CONFIG_SMP
 	.set_affinity	= gic_set_cpu,
 #endif
+	.set_wake	= gic_set_wake,
 };
 
 void __init gic_cascade_irq(unsigned int gic_nr, unsigned int irq)
-- 
1.7.2.2




More information about the linux-arm-kernel mailing list