/** @file | |
Ovmf info structure passed by Xen | |
Copyright (c) 2013, Citrix Systems UK Ltd.<BR> | |
SPDX-License-Identifier: BSD-2-Clause-Patent | |
**/ | |
#ifndef __XEN_H__ | |
#define __XEN_H__ | |
#include <PiPei.h> | |
// Physical address of OVMF info | |
#define OVMF_INFO_PHYSICAL_ADDRESS 0x00001000 | |
// This structure must match the definition on Xen side | |
#pragma pack(1) | |
typedef struct { | |
CHAR8 Signature[14]; // XenHVMOVMF\0 | |
UINT8 Length; // Length of this structure | |
UINT8 Checksum; // Set such that the sum over bytes 0..length == 0 | |
// | |
// Physical address of an array of TablesCount elements. | |
// | |
// Each element contains the physical address of a BIOS table. | |
// | |
EFI_PHYSICAL_ADDRESS Tables; | |
UINT32 TablesCount; | |
// | |
// Physical address of the E820 table, contains E820EntriesCount entries. | |
// | |
EFI_PHYSICAL_ADDRESS E820; | |
UINT32 E820EntriesCount; | |
} EFI_XEN_OVMF_INFO; | |
#pragma pack() | |
#endif /* __XEN_H__ */ |