History

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.

Rafael J. Wysocki committed 7 years ago

Commit 3cd79571 parent a78ae453 files · +61 −71Browse files

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

Unified · Split

include/linux/acpi.h+0−10
@@ -918,26 +918,16 @@ int acpi_subsys_prepare(struct device *dev); · 917 unmodified lines
918918 void acpi_subsys_complete(struct device *dev);
919919 int acpi_subsys_suspend_late(struct device *dev);
920920 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);
923921 int acpi_subsys_suspend(struct device *dev);
924922 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);
928923 #else
929924 static inline int acpi_dev_resume_early(struct device *dev) { return 0; }
930925 static inline int acpi_subsys_prepare(struct device *dev) { return 0; }
931926 static inline void acpi_subsys_complete(struct device *dev) {}
932927 static inline int acpi_subsys_suspend_late(struct device *dev) { return 0; }
933928 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; }
936929 static inline int acpi_subsys_suspend(struct device *dev) { return 0; }
937930 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; }
941931 #endif
942932
943933 #ifdef CONFIG_ACPI

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