PM: sleep: Drop dev_pm_skip_next_resume_phases()
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 3 Jul 2019 23:05:38 +0000 (01:05 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 4 Jul 2019 08:50:40 +0000 (10:50 +0200)
After recent hibernation-related changes, there are no more callers
of dev_pm_skip_next_resume_phases() except for the PM core itself
in which it is more straightforward to run the statements from
that function directly, so do that and drop it.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
drivers/base/power/main.c
include/linux/pm.h

index 1e84b8aa220f2f194b883126012df28dbc8ddf86..7fb2c39bc7254f308f7bb170ffabe6427aa448a1 100644 (file)
@@ -529,21 +529,6 @@ static void dpm_watchdog_clear(struct dpm_watchdog *wd)
 
 /*------------------------- Resume routines -------------------------*/
 
-/**
- * dev_pm_skip_next_resume_phases - Skip next system resume phases for device.
- * @dev: Target device.
- *
- * Make the core skip the "early resume" and "resume" phases for @dev.
- *
- * This function can be called by middle-layer code during the "noirq" phase of
- * system resume if necessary, but not by device drivers.
- */
-void dev_pm_skip_next_resume_phases(struct device *dev)
-{
-       dev->power.is_late_suspended = false;
-       dev->power.is_suspended = false;
-}
-
 /**
  * suspend_event - Return a "suspend" message for given "resume" one.
  * @resume_msg: PM message representing a system-wide resume transition.
@@ -681,6 +666,9 @@ Skip:
        dev->power.is_noirq_suspended = false;
 
        if (skip_resume) {
+               /* Make the next phases of resume skip the device. */
+               dev->power.is_late_suspended = false;
+               dev->power.is_suspended = false;
                /*
                 * The device is going to be left in suspend, but it might not
                 * have been in runtime suspend before the system suspended, so
@@ -689,7 +677,6 @@ Skip:
                 * device again.
                 */
                pm_runtime_set_suspended(dev);
-               dev_pm_skip_next_resume_phases(dev);
        }
 
 Out:
index 345d74a727e32835a5182d276ebae470b65acb63..283fb3defe56d394a7e7d9f6b0e7d9427d945639 100644 (file)
@@ -760,7 +760,6 @@ 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 dev_pm_skip_next_resume_phases(struct device *dev);
 extern bool dev_pm_may_skip_resume(struct device *dev);
 extern bool dev_pm_smart_suspend_and_suspended(struct device *dev);