Re: [PATCH] pinctrl: amd: Fix an issue with shutdown when system set to s0ix

From: Gabriel C
Date: Wed Aug 11 2021 - 08:22:05 EST


Am Mi., 11. Aug. 2021 um 10:26 Uhr schrieb Gabriel C
<nix.or.die@xxxxxxxxxxxxxx>:
>
> Am Mo., 9. Aug. 2021 um 22:15 Uhr schrieb Mario Limonciello
> <mario.limonciello@xxxxxxx>:
> >
> > IRQs are getting armed on shutdown causing the system to immediately
> > wake back up.
> >
> > Link: https://lkml.org/lkml/2021/8/2/1114
> > Reported-by: nix.or.die@xxxxxxxxxxxxxx
> > CC: Raul E Rangel <rrangel@xxxxxxxxxxxx>
> > Fixes: d62bd5ce12d7 ("pinctrl: amd: Implement irq_set_wake")
> > Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx>
> > ---
> > drivers/pinctrl/pinctrl-amd.c | 3 +--
> > 1 file changed, 1 insertion(+), 2 deletions(-)
> >
> > diff --git a/drivers/pinctrl/pinctrl-amd.c b/drivers/pinctrl/pinctrl-amd.c
> > index a76be6cc26ee..5b764740b829 100644
> > --- a/drivers/pinctrl/pinctrl-amd.c
> > +++ b/drivers/pinctrl/pinctrl-amd.c
> > @@ -444,8 +444,7 @@ static int amd_gpio_irq_set_wake(struct irq_data *d, unsigned int on)
> > unsigned long flags;
> > struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
> > struct amd_gpio *gpio_dev = gpiochip_get_data(gc);
> > - u32 wake_mask = BIT(WAKE_CNTRL_OFF_S0I3) | BIT(WAKE_CNTRL_OFF_S3) |
> > - BIT(WAKE_CNTRL_OFF_S4);
> > + u32 wake_mask = BIT(WAKE_CNTRL_OFF_S0I3) | BIT(WAKE_CNTRL_OFF_S3);
> >
> > raw_spin_lock_irqsave(&gpio_dev->lock, flags);
> > pin_reg = readl(gpio_dev->base + (d->hwirq)*4);
> > --
>
> Is working fine again with this fix.
>

Ofc feel free to add:

Tested-by: Gabriel Craciunescu <nix.or.die@xxxxxxxxx>

Best Regards