Next: SuspendSec, Previous: SuspendNvidia, Up: Top
###############################################
### BIG FAT WARNING BIG FAT WARNING BIG FAT ###
###############################################
severe file system corruption may occur which means: DANGER, DATA LOSS AHEAD. Please back up important data before trying suspend to RAM. In my experience, once you have found a setting that works, it is not dangerous at all, but you should keep an eye open. Use at your own risk. |
suspend to RAM with ACPI (S3) is still very experimental, but there are several machines that are known to work. There are several "hacks" that can be tried to actually get the machine to resume (suspend is usually not the problem, just the resume ;-)
Efforts to change this are going on, work is being done to implement a
"whitelist" of machines that are known to support suspend to RAM and the
needed workarounds (if any). This work is done in the "suspend" package
http://sourceforge.net/projects/suspend and there in the "s2ram" binary.
Support for s2ram is integrated into powersaved, it can be configured via
configuration variables in /etc/powersave/sleep
.
On machines that are known to s2ram, no configuration should be necessary.
On machines that are unknown to s2ram (check with sram -n
as root), you
need to set SUSPEND2RAM_FORCE=yes to override the detection, then configure
the workarounds (if needed) with the variables described below:
First, there are several kernel parameters, that can be tried out. Just
add them to your "kernel"-line in /boot/grub/menu.lst
. More information
about those can be found in /usr/src/linux/Documentation/power/video.txt
.
You can try the following:
acpi_sleep=s3_bios
acpi_sleep=s3_mode
acpi_sleep=s3_bios,s3_mode
vga=normal
", which will give you a simple text console
during boot (sorry, no fancy graphics for this one). You need to remove
the existing "vga=0x317
" or similar from the kernel command line and add
"vga=normal
" instead. Only one "vga=...
" should be present.vga=normal
can
(and probably has to) be combined with the acpi_sleep=...
parameters from
above.
The acpi_sleep parameter can also be set at runtime in /proc/sys/kernel/acpi_video_flags
,
or with the s2ram tool. In powersaved, the SUSPEND2RAM_ACPI_SLEEP
variable sets this, see the comment in the configuration file for details.
Another possibility is to save and restore the VBE settings of the graphics
card with the tool "vbetool
". This is experimental and you should only
use this if you know what you are doing. Example scripts for vbetool usage
can be found in the contrib directory.
Using s2ram, VBE saving/restoring can be achieved with the SUSPEND2RAM_VBE_SAVE
variable. VBE POST can be done with SUSPEND2RAM_VBE_POST
. Again, see the
comments in the config file for details.
In the (not too distant) past, often the advice was given to suspend from a runlevel without X, but due to recent improvements with various X server modules, this may not be the best advice anymore since in fact on some machines only the X server is capable of bringing the graphics card back correctly from suspend to RAM. On the Dell D600 for example, the display backlight stays off until the X server reinitializes the card.
There is a list of working machines and tricks how to get them work in the
linux kernel Documentation. If the linux kernel sources are installed, the
list can be found at
/usr/src/linux/Documentation/power/video.txt
.
If you find other machines that work with one of these (or if you cannot get machines mentioned here to work at all) feel free to contact us via the powersave-users mailinglist.