From 23f937420306cf77e47e3d9d27de89559750b7ab Mon Sep 17 00:00:00 2001 From: Anthony PERARD Date: Tue, 13 Aug 2019 12:31:05 +0100 Subject: [PATCH 1/1] OvmfPkg: Import XENMEM_memory_map hypercall to Xen/memory.h The informations to make a XENMEM_memory_map hypercall is copied over from the public header of the Xen Project, with the type name modified to build on OVMF. Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=1689 Signed-off-by: Anthony PERARD Acked-by: Laszlo Ersek Message-Id: <20190813113119.14804-22-anthony.perard@citrix.com> --- OvmfPkg/Include/IndustryStandard/Xen/memory.h | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/OvmfPkg/Include/IndustryStandard/Xen/memory.h b/OvmfPkg/Include/IndustryStandard/Xen/memory.h index 81e981331a..4a33a26d4e 100644 --- a/OvmfPkg/Include/IndustryStandard/Xen/memory.h +++ b/OvmfPkg/Include/IndustryStandard/Xen/memory.h @@ -65,6 +65,29 @@ struct xen_remove_from_physmap { typedef struct xen_remove_from_physmap xen_remove_from_physmap_t; DEFINE_XEN_GUEST_HANDLE(xen_remove_from_physmap_t); +/* + * Returns the pseudo-physical memory map as it was when the domain + * was started (specified by XENMEM_set_memory_map). + * arg == addr of xen_memory_map_t. + */ +#define XENMEM_memory_map 9 +struct xen_memory_map { + /* + * On call the number of entries which can be stored in buffer. On + * return the number of entries which have been stored in + * buffer. + */ + UINT32 nr_entries; + + /* + * Entries in the buffer are in the same format as returned by the + * BIOS INT 0x15 EAX=0xE820 call. + */ + XEN_GUEST_HANDLE(void) buffer; +}; +typedef struct xen_memory_map xen_memory_map_t; +DEFINE_XEN_GUEST_HANDLE(xen_memory_map_t); + #endif /* __XEN_PUBLIC_MEMORY_H__ */ /* -- 2.39.2