sleep-config: check sleep mode only when hibernation

With the previous change, this should only be used when
doing hibernation.
This commit is contained in:
Mike Yuan 2023-10-23 21:19:29 +08:00
parent 1f82c21dce
commit fefddffa53
No known key found for this signature in database
GPG key ID: 417471C0A40F58B3

View file

@ -309,15 +309,15 @@ static int sleep_supported_internal(
return false;
}
r = sleep_mode_supported(sleep_config->modes[operation]);
if (r < 0)
return r;
if (r == 0) {
*ret_support = SLEEP_STATE_OR_MODE_NOT_SUPPORTED;
return false;
}
if (IN_SET(operation, SLEEP_HIBERNATE, SLEEP_HYBRID_SLEEP)) {
r = sleep_mode_supported(sleep_config->modes[operation]);
if (r < 0)
return r;
if (r == 0) {
*ret_support = SLEEP_STATE_OR_MODE_NOT_SUPPORTED;
return false;
}
r = hibernation_is_safe();
if (r == -ENOTRECOVERABLE) {
*ret_support = SLEEP_RESUME_NOT_SUPPORTED;
@ -329,7 +329,8 @@ static int sleep_supported_internal(
}
if (r < 0)
return r;
}
} else
assert(!sleep_config->modes[operation]);
*ret_support = SLEEP_SUPPORTED;
return true;