Skip to content

Commit 4110b5c

Browse files
author
Marc Zyngier
committed
irqchip/gic-v3: Allow interrupt to be configured as wake-up sources
Although GICv3 doesn't directly offers support for wake-up interrupts and relies on external HW for this, it shouldn't prevent the driver for such HW from doing it work. Let's set the required flags on the irq_chip structures. Reported-by: Lina Iyer <ilina@codeaurora.org> Tested-by: Lina Iyer <ilina@codeaurora.org> Reviewed-by: Sudeep Holla <sudeep.holla@arm.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
1 parent 44beda0 commit 4110b5c

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

drivers/irqchip/irq-gic-v3.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -861,7 +861,9 @@ static struct irq_chip gic_chip = {
861861
.irq_set_affinity = gic_set_affinity,
862862
.irq_get_irqchip_state = gic_irq_get_irqchip_state,
863863
.irq_set_irqchip_state = gic_irq_set_irqchip_state,
864-
.flags = IRQCHIP_SET_TYPE_MASKED,
864+
.flags = IRQCHIP_SET_TYPE_MASKED |
865+
IRQCHIP_SKIP_SET_WAKE |
866+
IRQCHIP_MASK_ON_SUSPEND,
865867
};
866868

867869
static struct irq_chip gic_eoimode1_chip = {
@@ -874,7 +876,9 @@ static struct irq_chip gic_eoimode1_chip = {
874876
.irq_get_irqchip_state = gic_irq_get_irqchip_state,
875877
.irq_set_irqchip_state = gic_irq_set_irqchip_state,
876878
.irq_set_vcpu_affinity = gic_irq_set_vcpu_affinity,
877-
.flags = IRQCHIP_SET_TYPE_MASKED,
879+
.flags = IRQCHIP_SET_TYPE_MASKED |
880+
IRQCHIP_SKIP_SET_WAKE |
881+
IRQCHIP_MASK_ON_SUSPEND,
878882
};
879883

880884
#define GIC_ID_NR (1U << GICD_TYPER_ID_BITS(gic_data.rdists.gicd_typer))

0 commit comments

Comments
 (0)