Use two PCDs to replace _DISABLE_UNUSED_HII_PROTOCOLS_ macro.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5498 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -48,15 +48,13 @@ STATIC HII_DATABASE_PRIVATE_DATA mPrivate = {
|
||||
HiiGetGlyph,
|
||||
HiiGetFontInfo
|
||||
},
|
||||
#ifndef _DISABLE_UNUSED_HII_PROTOCOLS_
|
||||
{
|
||||
HiiNewImage,
|
||||
HiiGetImage,
|
||||
HiiSetImage,
|
||||
HiiDrawImage,
|
||||
HiiDrawImageId
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL
|
||||
},
|
||||
#endif
|
||||
{
|
||||
HiiNewString,
|
||||
HiiGetString,
|
||||
@@ -104,6 +102,14 @@ STATIC HII_DATABASE_PRIVATE_DATA mPrivate = {
|
||||
NULL
|
||||
};
|
||||
|
||||
GLOBAL_REMOVE_IF_UNREFERENCED CONST EFI_HII_IMAGE_PROTOCOL mImageProtocol = {
|
||||
HiiNewImage,
|
||||
HiiGetImage,
|
||||
HiiSetImage,
|
||||
HiiDrawImage,
|
||||
HiiDrawImageId
|
||||
};
|
||||
|
||||
/**
|
||||
The default event handler for gHiiKeyboardLayoutChanged
|
||||
event group.
|
||||
@@ -180,21 +186,35 @@ InitializeHiiDatabase (
|
||||
}
|
||||
|
||||
Handle = NULL;
|
||||
return gBS->InstallMultipleProtocolInterfaces (
|
||||
&Handle,
|
||||
&gEfiHiiFontProtocolGuid,
|
||||
&mPrivate.HiiFont,
|
||||
#ifndef _DISABLE_UNUSED_HII_PROTOCOLS_
|
||||
&gEfiHiiImageProtocolGuid,
|
||||
&mPrivate.HiiImage,
|
||||
#endif
|
||||
&gEfiHiiStringProtocolGuid,
|
||||
&mPrivate.HiiString,
|
||||
&gEfiHiiDatabaseProtocolGuid,
|
||||
&mPrivate.HiiDatabase,
|
||||
&gEfiHiiConfigRoutingProtocolGuid,
|
||||
&mPrivate.ConfigRouting,
|
||||
NULL
|
||||
);
|
||||
Status = gBS->InstallMultipleProtocolInterfaces (
|
||||
&Handle,
|
||||
&gEfiHiiFontProtocolGuid,
|
||||
&mPrivate.HiiFont,
|
||||
&gEfiHiiStringProtocolGuid,
|
||||
&mPrivate.HiiString,
|
||||
&gEfiHiiDatabaseProtocolGuid,
|
||||
&mPrivate.HiiDatabase,
|
||||
&gEfiHiiConfigRoutingProtocolGuid,
|
||||
&mPrivate.ConfigRouting,
|
||||
NULL
|
||||
);
|
||||
|
||||
if (EFI_ERROR (Status)) {
|
||||
return Status;
|
||||
}
|
||||
|
||||
if (FeaturePcdGet (PcdSupportHiiImageProtocol)) {
|
||||
CopyMem (&mPrivate.HiiImage, &mImageProtocol, sizeof (mImageProtocol));
|
||||
|
||||
Status = gBS->InstallMultipleProtocolInterfaces (
|
||||
&Handle,
|
||||
&gEfiHiiImageProtocolGuid,
|
||||
&mPrivate.HiiImage,
|
||||
NULL
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user