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 include/linux (2 of 7 files). Show all

Unified · Split

2 files
  1. include/linux/pci.h +1 −0
  2. include/linux/suspend.h +1 −1
include/linux/pci.h+1−0
@@ -344,6 +344,7 @@ struct pci_dev { · 343 unmodified lines
344344 D3cold, not set for devices
345345 powered on/off by the
346346 corresponding bridge */
347+ unsigned int skip_bus_pm:1; /* Internal: Skip bus-level PM */
347348 unsigned int ignore_hotplug:1; /* Ignore hotplug events */
348349 unsigned int hotplug_user_indicators:1; /* SlotCtl indicators
349350 controlled exclusively by
include/linux/suspend.h+1−1
@@ -359,7 +359,7 @@ extern void mark_free_pages(struct zone *zone); · 358 unmodified lines
359359 * platforms which require special recovery actions in that situation.
360360 */
361361 struct platform_hibernation_ops {
362− int (*begin)(void);
362+ int (*begin)(pm_message_t stage);
363363 void (*end)(void);
364364 int (*pre_snapshot)(void);
365365 void (*finish)(void);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t