The "etc/tpm/log" fw_cfg blob is guaranteed not to contain ACPI tables, so turning off the ACPI SDT header probe in OVMF is the right thing to do.
In addition, the address of the blob is patched into the "TCPA.log_area_start_address" field, which has type "uint64_t". Therefore we can change the allocation zone to 64-bit as well. SeaBIOS needs a patch for recognizing (and masking out) the BIOS_LINKER_LOADER_ALLOC_CONTENT_NOACPI bit, and also for handling BIOS_LINKER_LOADER_ALLOC_ZONE_64BIT the same as BIOS_LINKER_LOADER_ALLOC_ZONE_HIGH, but its allocation behavior will not change. Cc: "Michael S. Tsirkin" <[email protected]> Cc: Ard Biesheuvel <[email protected]> Cc: Ben Warren <[email protected]> Cc: Dongjiu Geng <[email protected]> Cc: Igor Mammedov <[email protected]> Cc: Shannon Zhao <[email protected]> Cc: Stefan Berger <[email protected]> Cc: Xiao Guangrong <[email protected]> Signed-off-by: Laszlo Ersek <[email protected]> --- Notes: I don't know how to test this device, so I didn't. Help from the device's maintainer would be highly appreciated. Thanks. hw/i386/acpi-build.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 3c4c28c6c2ca..1ec008ec5003 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -2285,12 +2285,12 @@ build_tpm_tcpa(GArray *table_data, BIOSLinker *linker, GArray *tcpalog) tcpa->platform_class = cpu_to_le16(TPM_TCPA_ACPI_CLASS_CLIENT); tcpa->log_area_minimum_length = cpu_to_le32(TPM_LOG_AREA_MINIMUM_SIZE); acpi_data_push(tcpalog, le32_to_cpu(tcpa->log_area_minimum_length)); bios_linker_loader_alloc(linker, ACPI_BUILD_TPMLOG_FILE, tcpalog, 1, - BIOS_LINKER_LOADER_ALLOC_ZONE_HIGH, - BIOS_LINKER_LOADER_ALLOC_CONTENT_MIXED); + BIOS_LINKER_LOADER_ALLOC_ZONE_64BIT, + BIOS_LINKER_LOADER_ALLOC_CONTENT_NOACPI); /* log area start address to be filled by Guest linker */ bios_linker_loader_add_pointer(linker, ACPI_BUILD_TABLE_FILE, log_addr_offset, log_addr_size, ACPI_BUILD_TPMLOG_FILE, 0); -- 2.9.3 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

