[PATCH v4 0/7] smbios: Deal with tables beyond 4GB
Simon Glass
sjg at chromium.org
Wed Dec 27 08:40:17 CET 2023
When the malloc() region extends beyond 4GB on ARM we may end up with
an SMBIOS table in that region.
Add support for writing an SMBIOS3 table, which supports a 64-bit
address.
Note that this problem does not happen on x86 since it requires the
tables to be placed just below 1MB in memory, unless
CONFIG_BLOBLIST_TABLES is enabled.
Changes in v4:
- Bring in this patch from Heinrich's series
- Check the start of the table rather than the end
Changes in v2:
- Check the end of the table rather than the start.
- Add a new patch to correct gd_smbios_start()
- Add a note about why unmap_system() is called
Heinrich Schuchardt (1):
smbios: SMBIOS 3.0 (64-bit) Entry Point structure
Simon Glass (6):
smbios: Refactor 32-bit code into an else statement
smbios: Move the rest of the SMBIOS2 code
smbios: Use SMBIOS 3.0 to support an address above 4GB
smbios: Correct gd_smbios_start()
efi: Use the correct GUID for the SMBIOS table
smbios: Require the caller to align the SMBIOS table
include/asm-generic/global_data.h | 2 +-
include/efi_api.h | 4 ++
include/smbios.h | 37 ++++++++++++--
lib/efi_loader/efi_smbios.c | 14 +++--
lib/smbios.c | 85 +++++++++++++++++++------------
5 files changed, 101 insertions(+), 41 deletions(-)
--
2.34.1
More information about the U-Boot
mailing list