1
0
mirror of https://github.com/systemd/systemd.git synced 2025-04-01 18:50:16 +03:00

sleep: doc update for multiple battery, acpi_btp support and freeze/thaw user.slice

This commit is contained in:
Sonali Srivastava 2022-08-26 19:23:42 +05:30 committed by Luca Boccassi
parent bf2cc3865a
commit 31a07872fa

View File

@ -77,21 +77,28 @@
<varlistentry>
<term>suspend-then-hibernate</term>
<listitem><para>A low power state where the system is initially suspended
(the state is stored in RAM) and then hibernated based on battery percentage
capacity. If the current battery capacity is higher than 5%, the system goes
back to suspend for interval calculated using battery discharge rate per hour.
<listitem><para>A low power state where initially user.slice unit is freezed.
If the hardware supports low-battery alarms (ACPI _BTP), then the system is
first suspended (the state is stored in RAM) and then hibernates if the system
is woken up by the hardware via ACPI low-battery signal. Unit user.slice is
thawed when system returns from hibernation. If the hardware does not support
low-battery alarms (ACPI _BTP), then the system is suspended based on battery's
current percentage capacity. If the current battery capacity is higher than 5%, the
system suspends for interval calculated using battery discharge rate per hour or
<command>HibernateDelaySec=</command>
if former is not available.
Battery discharge rate per hour is stored in a file which is created after
initial suspend-resume cycle. The value is calculated using battery decreasing
charge level a timespan. In case of manual wakeup before RTC alarm, the timespan
is the duration for which system was suspended. If the file does not exist or
has invalid value, initial suspend duration is set to
<command>HibernateDelaySec=</command>.
After wakeup via an RTC alarm, the battery discharge rate per hour is again
estimated. If the current battery charge level is equal to or less than 5%,
the system will be hibernated (the state is then stored on disk) else the
system goes back to suspend for the amount of time it would take to fully
discharge the battery minus 30 minutes.
charge level over a timespan for which system was suspended. For each battery
connected to the system, there is a unique entry. After RTC alarm wakeup from
suspend, battery discharge rate per hour is again estimated. If the current battery
charge level is equal to or less than 5%, the system will be hibernated (the state
is then stored on disk) else the system goes back to suspend for the interval
calculated using battery discharge rate per hour.
In case of manual wakeup, if the battery was discharged while the system was
suspended, the battery discharge rate is estimated and stored on the filesystem.
In case the system is woken up by the hardware via the ACPI low-battery signal,
then it hibernates.
</para></listitem>
</varlistentry>