[PATCH 3/3] gpio: brcmstb: allow parent_irq to wake
Andy Shevchenko
andy.shevchenko at gmail.com
Wed Jan 21 23:44:48 PST 2026
On Thu, Jan 22, 2026 at 3:06 AM Florian Fainelli
<florian.fainelli at broadcom.com> wrote:
> The classic parent_wake_irq can only occur after the system has
> been placed into a hardware managed power management state. This
> prevents its use for waking from software managed suspend states
> like s2idle.
>
> By allowing the parent_irq to be enabled for wake enabled GPIO
> during suspend, these GPIO can now be used to wake from these
> states. The 'suspended' boolean is introduced to support wake
> event accounting.
...
> -static void brcmstb_gpio_quiesce(struct device *dev, bool save)
> +static void brcmstb_gpio_quiesce(struct brcmstb_gpio_priv *priv, bool save)
> {
> - struct brcmstb_gpio_priv *priv = dev_get_drvdata(dev);
> struct brcmstb_gpio_bank *bank;
> u32 imask;
>
> - /* disable non-wake interrupt */
> - if (priv->parent_irq >= 0)
> - disable_irq(priv->parent_irq);
> -
> list_for_each_entry(bank, &priv->bank_list, node) {
> if (save)
> brcmstb_gpio_bank_save(priv, bank);
> static void brcmstb_gpio_shutdown(struct platform_device *pdev)
One more thing, how is "save" being used? I can't see it other than a dead code.
--
With Best Regards,
Andy Shevchenko
More information about the linux-arm-kernel
mailing list