TianoCore EDK2 master
Loading...
Searching...
No Matches
TcgService.h
Go to the documentation of this file.
1
10#ifndef _TCG_SERVICE_PROTOCOL_H_
11#define _TCG_SERVICE_PROTOCOL_H_
12
14
15#define EFI_TCG_PROTOCOL_GUID \
16 {0xf541796d, 0xa62e, 0x4954, { 0xa7, 0x75, 0x95, 0x84, 0xf6, 0x1b, 0x9c, 0xdd } }
17
19
20typedef struct {
21 UINT8 Major;
22 UINT8 Minor;
23 UINT8 RevMajor;
24 UINT8 RevMinor;
26
28 UINT8 Size;
30 TCG_VERSION ProtocolSpecVersion;
31 UINT8 HashAlgorithmBitmap;
36
37typedef UINT32 TCG_ALGORITHM_ID;
38
60typedef
62(EFIAPI *EFI_TCG_STATUS_CHECK)(
63 IN EFI_TCG_PROTOCOL *This,
65 *ProtocolCapability,
66 OUT UINT32 *TCGFeatureFlags,
67 OUT EFI_PHYSICAL_ADDRESS *EventLogLocation,
68 OUT EFI_PHYSICAL_ADDRESS *EventLogLastEntry
69 );
70
88typedef
90(EFIAPI *EFI_TCG_HASH_ALL)(
91 IN EFI_TCG_PROTOCOL *This,
92 IN UINT8 *HashData,
93 IN UINT64 HashDataLen,
94 IN TCG_ALGORITHM_ID AlgorithmId,
95 IN OUT UINT64 *HashedDataLen,
96 IN OUT UINT8 **HashedDataResult
97 );
98
115typedef
117(EFIAPI *EFI_TCG_LOG_EVENT)(
118 IN EFI_TCG_PROTOCOL *This,
119 IN TCG_PCR_EVENT *TCGLogData,
120 IN OUT UINT32 *EventNumber,
121 IN UINT32 Flags
122 );
123
138typedef
141 IN EFI_TCG_PROTOCOL *This,
142 IN UINT32 TpmInputParameterBlockSize,
143 IN UINT8 *TpmInputParameterBlock,
144 IN UINT32 TpmOutputParameterBlockSize,
145 IN UINT8 *TpmOutputParameterBlock
146 );
147
170typedef
173 IN EFI_TCG_PROTOCOL *This,
174 IN EFI_PHYSICAL_ADDRESS HashData,
175 IN UINT64 HashDataLen,
176 IN TCG_ALGORITHM_ID AlgorithmId,
177 IN OUT TCG_PCR_EVENT *TCGLogData,
178 IN OUT UINT32 *EventNumber,
179 OUT EFI_PHYSICAL_ADDRESS *EventLogLastEntry
180 );
181
186 EFI_TCG_STATUS_CHECK StatusCheck;
187 EFI_TCG_HASH_ALL HashAll;
188 EFI_TCG_LOG_EVENT LogEvent;
189 EFI_TCG_PASS_THROUGH_TO_TPM PassThroughToTpm;
190 EFI_TCG_HASH_LOG_EXTEND_EVENT HashLogExtendEvent;
191};
192
193extern EFI_GUID gEfiTcgProtocolGuid;
194
195#endif
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
EFI_STATUS(EFIAPI * EFI_TCG_PASS_THROUGH_TO_TPM)(IN EFI_TCG_PROTOCOL *This, IN UINT32 TpmInputParameterBlockSize, IN UINT8 *TpmInputParameterBlock, IN UINT32 TpmOutputParameterBlockSize, IN UINT8 *TpmOutputParameterBlock)
Definition: TcgService.h:140
EFI_STATUS(EFIAPI * EFI_TCG_LOG_EVENT)(IN EFI_TCG_PROTOCOL *This, IN TCG_PCR_EVENT *TCGLogData, IN OUT UINT32 *EventNumber, IN UINT32 Flags)
Definition: TcgService.h:117
EFI_STATUS(EFIAPI * EFI_TCG_HASH_LOG_EXTEND_EVENT)(IN EFI_TCG_PROTOCOL *This, IN EFI_PHYSICAL_ADDRESS HashData, IN UINT64 HashDataLen, IN TCG_ALGORITHM_ID AlgorithmId, IN OUT TCG_PCR_EVENT *TCGLogData, IN OUT UINT32 *EventNumber, OUT EFI_PHYSICAL_ADDRESS *EventLogLastEntry)
Definition: TcgService.h:172
EFI_STATUS(EFIAPI * EFI_TCG_HASH_ALL)(IN EFI_TCG_PROTOCOL *This, IN UINT8 *HashData, IN UINT64 HashDataLen, IN TCG_ALGORITHM_ID AlgorithmId, IN OUT UINT64 *HashedDataLen, IN OUT UINT8 **HashedDataResult)
Definition: TcgService.h:90
EFI_STATUS(EFIAPI * EFI_TCG_STATUS_CHECK)(IN EFI_TCG_PROTOCOL *This, OUT TCG_EFI_BOOT_SERVICE_CAPABILITY *ProtocolCapability, OUT UINT32 *TCGFeatureFlags, OUT EFI_PHYSICAL_ADDRESS *EventLogLocation, OUT EFI_PHYSICAL_ADDRESS *EventLogLastEntry)
Definition: TcgService.h:62
UINT64 EFI_PHYSICAL_ADDRESS
Definition: UefiBaseType.h:50
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
BOOLEAN TPMDeactivatedFlag
00h = TPM not present.
Definition: TcgService.h:34
TCG_VERSION StructureVersion
Size of this structure.
Definition: TcgService.h:29
Definition: Base.h:213