History

Merge tag 'pm-5.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull power management fixes from Rafael Wysocki: "These fix three issues in the system-wide suspend and hibernation area related to PCI device PM handling by suspend-to-idle, device wakeup optimizations and arbitrary differences between suspend and hiberantion. Specifics: - Modify the PCI bus type's PM code to avoid putting devices left by their drivers in D0 on purpose during suspend to idle into low-power states as doing that may confuse the system resume callbacks of the drivers in question (Rafael Wysocki). - Avoid checking ACPI wakeup configuration during system-wide suspend for suspended devices that do not use ACPI-based wakeup to allow them to stay in suspend more often (Rafael Wysocki). - The last phase of hibernation is analogous to system-wide suspend also because on platforms with ACPI it passes control to the platform firmware to complete the transision, so make it indicate that by calling pm_set_suspend_via_firmware() to allow the drivers that care about this to do the right thing (Rafael Wysocki)" * tag 'pm-5.2-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: PCI: PM: Avoid possible suspend-to-idle issue ACPI: PM: Call pm_set_suspend_via_firmware() during hibernation ACPI/PCI: PM: Add missing wakeup.flags.valid checks

Linus Torvalds committed 7 years ago

Commit 702c31e2 parents 72cea7a d491f2b7 files · +48 −22Browse files

Showing the changes to kernel (1 of 7 files). Show all

Unified · Split

kernel/power/hibernate.c+2−2
@@ -129,7 +129,7 @@ static int hibernation_test(int level) { return 0; } · 128 unmodified lines
129static int platform_begin(int platform_mode)129static int platform_begin(int platform_mode)
130{130{
131 return (platform_mode && hibernation_ops) ?131 return (platform_mode && hibernation_ops) ?
132 hibernation_ops->begin() : 0;132 hibernation_ops->begin(PMSG_FREEZE) : 0;
133}133}
134 134
135/**135/**
@@ -542,7 +542,7 @@ int hibernation_platform_enter(void) · 406 unmodified lines
542 * hibernation_ops->finish() before saving the image, so we should let542 * hibernation_ops->finish() before saving the image, so we should let
543 * the firmware know that we're going to enter the sleep state after all543 * the firmware know that we're going to enter the sleep state after all
544 */544 */
545 error = hibernation_ops->begin();545 error = hibernation_ops->begin(PMSG_HIBERNATE);
546 if (error)546 if (error)
547 goto Close;547 goto Close;
548 548