]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/PlatformPei/Platform.c
OvmfPkg: PlatformPei: detect S3 Resume in CMOS and set boot mode accordingly
[mirror_edk2.git] / OvmfPkg / PlatformPei / Platform.c
index a7221b317b8375ee1a53acfe748676a0847aefe2..a74d353fd3a3fccc789922f85c59f87499a1bc37 100644 (file)
@@ -266,11 +266,19 @@ MiscInitialization (
 \r
 VOID\r
 BootModeInitialization (\r
+  VOID\r
   )\r
 {\r
-  EFI_STATUS Status;\r
+  EFI_BOOT_MODE BootMode;\r
+  EFI_STATUS    Status;\r
+\r
+  if (CmosRead8 (0xF) == 0xFE) {\r
+    BootMode = BOOT_ON_S3_RESUME;\r
+  } else {\r
+    BootMode = BOOT_WITH_FULL_CONFIGURATION;\r
+  }\r
 \r
-  Status = PeiServicesSetBootMode (BOOT_WITH_FULL_CONFIGURATION);\r
+  Status = PeiServicesSetBootMode (BootMode);\r
   ASSERT_EFI_ERROR (Status);\r
 \r
   Status = PeiServicesInstallPpi (mPpiBootMode);\r