Re: [PATCH v3 0/8] PM / ACPI: sleep: Additional changes related to suspend-to-idle

From: Bhardwaj, Rajneesh
Date: Mon Aug 12 2019 - 09:55:23 EST


Hi Rafael

On 02-Aug-19 4:03 PM, Rafael J. Wysocki wrote:
Hi All,

On top of the "Simplify the suspend-to-idle control flow" patch series
posted previously:

https://lore.kernel.org/lkml/71085220.z6FKkvYQPX@kreacher/

sanitize the suspend-to-idle flow even further.

First off, decouple EC wakeup from the LPS0 _DSM processing (patch 1).

Next, reorder the code to invoke LPS0 _DSM Functions 5 and 6 in the
specification-compliant order with respect to suspending and resuming
devices (patch 2).

Finally, rearrange lps0_device_attach() (patch 3) and add a command line
switch to prevent the LPS0 _DSM from being used.
The v2 is because I found a (minor) bug in patch 1, decided to use a module
parameter instead of a kernel command line option in patch 4. Also, there
are 4 new patches:

Patch 5: Switch the EC over to polling during "noirq" suspend and back
during "noirq" resume.

Patch 6: Eliminate acpi_sleep_no_ec_events().

Patch 7: Consolidate some EC code depending on PM_SLEEP.

Patch 8: Add EC GPE dispatching debug message.
The v3 is just a rearranged v2 so as to move the post sensitive patch (previous patch 2)
to the end of the series. [After applying the full series the code is the same as before.]

For easier testing, the series (along with some previous patches depended on by it)
is available in the pm-s2idle-testing branch of the linux-pm.git tree at kernel.org:

https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git/log/?h=pm-s2idle-testing

Please refer to the changelogs for details.


I have tested both pm-s2idle-testing and pm-s2idle-rework branches including recently introduced commit "PM: suspend: Fix platform_suspend_prepare_noirq()".

Works fine for me on Ice Lake platform.

ÂAcked-by: Rajneesh Bhardwaj <rajneesh.bhardwaj@xxxxxxxxxxxxxxx>

Tested-by: Rajneesh Bhardwaj <rajneesh.bhardwaj@xxxxxxxxxxxxxxx>


Thanks,
Rafael