]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / SecurityPkg / Library / Tpm2DeviceLibDTpm / Tpm2DeviceLibDTpm.h
1 /** @file
2 This header file includes common internal fuction prototypes.
3
4 Copyright (c) 2013 - 2018, Intel Corporation. All rights reserved. <BR>
5 Copyright (c) Microsoft Corporation.
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef _TPM2_DEVICE_LIB_DTPM_H_
11 #define _TPM2_DEVICE_LIB_DTPM_H_
12
13 /**
14 Return PTP interface type.
15
16 @param[in] Register Pointer to PTP register.
17
18 @return PTP interface type.
19 **/
20 TPM2_PTP_INTERFACE_TYPE
21 Tpm2GetPtpInterface (
22 IN VOID *Register
23 );
24
25 /**
26 Return PTP CRB interface IdleByPass state.
27
28 @param[in] Register Pointer to PTP register.
29
30 @return PTP CRB interface IdleByPass state.
31 **/
32 UINT8
33 Tpm2GetIdleByPass (
34 IN VOID *Register
35 );
36
37 /**
38 Return cached PTP interface type.
39
40 @return Cached PTP interface type.
41 **/
42 TPM2_PTP_INTERFACE_TYPE
43 GetCachedPtpInterface (
44 VOID
45 );
46
47 /**
48 Return cached PTP CRB interface IdleByPass state.
49
50 @return Cached PTP CRB interface IdleByPass state.
51 **/
52 UINT8
53 GetCachedIdleByPass (
54 VOID
55 );
56
57 /**
58 The common function cache current active TpmInterfaceType when needed.
59
60 @retval EFI_SUCCESS DTPM2.0 instance is registered, or system does not support register DTPM2.0 instance
61 **/
62 EFI_STATUS
63 InternalTpm2DeviceLibDTpmCommonConstructor (
64 VOID
65 );
66
67 #endif // _TPM2_DEVICE_LIB_DTPM_H_