[PATCH] acpi: Fix table length for QEMU

Ilias Apalodimas ilias.apalodimas at linaro.org
Thu Apr 3 07:34:44 CEST 2025


The end of the ACPI table is set to 'addr' instead of 'end'. The ACPI
code for QEMU relies on those values to mark memory as 'ACPI Reclaim'
and as a result the ACPI RSDP ends up in Boot services Data.

Reported-by: bjorn at kernel.org
Fixes: commit 638cc363484b ("acpi: enable writing ACPI tables on QEMU")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
---
 drivers/misc/qfw_acpi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/misc/qfw_acpi.c b/drivers/misc/qfw_acpi.c
index 0d0cf7646890..77cebae5e3fd 100644
--- a/drivers/misc/qfw_acpi.c
+++ b/drivers/misc/qfw_acpi.c
@@ -305,7 +305,7 @@ static int evt_write_acpi_tables(void)
 	/* Generate ACPI tables */
 	end = write_acpi_tables(addr);
 	gd->arch.table_start = addr;
-	gd->arch.table_end = addr;
+	gd->arch.table_end = end;

 	return 0;
 }
--
2.49.0



More information about the U-Boot mailing list