Using this allocation zone permits the guest firmware to allocate the blob
being downloaded anywhere in the 64-bit address space. QEMU code that
generates ADD_POINTER commands with @src_file set to such a blob is
responsible for using @dst_patched_offset_size=8.
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Ben Warren <ben@skyportsystems.com>
Cc: Dongjiu Geng <gengdongjiu@huawei.com>
Cc: Igor Mammedov <imammedo@redhat.com>
Cc: Shannon Zhao <zhaoshenglong@huawei.com>
Cc: Stefan Berger <stefanb@linux.vnet.ibm.com>
Cc: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
---
include/hw/acpi/bios-linker-loader.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/include/hw/acpi/bios-linker-loader.h b/include/hw/acpi/bios-linker-loader.h
index 5202fd14977d..621de7bd98e8 100644
--- a/include/hw/acpi/bios-linker-loader.h
+++ b/include/hw/acpi/bios-linker-loader.h
@@ -11,10 +11,13 @@ typedef enum BIOSLinkerLoaderAllocZone {
/* request blob allocation in 32-bit memory */
BIOS_LINKER_LOADER_ALLOC_ZONE_HIGH = 0x1,
/* request blob allocation in FSEG zone (useful for the RSDP ACPI table) */
BIOS_LINKER_LOADER_ALLOC_ZONE_FSEG = 0x2,
+
+ /* request blob allocation in 64-bit memory */
+ BIOS_LINKER_LOADER_ALLOC_ZONE_64BIT = 0x3,
} BIOSLinkerLoaderAllocZone;
typedef enum BIOSLinkerLoaderAllocContent {
/* the blob may or may not contain ACPI tables */
BIOS_LINKER_LOADER_ALLOC_CONTENT_MIXED = 0x00,
--
2.9.3
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel