From 54a26282b3b910ff4648b082f32434c31f1d7246 Mon Sep 17 00:00:00 2001 From: gdong1 Date: Fri, 9 Mar 2012 01:37:38 +0000 Subject: [PATCH] Fix system reboot automatically if changing the value of [TPM operation] Signed-off-by: gdong1 Reviewed-by: tye1 Reviewed-by: qianouyang git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13089 6f19259b-4bc3-4df7-8a09-765794883524 --- SecurityPkg/Tcg/TcgConfigDxe/TcgConfig.vfr | 22 ++++++++++---------- SecurityPkg/Tcg/TcgConfigDxe/TcgConfigImpl.c | 11 +++------- 2 files changed, 14 insertions(+), 19 deletions(-) diff --git a/SecurityPkg/Tcg/TcgConfigDxe/TcgConfig.vfr b/SecurityPkg/Tcg/TcgConfigDxe/TcgConfig.vfr index e6a5b74600..173fa34661 100644 --- a/SecurityPkg/Tcg/TcgConfigDxe/TcgConfig.vfr +++ b/SecurityPkg/Tcg/TcgConfigDxe/TcgConfig.vfr @@ -1,7 +1,7 @@ /** @file VFR file used by the TCG configuration component. -Copyright (c) 2011, Intel Corporation. All rights reserved.
+Copyright (c) 2011 - 2012, 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 @@ -80,24 +80,24 @@ formset // Activate/deactivate (TPM_ORD_physicalSetDeactivated) command is not available when disabled. // suppressif ideqval TCG_CONFIGURATION.TpmEnable == 0; - option text = STRING_TOKEN(STR_DISABLE), value = PHYSICAL_PRESENCE_DISABLE, flags = 0; - option text = STRING_TOKEN(STR_TPM_ACTIVATE), value = PHYSICAL_PRESENCE_ACTIVATE, flags = 0; - option text = STRING_TOKEN(STR_TPM_DEACTIVATE), value = PHYSICAL_PRESENCE_DEACTIVATE, flags = 0; - option text = STRING_TOKEN(STR_TPM_DEACTIVATE_DISABLE), value = PHYSICAL_PRESENCE_DEACTIVATE_DISABLE, flags = 0; + option text = STRING_TOKEN(STR_DISABLE), value = PHYSICAL_PRESENCE_DISABLE, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_ACTIVATE), value = PHYSICAL_PRESENCE_ACTIVATE, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_DEACTIVATE), value = PHYSICAL_PRESENCE_DEACTIVATE, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_DEACTIVATE_DISABLE), value = PHYSICAL_PRESENCE_DEACTIVATE_DISABLE, flags = RESET_REQUIRED; endif // // Clear (TPM_ORD_ForceClear) command is not available when disabled or deactivated. // suppressif ideqval TCG_CONFIGURATION.TpmEnable == 0 OR ideqval TCG_CONFIGURATION.TpmActivate == 0; - option text = STRING_TOKEN(STR_TPM_CLEAR), value = PHYSICAL_PRESENCE_CLEAR, flags = 0; - option text = STRING_TOKEN(STR_TPM_CLEAR_ENABLE_ACTIVATE), value = PHYSICAL_PRESENCE_CLEAR_ENABLE_ACTIVATE, flags = 0; + option text = STRING_TOKEN(STR_TPM_CLEAR), value = PHYSICAL_PRESENCE_CLEAR, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_CLEAR_ENABLE_ACTIVATE), value = PHYSICAL_PRESENCE_CLEAR_ENABLE_ACTIVATE, flags = RESET_REQUIRED; endif - option text = STRING_TOKEN(STR_ENABLE), value = PHYSICAL_PRESENCE_ENABLE, flags = 0; - option text = STRING_TOKEN(STR_TPM_ENABLE_ACTIVATE), value = PHYSICAL_PRESENCE_ENABLE_ACTIVATE, flags = 0; - option text = STRING_TOKEN(STR_TPM_ENABLE_ACTIVATE_CLEAR), value = PHYSICAL_PRESENCE_ENABLE_ACTIVATE_CLEAR, flags = 0; - option text = STRING_TOKEN(STR_TPM_ENABLE_ACTIVATE_CLEAR_E_A), value = PHYSICAL_PRESENCE_ENABLE_ACTIVATE_CLEAR_ENABLE_ACTIVATE, flags = 0; + option text = STRING_TOKEN(STR_ENABLE), value = PHYSICAL_PRESENCE_ENABLE, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_ENABLE_ACTIVATE), value = PHYSICAL_PRESENCE_ENABLE_ACTIVATE, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_ENABLE_ACTIVATE_CLEAR), value = PHYSICAL_PRESENCE_ENABLE_ACTIVATE_CLEAR, flags = RESET_REQUIRED; + option text = STRING_TOKEN(STR_TPM_ENABLE_ACTIVATE_CLEAR_E_A), value = PHYSICAL_PRESENCE_ENABLE_ACTIVATE_CLEAR_ENABLE_ACTIVATE, flags = RESET_REQUIRED; endoneof; subtitle text = STRING_TOKEN(STR_NULL); diff --git a/SecurityPkg/Tcg/TcgConfigDxe/TcgConfigImpl.c b/SecurityPkg/Tcg/TcgConfigDxe/TcgConfigImpl.c index f884226d97..631441a0e4 100644 --- a/SecurityPkg/Tcg/TcgConfigDxe/TcgConfigImpl.c +++ b/SecurityPkg/Tcg/TcgConfigDxe/TcgConfigImpl.c @@ -1,7 +1,7 @@ /** @file HII Config Access protocol implementation of TCG configuration module. -Copyright (c) 2011, Intel Corporation. All rights reserved.
+Copyright (c) 2011 - 2012, 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 @@ -359,11 +359,6 @@ SavePpRequest ( return Status; } - // - // Reset system. - // - gRT->ResetSystem (EfiResetCold, EFI_SUCCESS, 0, NULL); - return EFI_SUCCESS; } @@ -409,8 +404,8 @@ TcgCallback ( } SavePpRequest (Value->u8); - ASSERT (FALSE); - + *ActionRequest = EFI_BROWSER_ACTION_REQUEST_SUBMIT; + return EFI_SUCCESS; }