Re: System fails to exit s2idle by a keystroke on my laptop

From: Chris Chiu
Date: Wed May 06 2020 - 23:38:52 EST


On Wed, May 6, 2020 at 6:19 PM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote:
>
> On Wed, May 6, 2020 at 11:32 AM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote:
> >
> >
> > Thanks for the report, the issue evidently is EC-related.
> >
> > > @@ -1024,7 +1024,7 @@ static bool acpi_s2idle_wake(void)
> > > * regarded as a spurious one.
> > > */
> > > if (!acpi_ec_dispatch_gpe())
> > > - return false;
> > > + return true;
> >
> > Have you tried commenting out simply removing the if () check and the
> > following return statement?
>
> Scratch that.
>
> Instead, please try doing
>
> acpi_ec_dispatch_gpe()
>
> instead of the if () and the following return statement.

Yes. I verified with the modification you suggested on my laptop. It's
working OK.
I can wake from a keystroke w/o problem.

@ -1024,8 +1024,7 @@ static bool acpi_s2idle_wake(void)
* If the EC GPE status bit has not been set, the wakeup is
* regarded as a spurious one.
*/
- if (!acpi_ec_dispatch_gpe())
- return false;
+ acpi_ec_dispatch_gpe();

/*
* Cancel the wakeup and process all pending events in case