> From: Heinrich Schuchardt <xypron.g...@gmx.de> > Date: Thu, 15 Oct 2020 19:18:21 +0200 > > According to > > DSP0134, 3.4.0, System Management BIOS (SMBIOS) Reference Specification > https://www.dmtf.org/sites/default/files/standards/documents/DSP0134_3.4.0.pdf > > our struct smbios_entry is an SMBIOS 2.1 (32-bit) Entry Point structure. > This structure requires that the SMBIOS table is located below 4 GiB. > > Some boards (ZynqMP, Versal) do not have memory mapped in the low 4 GiB > of the address space. So shouldn't we use the SMBIOS 3.0 (64-bit) Entry > Point structure? > > Is there any restriction on 32bit boards that would stop us from using > the SMBIOS 3.0 Entry Point?
I don't think so. You'll have to advertise it using the SMBIOS3_TABLE_GUID though. And maybe some older OSes don't support it yet though. Apparently providing both the 32-bit and 64-bit entry point is allowed. Other arm64 UEFI implementations (EDK2 and whatever Lenovo/Ampere provides on their systems) do provide the SMBIOS 3.0 entry point and currently that is all that OpenBSD checks for on arm64.