summaryrefslogtreecommitdiffstats
path: root/SecurityPkg/Tcg
diff options
context:
space:
mode:
authorMichael Kinney <michael.d.kinney@intel.com>2016-01-21 19:29:50 +0000
committermdkinney <mdkinney@Edk2>2016-01-21 19:29:50 +0000
commit6d2eec02876c251f9217a58f0e7f15a354412b1d (patch)
treebe316ca6a3e0562e62b8336845aea4c29d5a1e48 /SecurityPkg/Tcg
parentcc71e26372bfcfa347fb835bdd63a82d5e22af63 (diff)
downloadedk2-6d2eec02876c251f9217a58f0e7f15a354412b1d.tar.gz
edk2-6d2eec02876c251f9217a58f0e7f15a354412b1d.tar.bz2
edk2-6d2eec02876c251f9217a58f0e7f15a354412b1d.zip
SecurityPkg/Tcg2Config: 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 <chao.b.zhang@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Michael Kinney <michael.d.kinney@intel.com> Reviewed-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19725 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'SecurityPkg/Tcg')
-rw-r--r--SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf3
-rw-r--r--SecurityPkg/Tcg/Tcg2Config/TpmDetection.c35
2 files changed, 6 insertions, 32 deletions
diff --git a/SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf b/SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
index cd6a92da1c..8dd0b63e48 100644
--- a/SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
+++ b/SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf
@@ -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) 2015, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2015 - 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
diff --git a/SecurityPkg/Tcg/Tcg2Config/TpmDetection.c b/SecurityPkg/Tcg/Tcg2Config/TpmDetection.c
index 33f3a21d87..7e6ca44205 100644
--- a/SecurityPkg/Tcg/Tcg2Config/TpmDetection.c
+++ b/SecurityPkg/Tcg/Tcg2Config/TpmDetection.c
@@ -1,7 +1,7 @@
/** @file
TPM1.2/dTPM2.0 auto detection.
-Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2015 - 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 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#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 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "Tcg2ConfigNvData.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 @@ DetectTpmDevice (
}
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 @@ DetectTpmDevice (
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) {