[PATCH v9 24/37] common: Enable BLOBLIST_TABLES on arm

From: Patrick Rudolph
Date: Wed Oct 16 2024 - 02:14:04 EST


Allow to use BLOBLIST_TABLES on arm to store ACPI or other tables.

Signed-off-by: Patrick Rudolph <patrick.rudolph@xxxxxxxxxxxxx>
Cc: Tom Rini <trini@xxxxxxxxxxxx>
---
Changelog v9:
- default to BLOBLIST_ALLOC on arm
- Move default for BLOBLIST_SIZE_RELOC up
---
common/Kconfig | 2 ++
lib/Kconfig | 15 +++++++++------
2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/common/Kconfig b/common/Kconfig
index 957de0c5c0..9ceca8a2f5 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -1035,6 +1035,7 @@ if BLOBLIST

choice
prompt "Bloblist location"
+ default BLOBLIST_ALLOC if ARM
help
Select the location of the bloblist, via various means.

@@ -1075,6 +1076,7 @@ config BLOBLIST_SIZE

config BLOBLIST_SIZE_RELOC
hex "Size of bloblist after relocation"
+ default 0x20000 if (ARM && EFI_LOADER && GENERATE_ACPI_TABLE)
default BLOBLIST_SIZE if BLOBLIST_FIXED || BLOBLIST_ALLOC
default 0x0 if BLOBLIST_PASSAGE
help
diff --git a/lib/Kconfig b/lib/Kconfig
index 1dd4f27159..2e0fc1bc8f 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -984,12 +984,15 @@ menu "System tables"

config BLOBLIST_TABLES
bool "Put tables in a bloblist"
- depends on X86 && BLOBLIST
- help
- Normally tables are placed at address 0xf0000 and can be up to 64KB
- long. With this option, tables are instead placed in the bloblist
- with a pointer from 0xf0000. The size can then be larger and the
- tables can be placed high in memory.
+ depends on BLOBLIST
+ default y if (ARM && EFI_LOADER && GENERATE_ACPI_TABLE)
+ default n
+ help
+ On x86 normally tables are placed at address 0xf0000 and can be up
+ to 64KB long. With this option, tables are instead placed in the
+ bloblist with a pointer from 0xf0000. The size can then be larger
+ and the tables can be placed high in memory.
+ On other architectures the tables are always placed in high memory.

config GENERATE_SMBIOS_TABLE
bool "Generate an SMBIOS (System Management BIOS) table"
--
2.46.2