Hi Tinh, Sorry, was waiting for a v4 based on your last reply to Oliver.
Yes, from my end (with Oliver's feedback addressed): Reviewed-by: Leif Lindholm <quic_llind...@quicinc.com> / Leif On Wed, Mar 22, 2023 at 10:38:21 +0700, Tinh Nguyen wrote: > Hi Leif, > > Do you have any concerns? Could I add you to the review list? > > Thanks, > > Tinh > > On 3/21/2023 10:16 AM, Tinh Nguyen wrote: > > The BIOS Firmware Version in the SMBIOS Type 0 can be fetched from > > the fixed PcdFirmwareVersionString or platform specific OemMiscLib. > > In fact, the support from OemMiscLib comes into play when the firmware > > version may be modified at boot time for extended information. > > Therefore, the priority of getting the version from OemMiscLib should > > be higher. > > > > In case there is no modification in the OemMiscLib, we have to keep > > HII string STR_MISC_BIOS_VERSION empty or 'Not Specified' > > to indicate that the firmware version should be fetched from > > the PcdFirmwareVersionString. > > > > Signed-off-by: Tinh Nguyen <tinhngu...@os.amperecomputing.com> > > Reviewed-by: Rebecca Cran <rebe...@bsdio.com> > > --- > > > > Changes since v1: > > + Change GetBiosVersion () to SetBiosVersion () and move the selection > > logic > > fully into SetBiosVersion (). > > Changes since v2: > > + Add Reviewed-by: Rebecca Cran <rebe...@bsdio.com> and remove @retval > > VOID > > > > ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c | > > 57 ++++++++++++-------- > > 1 file changed, 35 insertions(+), 22 deletions(-) > > > > diff --git > > a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c > > b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c > > index 66ead22a6e2c..876a74614285 100644 > > --- a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c > > +++ b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c > > @@ -1,6 +1,6 @@ > > /** @file > > - Copyright (c) 2022, Ampere Computing LLC. All rights reserved.<BR> > > + Copyright (c) 2022 - 2023, Ampere Computing LLC. All rights reserved.<BR> > > Copyright (c) 2021, NUVIA Inc. All rights reserved.<BR> > > Copyright (c) 2009, Intel Corporation. All rights reserved.<BR> > > Copyright (c) 2015, Hisilicon Limited. All rights reserved.<BR> > > @@ -124,22 +124,46 @@ GetBiosReleaseDate ( > > return ReleaseDate; > > } > > -/** > > - Fetches the firmware ('BIOS') version from the > > - FirmwareVersionInfo HOB. > > +/** Fetches the Firmware version string for SMBIOS type 0 > > + > > + This function get the Firmware version string from OemMiscLib first, > > + if it is invalid then PcdFirmwareVersionString is used as a fallback. > > - @return The version as a UTF-16 string > > **/ > > -CHAR16 * > > -GetBiosVersion ( > > +VOID > > +SetBiosVersion ( > > VOID > > ) > > { > > - CHAR16 *ReleaseString; > > + CHAR16 *DefaultVersionString; > > + CHAR16 *Version; > > + EFI_STRING_ID TokenToUpdate; > > - ReleaseString = (CHAR16 *)FixedPcdGetPtr (PcdFirmwareVersionString); > > + DefaultVersionString = HiiGetString ( > > + mSmbiosMiscHiiHandle, > > + STRING_TOKEN (STR_MISC_BIOS_VERSION), > > + NULL > > + ); > > - return ReleaseString; > > + OemUpdateSmbiosInfo ( > > + mSmbiosMiscHiiHandle, > > + STRING_TOKEN (STR_MISC_BIOS_VERSION), > > + BiosVersionType00 > > + ); > > + > > + Version = HiiGetString ( > > + mSmbiosMiscHiiHandle, > > + STRING_TOKEN (STR_MISC_BIOS_VERSION), > > + NULL > > + ); > > + > > + if (((StrCmp (Version, DefaultVersionString) == 0) || (StrLen (Version) > > == 0))) { > > + Version = (CHAR16 *)FixedPcdGetPtr (PcdFirmwareVersionString); > > + if (StrLen (Version) > 0) { > > + TokenToUpdate = STRING_TOKEN (STR_MISC_BIOS_VERSION); > > + HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Version, NULL); > > + } > > + } > > } > > /** > > @@ -187,18 +211,7 @@ SMBIOS_MISC_TABLE_FUNCTION (MiscBiosVendor) { > > HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Vendor, NULL); > > } > > - Version = GetBiosVersion (); > > - > > - if (StrLen (Version) > 0) { > > - TokenToUpdate = STRING_TOKEN (STR_MISC_BIOS_VERSION); > > - HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Version, NULL); > > - } else { > > - OemUpdateSmbiosInfo ( > > - mSmbiosMiscHiiHandle, > > - STRING_TOKEN (STR_MISC_BIOS_VERSION), > > - BiosVersionType00 > > - ); > > - } > > + SetBiosVersion (); > > Char16String = GetBiosReleaseDate (); > > if (StrLen (Char16String) > 0) { > > -- > > 2.39.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101817): https://edk2.groups.io/g/devel/message/101817 Mute This Topic: https://groups.io/mt/97748102/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/9847357/21656/1706620634/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-