|
@@ -47,6 +47,8 @@ const char *mem_sleep_states[PM_SUSPEND_MAX];
|
|
|
|
|
|
suspend_state_t mem_sleep_current = PM_SUSPEND_FREEZE;
|
|
|
static suspend_state_t mem_sleep_default = PM_SUSPEND_MEM;
|
|
|
+suspend_state_t pm_suspend_target_state;
|
|
|
+EXPORT_SYMBOL_GPL(pm_suspend_target_state);
|
|
|
|
|
|
unsigned int pm_suspend_global_flags;
|
|
|
EXPORT_SYMBOL_GPL(pm_suspend_global_flags);
|
|
@@ -456,6 +458,8 @@ int suspend_devices_and_enter(suspend_state_t state)
|
|
|
if (!sleep_state_supported(state))
|
|
|
return -ENOSYS;
|
|
|
|
|
|
+ pm_suspend_target_state = state;
|
|
|
+
|
|
|
error = platform_suspend_begin(state);
|
|
|
if (error)
|
|
|
goto Close;
|
|
@@ -485,6 +489,7 @@ int suspend_devices_and_enter(suspend_state_t state)
|
|
|
|
|
|
Close:
|
|
|
platform_resume_end(state);
|
|
|
+ pm_suspend_target_state = PM_SUSPEND_ON;
|
|
|
return error;
|
|
|
|
|
|
Recover_platform:
|