smbios: Fix calculating BIOS Release Date
authorPali Rohár <pali@kernel.org>
Thu, 22 Apr 2021 16:09:57 +0000 (18:09 +0200)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Sat, 24 Jul 2021 08:49:51 +0000 (10:49 +0200)
commit11275e4f72d6d2170db444df95e8f6b6ab627e8e
treeda36270ae78a7b31b6edf627f56faf64f8e5868e
parent1364029263a34924fa9bb7126a436d3ed562b7e7
smbios: Fix calculating BIOS Release Date

BIOS Release Date must be in format mm/dd/yyyy and must be release date.
U-Boot currently sets BIOS Release Date from U_BOOT_DMI_DATE macro which is
generated from current build timestamp.

Fix this issue by setting U_BOOT_DMI_DATE macro to U-Boot version which is
better approximation of U-Boot release date than current build timestamp.
Current U-Boot versioning is in format yyyy.mm so as a day choose 01.

Some operating systems are using BIOS Release Date for detecting when was
SMBIOS table filled or if it could support some feature (e.g. BIOS from
1990 cannot support features invented in 2000). So this change also ensures
that recompiling U-Boot from same sources but in different year does not
change behavior of some operating systems.

Macro U_BOOT_DMI_DATE is not used in other file than lib/smbios.c
so remove it from global autogenerated files and also from Makefile.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Makefile
doc/develop/version.rst
lib/smbios.c