acpi: Kconfig symbol CONFIG_QFW_ACPI

We have two implementations of write_acpi_tables(). One for writing ACPI
tables based on ACPI_WRITER() entries another based on copying tables from
QEMU.

Create a symbol CONFIG_QFW_ACPI that signifies copying ACPI tables from
QEMU and use it consistently.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Heinrich Schuchardt 2023-12-19 16:04:00 +01:00 committed by Simon Glass
parent f47c86f6d3
commit b2f088c121
4 changed files with 12 additions and 5 deletions

View file

@ -540,6 +540,13 @@ config QFW
Hidden option to enable QEMU fw_cfg interface and uclass. This will Hidden option to enable QEMU fw_cfg interface and uclass. This will
be selected by either CONFIG_CMD_QFW or CONFIG_GENERATE_ACPI_TABLE. be selected by either CONFIG_CMD_QFW or CONFIG_GENERATE_ACPI_TABLE.
config QFW_ACPI
bool
default y
depends on QFW && GENERATE_ACPI_TABLE && !SANDBOX
help
Hidden option to read ACPI tables from QEMU.
config QFW_PIO config QFW_PIO
bool bool
depends on QFW depends on QFW

View file

@ -21,7 +21,7 @@
#include <tables_csum.h> #include <tables_csum.h>
#include <asm/acpi_table.h> #include <asm/acpi_table.h>
#if defined(CONFIG_GENERATE_ACPI_TABLE) && !defined(CONFIG_SANDBOX) #ifdef QFW_ACPI
/* /*
* This function allocates memory for ACPI tables * This function allocates memory for ACPI tables
* *
@ -259,7 +259,7 @@ ulong acpi_get_rsdp_addr(void)
file = qfw_find_file(dev, "etc/acpi/rsdp"); file = qfw_find_file(dev, "etc/acpi/rsdp");
return file->addr; return file->addr;
} }
#endif #endif /* QFW_ACPI */
static void qfw_read_entry_io(struct qfw_dev *qdev, u16 entry, u32 size, static void qfw_read_entry_io(struct qfw_dev *qdev, u16 entry, u32 size,
void *address) void *address)

View file

@ -12,7 +12,7 @@ obj-$(CONFIG_$(SPL_)ACPIGEN) += acpi_table.o
obj-y += acpi_writer.o obj-y += acpi_writer.o
# With QEMU the ACPI tables come from there, not from U-Boot # With QEMU the ACPI tables come from there, not from U-Boot
ifndef CONFIG_QEMU ifndef CONFIG_QFW_ACPI
obj-y += base.o obj-y += base.o
obj-y += csrt.o obj-y += csrt.o
obj-y += mcfg.o obj-y += mcfg.o

View file

@ -48,7 +48,7 @@ int acpi_write_one(struct acpi_ctx *ctx, const struct acpi_writer *entry)
return 0; return 0;
} }
#ifndef CONFIG_QEMU #ifndef CONFIG_QFW_ACPI
static int acpi_write_all(struct acpi_ctx *ctx) static int acpi_write_all(struct acpi_ctx *ctx)
{ {
const struct acpi_writer *writer = const struct acpi_writer *writer =
@ -115,7 +115,7 @@ ulong acpi_get_rsdp_addr(void)
return map_to_sysmem(gd->acpi_ctx->rsdp); return map_to_sysmem(gd->acpi_ctx->rsdp);
} }
#endif /* QEMU */ #endif /* QFW_ACPI */
void acpi_setup_ctx(struct acpi_ctx *ctx, ulong start) void acpi_setup_ctx(struct acpi_ctx *ctx, ulong start)
{ {