PM / sleep: Fix entering suspend-to-IDLE if no freeze_oops is set

If no freeze_ops is set, trying to enter suspend-to-IDLE will cause a
nice oops in platform_suspend_prepare_late(). Add respective checks to
platform_suspend_prepare_late() and platform_resume_early() functions.

Fixes: a8d46b9e4e (ACPI / sleep: Rework the handling of ACPI GPE wakeup ...)
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Dmitry Eremin-Solenikov 2014-11-08 19:17:13 +03:00 committed by Rafael J. Wysocki
parent 0df1f2487d
commit 403b9636fe

View File

@ -146,7 +146,7 @@ static int platform_suspend_prepare(suspend_state_t state)
static int platform_suspend_prepare_late(suspend_state_t state) static int platform_suspend_prepare_late(suspend_state_t state)
{ {
return state == PM_SUSPEND_FREEZE && freeze_ops->prepare ? return state == PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->prepare ?
freeze_ops->prepare() : 0; freeze_ops->prepare() : 0;
} }
@ -164,7 +164,7 @@ static void platform_resume_noirq(suspend_state_t state)
static void platform_resume_early(suspend_state_t state) static void platform_resume_early(suspend_state_t state)
{ {
if (state == PM_SUSPEND_FREEZE && freeze_ops->restore) if (state == PM_SUSPEND_FREEZE && freeze_ops && freeze_ops->restore)
freeze_ops->restore(); freeze_ops->restore();
} }