]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Include/UniversalPayload/UniversalPayload.h
MdeModulePkg/UniversalPayload: Add definition for extra info in payload
[mirror_edk2.git] / MdeModulePkg / Include / UniversalPayload / UniversalPayload.h
index e661306a9bd9b9d75c8e460979b24f9b0cdb2345..bc8a3e0cf87556e9f169cc827bdaf909de7608b4 100644 (file)
@@ -11,8 +11,32 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef UNIVERSAL_PAYLOAD_H_\r
 #define UNIVERSAL_PAYLOAD_H_\r
 \r
+/**\r
+  Main entry point to Universal Payload.\r
+\r
+  @param HobList  Pointer to the beginning of the HOB List from boot loader.\r
+**/\r
+typedef  VOID   (EFIAPI *UNIVERSAL_PAYLOAD_ENTRY) (VOID *HobList);\r
+\r
+#define UNIVERSAL_PAYLOAD_IDENTIFIER                   SIGNATURE_32('U', 'P', 'L', 'D')\r
+#define UNIVERSAL_PAYLOAD_INFO_SEC_NAME                ".upld_info"\r
+#define UNIVERSAL_PAYLOAD_EXTRA_SEC_NAME_PREFIX        ".upld."\r
+#define UNIVERSAL_PAYLOAD_EXTRA_SEC_NAME_PREFIX_LENGTH (sizeof (UNIVERSAL_PAYLOAD_EXTRA_SEC_NAME_PREFIX) - 1)\r
+\r
 #pragma pack(1)\r
 \r
+typedef struct {\r
+  UINT32                          Identifier;\r
+  UINT32                          HeaderLength;\r
+  UINT16                          SpecRevision;\r
+  UINT8                           Reserved[2];\r
+  UINT32                          Revision;\r
+  UINT32                          Attribute;\r
+  UINT32                          Capability;\r
+  CHAR8                           ProducerId[16];\r
+  CHAR8                           ImageId[16];\r
+} UNIVERSAL_PAYLOAD_INFO_HEADER;\r
+\r
 typedef struct {\r
   UINT8                Revision;\r
   UINT8                Reserved;\r