summaryrefslogtreecommitdiff
path: root/OvmfPkg/Library
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2016-05-25 14:00:06 +0200
committerLaszlo Ersek <lersek@redhat.com>2016-05-27 11:29:39 +0200
commitfd096a99a99bd2d59ad6619b53477e6365df8850 (patch)
treee17b17cb4b2276e2afc63ce4a413d6be559aed2e /OvmfPkg/Library
parenta3cd5cd5f6c3a06ffeac8e6fec9917d4e011cc35 (diff)
downloadedk2-platforms-fd096a99a99bd2d59ad6619b53477e6365df8850.tar.xz
OvmfPkg/PlatformBootManagerLib: bring back the progress bar
OVMF's Platform BDS used to have a nice progress bar (with IntelFrameworkModulePkg BDS). We can restore it by copying the PlatformBootManagerWaitCallback() function verbatim from Nt32Pkg/Library/PlatformBootManagerLib/PlatformBootManager.c It can be tested by passing the following option to QEMU (5 seconds): -boot menu=on,splash-time=5000 Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Ruiyu Ni <ruiyu.ni@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg/Library')
-rw-r--r--OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c
index 9eb9e39037..b5af58367e 100644
--- a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c
+++ b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c
@@ -1425,5 +1425,22 @@ PlatformBootManagerWaitCallback (
UINT16 TimeoutRemain
)
{
+ EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION Black;
+ EFI_GRAPHICS_OUTPUT_BLT_PIXEL_UNION White;
+ UINT16 Timeout;
+
+ Timeout = PcdGet16 (PcdPlatformBootTimeOut);
+
+ Black.Raw = 0x00000000;
+ White.Raw = 0x00FFFFFF;
+
+ BootLogoUpdateProgress (
+ White.Pixel,
+ Black.Pixel,
+ L"Start boot option",
+ White.Pixel,
+ (Timeout - TimeoutRemain) * 100 / Timeout,
+ 0
+ );
}