]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseEntry.c
sync comments, fix function header, rename variable name to follow coding style.
[mirror_edk2.git] / MdeModulePkg / Universal / HiiDatabaseDxe / HiiDatabaseEntry.c
index c7ffdfe77c0ab550ef8addb5f4b47c7c9830add5..827109c4b832e7be906e724ddbf4e104d9117f48 100644 (file)
@@ -30,9 +30,9 @@ Revision History
 // Global variables\r
 //\r
 EFI_EVENT gHiiKeyboardLayoutChanged;\r
-STATIC EFI_GUID gHiiSetKbdLayoutEventGuid = EFI_HII_SET_KEYBOARD_LAYOUT_EVENT_GUID;\r
+EFI_GUID gHiiSetKbdLayoutEventGuid = EFI_HII_SET_KEYBOARD_LAYOUT_EVENT_GUID;\r
 \r
-STATIC HII_DATABASE_PRIVATE_DATA mPrivate = {\r
+HII_DATABASE_PRIVATE_DATA mPrivate = {\r
   HII_DATABASE_PRIVATE_DATA_SIGNATURE,\r
   {\r
     (LIST_ENTRY *) NULL,\r
@@ -48,15 +48,13 @@ STATIC HII_DATABASE_PRIVATE_DATA mPrivate = {
     HiiGetGlyph,\r
     HiiGetFontInfo\r
   },\r
-#ifndef _DISABLE_UNUSED_HII_PROTOCOLS_\r
   {\r
-    HiiNewImage,\r
-    HiiGetImage,\r
-    HiiSetImage,\r
-    HiiDrawImage,\r
-    HiiDrawImageId\r
+    NULL,\r
+    NULL,\r
+    NULL,\r
+    NULL,\r
+    NULL\r
   },\r
-#endif\r
   {\r
     HiiNewString,\r
     HiiGetString,\r
@@ -104,6 +102,14 @@ STATIC HII_DATABASE_PRIVATE_DATA mPrivate = {
   NULL\r
 };\r
 \r
+GLOBAL_REMOVE_IF_UNREFERENCED CONST EFI_HII_IMAGE_PROTOCOL mImageProtocol = {\r
+  HiiNewImage,\r
+  HiiGetImage,\r
+  HiiSetImage,\r
+  HiiDrawImage,\r
+  HiiDrawImageId\r
+};\r
+\r
 /**\r
   The default event handler for gHiiKeyboardLayoutChanged\r
   event group.\r
@@ -168,7 +174,7 @@ InitializeHiiDatabase (
   // Create a event with EFI_HII_SET_KEYBOARD_LAYOUT_EVENT_GUID group type.\r
   //\r
   Status = gBS->CreateEventEx (\r
-                  EFI_EVENT_NOTIFY_SIGNAL,\r
+                  EVT_NOTIFY_SIGNAL,\r
                   TPL_NOTIFY,\r
                   KeyboardLayoutChangeNullEvent,\r
                   NULL,\r
@@ -180,21 +186,35 @@ InitializeHiiDatabase (
   }\r
 \r
   Handle = NULL;\r
-  return gBS->InstallMultipleProtocolInterfaces (\r
-                &Handle,\r
-                &gEfiHiiFontProtocolGuid,\r
-                &mPrivate.HiiFont,\r
-#ifndef _DISABLE_UNUSED_HII_PROTOCOLS_\r
-                &gEfiHiiImageProtocolGuid,\r
-                &mPrivate.HiiImage,\r
-#endif\r
-                &gEfiHiiStringProtocolGuid,\r
-                &mPrivate.HiiString,\r
-                &gEfiHiiDatabaseProtocolGuid,\r
-                &mPrivate.HiiDatabase,\r
-                &gEfiHiiConfigRoutingProtocolGuid,\r
-                &mPrivate.ConfigRouting,\r
-                NULL\r
-                );\r
+  Status = gBS->InstallMultipleProtocolInterfaces (\r
+                  &Handle,\r
+                  &gEfiHiiFontProtocolGuid,\r
+                  &mPrivate.HiiFont,\r
+                  &gEfiHiiStringProtocolGuid,\r
+                  &mPrivate.HiiString,\r
+                  &gEfiHiiDatabaseProtocolGuid,\r
+                  &mPrivate.HiiDatabase,\r
+                  &gEfiHiiConfigRoutingProtocolGuid,\r
+                  &mPrivate.ConfigRouting,\r
+                  NULL\r
+                  );\r
+\r
+  if (EFI_ERROR (Status)) {\r
+    return Status;\r
+  }\r
+\r
+  if (FeaturePcdGet (PcdSupportHiiImageProtocol)) {\r
+    CopyMem (&mPrivate.HiiImage, &mImageProtocol, sizeof (mImageProtocol));\r
+\r
+    Status = gBS->InstallMultipleProtocolInterfaces (\r
+                    &Handle,\r
+                    &gEfiHiiImageProtocolGuid,\r
+                    &mPrivate.HiiImage,\r
+                    NULL\r
+                    );\r
+\r
+  }\r
+\r
+  return Status;\r
 }\r
 \r