Commit 9a58480e authored by Stefan Wahren's avatar Stefan Wahren Committed by Thomas Gleixner

irqchip/bcm2835: Enable SKIP_SET_WAKE and MASK_ON_SUSPEND

The BCM2835 ARMCTRL interrupt controller 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: default avatarStefan Wahren <wahrenst@gmx.net>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Reviewed-by: default avatarFlorian Fainelli <florian.fainelli@broadcom.com>
parent a84a07fa
...@@ -102,7 +102,9 @@ static void armctrl_unmask_irq(struct irq_data *d) ...@@ -102,7 +102,9 @@ static void armctrl_unmask_irq(struct irq_data *d)
static struct irq_chip armctrl_chip = { static struct irq_chip armctrl_chip = {
.name = "ARMCTRL-level", .name = "ARMCTRL-level",
.irq_mask = armctrl_mask_irq, .irq_mask = armctrl_mask_irq,
.irq_unmask = armctrl_unmask_irq .irq_unmask = armctrl_unmask_irq,
.flags = IRQCHIP_MASK_ON_SUSPEND |
IRQCHIP_SKIP_SET_WAKE,
}; };
static int armctrl_xlate(struct irq_domain *d, struct device_node *ctrlr, static int armctrl_xlate(struct irq_domain *d, struct device_node *ctrlr,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment