diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-02-26 20:22:53 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-02-26 20:22:53 -0500 |
commit | 06a79b82b2a3e4bebb9a20638ca208c780e9e507 (patch) | |
tree | 594a11b60ba56d7ae62f8affa4cd61836e70e4b1 /include/linux/pm.h | |
parent | 4912002fffa377e66c5caefc2c311732a4ad5fb8 (diff) | |
parent | a9c9b4429df437982d2fbfab1f4b46b01329e9ed (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
PM / Hibernate: Fix preallocating of memory
PM / Hibernate: Remove swsusp.c finally
PM / Hibernate: Remove trailing space in message
PM: Allow SCSI devices to suspend/resume asynchronously
PM: Allow USB devices to suspend/resume asynchronously
USB: implement non-tree resume ordering constraints for PCI host controllers
PM: Allow PCI devices to suspend/resume asynchronously
PM / Hibernate: Swap, remove useless check from swsusp_read()
PM / Hibernate: Really deprecate deprecated user ioctls
PM: Allow device drivers to use dpm_wait()
PM: Start asynchronous resume threads upfront
PM: Add facility for advanced testing of async suspend/resume
PM: Add a switch for disabling/enabling asynchronous suspend/resume
PM: Asynchronous suspend and resume of devices
PM: Add parent information to timing messages
PM: Document device power attributes in sysfs
PM / Runtime: Add sysfs switch for disabling device run-time PM
Diffstat (limited to 'include/linux/pm.h')
-rw-r--r-- | include/linux/pm.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/pm.h b/include/linux/pm.h index 198b8f9fe05e..e80df06ad22a 100644 --- a/include/linux/pm.h +++ b/include/linux/pm.h | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/spinlock.h> | 26 | #include <linux/spinlock.h> |
27 | #include <linux/wait.h> | 27 | #include <linux/wait.h> |
28 | #include <linux/timer.h> | 28 | #include <linux/timer.h> |
29 | #include <linux/completion.h> | ||
29 | 30 | ||
30 | /* | 31 | /* |
31 | * Callbacks for platform drivers to implement. | 32 | * Callbacks for platform drivers to implement. |
@@ -412,9 +413,11 @@ struct dev_pm_info { | |||
412 | pm_message_t power_state; | 413 | pm_message_t power_state; |
413 | unsigned int can_wakeup:1; | 414 | unsigned int can_wakeup:1; |
414 | unsigned int should_wakeup:1; | 415 | unsigned int should_wakeup:1; |
416 | unsigned async_suspend:1; | ||
415 | enum dpm_state status; /* Owned by the PM core */ | 417 | enum dpm_state status; /* Owned by the PM core */ |
416 | #ifdef CONFIG_PM_SLEEP | 418 | #ifdef CONFIG_PM_SLEEP |
417 | struct list_head entry; | 419 | struct list_head entry; |
420 | struct completion completion; | ||
418 | #endif | 421 | #endif |
419 | #ifdef CONFIG_PM_RUNTIME | 422 | #ifdef CONFIG_PM_RUNTIME |
420 | struct timer_list suspend_timer; | 423 | struct timer_list suspend_timer; |
@@ -430,6 +433,7 @@ struct dev_pm_info { | |||
430 | unsigned int request_pending:1; | 433 | unsigned int request_pending:1; |
431 | unsigned int deferred_resume:1; | 434 | unsigned int deferred_resume:1; |
432 | unsigned int run_wake:1; | 435 | unsigned int run_wake:1; |
436 | unsigned int runtime_auto:1; | ||
433 | enum rpm_request request; | 437 | enum rpm_request request; |
434 | enum rpm_status runtime_status; | 438 | enum rpm_status runtime_status; |
435 | int runtime_error; | 439 | int runtime_error; |
@@ -508,6 +512,7 @@ extern void __suspend_report_result(const char *function, void *fn, int ret); | |||
508 | __suspend_report_result(__func__, fn, ret); \ | 512 | __suspend_report_result(__func__, fn, ret); \ |
509 | } while (0) | 513 | } while (0) |
510 | 514 | ||
515 | extern void device_pm_wait_for_dev(struct device *sub, struct device *dev); | ||
511 | #else /* !CONFIG_PM_SLEEP */ | 516 | #else /* !CONFIG_PM_SLEEP */ |
512 | 517 | ||
513 | #define device_pm_lock() do {} while (0) | 518 | #define device_pm_lock() do {} while (0) |
@@ -520,6 +525,7 @@ static inline int dpm_suspend_start(pm_message_t state) | |||
520 | 525 | ||
521 | #define suspend_report_result(fn, ret) do {} while (0) | 526 | #define suspend_report_result(fn, ret) do {} while (0) |
522 | 527 | ||
528 | static inline void device_pm_wait_for_dev(struct device *a, struct device *b) {} | ||
523 | #endif /* !CONFIG_PM_SLEEP */ | 529 | #endif /* !CONFIG_PM_SLEEP */ |
524 | 530 | ||
525 | /* How to reorder dpm_list after device_move() */ | 531 | /* How to reorder dpm_list after device_move() */ |