/** @file

  Copyright (c) 2021, Intel Corporation. All rights reserved.<BR>
  SPDX-License-Identifier: BSD-2-Clause-Patent

**/

#ifndef EXTRA_DATA_H_
#define EXTRA_DATA_H_

extern GUID  gUniversalPayloadExtraDataGuid;

#pragma pack(1)

typedef struct {
  CHAR8                   Identifier[16];
  EFI_PHYSICAL_ADDRESS    Base;
  UINT64                  Size;
} UNIVERSAL_PAYLOAD_EXTRA_DATA_ENTRY;

typedef struct {
  UNIVERSAL_PAYLOAD_GENERIC_HEADER      Header;
  UINT32                                Count;
  UNIVERSAL_PAYLOAD_EXTRA_DATA_ENTRY    Entry[0];
} UNIVERSAL_PAYLOAD_EXTRA_DATA;

#pragma pack()

#define UNIVERSAL_PAYLOAD_EXTRA_DATA_REVISION  1

#endif