Enhance TcgSmm driver to handle potential SetVariable failure case.

Signed-off-by: Dong Guo <guo.dong@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13309 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
gdong1
2012-05-11 05:10:57 +00:00
parent e6063a9595
commit 82a1e09c83
4 changed files with 138 additions and 97 deletions

View File

@@ -2,7 +2,7 @@
The TPM definition block in ACPI table for physical presence
and MemoryClear.
Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2011 - 2012, Intel Corporation. All rights reserved.<BR>
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
@@ -64,9 +64,9 @@ DefinitionBlock (
//
// Operational region for TPM support, TPM Physical Presence and TPM Memory Clear
// Region Offset to be fixed at runtime
// Region Offset 0xFFFF0000 and Length 0xF0 will be fixed in C code.
//
OperationRegion (TNVS, SystemMemory, 0xFFFF0000, 0x1E)
OperationRegion (TNVS, SystemMemory, 0xFFFF0000, 0xF0)
Field (TNVS, AnyAcc, NoLock, Preserve)
{
PPIN, 8, // Software SMI for Physical Presence Interface
@@ -77,7 +77,8 @@ DefinitionBlock (
FRET, 32, // Physical Presence function return code
MCIN, 8, // Software SMI for Memory Clear Interface
MCIP, 32, // Used for save the Mor paramter
MORD, 32 // Memory Overwrite Request Data
MORD, 32, // Memory Overwrite Request Data
MRET, 32 // Memory Overwrite function return code
}
Method (PTS, 1, Serialized)
@@ -313,7 +314,7 @@ DefinitionBlock (
// Triggle the SMI interrupt
//
Store (MCIN, IOB2)
Return (0)
Return (MRET)
}
Default {BreakPoint}
}