summaryrefslogtreecommitdiff
path: root/Core/EM/TCG2/Common/PPI/TcgService
diff options
context:
space:
mode:
authorraywu <raywu0301@gmail.com>2018-06-15 00:00:50 +0800
committerraywu <raywu0301@gmail.com>2018-06-15 00:00:50 +0800
commitb7c51c9cf4864df6aabb99a1ae843becd577237c (patch)
treeeebe9b0d0ca03062955223097e57da84dd618b9a /Core/EM/TCG2/Common/PPI/TcgService
downloadzprj-master.tar.xz
init. 1AQQW051HEADmaster
Diffstat (limited to 'Core/EM/TCG2/Common/PPI/TcgService')
-rw-r--r--Core/EM/TCG2/Common/PPI/TcgService/TcgService.c64
-rw-r--r--Core/EM/TCG2/Common/PPI/TcgService/TcgService.h122
-rw-r--r--Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.c73
-rw-r--r--Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.h181
4 files changed, 440 insertions, 0 deletions
diff --git a/Core/EM/TCG2/Common/PPI/TcgService/TcgService.c b/Core/EM/TCG2/Common/PPI/TcgService/TcgService.c
new file mode 100644
index 0000000..906d671
--- /dev/null
+++ b/Core/EM/TCG2/Common/PPI/TcgService/TcgService.c
@@ -0,0 +1,64 @@
+/*++
+
+ Copyright (c) 2005 Intel Corporation. All rights reserved
+ This software and associated documentation (if any) is furnished
+ under a license and may only be used or copied in accordance
+ with the terms of the license. Except as permitted by such
+ license, no part of this software or documentation may be
+ reproduced, stored in a retrieval system, or transmitted in any
+ form or by any means without the express written consent of
+ Intel Corporation.
+
+
+ Abstract:
+
+ GUID definition for PEI_TCG_PPI
+
+ --*/
+//*************************************************************************
+// $Header: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgService.c 1 4/21/14 2:15p Fredericko $
+//
+// $Revision: 1 $
+//
+// $Date: 4/21/14 2:15p $
+//*************************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgService.c $
+//
+// 1 4/21/14 2:15p Fredericko
+//
+// 1 10/08/13 12:00p Fredericko
+// Initial Check-In for Tpm-Next module
+//
+// 1 7/10/13 5:58p Fredericko
+// [TAG] EIP120969
+// [Category] New Feature
+// [Description] TCG (TPM20)
+//
+// 2 5/19/10 6:48p Fredericko
+// Included File Header
+// Included File Revision History
+// EIP 37653
+//
+//*************************************************************************
+//*************************************************************************
+//<AMI_FHDR_START>
+//
+// Name: TcgService.c
+//
+// Description:
+// Defines TcgPpiguid
+//
+//<AMI_FHDR_END>
+//*************************************************************************
+
+#include <Efi.h>
+#include <Pei.h>
+#include <Tpm12.h>
+
+#include EFI_PPI_DEFINITION( TcgService )
+
+EFI_GUID gPeiTcgPpiGuid = PEI_TCG_PPI_GUID;
+
+EFI_GUID_STRING( &gPeiTcgPpiGuid, "TcgService", "TCG Services PPI" );
diff --git a/Core/EM/TCG2/Common/PPI/TcgService/TcgService.h b/Core/EM/TCG2/Common/PPI/TcgService/TcgService.h
new file mode 100644
index 0000000..c621600
--- /dev/null
+++ b/Core/EM/TCG2/Common/PPI/TcgService/TcgService.h
@@ -0,0 +1,122 @@
+/*++
+
+ Copyright (c) 2005 Intel Corporation. All rights reserved
+ This software and associated documentation (if any) is furnished
+ under a license and may only be used or copied in accordance
+ with the terms of the license. Except as permitted by such
+ license, no part of this software or documentation may be
+ reproduced, stored in a retrieval system, or transmitted in any
+ form or by any means without the express written consent of
+ Intel Corporation.
+
+
+ Abstract:
+
+ TCG Service PPI
+
+ Only minimum subset of features is contained in this PPI definition
+
+ --*/
+//*************************************************************************
+// $Header: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgService.h 1 4/21/14 2:15p Fredericko $
+//
+// $Revision: 1 $
+//
+// $Date: 4/21/14 2:15p $
+//*************************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgService.h $
+//
+// 1 4/21/14 2:15p Fredericko
+//
+// 1 10/08/13 12:00p Fredericko
+// Initial Check-In for Tpm-Next module
+//
+// 1 7/10/13 5:58p Fredericko
+// [TAG] EIP120969
+// [Category] New Feature
+// [Description] TCG (TPM20)
+//
+// 6 3/29/11 2:59p Fredericko
+//
+// 5 3/28/11 3:14p Fredericko
+// [TAG] EIP 54642
+// [Category] Improvement
+// [Description] 1. Checkin Files related to TCG function override
+// 2. Include TCM and TPM auto detection
+// [Files] Affects all TCG files
+//
+// 4 5/19/10 6:49p Fredericko
+// Included File Header
+// Included File Revision History
+// EIP 37653
+//
+//*************************************************************************
+//*************************************************************************
+//<AMI_FHDR_START>
+//
+// Name: TcgService.h
+//
+// Description:
+// Header file for TcgService.c
+//
+//<AMI_FHDR_END>
+//*************************************************************************
+
+#ifndef _TCG_SERVICE_H_
+#define _TCG_SERVICE_H_
+
+#include <TcgEfiTpm.h>
+#include <TCGMisc.h>
+#include <token.h>
+
+struct _PEI_TCG_PPI;
+
+typedef struct _PEI_TCG_PPI PEI_TCG_PPI;
+
+
+#define PEI_TCG_PPI_GUID \
+ {0x177d39d2, 0x43b8, 0x40c8, 0x9a, 0xe1, 0x3c, 0x51, 0x98, 0xd6, 0x94, 0x1e}
+
+typedef
+EFI_STATUS
+(EFIAPI * PEI_TCG_LOG_EVENT)(
+ IN PEI_TCG_PPI *This,
+ IN EFI_PEI_SERVICES **PeiServices,
+ IN TCG_PCR_EVENT *Event,
+ OUT UINT32 *EventNum
+ );
+
+typedef
+EFI_STATUS
+(EFIAPI * PEI_TCG_HASH_LOG_EXTEND_EVENT)(
+ IN PEI_TCG_PPI *This,
+ IN EFI_PEI_SERVICES **PeiServices,
+ IN UINT8 *HashData,
+ IN UINT32 HashDataLen,
+ IN TCG_PCR_EVENT *NewEvent,
+ OUT UINT32 *EventNum
+ );
+
+typedef
+EFI_STATUS
+(EFIAPI * PEI_TCG_PASS_THROUGH_TO_TPM)(
+ IN PEI_TCG_PPI *This,
+ IN EFI_PEI_SERVICES **PeiSerivces,
+ IN UINT32 TpmInputParameterBlockSize,
+ IN UINT8 *TpmInputParameterBlock,
+ IN UINT32 TpmOutputParameterBlockSize,
+ IN UINT8 *TpmOutputParameterBlock
+ );
+
+typedef struct _PEI_TCG_PPI
+{
+ PEI_TCG_HASH_LOG_EXTEND_EVENT TCGHashLogExtendEvent;
+ PEI_TCG_LOG_EVENT TCGLogEvent;
+ PEI_TCG_PASS_THROUGH_TO_TPM TCGPassThroughToTpm;
+} PEI_TCG_PPI;
+
+extern EFI_GUID gPeiTcgPpiGuid;
+
+#endif
diff --git a/Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.c b/Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.c
new file mode 100644
index 0000000..51c6f4a
--- /dev/null
+++ b/Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.c
@@ -0,0 +1,73 @@
+/*++
+
+ Copyright (c) 2005 Intel Corporation. All rights reserved
+ This software and associated documentation (if any) is furnished
+ under a license and may only be used or copied in accordance
+ with the terms of the license. Except as permitted by such
+ license, no part of this software or documentation may be
+ reproduced, stored in a retrieval system, or transmitted in any
+ form or by any means without the express written consent of
+ Intel Corporation.
+
+
+ Abstract:
+
+ GUID definition for PEI_TCG_PPI
+
+ --*/
+//*************************************************************************
+// $Header: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgTcmService.c 1 4/21/14 2:15p Fredericko $
+//
+// $Revision: 1 $
+//
+// $Date: 4/21/14 2:15p $
+//*************************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgTcmService.c $
+//
+// 1 4/21/14 2:15p Fredericko
+//
+// 1 10/08/13 12:00p Fredericko
+// Initial Check-In for Tpm-Next module
+//
+// 1 7/10/13 5:58p Fredericko
+// [TAG] EIP120969
+// [Category] New Feature
+// [Description] TCG (TPM20)
+//
+// 2 3/29/11 3:00p Fredericko
+//
+// 1 3/28/11 3:16p Fredericko
+// [TAG] EIP 54642
+// [Category] Improvement
+// [Description] 1. Checkin Files related to TCG function override
+// 2. Include TCM and TPM auto detection
+// [Files] Affects all TCG files
+//
+// 2 5/19/10 6:48p Fredericko
+// Included File Header
+// Included File Revision History
+// EIP 37653
+//
+//*************************************************************************
+//*************************************************************************
+//<AMI_FHDR_START>
+//
+// Name: TcgService.c
+//
+// Description:
+// Defines TcgPpiguid
+//
+//<AMI_FHDR_END>
+//*************************************************************************
+
+#include <Efi.h>
+#include <Pei.h>
+#include <Tpm12.h>
+
+#include EFI_PPI_DEFINITION( TcgTcmService )
+
+EFI_GUID gPeiTcmPpiGuid = PEI_TCG_PPI_GUID;
+
+EFI_GUID_STRING( &gPeiTcgPpiGuid, "TcgTcmService", "TCM Services PPI" );
diff --git a/Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.h b/Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.h
new file mode 100644
index 0000000..3f6c973
--- /dev/null
+++ b/Core/EM/TCG2/Common/PPI/TcgService/TcgTcmService.h
@@ -0,0 +1,181 @@
+/*++
+
+ Copyright (c) 2005 Intel Corporation. All rights reserved
+ This software and associated documentation (if any) is furnished
+ under a license and may only be used or copied in accordance
+ with the terms of the license. Except as permitted by such
+ license, no part of this software or documentation may be
+ reproduced, stored in a retrieval system, or transmitted in any
+ form or by any means without the express written consent of
+ Intel Corporation.
+
+
+ Abstract:
+
+ TCG Service PPI
+
+ Only minimum subset of features is contained in this PPI definition
+
+ --*/
+//*************************************************************************
+// $Header: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgTcmService.h 1 4/21/14 2:15p Fredericko $
+//
+// $Revision: 1 $
+//
+// $Date: 4/21/14 2:15p $
+//*************************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgTcmService.h $
+//
+// 1 4/21/14 2:15p Fredericko
+//
+// 1 10/08/13 12:00p Fredericko
+// Initial Check-In for Tpm-Next module
+//
+// 1 7/10/13 5:58p Fredericko
+// [TAG] EIP120969
+// [Category] New Feature
+// [Description] TCG (TPM20)
+//
+// 3 9/29/11 6:08p Davidd
+// [TAG] EIP71378
+// [Category] Improvement
+// [Description] Customer names in source files
+// [Files] TcgTcmService.h
+//
+// 2 3/29/11 3:00p Fredericko
+//
+// 1 3/28/11 3:15p Fredericko
+// [TAG] EIP 54642
+// [Category] Improvement
+// [Description] 1. Checkin Files related to TCG function override
+// 2. Include TCM and TPM auto detection
+// [Files] Affects all TCG files
+//
+// 4 5/19/10 6:49p Fredericko
+// Included File Header
+// Included File Revision History
+// EIP 37653
+//
+/*
+
+ Copyright (c) 2005 Intel Corporation. All rights reserved
+ This software and associated documentation (if any) is furnished
+ under a license and may only be used or copied in accordance
+ with the terms of the license. Except as permitted by such
+ license, no part of this software or documentation may be
+ reproduced, stored in a retrieval system, or transmitted in any
+ form or by any means without the express written consent of
+ Intel Corporation.
+
+
+ Abstract:
+
+ TCM Service PPI
+
+ Only minimum subset of features is contained in this PPI definition
+
+ --*/
+//*************************************************************************
+// $Header: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgTcmService.h 1 4/21/14 2:15p Fredericko $
+//
+// $Revision: 1 $
+//
+// $Date: 4/21/14 2:15p $
+//*************************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/TCG2/CommonHeaders/TcgService_PPI/TcgService/TcgTcmService.h $
+//
+// 1 4/21/14 2:15p Fredericko
+//
+// 1 10/08/13 12:00p Fredericko
+// Initial Check-In for Tpm-Next module
+//
+// 1 7/10/13 5:58p Fredericko
+// [TAG] EIP120969
+// [Category] New Feature
+// [Description] TCG (TPM20)
+//
+// 3 9/29/11 6:08p Davidd
+// [TAG] EIP71378
+// [Category] Improvement
+// [Description] Customer names in source files
+// [Files] TcgTcmService.h
+//
+// 2 3/29/11 3:00p Fredericko
+//
+// 1 3/28/11 3:15p Fredericko
+// [TAG] EIP 54642
+// [Category] Improvement
+// [Description] 1. Checkin Files related to TCG file override
+// 2. Include TCM and TPM auto detection
+// [Files] Affects all TCG files
+//
+// 4 5/19/10 6:49p Fredericko
+// Included File Header
+// Included File Revision History
+// EIP 37653
+//
+//*************************************************************************
+//*************************************************************************
+//<AMI_FHDR_START>
+//
+// Name: TCMService.h
+//
+// Description:
+// Header file for TCMService.c
+//
+//<AMI_FHDR_END>
+//*************************************************************************
+#ifndef _TCG_TCM_SERVICE_H_
+#define _TCG_TCM_SERVICE_H_
+
+#include <TcgEfiTpm.h>
+#include <TcgMisc.h>
+#include <token.h>
+
+struct _PEI_TCM_PPI;
+typedef struct _PEI_TCM_PPI PEI_TCM_PPI;
+
+typedef
+EFI_STATUS
+(EFIAPI * PEI_TCM_LOG_EVENT)(
+ IN PEI_TCM_PPI *This,
+ IN EFI_PEI_SERVICES **PeiServices,
+ IN TCM_PCR_EVENT *Event,
+ OUT UINT32 *EventNum );
+
+typedef
+EFI_STATUS
+(EFIAPI * PEI_TCM_HASH_LOG_EXTEND_EVENT)(
+ IN PEI_TCM_PPI *This,
+ IN EFI_PEI_SERVICES **PeiServices,
+ IN UINT8 *HashData,
+ IN UINT32 HashDataLen,
+ IN TCM_PCR_EVENT *NewEvent,
+ OUT UINT32 *EventNum
+ );
+
+typedef
+EFI_STATUS
+(EFIAPI * PEI_TCM_PASS_THROUGH_TO_TCM)(
+ IN PEI_TCM_PPI *This,
+ IN EFI_PEI_SERVICES **PeiSerivces,
+ IN UINT32 TcmInputParameterBlockSize,
+ IN UINT8 *TcmInputParameterBlock,
+ IN UINT32 TcmOutputParameterBlockSize,
+ IN UINT8 *TcmOutputParameterBlock
+ );
+
+typedef struct _PEI_TCM_PPI
+{
+ PEI_TCM_HASH_LOG_EXTEND_EVENT TCMHashLogExtendEvent;
+ PEI_TCM_LOG_EVENT TCMLogEvent;
+ PEI_TCM_PASS_THROUGH_TO_TCM TCMPassThroughToTcm;
+} PEI_TCM_PPI;
+
+extern EFI_GUID gPeiTCMPpiGuid;
+
+#endif \ No newline at end of file