Re: [PATCH] ACPI / sleep: EC-based wakeup from suspend-to-idle on recent systems

From: Rafael J. Wysocki
Date: Fri Jun 23 2017 - 08:36:44 EST


On Friday, June 23, 2017 02:13:57 PM Rafael J. Wysocki wrote:
> On Friday, June 23, 2017 06:30:35 AM Zheng, Lv wrote:
> > Hi, Rafael
> >
>
> [cut]
>
> > >
> > > Index: linux-pm/drivers/acpi/ec.c
> > > ===================================================================
> > > --- linux-pm.orig/drivers/acpi/ec.c
> > > +++ linux-pm/drivers/acpi/ec.c
> > > @@ -1835,7 +1835,7 @@ static int acpi_ec_suspend(struct device
> > > struct acpi_ec *ec =
> > > acpi_driver_data(to_acpi_device(dev));
> > >
> > > - if (ec_freeze_events)
> > > + if (acpi_sleep_no_ec_events() && ec_freeze_events)
> > > acpi_ec_disable_event(ec);
> > > return 0;
> > > }
> >
> > I just notice a slight pontential issue.
> > Should we add a similar change to acpi_ec_stop()?
>
> Yes, it looks like that, thanks!

Actually, no, I don't think so, because acpi_ec_block_transactions() is not
used for suspend-to-idle, but I need a separate variable for that, because
pm_suspend_via_firmware() also returns "false" for hibernation.

Thanks,
Rafael