On 01.01.25 23:09, Simon Glass wrote:
This isn't strictly needed, but with UPL we use the reserved-memory nodes to indicate where the SMBIOS table is. Tianocore requires 4KB
Nits: %s/4KB/4 KiB/ Cf. https://physics.nist.gov/cuu/Units/binary.html
alignment on these regions, so it is easier to adjust the alignment to match. Signed-off-by: Simon Glass <s...@chromium.org> --- arch/x86/lib/tables.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/x86/lib/tables.c b/arch/x86/lib/tables.c index 5fc7dc75377..3978945a5ad 100644 --- a/arch/x86/lib/tables.c +++ b/arch/x86/lib/tables.c @@ -16,6 +16,7 @@ #include <asm/tables.h> #include <asm/coreboot_tables.h> #include <linux/log2.h> +#include <linux/sizes.h> DECLARE_GLOBAL_DATA_PTR; @@ -62,7 +63,11 @@ static struct table_info table_list[] = { { "acpi", write_acpi_tables, BLOBLISTT_ACPI_TABLES, 0x10000, 0x1000}, #endif #ifdef CONFIG_GENERATE_SMBIOS_TABLE - { "smbios", write_smbios_table, BLOBLISTT_SMBIOS_TABLES, 0x1000, 0x100}, + /* + * align this to a 4KB boundary, since UPL adds a reserved-memory node + * for it + */ + { "smbios", write_smbios_table, BLOBLISTT_SMBIOS_TABLES, SZ_4K, 0x1000},
Please, avoid using once SZ_4K and once 0x1000 when expressing the same number. If you want to go with SZ_4K, please, also change the ACPI table entry to use SZ_16K and SZ_4K to be consistent. Best regards Heinrich
#endif };