Bug xxx: On AMD platforms only offer s2idle w/ proper FW
4b84d8d...
by
Mario Limonciello <email address hidden>
acpi: sleep: Don't offer s2idle on AMD platforms without LPS0
On some OEM platforms a BIOS option is offered that will set the
sleep mode between S3 and S2idle. This option will change certain HW
behaviors. When in S2idle mode, Linux works properly. However when S3 mode
is picked but the user chooses S2idle in Linux the platform may not be
properly resumed.
To avoid users getting into this situation, don't offer s2idle on AMD
systems missing the LPS0 device either by a BIOS option or by using the
acpi "no_sleep_lps0" module parameter.
c06fe7d...
by
Mario Limonciello <email address hidden>
PM: sleep: Don't always assume s2idle will be enabled
Some platforms may require firmware support for s2idle to work
properly, so allow other drivers that set s2idle ops to decide whether
to offer it on a given platform.
This should be no functional change for any platform.
Reviewed-by: Basavaraj Natikar <email address hidden>
Signed-off-by: Mario Limonciello <email address hidden>
(cherry picked from https://lore<email address hidden>/)
Signed-off-by: You-Sheng Yang <email address hidden>
c4bb28d...
by
Mario Limonciello <email address hidden>
PM: suspend: Move some structure declarations around
Future patches will modify members of these structures dependent
upon these locations. Move the structure declarations first to
make those patches easier to consume.
Reviewed-by: Basavaraj Natikar <email address hidden>
Signed-off-by: Mario Limonciello <email address hidden>
(cherry picked from https://lore<email address hidden>/)
Signed-off-by: You-Sheng Yang <email address hidden>
9a3e11d...
by
"Rafael J. Wysocki" <email address hidden>
PM: suspend: Use valid_state() consistently
Make valid_state() check if the ->enter callback is present in
suspend_ops (only PM_SUSPEND_TO_IDLE can be valid otherwise) and
make sleep_state_supported() call valid_state() consistently to
validate the states other than PM_SUSPEND_TO_IDLE.
While at it, clean up the comment in valid_state().
No expected functional impact.
Signed-off-by: Rafael J. Wysocki <email address hidden>
(cherry picked from commit 9f6abfcd67aae51374b4e8aa0b11f0ebd0d8562f)
Signed-off-by: You-Sheng Yang <email address hidden>
The patch was in upstream as commit d60cd06331a3 "PM: ACPI: reboot: Use
S5 for reboot", but later got reverted by commit 9d3fcb28f9b9 because
reboot caused kernel panic on one system.
The most likely culprit is driver's reboot notifier callback and/or
shutdown callback didn't handle reboot properly. However, the affected
user didn't plan to find the root cause and just wanted a simple revert.
This patch is however quite important for many ACPI based system, as
many reboot stress woe can be addressed by it.