Skip to contentSkip to conversation

Resume problems on Fujitsu-Siemens AMILO M7440G

DISCUSSION Michael Schierl 3 participants 7 messages Mar 2, 2006 – Mar 21, 2006

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Hi,

My new notebook, a Fujitsu-Siemens AMILO M7440G, does not resume after suspend (echo mem >/sys/power/state).

Since my old notebook worked with APM, ACPI stuff is quite new for me; I
tried several things but with no success.

What happens:

- I boot a minimal kernel (vanilla 2.6.15.2), with init=/bin/bash to minimize userspace problems (root fs = ext3, mounted read only)
- I mount /sys and echo mem >/sys/power/state
- my notebook seems to suspend properly, everything powers down, power LED is flashing. (I cannot eject CD now)
- when pressing the power button (the notebook cannot be waken up by pressing keys on the keyboard, but that is the same on Windows, so most likely by design), the power LED changes to light (without flashing), and the CDROM spins up. (Now I can eject CD). Screen is dark and remains so until I power it down hard (by pressing power button for 5 seconds).
- when compiling in network support and netconsole support (and enabling netconsole to maybe get error messages), the
behaviour changes: the CDROM still spins up but the power LED remains flashing. (you can find the .config at
http://home.arcor.de/mschierlm/test/acpi/_config ) No reaction on the net console after suspend.
- The notebook does not have any serial ports.

Next I patched the kernel with acpi-release-20050902-2.6.15.diff.bz2, no changes. Patching it with acpi-test-20051216-2.6.15.diff.bz2 (after unapplying the old patch), no changes either. The reaction with a "non-minimal" kernel is like the one with the minimal one.

Next I downloaded acpica-unix-20060217.tar.gz and decompiled my DSDT. Result is in same place as _config. Recompiling it only creates one warning about no return value in _WAK. There are lots of tutorials around, some say it does not matter, others say I should add a return value. So I added a return value, but did not notice any changes in behaviour.

The next issue was to check if the dsdt uses any _OS checks. The only match for _OS in the file is in line

If (CondRefOf (_OSI, Local0))

which is quite unrelated I guess (I don't understand that ACPI "programming language", but it seems that _OSI is something else than _OS). So if I understood the tutorial correctly, there is no need to try different ACPI os names.

I'm out of ideas now.

Any suggestions what to do to make my new notebook suspend on Linux? It suspends fine on Windows and the latest BIOS update is installed.

Please CC me since I am not on the list. Thank you,

Michael

#1 lore raw
Quoted 26 lines · Michael Schierl

Hi,

My new notebook, a Fujitsu-Siemens AMILO M7440G, does not resume after
suspend (echo mem >/sys/power/state).

Since my old notebook worked with APM, ACPI stuff is quite new for me; I
tried several things but with no success.

What happens:

- I boot a minimal kernel (vanilla 2.6.15.2), with init=/bin/bash to minimize userspace problems (root fs = ext3, mounted read only)
- I mount /sys and echo mem >/sys/power/state
- my notebook seems to suspend properly, everything powers down, power
LED is flashing. (I cannot eject CD now)
- when pressing the power button (the notebook cannot be waken up by pressing keys on the keyboard, but that is the same on Windows, so most likely by design), the power LED changes to light (without flashing), and the CDROM spins up. (Now I can eject CD). Screen is dark and remains so until I power it down hard (by pressing power button for 5 seconds).
- when compiling in network support and netconsole support (and enabling

Quoted 8 lines

netconsole to maybe get error messages), the
behaviour changes: the CDROM still spins up but the power LED
remains
flashing. (you can find the .config at
http://home.arcor.de/mschierlm/test/acpi/_config ) No reaction on
the
net console after suspend.
- The notebook does not have any serial ports.

If the video is dark, please try the boot options listed in documentation/power/video.txt.
Did the keyboard response after resume?

Thanks,
Shaohua

#2 lore raw

Hi Shaohua,

Quoted 4 lines · Shaohua Li

On Fri, 2006-03-03 at 05:45 +0800, Michael Schierl wrote:

If the video is dark, please try the boot options listed in documentation/power/video.txt.

I tried them (all three variations of acpi_sleep=), no change.

Since I do not have a Radeon graphics "card" (it's an Intel 91x), I did not try those radeon specific tweaks.

Quoted 1 line

Did the keyboard response after resume?

The Num and Caps Lock LEDs do work (the notebook does not have a Scroll Lock LED). Typing "reboot" has no effect, though.

I tried the same setup without SATA support, but from an initial ramdisk instead. Same results, so it is most probably not the SATA driver.

Michael

#3 lore raw
In reply to Shaohua Li
Quoted 1 line · Shaohua Li

Did the keyboard response after resume?

it works even better. If I compile in sysrq support, I can reboot the box after "resume" by pressing alt+sysrq+b.

when I do

mount /sys
setleds +caps
echo mem >/sys/power/state
setleds +num

the num lock LED switches on after "resume". When adding a while loop

while true; do
setleds +num
setleds -num
done

the num lock LED flashes as expected, so the notebook is still running, yet quite disconnected from the outside world.

however, when I do not do setleds before suspend, or when I do any other action that accesses my hard disk before turning on the led, it does not work. So I guess the hard disk has some problems with suspend as well.

anything else to try?

Michael

#4 lore raw

Re: Resume problems on Fujitsu-Siemens AMILO M7440G -- SATA

In reply to Shaohua Li

[added linux-ide to CC]

Quoted 2 lines · Shaohua Li

If the video is dark, please try the boot options listed in documentation/power/video.txt.

Okay, I got video working on vanilla 2.6.16 by using "vbetool post" and "vbetool vbestate restore" directly after "echo mem >/sys/power/state".

I copy all stuff need into tmpfs to ensure that it can restore the video without hard disk access.

when accessing hard disks first time after resume, I get (wrote it by hand so maybe this is not 100% correct)

ata1: handling error / timeout
ata1: port reset p_ is 400000 is 0 pis 400000 cmd 8007

                          tf 80 ss 113 se 405000

ata1: status = 0x50 {DriveReady SeekComplete}
sda: current: senseKey 0x0 ASC 0x0 ASCQ 0x0

Sometimes there is "cmd 6" instead of "cmd 8007".

What to do, what to test?

I don't have any way of getting information out of my machine after resume except on display (hard disks do not work after resume, the notebook does not have a serial port and network does not work after resume either) and by flashing keyboard LEDs, so transcribing huge dmesg output would be a pain...

Please CC me since I am not on the list(s). Thank you.

Michael

#5 lore raw

Re: Resume problems on Fujitsu-Siemens AMILO M7440G -- SATA

Michael Schierl wrote:
..

Quoted 5 lines

Okay, I got video working on vanilla 2.6.16 by using "vbetool post" and "vbetool vbestate restore" directly after "echo mem >/sys/power/state".

I copy all stuff need into tmpfs to ensure that it can restore the video without hard disk access.

OOhh.. clever, wish I'd thought of that,
as all of my (now solved) suspend/resume issues
were *all* libata related.

Quoted 5 lines

when accessing hard disks first time after resume, I get (wrote it by hand so maybe this is not 100% correct)

ata1: handling error / timeout
ata1: port reset p_ is 400000 is 0 pis 400000 cmd 8007

Quoted 7 lines
                          tf 80 ss 113 se 405000

ata1: status = 0x50 {DriveReady SeekComplete}
sda: current: senseKey 0x0 ASC 0x0 ASCQ 0x0

Sometimes there is "cmd 6" instead of "cmd 8007".

What to do, what to test?

Randy Dunlop's libata-acpi patch might work for you.
http://www.xenotime.net/linux/SATA/

Cheers

#6 lore raw

Re: Resume problems on Fujitsu-Siemens AMILO M7440G -- SATA

Quoted 4 lines · Mark Lord
Quoted 2 lines

I copy all stuff need into tmpfs to ensure that it can restore the video without hard disk access.

OOhh.. clever, wish I'd thought of that,

One should not forget to disable swap first :)

Quoted 2 lines

as all of my (now solved) suspend/resume issues
were *all* libata related.

So I guess it is a good idea to get SATA working first, isn't it?

Quoted 4 lines
Quoted 1 line

What to do, what to test?

Randy Dunlop's libata-acpi patch might work for you.
http://www.xenotime.net/linux/SATA/

I tried the 2.6.16-rc4 patches on 2.6.16 (one hunk did not apply in libata.h, but I think I was able to fix it manually). Before suspend it works well, after suspend it does not work. Seems that the timeout is longer with the patch, though. I tried it several times; once it seemed to have worked, but it was not reproducible (and it did not work any longer after the next suspend), so I guess it could be just that I only tried files already in cache. (Or alternatively, the patch has a success rate of maybe 5%...)

"Just for fun" i tried the 2.6.15 patches on 2.6.15, but it did not even boot.

BTW: It is an Intel AHCI controller.

Any other ideas/patches?

Michael