Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpio: em: Enable mask on suspend

Now when lazy interrupt disable has been enabled in the driver
then extend the code to set IRQCHIP_MASK_ON_SUSPEND which tells
the core that only IRQs marked as wakeups need to stay enabled
during Suspend-to-RAM.

Tested on the KZM9D board with GPIO-keys.

Signed-off-by: Magnus Damm <damm@opensource.se>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Magnus Damm and committed by
Linus Walleij
03621b60 664734c0

+1 -1
+1 -1
drivers/gpio/gpio-em.c
··· 338 338 irq_chip->irq_mask = em_gio_irq_disable; 339 339 irq_chip->irq_unmask = em_gio_irq_enable; 340 340 irq_chip->irq_set_type = em_gio_irq_set_type; 341 - irq_chip->flags = IRQCHIP_SKIP_SET_WAKE; 341 + irq_chip->flags = IRQCHIP_SKIP_SET_WAKE | IRQCHIP_MASK_ON_SUSPEND; 342 342 343 343 p->irq_domain = irq_domain_add_simple(pdev->dev.of_node, 344 344 pdata->number_of_pins,