diff mbox

mfd: twl4030: allow IRQ wake enable to succeed on subchip IRQs

Message ID 1370036694-26210-1-git-send-email-khilman@linaro.org (mailing list archive)
State New, archived
Headers show

Commit Message

Kevin Hilman May 31, 2013, 9:44 p.m. UTC
The genirq IRQ wake method will default to failure if the irq_chip
does not provide a set_wake method.  However, for TWL4030 sub-chip
IRQs, we want the wake enable to succeed even though we don't provide
a set_wake method.  This allows sub-chip IRQs to still be flagged as
wakeup capable, and allow them to wakeup from suspend (or abort
suspend if they fire during suspend.)

To fix, use the IRQCHIP_SKIP_SET_WAKE flag in the irq_chip.

Signed-off-by: Kevin Hilman <khilman@linaro.org>
---
 drivers/mfd/twl4030-irq.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Samuel Ortiz June 17, 2013, 11:47 p.m. UTC | #1
Hi Kevin,

On Fri, May 31, 2013 at 02:44:54PM -0700, Kevin Hilman wrote:
> The genirq IRQ wake method will default to failure if the irq_chip
> does not provide a set_wake method.  However, for TWL4030 sub-chip
> IRQs, we want the wake enable to succeed even though we don't provide
> a set_wake method.  This allows sub-chip IRQs to still be flagged as
> wakeup capable, and allow them to wakeup from suspend (or abort
> suspend if they fire during suspend.)
> 
> To fix, use the IRQCHIP_SKIP_SET_WAKE flag in the irq_chip.
> 
> Signed-off-by: Kevin Hilman <khilman@linaro.org>
> ---
>  drivers/mfd/twl4030-irq.c | 1 +
>  1 file changed, 1 insertion(+)
Applied to mfd-next, thanks.

Cheers,
Samuel.
diff mbox

Patch

diff --git a/drivers/mfd/twl4030-irq.c b/drivers/mfd/twl4030-irq.c
index a5f9888..3fa7df2 100644
--- a/drivers/mfd/twl4030-irq.c
+++ b/drivers/mfd/twl4030-irq.c
@@ -573,6 +573,7 @@  static struct irq_chip twl4030_sih_irq_chip = {
 	.irq_set_type	= twl4030_sih_set_type,
 	.irq_bus_lock	= twl4030_sih_bus_lock,
 	.irq_bus_sync_unlock = twl4030_sih_bus_sync_unlock,
+	.flags		= IRQCHIP_SKIP_SET_WAKE,
 };
 
 /*----------------------------------------------------------------------*/