]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c
Retire Extended HII library class.
[mirror_edk2.git] / IntelFrameworkModulePkg / Universal / BdsDxe / BootMngr / BootManager.c
index a1612cd1b1b43a5903c5857756c9522bdcabd7e7..615c189d8daf1bd644b20c1075aec4028aa447df 100644 (file)
@@ -19,6 +19,31 @@ EFI_GUID           mBootManagerGuid = BOOT_MANAGER_FORMSET_GUID;
 LIST_ENTRY         *mBootOptionsList;\r
 BDS_COMMON_OPTION  *gOption;\r
 \r
+HII_VENDOR_DEVICE_PATH  mBootManagerHiiVendorDevicePath = {\r
+  {\r
+    {\r
+      HARDWARE_DEVICE_PATH,\r
+      HW_VENDOR_DP,\r
+      {\r
+        (UINT8) (sizeof (VENDOR_DEVICE_PATH)),\r
+        (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)\r
+      }\r
+    },\r
+    //\r
+    // {1DDDBE15-481D-4d2b-8277-B191EAF66525}\r
+    //\r
+    { 0x1dddbe15, 0x481d, 0x4d2b, { 0x82, 0x77, 0xb1, 0x91, 0xea, 0xf6, 0x65, 0x25 } }\r
+  },\r
+  {\r
+    END_DEVICE_PATH_TYPE,\r
+    END_ENTIRE_DEVICE_PATH_SUBTYPE,\r
+    { \r
+      (UINT8) (END_DEVICE_PATH_LENGTH),\r
+      (UINT8) ((END_DEVICE_PATH_LENGTH) >> 8)\r
+    }\r
+  }\r
+};\r
+\r
 BOOT_MANAGER_CALLBACK_DATA  gBootManagerPrivate = {\r
   BOOT_MANAGER_CALLBACK_DATA_SIGNATURE,\r
   NULL,\r
@@ -104,7 +129,7 @@ BootManagerCallback (
   Registers HII packages for the Boot Manger to HII Database.\r
   It also registers the browser call back function.\r
 \r
-  @return Status of HiiLibCreateHiiDriverHandle() and gHiiDatabase->NewPackageList()\r
+  @return Status of gBS->InstallMultipleProtocolInterfaces() and gHiiDatabase->NewPackageList()\r
 \r
 **/\r
 EFI_STATUS\r
@@ -116,21 +141,15 @@ InitializeBootManager (
   EFI_HII_PACKAGE_LIST_HEADER *PackageList;\r
 \r
   //\r
-  // Create driver handle used by HII database\r
-  //\r
-  Status = HiiLibCreateHiiDriverHandle (&gBootManagerPrivate.DriverHandle);\r
-  if (EFI_ERROR (Status)) {\r
-    return Status;\r
-  }\r
-\r
-  //\r
-  // Install Config Access protocol to driver handle\r
+  // Install Device Path Protocol and Config Access protocol to driver handle\r
   //\r
-  Status = gBS->InstallProtocolInterface (\r
+  Status = gBS->InstallMultipleProtocolInterfaces (\r
                   &gBootManagerPrivate.DriverHandle,\r
+                  &gEfiDevicePathProtocolGuid,\r
+                  &mBootManagerHiiVendorDevicePath,\r
                   &gEfiHiiConfigAccessProtocolGuid,\r
-                  EFI_NATIVE_INTERFACE,\r
-                  &gBootManagerPrivate.ConfigAccess\r
+                  &gBootManagerPrivate.ConfigAccess,\r
+                  NULL\r
                   );\r
   ASSERT_EFI_ERROR (Status);\r
 \r