u-boot/arch/x86
Heinrich Schuchardt 52c62acc34 x86: all firmware tables must be paragraph aligned
On qemu-x86_64_defconfig the following was observed:

    => efidebug tables
    00000000000f0074  eb9d2d31-2d88-11d3-9a16-0090273fc14d  SMBIOS table

The SMBIOS configuration table does not point to a paragraph-aligned
(16 byte aligned) address. The reason is that in write_tables() rom_addr is
not aligned and copied to gd->arch.smbios_start.

The Simple Firmware Interface requires that the SFI table is paragraph-
aligned but our code does not guarantee this.

As all tables written in write_tables() must be paragraph-aligned, we
should implement the address rounding in write_tables() and not in table
specific routines like copy_pirq_routing_table().

Add paragraph-alignment in write_tables().

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2024-04-20 10:15:03 +02:00
..
cpu Merge patch series "Resolve issues with booting distros on x86" 2024-04-10 20:01:42 -06:00
dts x86: coreboot: Enable truetype fonts 2024-04-10 20:01:33 -06:00
include/asm Merge patch series "Complete decoupling of zboot logic from commands" 2024-04-10 13:49:35 -06:00
lib x86: all firmware tables must be paragraph aligned 2024-04-20 10:15:03 +02:00
config.mk x86: Enable SSE in 64-bit mode 2024-04-10 20:01:33 -06:00
Kconfig Merge patch series "Resolve issues with booting distros on x86" 2024-04-10 20:01:42 -06:00
Makefile x86: Allow 16-bit init to be in TPL 2019-05-08 13:02:13 +08:00