ACPI hibernation: Call _PTS before suspending devices
authorRafael J. Wysocki <rjw@sisk.pl>
Mon, 7 Jan 2008 23:09:58 +0000 (00:09 +0100)
committerLen Brown <len.brown@intel.com>
Fri, 1 Feb 2008 23:30:58 +0000 (18:30 -0500)
commit7258ec5d11ead6db25575734f10f4586c0157463
treeeaba68eb4ec9ac40f058166420b4b056d8b7c33a
parentcaea99ef339af8e07cda8d03fa415e4b8820f400
ACPI hibernation: Call _PTS before suspending devices

The ACPI 1.0 specification wants us to put devices into low power
states after executing the _PTS global control method, while ACPI
2.0 and later want us to do that in the reverse order.  The current
hibernation code follows ACPI 2.0 in that respect which may cause some
ACPI 1.0x systems to hang during hibernation (ref.
http://bugzilla.kernel.org/show_bug.cgi?id=9528).

Make the hibernation code execute _PTS before putting devices into
low power states (ie. in accordance with ACPI 1.0x) with the
possibility to override that using the 'acpi_new_pts_ordering' kernel
command line option.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Len Brown <len.brown@intel.com>
drivers/acpi/sleep/main.c