summaryrefslogtreecommitdiffstats
path: root/OvmfPkg/AcpiTables
diff options
context:
space:
mode:
authorjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>2012-12-17 02:13:00 +0000
committerjljusten <jljusten@6f19259b-4bc3-4df7-8a09-765794883524>2012-12-17 02:13:00 +0000
commitfb8a1b44a8ae6b6fb600b8ab50ccce631d873971 (patch)
treed5a9766fff0478f6ed55b19ec24789073d4aa278 /OvmfPkg/AcpiTables
parent50399ec18f5898567ffbf75be2a4444361918b63 (diff)
downloadedk2-fb8a1b44a8ae6b6fb600b8ab50ccce631d873971.tar.gz
edk2-fb8a1b44a8ae6b6fb600b8ab50ccce631d873971.tar.bz2
edk2-fb8a1b44a8ae6b6fb600b8ab50ccce631d873971.zip
OvmfPkg: report S3 state in DSDT
The ACPI 5.0 specification says: 7.3.4.4 System \_S3 State [...] * Dynamic RAM context is maintained. [...] This corresponds to the following in the PIIX4 spec: PMCNTRL -- POWER MANAGEMENT CONTROL REGISTER (IO) [...] Bits[12:10] Suspend Type [...] 001 STR (Suspend To RAM) Also, this (ie. decimal 1) is the suspend type value that qemu recognizes as an S3 (suspend to ram) request. Only the value for PM1a_CNT.SLP_TYP is set (PM1b_CNT.SLP_TYP is left at zero), since in OVMF we don't report the optional PM1b_EVT_BLK register block to OSPM. (PM1b_EVT_BLK is defined as 0 in "Platform.h"; see "4.8.1.1 PM1 Event Registers" in the ACPI 5.0 specification.) Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14002 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'OvmfPkg/AcpiTables')
-rw-r--r--OvmfPkg/AcpiTables/Dsdt.asl1
1 files changed, 1 insertions, 0 deletions
diff --git a/OvmfPkg/AcpiTables/Dsdt.asl b/OvmfPkg/AcpiTables/Dsdt.asl
index 605766c09d..326942dd44 100644
--- a/OvmfPkg/AcpiTables/Dsdt.asl
+++ b/OvmfPkg/AcpiTables/Dsdt.asl
@@ -17,6 +17,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 1, "INTEL ", "OVMF ", 4) {
// System Sleep States
//
Name (\_S0, Package () {5, 0, 0, 0}) // Working
+ Name (\_S3, Package () {1, 0, 0, 0}) // Suspend to Ram (PIIX4: STR)
Name (\_S4, Package () {2, 0, 0, 0}) // Suspend to Disk (PIIX4: POSCL)
Name (\_S5, Package () {0, 0, 0, 0}) // Soft Off