diff options
| author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2019-07-01 06:54:10 -0400 |
|---|---|---|
| committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2019-07-02 18:13:24 -0400 |
| commit | 3cd7957e85e67120bb9f6bfb75d81dcc19af282b (patch) | |
| tree | b5e9da69765e55e66f9162d502b726fc273614fe /include/linux/acpi.h | |
| parent | a78ae45a795aa579efa4094729073bbdab02da25 (diff) | |
ACPI: PM: Simplify and fix PM domain hibernation callbacks
First, after a previous change causing all runtime-suspended devices
in the ACPI PM domain (and ACPI LPSS devices) to be resumed before
creating a snapshot image of memory during hibernation, it is not
necessary to worry about the case in which them might be left in
runtime-suspend any more, so get rid of the code related to that from
ACPI PM domain and ACPI LPSS hibernation callbacks.
Second, it is not correct to use pm_generic_resume_early() and
acpi_subsys_resume_noirq() in hibernation "restore" callbacks (which
currently happens in the ACPI PM domain and ACPI LPSS), so introduce
proper _restore_late and _restore_noirq callbacks for the ACPI PM
domain and ACPI LPSS.
Fixes: 05087360fd7a (ACPI / PM: Take SMART_SUSPEND driver flag into account)
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'include/linux/acpi.h')
| -rw-r--r-- | include/linux/acpi.h | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/include/linux/acpi.h b/include/linux/acpi.h index d315d86844e4..ea7415440901 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h | |||
| @@ -918,26 +918,16 @@ int acpi_subsys_prepare(struct device *dev); | |||
| 918 | void acpi_subsys_complete(struct device *dev); | 918 | void acpi_subsys_complete(struct device *dev); |
| 919 | int acpi_subsys_suspend_late(struct device *dev); | 919 | int acpi_subsys_suspend_late(struct device *dev); |
| 920 | int acpi_subsys_suspend_noirq(struct device *dev); | 920 | int acpi_subsys_suspend_noirq(struct device *dev); |
| 921 | int acpi_subsys_resume_noirq(struct device *dev); | ||
| 922 | int acpi_subsys_resume_early(struct device *dev); | ||
| 923 | int acpi_subsys_suspend(struct device *dev); | 921 | int acpi_subsys_suspend(struct device *dev); |
| 924 | int acpi_subsys_freeze(struct device *dev); | 922 | int acpi_subsys_freeze(struct device *dev); |
| 925 | int acpi_subsys_freeze_late(struct device *dev); | ||
| 926 | int acpi_subsys_freeze_noirq(struct device *dev); | ||
| 927 | int acpi_subsys_thaw_noirq(struct device *dev); | ||
| 928 | #else | 923 | #else |
| 929 | static inline int acpi_dev_resume_early(struct device *dev) { return 0; } | 924 | static inline int acpi_dev_resume_early(struct device *dev) { return 0; } |
| 930 | static inline int acpi_subsys_prepare(struct device *dev) { return 0; } | 925 | static inline int acpi_subsys_prepare(struct device *dev) { return 0; } |
| 931 | static inline void acpi_subsys_complete(struct device *dev) {} | 926 | static inline void acpi_subsys_complete(struct device *dev) {} |
| 932 | static inline int acpi_subsys_suspend_late(struct device *dev) { return 0; } | 927 | static inline int acpi_subsys_suspend_late(struct device *dev) { return 0; } |
| 933 | static inline int acpi_subsys_suspend_noirq(struct device *dev) { return 0; } | 928 | static inline int acpi_subsys_suspend_noirq(struct device *dev) { return 0; } |
| 934 | static inline int acpi_subsys_resume_noirq(struct device *dev) { return 0; } | ||
| 935 | static inline int acpi_subsys_resume_early(struct device *dev) { return 0; } | ||
| 936 | static inline int acpi_subsys_suspend(struct device *dev) { return 0; } | 929 | static inline int acpi_subsys_suspend(struct device *dev) { return 0; } |
| 937 | static inline int acpi_subsys_freeze(struct device *dev) { return 0; } | 930 | static inline int acpi_subsys_freeze(struct device *dev) { return 0; } |
| 938 | static inline int acpi_subsys_freeze_late(struct device *dev) { return 0; } | ||
| 939 | static inline int acpi_subsys_freeze_noirq(struct device *dev) { return 0; } | ||
| 940 | static inline int acpi_subsys_thaw_noirq(struct device *dev) { return 0; } | ||
| 941 | #endif | 931 | #endif |
| 942 | 932 | ||
| 943 | #ifdef CONFIG_ACPI | 933 | #ifdef CONFIG_ACPI |
