]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
ACPI: DMI init_set_sci_en_on_resume for multiple Lenovo ThinkPads
authorAlex Chiang <achiang@canonical.com>
Tue, 20 Apr 2010 14:03:14 +0000 (08:03 -0600)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 12 May 2010 21:57:15 +0000 (14:57 -0700)
commitf1b184b1a3a327df299fb1ffd3da1cceaa013efb
tree1e5d9b74b08ddb859948bcd2b66fd0ab4a4db15b
parent65f202baf580af35a417ac8118465bef9b65307e
ACPI: DMI init_set_sci_en_on_resume for multiple Lenovo ThinkPads

commit 07bedca29b0973f36a6b6db36936deed367164ed upstream.

Multiple Lenovo ThinkPad models with Intel Core i5/i7 CPUs can
successfully suspend/resume once, and then hang on the second s/r
cycle.

We got confirmation that this was due to a BIOS defect. The BIOS
did not properly set SCI_EN coming out of S3. The BIOS guys
hinted that The Other Leading OS ignores the fact that hardware
owns the bit and sets it manually.

In any case, an existing DMI table exists for machines where this
defect is a known problem. Lenovo promise to fix their BIOS, but
for folks who either won't or can't upgrade their BIOS, allow
Linux to workaround the issue.

https://bugzilla.kernel.org/show_bug.cgi?id=15407
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/532374

Confirmed by numerous testers in the launchpad bug that using
acpi_sleep=sci_force_enable fixes the issue. We add the machines
to acpisleep_dmi_table[] to automatically enable this workaround.

Cc: Colin King <colin.king@canonical.com>
Signed-off-by: Alex Chiang <achiang@canonical.com>
Signed-off-by: Len Brown <len.brown@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/acpi/sleep.c