MdeModulePkg/UniversalPayload: Add definition for extra info in payload

The payload is in ELF format per the universal payload spec.
UNIVERSAL_PAYLOAD_INFO_HEADER is stored in the ELF payload as a separate
section named ".upld_info".

Extra data needed by payload is stored in sections whose name starts
with ".upld.".

Signed-off-by: Ray Ni <ray.ni@intel.com>
Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Guo Dong <guo.dong@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
This commit is contained in:
Ray Ni
2021-05-01 20:17:45 +08:00
committed by mergify[bot]
parent fa24b6ed26
commit c511426abe
3 changed files with 55 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
/** @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 PldHeader;
UINT32 Count;
UNIVERSAL_PAYLOAD_EXTRA_DATA_ENTRY Entry[0];
} UNIVERSAL_PAYLOAD_EXTRA_DATA;
#pragma pack()
#endif