blob: 4416b28630df8d62cbba43e2fedb0cee42d6b3b1 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001
2System Power Management States
3
4
5The kernel supports three power management states generically, though
6each is dependent on platform support code to implement the low-level
7details for each state. This file describes each state, what they are
8commonly called, what ACPI state they map to, and what string to write
9to /sys/power/state to enter that state
10
11
12State: Standby / Power-On Suspend
13ACPI State: S1
14String: "standby"
15
16This state offers minimal, though real, power savings, while providing
17a very low-latency transition back to a working system. No operating
18state is lost (the CPU retains power), so the system easily starts up
19again where it left off.
20
21We try to put devices in a low-power state equivalent to D1, which
22also offers low power savings, but low resume latency. Not all devices
23support D1, and those that don't are left on.
24
25A transition from Standby to the On state should take about 1-2
26seconds.
27
28
29State: Suspend-to-RAM
30ACPI State: S3
31String: "mem"
32
33This state offers significant power savings as everything in the
34system is put into a low-power state, except for memory, which is
35placed in self-refresh mode to retain its contents.
36
37System and device state is saved and kept in memory. All devices are
38suspended and put into D3. In many cases, all peripheral buses lose
39power when entering STR, so devices must be able to handle the
40transition back to the On state.
41
42For at least ACPI, STR requires some minimal boot-strapping code to
43resume the system from STR. This may be true on other platforms.
44
45A transition from Suspend-to-RAM to the On state should take about
463-5 seconds.
47
48
49State: Suspend-to-disk
50ACPI State: S4
51String: "disk"
52
53This state offers the greatest power savings, and can be used even in
54the absence of low-level platform support for power management. This
55state operates similarly to Suspend-to-RAM, but includes a final step
56of writing memory contents to disk. On resume, this is read and memory
57is restored to its pre-suspend state.
58
59STD can be handled by the firmware or the kernel. If it is handled by
60the firmware, it usually requires a dedicated partition that must be
61setup via another operating system for it to use. Despite the
62inconvenience, this method requires minimal work by the kernel, since
63the firmware will also handle restoring memory contents on resume.
64
Alexandre Courbota8b72282011-02-24 20:48:56 +010065For suspend-to-disk, a mechanism called 'swsusp' (Swap Suspend) is used
66to write memory contents to free swap space. swsusp has some restrictive
67requirements, but should work in most cases. Some, albeit outdated,
68documentation can be found in Documentation/power/swsusp.txt.
69Alternatively, userspace can do most of the actual suspend to disk work,
70see userland-swsusp.txt.
Linus Torvalds1da177e2005-04-16 15:20:36 -070071
72Once memory state is written to disk, the system may either enter a
73low-power state (like ACPI S4), or it may simply power down. Powering
74down offers greater savings, and allows this mechanism to work on any
75system. However, entering a real low-power state allows the user to
Johannes Berg11d77d02007-04-30 15:09:53 -070076trigger wake up events (e.g. pressing a key or opening a laptop lid).
Linus Torvalds1da177e2005-04-16 15:20:36 -070077
78A transition from Suspend-to-Disk to the On state should take about 30
79seconds, though it's typically a bit more with the current
80implementation.