> @@ -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]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to