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
This commit is contained in:
jljusten 2012-12-17 02:13:00 +00:00
parent 50399ec18f
commit fb8a1b44a8
1 changed files with 1 additions and 0 deletions

View File

@ -17,6 +17,7 @@ DefinitionBlock ("Dsdt.aml", "DSDT", 1, "INTEL ", "OVMF ", 4) {
// System Sleep States // System Sleep States
// //
Name (\_S0, Package () {5, 0, 0, 0}) // Working 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 (\_S4, Package () {2, 0, 0, 0}) // Suspend to Disk (PIIX4: POSCL)
Name (\_S5, Package () {0, 0, 0, 0}) // Soft Off Name (\_S5, Package () {0, 0, 0, 0}) // Soft Off