From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) (using TLSv1 with cipher CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id C25201A1E3A for ; Sun, 9 Oct 2016 04:58:47 -0700 (PDT) Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga101.jf.intel.com with ESMTP; 09 Oct 2016 04:58:47 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,466,1473145200"; d="scan'208";a="17748814" Received: from jyao1-mobl.ccr.corp.intel.com ([10.254.214.127]) by fmsmga005.fm.intel.com with ESMTP; 09 Oct 2016 04:58:45 -0700 From: Jiewen Yao To: edk2-devel@lists.01.org Cc: Eric Dong , Ruiyu Ni , Feng Tian , Star Zeng , Michael D Kinney , Liming Gao Date: Sun, 9 Oct 2016 19:58:31 +0800 Message-Id: <1476014313-11992-3-git-send-email-jiewen.yao@intel.com> X-Mailer: git-send-email 2.7.4.windows.1 In-Reply-To: <1476014313-11992-1-git-send-email-jiewen.yao@intel.com> References: <1476014313-11992-1-git-send-email-jiewen.yao@intel.com> Subject: [PATCH 2/4] MdeModulePkg/UiApp: Show test key warning info in FrontPage. X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Oct 2016 11:58:47 -0000 The UiApp is updated to consume PcdTestKeyUsed to know if there is any test key used in current BIOS, such as recovery key, or capsule update key. Then UiApp show warning information in front page. Cc: Eric Dong Cc: Ruiyu Ni Cc: Feng Tian Cc: Star Zeng Cc: Michael D Kinney Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiewen Yao --- MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c | 34 ++++++++++++++++++++ MdeModulePkg/Application/UiApp/FrontPageStrings.uni | 8 ++++- MdeModulePkg/Application/UiApp/UiApp.inf | 3 +- 3 files changed, 43 insertions(+), 2 deletions(-) diff --git a/MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c b/MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c index 6e4f7b5..4070cd5 100644 --- a/MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c +++ b/MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c @@ -16,8 +16,14 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include #include #include +#include "FrontPage.h" #include "FrontPageCustomizedUiSupport.h" +#define TEST_KEY_USED_RECOVERY (BIT0 + BIT32) +#define TEST_KEY_USED_FIRMWARE_UPDATE (BIT1 + BIT33) + +extern FRONT_PAGE_CALLBACK_DATA gFrontPagePrivate; + /** Customize menus in the page. @@ -129,4 +135,32 @@ UiCustomizeFrontPageBanner ( IN OUT EFI_STRING *BannerStr ) { + UINT64 TestKeyUsed; + BOOLEAN TestKeyForRecovery; + BOOLEAN TestKeyForFirmwareUpdate; + + if ((LineIndex == 5) && LeftOrRight) { + // Update STR_CUSTOMIZE_BANNER_LINE5_LEFT + TestKeyUsed = PcdGet64(PcdTestKeyUsed); + if ((TestKeyUsed & TEST_KEY_USED_RECOVERY) == TEST_KEY_USED_RECOVERY) { + TestKeyForRecovery = TRUE; + } else { + TestKeyForRecovery = FALSE; + } + if ((TestKeyUsed & TEST_KEY_USED_FIRMWARE_UPDATE) == TEST_KEY_USED_FIRMWARE_UPDATE) { + TestKeyForFirmwareUpdate = TRUE; + } else { + TestKeyForFirmwareUpdate = FALSE; + } + if (TestKeyForRecovery && TestKeyForFirmwareUpdate) { + *BannerStr = HiiGetString(gFrontPagePrivate.HiiHandle, STRING_TOKEN(STR_TEST_KEY_USED_RECOVERY_AND_FIRMWARE_UPDATE), NULL); + } + else if (TestKeyForRecovery) { + *BannerStr = HiiGetString(gFrontPagePrivate.HiiHandle, STRING_TOKEN(STR_TEST_KEY_USED_RECOVERY), NULL); + } + else if (TestKeyForFirmwareUpdate) { + *BannerStr = HiiGetString(gFrontPagePrivate.HiiHandle, STRING_TOKEN(STR_TEST_KEY_USED_FIRMWARE_UPDATE), NULL); + } + } + return; } diff --git a/MdeModulePkg/Application/UiApp/FrontPageStrings.uni b/MdeModulePkg/Application/UiApp/FrontPageStrings.uni index 71cb788..8ba19dc 100644 --- a/MdeModulePkg/Application/UiApp/FrontPageStrings.uni +++ b/MdeModulePkg/Application/UiApp/FrontPageStrings.uni @@ -2,7 +2,7 @@ // // String definitions for BdsPlatform formset. // -// Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.
+// Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.
// This program and the accompanying materials // are licensed and made available under the terms and conditions of the BSD License // which accompanies this distribution. The full text of the license may be found at @@ -68,5 +68,11 @@ #language fr-FR "" #string STR_CUSTOMIZE_BANNER_LINE5_RIGHT #language en-US "" #language fr-FR "" +#string STR_TEST_KEY_USED_RECOVERY #language en-US "WARNING: Test key is used for recovery." + #language fr-FR "WARNING: Test key is used for recovery." +#string STR_TEST_KEY_USED_FIRMWARE_UPDATE #language en-US "WARNING: Test key is used for firmware update." + #language fr-FR "WARNING: Test key is used for firmware update." +#string STR_TEST_KEY_USED_RECOVERY_AND_FIRMWARE_UPDATE #language en-US "WARNING: Test key is used for recovery and update." + #language fr-FR "WARNING: Test key is used for recovery and update." #string STR_NULL_STRING #language en-US " " #language fr-FR " " diff --git a/MdeModulePkg/Application/UiApp/UiApp.inf b/MdeModulePkg/Application/UiApp/UiApp.inf index 6df6e47..d144462 100644 --- a/MdeModulePkg/Application/UiApp/UiApp.inf +++ b/MdeModulePkg/Application/UiApp/UiApp.inf @@ -1,7 +1,7 @@ ## @file # UiApp module is driver for BDS phase. # -# Copyright (c) 2011 - 2015, Intel Corporation. All rights reserved.
+# Copyright (c) 2011 - 2016, Intel Corporation. All rights reserved.
# This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License # which accompanies this distribution. The full text of the license may be found at @@ -82,6 +82,7 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution ## CONSUMES gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString ## CONSUMES + gEfiMdeModulePkgTokenSpaceGuid.PcdTestKeyUsed ## CONSUMES [UserExtensions.TianoCore."ExtraFiles"] UiAppExtra.uni -- 2.7.4.windows.1