> @@ -807,7 +880,47 @@ TdxHelperMeasureTdHob ( > VOID > ) > { > - return EFI_UNSUPPORTED; > + EFI_PEI_HOB_POINTERS Hob; > + EFI_STATUS Status; > + UINT8 Digest[SHA384_DIGEST_SIZE]; > + OVMF_WORK_AREA *WorkArea; > + VOID *TdHob; > + > + TdHob = (VOID *)(UINTN)FixedPcdGet32 (PcdOvmfSecGhcbBase); > + Hob.Raw = (UINT8 *)TdHob; > + > + // > + // Walk thru the TdHob list until end of list. > + // > + while (!END_OF_HOB_LIST (Hob)) { > + Hob.Raw = GET_NEXT_HOB (Hob); > + }
Hmm? Isn't there just a single TdHob? Why do you need to walk the list here? > +#pragma pack(1) > + > +#define HANDOFF_TABLE_DESC "TdxTable" > +typedef struct { > + UINT8 TableDescriptionSize; > + UINT8 TableDescription[sizeof (HANDOFF_TABLE_DESC)]; > + UINT64 NumberOfTables; > + EFI_CONFIGURATION_TABLE TableEntry[1]; > +} TDX_HANDOFF_TABLE_POINTERS2; > + > +#define FV_HANDOFF_TABLE_DESC "Fv(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX)" > +typedef struct { > + UINT8 BlobDescriptionSize; > + UINT8 BlobDescription[sizeof (FV_HANDOFF_TABLE_DESC)]; > + EFI_PHYSICAL_ADDRESS BlobBase; > + UINT64 BlobLength; > +} FV_HANDOFF_TABLE_POINTERS2; > + > +#pragma pack() Why do you need this? For standard event types we should have those structs already defined somewhere in edk2 I think ... take care, Gerd -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#98881): https://edk2.groups.io/g/devel/message/98881 Mute This Topic: https://groups.io/mt/96370898/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-