Bug 12350 - S3 suspend resets box - Q45/Eaglelake chipset
Summary: S3 suspend resets box - Q45/Eaglelake chipset
Status: CLOSED PATCH_ALREADY_AVAILABLE
Alias: None
Product: ACPI
Classification: Unclassified
Component: Power-Sleep-Wake (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Robert Moore
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-03 12:10 UTC by Fruhwirth Clemens
Modified: 2009-11-08 11:57 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.28
Subsystem:
Regression: No
Bisected commit-id:


Attachments
lspci (8.06 KB, text/plain)
2009-01-03 12:14 UTC, Fruhwirth Clemens
Details
dmesg (22.49 KB, application/octet-stream)
2009-01-03 12:14 UTC, Fruhwirth Clemens
Details
try the debug patch in which rsdt is used instead of XSDT (3.34 KB, patch)
2009-01-03 16:53 UTC, ykzhao
Details | Diff
acpidump (97.00 KB, application/octet-stream)
2009-01-04 02:38 UTC, Fruhwirth Clemens
Details
patch-01: install fadt.facs to the global root table list (2.42 KB, patch)
2009-01-07 18:12 UTC, Zhang Rui
Details | Diff
patch-02: set the 32bit waking vector in fadt.facs (1.24 KB, patch)
2009-01-07 18:13 UTC, Zhang Rui
Details | Diff

Description Fruhwirth Clemens 2009-01-03 12:10:47 UTC
On the new Intel Q45 chipset (Eaglelake) a simple
echo -n mem > /sys/power/state
means a system reset when hitting the power button to try to wake up. I assume that not wakeup fails but going to sleep fails because of the following:

If I disable the PWRB wakeup by echo PWRB > /proc/acpi/wakeup, I still can "wake up" the box by pressing the button. (wakeup here means to a rebooted system). So I presume that the box is not in S3 but simply shut down. Otherwise it should refuse to wake up.

This is on a plain Q45 box, no additional hardware.
Comment 1 Fruhwirth Clemens 2009-01-03 12:14:18 UTC
Created attachment 19626 [details]
lspci
Comment 2 Fruhwirth Clemens 2009-01-03 12:14:55 UTC
Created attachment 19627 [details]
dmesg
Comment 3 ykzhao 2009-01-03 16:43:55 UTC
Will you please attach the output of acpidump?
    Thanks.
Comment 4 ykzhao 2009-01-03 16:53:44 UTC
Created attachment 19628 [details]
try the debug patch in which rsdt is used instead of XSDT

Will you please try the debug patch and see whether the issue still exists?(It is noted that the boot option of "acpi=rsdt" should be added).
  
   It is great if you can confirm whether the suspend/resume can work well on windows Vista.
   Thanks.
Comment 5 Zhang Rui 2009-01-03 18:32:07 UTC
we already have two patches for this issue.
you can either get the latest acpi test tree source code or wait until 2.6.29-rc1 released.
Comment 6 Zhang Rui 2009-01-03 18:36:37 UTC
BTW: in order to get the acpi test tree, please look at
http://www.lesswatts.org/projects/acpi/git.php
 
Or you can apply these two patches on the latest vanilla kernel tree.
http://marc.info/?l=linux-acpi&m=122647871228157&w=2
http://marc.info/?l=linux-acpi&m=122647870428153&w=2
Comment 7 Fruhwirth Clemens 2009-01-04 02:37:05 UTC
Thank you Zhang Rui, the last two patches solves the wake issue!

Thanks to both of you for the very quick response. At the end my buying decision was heavily influenced by the premium commitment to Linux support by Intel.
Comment 8 Fruhwirth Clemens 2009-01-04 02:38:50 UTC
Created attachment 19633 [details]
acpidump

acpidump. Just for reference.
Comment 9 Zhang Rui 2009-01-05 22:38:24 UTC
the patches in comment #6 are dropped because they are conflict with another patch.
I'll refresh the patch and attach them here soon.
Comment 10 Zhang Rui 2009-01-07 18:12:52 UTC
Created attachment 19714 [details]
patch-01: install fadt.facs to the global root table list
Comment 11 Zhang Rui 2009-01-07 18:13:39 UTC
Created attachment 19715 [details]
patch-02: set the 32bit waking vector in fadt.facs
Comment 12 Zhang Rui 2009-01-07 18:17:30 UTC
Fruhwirth,
it would be great if you can try these two patches on top of len's acpica tree.

in order to get this tree, you can:
$<cd to your linux git tree>
$git remote add linux-acpi-2.6 git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6.git
$git remote update
$git branch -r
  linux-acpi-2.6/acpica
  linux-acpi-2.6/linus
  linux-acpi-2.6/release
  linux-acpi-2.6/suspend
  linux-acpi-2.6/test
  origin/HEAD
  origin/master
$git checkout linux-acpi-2.6/acpica
Comment 13 Fruhwirth Clemens 2009-01-09 07:42:57 UTC
Thank you. I tested the ACPI branch with the two patches applied. The box successfully wakes up from sleep now instead of resetting.

The only minor problem is that is does not recover the console video (that's some sort of GMA4500 variant in there iirc). I have not yet toyed with the s3bios option, however it's only a minor issue as when switching back to X video is restored. I'm using dual DVI output.
Comment 14 Len Brown 2009-01-16 11:20:32 UTC
Re: patches
We're expecting these to come to Linux via ACPICA shortly.

Re: video
I believe that all the Intel graphics adapters should resume if
CONFIG_DRM_I915=y
Comment 15 Shaohua 2009-03-03 23:00:06 UTC
can you try if S3 works under windows vista? From our guess, S3 should not work under vista too.
Comment 16 Fruhwirth Clemens 2009-03-04 01:43:53 UTC
I don't have Vista.  Also the patch for acpi works for me, and S3 resume is no problem. So, please close this bug.

The only problem for me is that console mode doesn't resume properly, but console mode has problems in general when X is running under intel's 2.4.2 drivers. 
Comment 17 Zhang Rui 2009-03-04 17:07:36 UTC
the patch in comment #10 and #11 won't be shipped upstream as it may bring some side effects.
But I think you can also use acpi=rsdt to workaround this problem.
Comment 18 Fruhwirth Clemens 2009-04-13 06:39:09 UTC
I upgraded to 2.6.29 now. It appears that the patch was dropped, as you said. However, the workaround acpi=rsdt works fine. Thanks.

Note You need to log in before you can comment on or make changes to this bug.