Patch "irqchip/sunxi-nmi: Add missing SKIP_WAKE flag" has been added to the 6.6-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    irqchip/sunxi-nmi: Add missing SKIP_WAKE flag

to the 6.6-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     irqchip-sunxi-nmi-add-missing-skip_wake-flag.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit f609672df96b1dd0cce880461ed3575d8eae6f8f
Author: Philippe Simons <simons.philippe@xxxxxxxxx>
Date:   Sun Jan 12 13:34:02 2025 +0100

    irqchip/sunxi-nmi: Add missing SKIP_WAKE flag
    
    [ Upstream commit 3a748d483d80f066ca4b26abe45cdc0c367d13e9 ]
    
    Some boards with Allwinner SoCs connect the PMIC's IRQ pin to the SoC's NMI
    pin instead of a normal GPIO. Since the power key is connected to the PMIC,
    and people expect to wake up a suspended system via this key, the NMI IRQ
    controller must stay alive when the system goes into suspend.
    
    Add the SKIP_WAKE flag to prevent the sunxi NMI controller from going to
    sleep, so that the power key can wake up those systems.
    
    [ tglx: Fixed up coding style ]
    
    Signed-off-by: Philippe Simons <simons.philippe@xxxxxxxxx>
    Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
    Link: https://lore.kernel.org/all/20250112123402.388520-1-simons.philippe@xxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/irqchip/irq-sunxi-nmi.c b/drivers/irqchip/irq-sunxi-nmi.c
index e760b1278143d..262b625c30c10 100644
--- a/drivers/irqchip/irq-sunxi-nmi.c
+++ b/drivers/irqchip/irq-sunxi-nmi.c
@@ -186,7 +186,8 @@ static int __init sunxi_sc_nmi_irq_init(struct device_node *node,
 	gc->chip_types[0].chip.irq_unmask	= irq_gc_mask_set_bit;
 	gc->chip_types[0].chip.irq_eoi		= irq_gc_ack_set_bit;
 	gc->chip_types[0].chip.irq_set_type	= sunxi_sc_nmi_set_type;
-	gc->chip_types[0].chip.flags		= IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED;
+	gc->chip_types[0].chip.flags		= IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED |
+						  IRQCHIP_SKIP_SET_WAKE;
 	gc->chip_types[0].regs.ack		= reg_offs->pend;
 	gc->chip_types[0].regs.mask		= reg_offs->enable;
 	gc->chip_types[0].regs.type		= reg_offs->ctrl;




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux