]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Nt32Pkg/Library/Nt32BdsLib/BdsPlatform.c
Update Nt32 package to remove UID support .
[mirror_edk2.git] / Nt32Pkg / Library / Nt32BdsLib / BdsPlatform.c
index 3c981fb21a52ce35ef685e2ae5e0756f51cdae83..edfcbcfd584f92f078503fa88f72fb7328ee72fa 100644 (file)
@@ -22,7 +22,6 @@ Abstract:
 \r
 #include "BdsPlatform.h"\r
 \r
-CHAR16  mFirmwareVendor[] = L"TianoCore.org";\r
 WIN_NT_SYSTEM_CONFIGURATION mSystemConfigData;\r
 \r
 VOID\r
@@ -66,8 +65,9 @@ SetupVariableInit (
 // BDS Platform Functions\r
 //\r
 VOID\r
+EFIAPI\r
 PlatformBdsInit (\r
-  IN EFI_BDS_ARCH_PROTOCOL_INSTANCE  *PrivateData\r
+  VOID\r
   )\r
 /*++\r
 \r
@@ -78,30 +78,12 @@ Routine Description:
 \r
 Arguments:\r
 \r
-  PrivateData  - The EFI_BDS_ARCH_PROTOCOL_INSTANCE instance\r
-\r
 Returns:\r
 \r
   None.\r
 \r
 --*/\r
 {\r
-  //\r
-  // set firmwarevendor, here can be IBV/OEM customize\r
-  //\r
-  gST->FirmwareVendor = AllocateRuntimeCopyPool (\r
-                          sizeof (mFirmwareVendor),\r
-                          &mFirmwareVendor\r
-                          );\r
-  ASSERT (gST->FirmwareVendor != NULL);\r
-\r
-  gST->FirmwareRevision = 0;\r
-\r
-  //\r
-  // Fixup Tasble CRC after we updated Firmware Vendor and Revision\r
-  //\r
-  gBS->CalculateCrc32 ((VOID *) gST, sizeof (EFI_SYSTEM_TABLE), &gST->Hdr.CRC32);\r
-\r
   SetupVariableInit ();\r
 }\r
 \r
@@ -253,7 +235,8 @@ Returns:
 VOID\r
 PlatformBdsDiagnostics (\r
   IN EXTENDMEM_COVERAGE_LEVEL    MemoryTestLevel,\r
-  IN BOOLEAN                     QuietBoot\r
+  IN BOOLEAN                     QuietBoot,\r
+  IN BASEM_MEMORY_TEST           BaseMemoryTest  \r
   )\r
 /*++\r
 \r
@@ -267,7 +250,9 @@ Arguments:
   MemoryTestLevel  - The memory test intensive level\r
   \r
   QuietBoot        - Indicate if need to enable the quiet boot\r
\r
+\r
+  BaseMemoryTest   - A pointer to BdsMemoryTest() \r
+\r
 Returns:\r
 \r
   None.\r
@@ -283,11 +268,11 @@ Returns:
   // from the graphic lib\r
   //\r
   if (QuietBoot) {\r
-    EnableQuietBoot (&gEfiDefaultBmpLogoGuid);\r
+    EnableQuietBoot (PcdGetPtr(PcdLogoFile));\r
     //\r
     // Perform system diagnostic\r
     //\r
-    Status = BdsMemoryTest (MemoryTestLevel);\r
+    Status = BaseMemoryTest (MemoryTestLevel);\r
     if (EFI_ERROR (Status)) {\r
       DisableQuietBoot ();\r
     }\r
@@ -297,44 +282,37 @@ Returns:
   //\r
   // Perform system diagnostic\r
   //\r
-  Status = BdsMemoryTest (MemoryTestLevel);\r
+  Status = BaseMemoryTest (MemoryTestLevel);\r
 }\r
 \r
-VOID\r
-PlatformBdsPolicyBehavior (\r
-  IN EFI_BDS_ARCH_PROTOCOL_INSTANCE  *PrivateData,\r
-  IN OUT LIST_ENTRY                  *DriverOptionList,\r
-  IN OUT LIST_ENTRY                  *BootOptionList\r
-  )\r
-/*++\r
-\r
-Routine Description:\r
-\r
+/**\r
   The function will excute with as the platform policy, current policy\r
   is driven by boot mode. IBV/OEM can customize this code for their specific\r
   policy action.\r
-  \r
-Arguments:\r
 \r
-  PrivateData      - The EFI_BDS_ARCH_PROTOCOL_INSTANCE instance\r
-  \r
-  DriverOptionList - The header of the driver option link list\r
-  \r
-  BootOptionList   - The header of the boot option link list\r
\r
-Returns:\r
+  @param  DriverOptionList        The header of the driver option link list\r
+  @param  BootOptionList          The header of the boot option link list\r
+  @param  ProcessCapsules         A pointer to ProcessCapsules()\r
+  @param  BaseMemoryTest          A pointer to BaseMemoryTest()\r
 \r
-  None.\r
-  \r
---*/\r
+**/\r
+VOID\r
+EFIAPI\r
+PlatformBdsPolicyBehavior (\r
+  IN OUT LIST_ENTRY                  *DriverOptionList,\r
+  IN OUT LIST_ENTRY                  *BootOptionList,\r
+  IN PROCESS_CAPSULES                ProcessCapsules,\r
+  IN BASEM_MEMORY_TEST               BaseMemoryTest\r
+  )\r
 {\r
-  EFI_STATUS  Status;\r
-  UINT16      Timeout;\r
+  EFI_STATUS     Status;\r
+  UINT16         Timeout;\r
+  EFI_BOOT_MODE  BootMode;\r
 \r
   //\r
   // Init the time out value\r
   //\r
-  Timeout = BdsLibGetTimeout ();\r
+  Timeout = PcdGet16 (PcdPlatformBootTimeOut);\r
 \r
   //\r
   // Load the driver option as the driver option list\r
@@ -344,13 +322,13 @@ Returns:
   //\r
   // Get current Boot Mode\r
   //\r
-  Status = BdsLibGetBootMode (&PrivateData->BootMode);\r
+  Status = BdsLibGetBootMode (&BootMode);\r
 \r
   //\r
   // Go the different platform policy with different boot mode\r
   // Notes: this part code can be change with the table policy\r
   //\r
-  switch (PrivateData->BootMode) {\r
+  switch (BootMode) {\r
 \r
   case BOOT_ASSUMING_NO_CONFIGURATION_CHANGES:\r
   case BOOT_WITH_MINIMAL_CONFIGURATION:\r
@@ -359,7 +337,7 @@ Returns:
     // console directly.\r
     //\r
     BdsLibConnectAllDefaultConsoles ();\r
-    PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE);\r
+    PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE, BaseMemoryTest);\r
 \r
     //\r
     // Perform some platform specific connect sequence\r
@@ -383,7 +361,7 @@ Returns:
     // Boot with the specific configuration\r
     //\r
     PlatformBdsConnectConsole (gPlatformConsole);\r
-    PlatformBdsDiagnostics (EXTENSIVE, FALSE);\r
+    PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);\r
     BdsLibConnectAll ();\r
     ProcessCapsules (BOOT_ON_FLASH_UPDATE);\r
     break;\r
@@ -394,7 +372,7 @@ Returns:
     // and show up the front page\r
     //\r
     PlatformBdsConnectConsole (gPlatformConsole);\r
-    PlatformBdsDiagnostics (EXTENSIVE, FALSE);\r
+    PlatformBdsDiagnostics (EXTENSIVE, FALSE, BaseMemoryTest);\r
 \r
     //\r
     // In recovery boot mode, we still enter to the\r
@@ -418,7 +396,7 @@ Returns:
       PlatformBdsNoConsoleAction ();\r
     }\r
 \r
