We generate a few tables on x86 today that really can be used on ARM just the same. One such example is the SMBIOS table, which people use with tools like "dmidecode" to identify which hardware they are running on.
We're slowly growing needs to collect serial numbers from various devices on ARM and SMBIOS seems the natural choice. So this patch set moves the current SMBIOS generation into generic code and adds serial number exposure to it. I have verified that I get a correct serial number printed in dmidecode on the RPi3. v1 -> v2: - Also populate UUID - Fix whitespace v2 -> v3: - Move efi smbios generation to own file - New patch: Make type4 table available on all archs Alexander Graf (8): x86: Move table csum into separate header x86: Move smbios generation into arch independent directory efi_loader: Expose efi_install_configuration_table smbios: Allow compilation on 64bit systems smbios: Generate type 4 on non-x86 systems smbios: Expose in efi_loader as table efi_loader: Fix efi_install_configuration_table smbios: Provide serial number arch/x86/Kconfig | 27 ------------ arch/x86/include/asm/tables.h | 2 + arch/x86/lib/Makefile | 1 - arch/x86/lib/tables.c | 21 ++++------ cmd/bootefi.c | 3 ++ include/efi_api.h | 4 ++ include/efi_loader.h | 4 ++ {arch/x86/include/asm => include}/smbios.h | 8 +++- include/tables_csum.h | 22 ++++++++++ lib/Kconfig | 33 +++++++++++++++ lib/Makefile | 1 + lib/efi_loader/Makefile | 1 + lib/efi_loader/efi_boottime.c | 24 ++++++----- lib/efi_loader/efi_smbios.c | 32 +++++++++++++++ {arch/x86/lib => lib}/smbios.c | 66 +++++++++++++++++++++--------- 15 files changed, 176 insertions(+), 73 deletions(-) rename {arch/x86/include/asm => include}/smbios.h (95%) create mode 100644 include/tables_csum.h create mode 100644 lib/efi_loader/efi_smbios.c rename {arch/x86/lib => lib}/smbios.c (83%) -- 1.8.5.6 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot