History

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

Pull power management fix from Rafael Wysocki: "Avoid skipping bus-level PCI power management during system resume for PCIe ports left in D0 during the preceding suspend transition on platforms where the power states of those ports can change out of the PCI layer's control" * tag 'pm-5.2-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: PCI: PM: Avoid skipping bus-level PM on platforms without ACPI

Linus Torvalds committed 7 years ago

Commit 2407e482 parents 01305db 471a7393 files · +31 −6Browse files

Showing the changes to include/linux (1 of 3 files). Show all

Unified · Split

include/linux/suspend.h+24−2
@@ -209,8 +209,9 @@ extern int suspend_valid_only_mem(suspend_state_t state); · 208 unmodified lines
209 209
210extern unsigned int pm_suspend_global_flags;210extern unsigned int pm_suspend_global_flags;
211 211
212#define PM_SUSPEND_FLAG_FW_SUSPEND (1 << 0)212#define PM_SUSPEND_FLAG_FW_SUSPEND BIT(0)
213#define PM_SUSPEND_FLAG_FW_RESUME (1 << 1)213#define PM_SUSPEND_FLAG_FW_RESUME BIT(1)
214#define PM_SUSPEND_FLAG_NO_PLATFORM BIT(2)
214 215
215static inline void pm_suspend_clear_flags(void)216static inline void pm_suspend_clear_flags(void)
216{217{
@@ -227,6 +228,11 @@ static inline void pm_set_resume_via_firmware(void) · 10 unmodified lines
227 pm_suspend_global_flags |= PM_SUSPEND_FLAG_FW_RESUME;228 pm_suspend_global_flags |= PM_SUSPEND_FLAG_FW_RESUME;
228}229}
229 230
231static inline void pm_set_suspend_no_platform(void)
232{
233 pm_suspend_global_flags |= PM_SUSPEND_FLAG_NO_PLATFORM;
234}
235
230/**236/**
231 * pm_suspend_via_firmware - Check if platform firmware will suspend the system.237 * pm_suspend_via_firmware - Check if platform firmware will suspend the system.
232 *238 *
@@ -268,6 +274,22 @@ static inline bool pm_resume_via_firmware(void) · 35 unmodified lines
268 return !!(pm_suspend_global_flags & PM_SUSPEND_FLAG_FW_RESUME);274 return !!(pm_suspend_global_flags & PM_SUSPEND_FLAG_FW_RESUME);
269}275}
270 276
277/**
278 * pm_suspend_no_platform - Check if platform may change device power states.
279 *
280 * To be called during system-wide power management transitions to sleep states
281 * or during the subsequent system-wide transitions back to the working state.
282 *
283 * Return 'true' if the power states of devices remain under full control of the
284 * kernel throughout the system-wide suspend and resume cycle in progress (that
285 * is, if a device is put into a certain power state during suspend, it can be
286 * expected to remain in that state during resume).
287 */
288static inline bool pm_suspend_no_platform(void)
289{
290 return !!(pm_suspend_global_flags & PM_SUSPEND_FLAG_NO_PLATFORM);
291}
292
271/* Suspend-to-idle state machnine. */293/* Suspend-to-idle state machnine. */
272enum s2idle_states {294enum s2idle_states {
273 S2IDLE_STATE_NONE, /* Not suspended/suspending. */295 S2IDLE_STATE_NONE, /* Not suspended/suspending. */

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