TianoCore EDK2 master
|
Go to the source code of this file.
Data Structures | |
struct | tdEFI_TCG2_VERSION |
struct | tdEFI_TCG2_BOOT_SERVICE_CAPABILITY |
struct | EFI_TCG2_EVENT_HEADER |
struct | tdEFI_TCG2_EVENT |
struct | tdEFI_TCG2_PROTOCOL |
struct | tdEFI_TCG2_FINAL_EVENTS_TABLE |
Macros | |
#define | EFI_TCG2_PROTOCOL_GUID {0x607f766c, 0x7455, 0x42be, { 0x93, 0x0b, 0xe4, 0xd7, 0x6d, 0xb2, 0x72, 0x0f }} |
#define | EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 0x00000001 |
#define | EFI_TCG2_EVENT_LOG_FORMAT_TCG_2 0x00000002 |
#define | EFI_TCG2_BOOT_HASH_ALG_SHA1 0x00000001 |
#define | EFI_TCG2_BOOT_HASH_ALG_SHA256 0x00000002 |
#define | EFI_TCG2_BOOT_HASH_ALG_SHA384 0x00000004 |
#define | EFI_TCG2_BOOT_HASH_ALG_SHA512 0x00000008 |
#define | EFI_TCG2_BOOT_HASH_ALG_SM3_256 0x00000010 |
#define | EFI_TCG2_EXTEND_ONLY 0x0000000000000001 |
#define | PE_COFF_IMAGE 0x0000000000000010 |
#define | MAX_PCR_INDEX 23 |
#define | EFI_TCG2_EVENT_HEADER_VERSION 1 |
#define | EFI_TCG2_FINAL_EVENTS_TABLE_GUID {0x1e2ed096, 0x30e2, 0x4254, { 0xbd, 0x89, 0x86, 0x3b, 0xbe, 0xf8, 0x23, 0x25 }} |
#define | EFI_TCG2_FINAL_EVENTS_TABLE_VERSION 1 |
Typedefs | |
typedef struct tdEFI_TCG2_PROTOCOL | EFI_TCG2_PROTOCOL |
typedef struct tdEFI_TCG2_VERSION | EFI_TCG2_VERSION |
typedef UINT32 | EFI_TCG2_EVENT_LOG_BITMAP |
typedef UINT32 | EFI_TCG2_EVENT_LOG_FORMAT |
typedef UINT32 | EFI_TCG2_EVENT_ALGORITHM_BITMAP |
typedef struct tdEFI_TCG2_BOOT_SERVICE_CAPABILITY | EFI_TCG2_BOOT_SERVICE_CAPABILITY |
typedef struct tdEFI_TCG2_EVENT | EFI_TCG2_EVENT |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_GET_CAPABILITY) (IN EFI_TCG2_PROTOCOL *This, IN OUT EFI_TCG2_BOOT_SERVICE_CAPABILITY *ProtocolCapability) |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_GET_EVENT_LOG) (IN EFI_TCG2_PROTOCOL *This, IN EFI_TCG2_EVENT_LOG_FORMAT EventLogFormat, OUT EFI_PHYSICAL_ADDRESS *EventLogLocation, OUT EFI_PHYSICAL_ADDRESS *EventLogLastEntry, OUT BOOLEAN *EventLogTruncated) |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_HASH_LOG_EXTEND_EVENT) (IN EFI_TCG2_PROTOCOL *This, IN UINT64 Flags, IN EFI_PHYSICAL_ADDRESS DataToHash, IN UINT64 DataToHashLen, IN EFI_TCG2_EVENT *EfiTcgEvent) |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_SUBMIT_COMMAND) (IN EFI_TCG2_PROTOCOL *This, IN UINT32 InputParameterBlockSize, IN UINT8 *InputParameterBlock, IN UINT32 OutputParameterBlockSize, IN UINT8 *OutputParameterBlock) |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_GET_ACTIVE_PCR_BANKS) (IN EFI_TCG2_PROTOCOL *This, OUT UINT32 *ActivePcrBanks) |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_SET_ACTIVE_PCR_BANKS) (IN EFI_TCG2_PROTOCOL *This, IN UINT32 ActivePcrBanks) |
typedef EFI_STATUS(EFIAPI * | EFI_TCG2_GET_RESULT_OF_SET_ACTIVE_PCR_BANKS) (IN EFI_TCG2_PROTOCOL *This, OUT UINT32 *OperationPresent, OUT UINT32 *Response) |
typedef struct tdEFI_TCG2_FINAL_EVENTS_TABLE | EFI_TCG2_FINAL_EVENTS_TABLE |
Variables | |
EFI_GUID | gEfiTcg2ProtocolGuid |
EFI_GUID | gEfiTcg2FinalEventsTableGuid |
TPM2 Protocol as defined in TCG PC Client Platform EFI Protocol Specification Family "2.0". See http://trustedcomputinggroup.org for the latest specification
Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file Tcg2Protocol.h.
#define EFI_TCG2_BOOT_HASH_ALG_SHA1 0x00000001 |
Definition at line 90 of file Tcg2Protocol.h.
#define EFI_TCG2_BOOT_HASH_ALG_SHA256 0x00000002 |
Definition at line 91 of file Tcg2Protocol.h.
#define EFI_TCG2_BOOT_HASH_ALG_SHA384 0x00000004 |
Definition at line 92 of file Tcg2Protocol.h.
#define EFI_TCG2_BOOT_HASH_ALG_SHA512 0x00000008 |
Definition at line 93 of file Tcg2Protocol.h.
#define EFI_TCG2_BOOT_HASH_ALG_SM3_256 0x00000010 |
Definition at line 94 of file Tcg2Protocol.h.
#define EFI_TCG2_EVENT_HEADER_VERSION 1 |
Definition at line 109 of file Tcg2Protocol.h.
#define EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 0x00000001 |
Definition at line 30 of file Tcg2Protocol.h.
#define EFI_TCG2_EVENT_LOG_FORMAT_TCG_2 0x00000002 |
Definition at line 31 of file Tcg2Protocol.h.
#define EFI_TCG2_EXTEND_ONLY 0x0000000000000001 |
Definition at line 99 of file Tcg2Protocol.h.
#define EFI_TCG2_FINAL_EVENTS_TABLE_GUID {0x1e2ed096, 0x30e2, 0x4254, { 0xbd, 0x89, 0x86, 0x3b, 0xbe, 0xf8, 0x23, 0x25 }} |
Definition at line 313 of file Tcg2Protocol.h.
#define EFI_TCG2_FINAL_EVENTS_TABLE_VERSION 1 |
Definition at line 333 of file Tcg2Protocol.h.
#define EFI_TCG2_PROTOCOL_GUID {0x607f766c, 0x7455, 0x42be, { 0x93, 0x0b, 0xe4, 0xd7, 0x6d, 0xb2, 0x72, 0x0f }} |
Definition at line 16 of file Tcg2Protocol.h.
#define MAX_PCR_INDEX 23 |
Definition at line 105 of file Tcg2Protocol.h.
#define PE_COFF_IMAGE 0x0000000000000010 |
Definition at line 103 of file Tcg2Protocol.h.
typedef UINT32 EFI_TCG2_EVENT_ALGORITHM_BITMAP |
Definition at line 28 of file Tcg2Protocol.h.
typedef UINT32 EFI_TCG2_EVENT_LOG_BITMAP |
Definition at line 26 of file Tcg2Protocol.h.
typedef UINT32 EFI_TCG2_EVENT_LOG_FORMAT |
Definition at line 27 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_GET_ACTIVE_PCR_BANKS) (IN EFI_TCG2_PROTOCOL *This, OUT UINT32 *ActivePcrBanks) |
This service returns the currently active PCR banks.
[in] | This | Indicates the calling context |
[out] | ActivePcrBanks | Pointer to the variable receiving the bitmap of currently active PCR banks. |
EFI_SUCCESS | The bitmap of active PCR banks was stored in the ActivePcrBanks parameter. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect. |
Definition at line 257 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_GET_CAPABILITY) (IN EFI_TCG2_PROTOCOL *This, IN OUT EFI_TCG2_BOOT_SERVICE_CAPABILITY *ProtocolCapability) |
The EFI_TCG2_PROTOCOL GetCapability function call provides protocol capability information and state information.
[in] | This | Indicates the calling context |
[in,out] | ProtocolCapability | The caller allocates memory for a EFI_TCG2_BOOT_SERVICE_CAPABILITY structure and sets the size field to the size of the structure allocated. The callee fills in the fields with the EFI protocol capability information and the current EFI TCG2 state information up to the number of fields which fit within the size of the structure passed in. |
EFI_SUCCESS | Operation completed successfully. |
EFI_DEVICE_ERROR | The command was unsuccessful. The ProtocolCapability variable will not be populated. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect. The ProtocolCapability variable will not be populated. |
EFI_BUFFER_TOO_SMALL | The ProtocolCapability variable is too small to hold the full response. It will be partially populated (required Size field will be set). |
Definition at line 161 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_GET_EVENT_LOG) (IN EFI_TCG2_PROTOCOL *This, IN EFI_TCG2_EVENT_LOG_FORMAT EventLogFormat, OUT EFI_PHYSICAL_ADDRESS *EventLogLocation, OUT EFI_PHYSICAL_ADDRESS *EventLogLastEntry, OUT BOOLEAN *EventLogTruncated) |
The EFI_TCG2_PROTOCOL Get Event Log function call allows a caller to retrieve the address of a given event log and its last entry.
[in] | This | Indicates the calling context |
[in] | EventLogFormat | The type of the event log for which the information is requested. |
[out] | EventLogLocation | A pointer to the memory address of the event log. |
[out] | EventLogLastEntry | If the Event Log contains more than one entry, this is a pointer to the address of the start of the last entry in the event log in memory. |
[out] | EventLogTruncated | If the Event Log is missing at least one entry because an event would have exceeded the area allocated for events, this value is set to TRUE. Otherwise, the value will be FALSE and the Event Log will be complete. |
EFI_SUCCESS | Operation completed successfully. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect (e.g. asking for an event log whose format is not supported). |
Definition at line 185 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_GET_RESULT_OF_SET_ACTIVE_PCR_BANKS) (IN EFI_TCG2_PROTOCOL *This, OUT UINT32 *OperationPresent, OUT UINT32 *Response) |
This service retrieves the result of a previous invocation of SetActivePcrBanks.
[in] | This | Indicates the calling context |
[out] | OperationPresent | Non-zero value to indicate a SetActivePcrBank operation was invoked during the last boot. |
[out] | Response | The response from the SetActivePcrBank request. |
EFI_SUCCESS | The result value could be returned. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect. |
Definition at line 290 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_HASH_LOG_EXTEND_EVENT) (IN EFI_TCG2_PROTOCOL *This, IN UINT64 Flags, IN EFI_PHYSICAL_ADDRESS DataToHash, IN UINT64 DataToHashLen, IN EFI_TCG2_EVENT *EfiTcgEvent) |
The EFI_TCG2_PROTOCOL HashLogExtendEvent function call provides callers with an opportunity to extend and optionally log events without requiring knowledge of actual TPM commands. The extend operation will occur even if this function cannot create an event log entry (e.g. due to the event log being full).
[in] | This | Indicates the calling context |
[in] | Flags | Bitmap providing additional information. |
[in] | DataToHash | Physical address of the start of the data buffer to be hashed. |
[in] | DataToHashLen | The length in bytes of the buffer referenced by DataToHash. |
[in] | EfiTcgEvent | Pointer to data buffer containing information about the event. |
EFI_SUCCESS | Operation completed successfully. |
EFI_DEVICE_ERROR | The command was unsuccessful. |
EFI_VOLUME_FULL | The extend operation occurred, but the event could not be written to one or more event logs. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect. |
EFI_UNSUPPORTED | The PE/COFF image type is not supported. |
Definition at line 214 of file Tcg2Protocol.h.
typedef struct tdEFI_TCG2_PROTOCOL EFI_TCG2_PROTOCOL |
Definition at line 19 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_SET_ACTIVE_PCR_BANKS) (IN EFI_TCG2_PROTOCOL *This, IN UINT32 ActivePcrBanks) |
This service sets the currently active PCR banks.
[in] | This | Indicates the calling context |
[in] | ActivePcrBanks | Bitmap of the requested active PCR banks. At least one bit SHALL be set. |
EFI_SUCCESS | The bitmap in ActivePcrBank parameter is already active. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect. |
Definition at line 273 of file Tcg2Protocol.h.
typedef EFI_STATUS(EFIAPI * EFI_TCG2_SUBMIT_COMMAND) (IN EFI_TCG2_PROTOCOL *This, IN UINT32 InputParameterBlockSize, IN UINT8 *InputParameterBlock, IN UINT32 OutputParameterBlockSize, IN UINT8 *OutputParameterBlock) |
This service enables the sending of commands to the TPM.
[in] | This | Indicates the calling context |
[in] | InputParameterBlockSize | Size of the TPM input parameter block. |
[in] | InputParameterBlock | Pointer to the TPM input parameter block. |
[in] | OutputParameterBlockSize | Size of the TPM output parameter block. |
[in] | OutputParameterBlock | Pointer to the TPM output parameter block. |
EFI_SUCCESS | The command byte stream was successfully sent to the device and a response was successfully received. |
EFI_DEVICE_ERROR | The command was not successfully sent to the device or a response was not successfully received from the device. |
EFI_INVALID_PARAMETER | One or more of the parameters are incorrect. |
EFI_BUFFER_TOO_SMALL | The output parameter block is too small. |
Definition at line 238 of file Tcg2Protocol.h.