]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
irqchip/renesas-rzv2h: Enable SKIP_SET_WAKE and MASK_ON_SUSPEND
authorBiju Das <biju.das.jz@bp.renesas.com>
Tue, 1 Jul 2025 10:59:21 +0000 (11:59 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 1 Jul 2025 20:13:32 +0000 (22:13 +0200)
The interrupt controller found on RZ/G3E doesn't provide any facility to
configure the wakeup sources. That's the reason why the driver lacks the
irq_set_wake() callback for the interrupt chip.

But this prevent to properly enter power management states like "suspend to
idle".

Enable the flags IRQCHIP_SKIP_SET_WAKE and IRQCHIP_MASK_ON_SUSPEND so the
interrupt suspend logic can handle the chip correctly.

Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/all/20250701105923.52151-1-biju.das.jz@bp.renesas.com
drivers/irqchip/irq-renesas-rzv2h.c

index 57c5a3c008c91efd7589252a7c25eb649262f867..3daa5de0f05c64d3232154bb8452a1f4e96ee8a7 100644 (file)
@@ -427,7 +427,9 @@ static const struct irq_chip rzv2h_icu_chip = {
        .irq_retrigger          = irq_chip_retrigger_hierarchy,
        .irq_set_type           = rzv2h_icu_set_type,
        .irq_set_affinity       = irq_chip_set_affinity_parent,
-       .flags                  = IRQCHIP_SET_TYPE_MASKED,
+       .flags                  = IRQCHIP_MASK_ON_SUSPEND |
+                                 IRQCHIP_SET_TYPE_MASKED |
+                                 IRQCHIP_SKIP_SET_WAKE,
 };
 
 static int rzv2h_icu_alloc(struct irq_domain *domain, unsigned int virq, unsigned int nr_irqs,