Revision: 19724
http://sourceforge.net/p/edk2/code/19724
Author: mdkinney
Date: 2016-01-21 19:29:43 +0000 (Thu, 21 Jan 2016)
Log Message:
-----------
SecurityPkg/TrEEConfig: Remove use of IoLib
Remove the use of the IoLib and Mmioxx() calls to detect dTPM.
This module calls the Tpm12DeviceLib to detect a TPM and the
implementation of the Tpm12DeviceLib for dTPM performs the same
Mmioxx() calls to detect a dTPM. This change makes this module
more generic and portable by maximizing the use of the Tpm12DeviceLib
abstraction for TPM detection.
Cc: Chao Zhang <[email protected]>
Cc: Jiewen Yao <[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Michael Kinney <[email protected]>
Reviewed-by: Chao Zhang <[email protected]>
Reviewed-by: Jiewen Yao <[email protected]>
Modified Paths:
--------------
trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TpmDetection.c
trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf
Modified: trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TpmDetection.c
===================================================================
--- trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TpmDetection.c 2016-01-21
19:29:35 UTC (rev 19723)
+++ trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TpmDetection.c 2016-01-21
19:29:43 UTC (rev 19724)
@@ -1,7 +1,7 @@
/** @file
TPM1.2/dTPM2.0 auto detection.
-Copyright (c) 2013 - 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2013 - 2016, 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
@@ -18,7 +18,6 @@
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
-#include <Library/IoLib.h>
#include <Library/DebugLib.h>
#include <Library/PeiServicesLib.h>
#include <Library/PcdLib.h>
@@ -29,29 +28,6 @@
#include "TrEEConfigNvData.h"
/**
- This routine return if dTPM (1.2 or 2.0) present.
-
- @retval TRUE dTPM present
- @retval FALSE dTPM not present
-**/
-BOOLEAN
-IsDtpmPresent (
- VOID
- )
-{
- UINT8 RegRead;
-
- RegRead = MmioRead8 ((UINTN)PcdGet64 (PcdTpmBaseAddress));
- if (RegRead == 0xFF) {
- DEBUG ((EFI_D_ERROR, "DetectTpmDevice: Dtpm not present\n"));
- return FALSE;
- } else {
- DEBUG ((EFI_D_INFO, "DetectTpmDevice: Dtpm present\n"));
- return TRUE;
- }
-}
-
-/**
This routine check both SetupVariable and real TPM device, and return final
TpmDevice configuration.
@param SetupTpmDevice TpmDevice configuration in setup driver
@@ -100,10 +76,6 @@
}
DEBUG ((EFI_D_INFO, "DetectTpmDevice:\n"));
- if (!IsDtpmPresent ()) {
- // dTPM not available
- return TPM_DEVICE_NULL;
- }
// dTPM available and not disabled by setup
// We need check if it is TPM1.2 or TPM2.0
@@ -111,7 +83,10 @@
Status = Tpm12RequestUseTpm ();
if (EFI_ERROR (Status)) {
- return TPM_DEVICE_2_0_DTPM;
+ //
+ // dTPM not available
+ //
+ return TPM_DEVICE_NULL;
}
if (BootMode == BOOT_ON_S3_RESUME) {
Modified: trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf
===================================================================
--- trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf 2016-01-21
19:29:35 UTC (rev 19723)
+++ trunk/edk2/SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf 2016-01-21
19:29:43 UTC (rev 19724)
@@ -4,7 +4,7 @@
# This module initializes TPM device type based on variable and detection.
# NOTE: This module is only for reference only, each platform should have its
own setup page.
#
-# Copyright (c) 2013 - 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2013 - 2016, 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
@@ -49,7 +49,6 @@
DebugLib
PcdLib
TimerLib
- IoLib
Tpm12CommandLib
Tpm12DeviceLib
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits