[ltp] Resume hangs on X30 with 2.6.9 (SUCCESS!)

Nathan Kurz linux-thinkpad@linux-thinkpad.org
Mon, 6 Dec 2004 23:22:39 -0700


Just a note to say that with the help of this list, I now have
Suspend-to-Disk (S4) and Suspend-to-Ram (S3) working with a 2.6.9
kernel on my Thinkpad X30.  I'm using ACPI with the patches from
http://acpi.sourceforge.net/ and http://softwaresuspend.berlios.de/,
and booting with the acpi_sleep=s3_bios option and suspending from the
console and Xorg 6.8.1 both with and without DRI enabled.

Currently, I have things configured to suspend to ram on a lid-close
event via acpid and 'echo "mem" > /sys/power/state', and to suspend to
disk on a press of the Thinkpad button via tpb calling the swsusp2
hibernate script.  Battery usage when suspended to ram seems quite low
(overnight was no problem) but I haven't tested it fully.  I've had no
success with Standby mode under ACPI, but don't really need it with a
working Suspend to Ram (which should be much lower power consumption).

APM came very close to working for (and on occasion would work
perfectly for a while) but too often would hang on Resume from both S3
and S4.  System would appear to be coming back fine, LED's light, hard
drive spins, but keyboard unresponsive and connection from outside
network impossible.  This may be caused by the video driver (card?)
failing to be reinitialized properly, which is apparently what the
acpi_sleep=s3_bios kernel boot option handles for ACPI.

My impression was that Software Suspend (used by ACPI) and the BIOS
suspend (used by APM) are approximately equal in speed.  I have found
no way to call the BIOS hibernate from ACPI: has anyone?  Anyway, if
one was trying to get APM suspend working, one might look closely at
arch/i386/kernel/acpi/sleep.c and see what setting s3_bios actually
does, and then to try adding this effect to the APM sleep routine.  I
took a quick look, but don't understand the assembler language well.

I haven't tested things that hard yet, but so far I haven't had a
suspend fail.  Thanks for help offered, especially to Heiko.

Nathan Kurz
nate@verse.com