diff options
author | xdu2 <xdu2@6f19259b-4bc3-4df7-8a09-765794883524> | 2011-11-04 08:28:09 +0000 |
---|---|---|
committer | xdu2 <xdu2@6f19259b-4bc3-4df7-8a09-765794883524> | 2011-11-04 08:28:09 +0000 |
commit | a637802c2f8765549cf41a5694f53860b24601c9 (patch) | |
tree | 0b1ef7fdad9c79a23698a8453ea2ba18173aebe2 /IntelFrameworkModulePkg/Universal/BdsDxe | |
parent | e2988e6632fe056b55d208eb72b4aec52c692196 (diff) | |
download | edk2-platforms-a637802c2f8765549cf41a5694f53860b24601c9.tar.xz |
IntelFrameworkModulePkg: Update GenericBdsLib to use BootLogo protocol to report logo information after logo is drawn to screen; update BdsDxe to notify logo is corrupted when user is going to enter setup.
Signed-off-by: xdu2
Reviewed-by: mdkinney
Reviewed-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12664 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'IntelFrameworkModulePkg/Universal/BdsDxe')
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/Bds.h | 1 | ||||
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf | 1 | ||||
-rw-r--r-- | IntelFrameworkModulePkg/Universal/BdsDxe/FrontPage.c | 9 |
3 files changed, 11 insertions, 0 deletions
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/Bds.h b/IntelFrameworkModulePkg/Universal/BdsDxe/Bds.h index 1f2d64d2cf..008d13e41b 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/Bds.h +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/Bds.h @@ -45,6 +45,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include <Protocol/LegacyBios.h>
#include <Protocol/SimpleTextInEx.h>
#include <Protocol/DriverHealth.h>
+#include <Protocol/BootLogo.h>
#include <Library/UefiDriverEntryPoint.h>
#include <Library/PrintLib.h>
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf b/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf index 916d2af454..bb9775343f 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf @@ -159,6 +159,7 @@ gEfiDevicePathProtocolGuid ## PROTOCOL CONSUMES
gEfiDriverHealthProtocolGuid ## PROTOCOL SOMETIMES_CONSUMES
gEfiPciIoProtocolGuid ## PROTOCOL CONSUMES
+ gEfiBootLogoProtocolGuid ## PROTOCOL SOMETIMES_CONSUMES
[FeaturePcd]
gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLangDeprecate
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/FrontPage.c b/IntelFrameworkModulePkg/Universal/BdsDxe/FrontPage.c index 63c14964bf..4cd0691b91 100644 --- a/IntelFrameworkModulePkg/Universal/BdsDxe/FrontPage.c +++ b/IntelFrameworkModulePkg/Universal/BdsDxe/FrontPage.c @@ -958,6 +958,7 @@ PlatformBdsEnterFrontPage ( )
{
EFI_STATUS Status;
+ EFI_BOOT_LOGO_PROTOCOL *BootLogo;
PERF_START (NULL, "BdsTimeOut", "BDS", 0);
//
@@ -986,6 +987,14 @@ PlatformBdsEnterFrontPage ( }
}
+ //
+ // Boot Logo is corrupted, report it using Boot Logo protocol.
+ //
+ Status = gBS->LocateProtocol (&gEfiBootLogoProtocolGuid, NULL, (VOID **) &BootLogo);
+ if (!EFI_ERROR (Status) && (BootLogo != NULL)) {
+ BootLogo->SetBootLogo (BootLogo, NULL, 0, 0, 0, 0);
+ }
+
do {
InitializeFrontPage (FALSE);
|