mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-24 13:44:26 -04:00
Merge branch 'pm-sleep'
* pm-sleep: PM / hibernate: fix a comment typo input: i8042: Avoid resetting controller on system suspend/resume PM / PCI / ACPI: Kick devices that might have been reset by firmware PM / sleep: Add flags to indicate platform firmware involvement PM / sleep: Drop pm_request_idle() from pm_generic_complete() PCI / PM: Avoid resuming more devices during system suspend PM / wakeup: wakeup_source_create: use kstrdup_const PM / sleep: Report interrupt that caused system wakeup
This commit is contained in:
commit
9bb4064ca3
16 changed files with 208 additions and 42 deletions
|
|
@ -732,6 +732,7 @@ extern int pm_generic_poweroff_noirq(struct device *dev);
|
|||
extern int pm_generic_poweroff_late(struct device *dev);
|
||||
extern int pm_generic_poweroff(struct device *dev);
|
||||
extern void pm_generic_complete(struct device *dev);
|
||||
extern void pm_complete_with_resume_check(struct device *dev);
|
||||
|
||||
#else /* !CONFIG_PM_SLEEP */
|
||||
|
||||
|
|
|
|||
|
|
@ -202,6 +202,36 @@ struct platform_freeze_ops {
|
|||
extern void suspend_set_ops(const struct platform_suspend_ops *ops);
|
||||
extern int suspend_valid_only_mem(suspend_state_t state);
|
||||
|
||||
extern unsigned int pm_suspend_global_flags;
|
||||
|
||||
#define PM_SUSPEND_FLAG_FW_SUSPEND (1 << 0)
|
||||
#define PM_SUSPEND_FLAG_FW_RESUME (1 << 1)
|
||||
|
||||
static inline void pm_suspend_clear_flags(void)
|
||||
{
|
||||
pm_suspend_global_flags = 0;
|
||||
}
|
||||
|
||||
static inline void pm_set_suspend_via_firmware(void)
|
||||
{
|
||||
pm_suspend_global_flags |= PM_SUSPEND_FLAG_FW_SUSPEND;
|
||||
}
|
||||
|
||||
static inline void pm_set_resume_via_firmware(void)
|
||||
{
|
||||
pm_suspend_global_flags |= PM_SUSPEND_FLAG_FW_RESUME;
|
||||
}
|
||||
|
||||
static inline bool pm_suspend_via_firmware(void)
|
||||
{
|
||||
return !!(pm_suspend_global_flags & PM_SUSPEND_FLAG_FW_SUSPEND);
|
||||
}
|
||||
|
||||
static inline bool pm_resume_via_firmware(void)
|
||||
{
|
||||
return !!(pm_suspend_global_flags & PM_SUSPEND_FLAG_FW_RESUME);
|
||||
}
|
||||
|
||||
/* Suspend-to-idle state machnine. */
|
||||
enum freeze_state {
|
||||
FREEZE_STATE_NONE, /* Not suspended/suspending. */
|
||||
|
|
@ -241,6 +271,12 @@ extern int pm_suspend(suspend_state_t state);
|
|||
#else /* !CONFIG_SUSPEND */
|
||||
#define suspend_valid_only_mem NULL
|
||||
|
||||
static inline void pm_suspend_clear_flags(void) {}
|
||||
static inline void pm_set_suspend_via_firmware(void) {}
|
||||
static inline void pm_set_resume_via_firmware(void) {}
|
||||
static inline bool pm_suspend_via_firmware(void) { return false; }
|
||||
static inline bool pm_resume_via_firmware(void) { return false; }
|
||||
|
||||
static inline void suspend_set_ops(const struct platform_suspend_ops *ops) {}
|
||||
static inline int pm_suspend(suspend_state_t state) { return -ENOSYS; }
|
||||
static inline bool idle_should_freeze(void) { return false; }
|
||||
|
|
@ -387,10 +423,12 @@ extern int unregister_pm_notifier(struct notifier_block *nb);
|
|||
|
||||
/* drivers/base/power/wakeup.c */
|
||||
extern bool events_check_enabled;
|
||||
extern unsigned int pm_wakeup_irq;
|
||||
|
||||
extern bool pm_wakeup_pending(void);
|
||||
extern void pm_system_wakeup(void);
|
||||
extern void pm_wakeup_clear(void);
|
||||
extern void pm_system_irq_wakeup(unsigned int irq_number);
|
||||
extern bool pm_get_wakeup_count(unsigned int *count, bool block);
|
||||
extern bool pm_save_wakeup_count(unsigned int count);
|
||||
extern void pm_wakep_autosleep_enabled(bool set);
|
||||
|
|
@ -440,6 +478,7 @@ static inline int unregister_pm_notifier(struct notifier_block *nb)
|
|||
static inline bool pm_wakeup_pending(void) { return false; }
|
||||
static inline void pm_system_wakeup(void) {}
|
||||
static inline void pm_wakeup_clear(void) {}
|
||||
static inline void pm_system_irq_wakeup(unsigned int irq_number) {}
|
||||
|
||||
static inline void lock_system_sleep(void) {}
|
||||
static inline void unlock_system_sleep(void) {}
|
||||
|
|
|
|||
Loading…
Reference in a new issue