Skip to content

Commit

Permalink
PM: sleep: Integrate suspend-to-idle with generig suspend flow
Browse files Browse the repository at this point in the history
After previous changes the suspend-to-idle code flow can be
integrated more tightly with the generic system suspend code flow
by making suspend_enter() call s2idle_loop() later and removing
the direct invocations of dpm_noirq_begin(),
dpm_noirq_suspend_devices(), dpm_noirq_end(), and
dpm_noirq_resume_devices() from the latter, so do that.

This change is not expected to alter functionality.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
  • Loading branch information
rafaeljw committed Jul 23, 2019
1 parent 56b9918 commit 8eb0fd3
Showing 1 changed file with 5 additions and 16 deletions.
21 changes: 5 additions & 16 deletions kernel/power/suspend.c
Original file line number Diff line number Diff line change
Expand Up @@ -119,13 +119,6 @@ static void s2idle_enter(void)

static void s2idle_loop(void)
{
int error;

dpm_noirq_begin();
error = dpm_noirq_suspend_devices(PMSG_SUSPEND);
if (error)
goto resume;

pm_pr_dbg("suspend-to-idle\n");

/*
Expand All @@ -150,10 +143,6 @@ static void s2idle_loop(void)
}

pm_pr_dbg("resume from suspend-to-idle\n");

resume:
dpm_noirq_resume_devices(PMSG_RESUME);
dpm_noirq_end();
}

void s2idle_wake(void)
Expand Down Expand Up @@ -408,11 +397,6 @@ static int suspend_enter(suspend_state_t state, bool *wakeup)
if (error)
goto Devices_early_resume;

if (state == PM_SUSPEND_TO_IDLE && pm_test_level != TEST_PLATFORM) {
s2idle_loop();
goto Platform_early_resume;
}

error = dpm_suspend_noirq(PMSG_SUSPEND);
if (error) {
pr_err("noirq suspend of devices failed\n");
Expand All @@ -425,6 +409,11 @@ static int suspend_enter(suspend_state_t state, bool *wakeup)
if (suspend_test(TEST_PLATFORM))
goto Platform_wake;

if (state == PM_SUSPEND_TO_IDLE) {
s2idle_loop();
goto Platform_wake;
}

error = suspend_disable_secondary_cpus();
if (error || suspend_test(TEST_CPUS))
goto Enable_cpus;
Expand Down

0 comments on commit 8eb0fd3

Please sign in to comment.