-    PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE);\r
+    PlatformBdsDiagnostics ((EXTENDMEM_COVERAGE_LEVEL)IGNORE, TRUE, BaseMemoryTest);\r
 \r
     //\r
     // Perform some platform specific connect sequence\r
@@ -443,6 +421,7 @@ Returns:
 }\r
 \r
 VOID\r
+EFIAPI\r
 PlatformBdsBootSuccess (\r
   IN  BDS_COMMON_OPTION   *Option\r
   )\r
@@ -479,6 +458,7 @@ Returns:
 }\r
 \r
 VOID\r
+EFIAPI\r
 PlatformBdsBootFail (\r
   IN  BDS_COMMON_OPTION  *Option,\r
   IN  EFI_STATUS         Status,\r
@@ -545,11 +525,36 @@ Returns:
   return EFI_SUCCESS;\r
 }\r
 \r
-EFI_STATUS\r
+/**\r
+  This function locks platform flash that is not allowed to be updated during normal boot path.\r
+  The flash layout is platform specific.\r
+\r
+  **/\r
+VOID\r
 EFIAPI\r
 PlatformBdsLockNonUpdatableFlash (\r
   VOID\r
   )\r
 {\r
-  return EFI_SUCCESS;\r
+  return;\r
+}\r
+\r
+/**\r
+  Lock the ConsoleIn device in system table. All key\r
+  presses will be ignored until the Password is typed in. The only way to\r
+  disable the password is to type it in to a ConIn device.\r
+\r
+  @param  Password        Password used to lock ConIn device.\r
+\r
+  @retval EFI_SUCCESS     lock the Console In Spliter virtual handle successfully.\r
+  @retval EFI_UNSUPPORTED Password not found\r
+\r
+**/\r
+EFI_STATUS\r
+EFIAPI\r
+LockKeyboards (\r
+  IN  CHAR16    *Password\r
+  )\r
+{\r
+    return EFI_UNSUPPORTED;\r
 }\r