diff options
author | John Strange <johnstra@microsoft.com> | 2024-07-04 08:48:12 -0700 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2024-09-04 01:43:32 +0000 |
commit | 1240a722f8466930cced7f7d40a3fb6a29efb146 (patch) | |
tree | dab50f815cd2b5b74efb087f36ca463f9fd3e778 /SecurityPkg/Tcg | |
parent | a4245b265de78dd0640004263f0b39da7d5a0506 (diff) | |
download | edk2-1240a722f8466930cced7f7d40a3fb6a29efb146.tar.gz edk2-1240a722f8466930cced7f7d40a3fb6a29efb146.tar.bz2 edk2-1240a722f8466930cced7f7d40a3fb6a29efb146.zip |
SecurityPkg: Tcg2Acpi: Remove _DSM Memory Clear and _PTS
This patch removes the _DSM Memory Clear and MOR
auto-detect functionality via _PTS, as
_DSM Memory Clear was deprecated in TCG PC Client
Reset Attack Mitigation Spec Version 1.10 revision 17
Family "2.0" and _PTS is deemed security deficient.
Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
Diffstat (limited to 'SecurityPkg/Tcg')
-rw-r--r-- | SecurityPkg/Tcg/Tcg2Acpi/Tpm.asl | 65 |
1 files changed, 4 insertions, 61 deletions
diff --git a/SecurityPkg/Tcg/Tcg2Acpi/Tpm.asl b/SecurityPkg/Tcg/Tcg2Acpi/Tpm.asl index 95f9d7eae8..dcf3461861 100644 --- a/SecurityPkg/Tcg/Tcg2Acpi/Tpm.asl +++ b/SecurityPkg/Tcg/Tcg2Acpi/Tpm.asl @@ -241,26 +241,10 @@ DefinitionBlock ( Method (PTS, 1, Serialized)
{
//
- // Detect Sx state for MOR, only S4, S5 need to handle
+ // _PTS is deprecated for being security deficient
+ // this implementation simply returns to maintain
+ // compatibility with older OSes using it.
//
- If (LAnd (LLess (Arg0, 6), LGreater (Arg0, 3)))
- {
- //
- // Bit4 -- DisableAutoDetect. 0 -- Firmware MAY autodetect.
- //
- If (LNot (And (MORD, 0x10)))
- {
- //
- // Trigger the SMI through ACPI _PTS method.
- //
- Store (0x02, MCIP)
-
- //
- // Trigger the SMI interrupt
- //
- Store (MCIN, IOPN)
- }
- }
Return (0)
}
@@ -446,43 +430,6 @@ DefinitionBlock ( Return (1)
}
- Method (TMCI, 2, Serialized, 0, IntObj, {UnknownObj, UnknownObj}) // IntObj, PkgObj
- {
- //
- // Switch by function index
- //
- Switch (ToInteger (Arg0))
- {
- Case (0)
- {
- //
- // Standard query, supports function 1-1
- //
- Return (Buffer () {0x03})
- }
- Case (1)
- {
- //
- // Save the Operation Value of the Request to MORD (reserved memory)
- //
- Store (DerefOf (Index (Arg1, 0x00)), MORD)
-
- //
- // Trigger the SMI through ACPI _DSM method.
- //
- Store (0x01, MCIP)
-
- //
- // Trigger the SMI interrupt
- //
- Store (MCIN, IOPN)
- Return (MRET)
- }
- Default {BreakPoint}
- }
- Return (1)
- }
-
Method (_DSM, 4, Serialized, 0, UnknownObj, {BuffObj, IntObj, IntObj, PkgObj})
{
@@ -503,12 +450,8 @@ DefinitionBlock ( }
//
- // TCG Memory Clear Interface
+ // _DSM Memory Clear is deprecated, so not called
//
- If(LEqual(Arg0, ToUUID ("376054ed-cc13-4675-901c-4756d7f2d45d")))
- {
- Return (TMCI (Arg2, Arg3))
- }
Return (Buffer () {0})
}
|