SecurityPkg[all]
0.98
|
Data Structures | |
struct | TPM2_DEVICE_INTERFACE |
Typedefs | |
typedef IN UINT8 * | InputParameterBlock |
typedef IN UINT8 IN OUT UINT32 * | OutputParameterBlockSize |
typedef IN UINT8 IN OUT UINT32 IN UINT8 * | OutputParameterBlock |
Enumerations | |
enum | TPM2_PTP_INTERFACE_TYPE { Tpm2PtpInterfaceTis, Tpm2PtpInterfaceFifo, Tpm2PtpInterfaceCrb, Tpm2PtpInterfaceMax } |
Functions | |
EFI_STATUS EFIAPI | Tpm2SubmitCommand (IN UINT32 InputParameterBlockSize, IN UINT8 *InputParameterBlock, IN OUT UINT32 *OutputParameterBlockSize, IN UINT8 *OutputParameterBlock) |
EFI_STATUS EFIAPI | Tpm2RequestUseTpm (VOID) |
typedef | EFI_STATUS (EFIAPI *TPM2_SUBMIT_COMMAND)(IN UINT32 InputParameterBlockSize |
EFI_STATUS EFIAPI | Tpm2RegisterTpm2DeviceLib (IN TPM2_DEVICE_INTERFACE *Tpm2Device) |
This library abstract how to access TPM2 hardware device.
Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
typedef IN UINT8* InputParameterBlock |
typedef IN UINT8 IN OUT UINT32 IN UINT8* OutputParameterBlock |
typedef IN UINT8 IN OUT UINT32* OutputParameterBlockSize |
typedef EFI_STATUS | ( | EFIAPI * | HASH_FINAL | ) |
This service enables the sending of commands to the TPM2.
[in] | InputParameterBlockSize | Size of the TPM2 input parameter block. |
[in] | InputParameterBlock | Pointer to the TPM2 input parameter block. |
[in,out] | OutputParameterBlockSize | Size of the TPM2 output parameter block. |
[in] | OutputParameterBlock | Pointer to the TPM2 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_BUFFER_TOO_SMALL | The output parameter block is too small. |
This service requests use TPM2.
EFI_SUCCESS | Get the control of TPM2 chip. |
EFI_NOT_FOUND | TPM2 not found. |
EFI_DEVICE_ERROR | Unexpected device behavior. |
Update hash sequence data.
HashHandle | Hash handle. |
DataToHash | Data to be hashed. |
DataToHashLen | Data size. |
EFI_SUCCESS | Hash sequence updated. |
Complete hash sequence complete.
HashHandle | Hash handle. |
DigestList | Digest list. |
EFI_SUCCESS | Hash sequence complete and DigestList is returned. |
EFI_STATUS EFIAPI Tpm2RegisterTpm2DeviceLib | ( | IN TPM2_DEVICE_INTERFACE * | Tpm2Device | ) |
This service register TPM2 device.
Tpm2Device | TPM2 device |
EFI_SUCCESS | This TPM2 device is registered successfully. |
EFI_UNSUPPORTED | System does not support register this TPM2 device. |
EFI_ALREADY_STARTED | System already register this TPM2 device. |
EFI_STATUS EFIAPI Tpm2RequestUseTpm | ( | VOID | ) |
This service requests use TPM2.
EFI_SUCCESS | Get the control of TPM2 chip. |
EFI_NOT_FOUND | TPM2 not found. |
EFI_DEVICE_ERROR | Unexpected device behavior. |
EFI_STATUS EFIAPI Tpm2SubmitCommand | ( | IN UINT32 | InputParameterBlockSize, |
IN UINT8 * | InputParameterBlock, | ||
IN OUT UINT32 * | OutputParameterBlockSize, | ||
IN UINT8 * | OutputParameterBlock | ||
) |
This service enables the sending of commands to the TPM2.
[in] | InputParameterBlockSize | Size of the TPM2 input parameter block. |
[in] | InputParameterBlock | Pointer to the TPM2 input parameter block. |
[in,out] | OutputParameterBlockSize | Size of the TPM2 output parameter block. |
[in] | OutputParameterBlock | Pointer to the TPM2 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_BUFFER_TOO_SMALL | The output parameter block is too small. |