[edk2-devel] [PATCH 1/1] ArmPkg/SmbiosMiscDxe: Adjust the priority of getting firmware version
Tinh Nguyen via groups.io
tinhnguyen=os.amperecomputing.com at groups.io
Thu Mar 16 08:30:26 UTC 2023
+ Rebecca
Could you kindly help me in reviewing this patch?
Thanks,
- Tinh
On 13/03/2023 13:43, 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.
>
> Reviewed-by: Nhi Pham <nhi at os.amperecomputing.com>
> Signed-off-by: Tinh Nguyen <tinhnguyen at os.amperecomputing.com>
> ---
> ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c | 36 ++++++++++++++------
> 1 file changed, 25 insertions(+), 11 deletions(-)
>
> diff --git a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type00/MiscBiosVendorFunction.c
> index 66ead22a6e2c..31a3f6cde544 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>
> @@ -170,6 +170,7 @@ SMBIOS_MISC_TABLE_FUNCTION (MiscBiosVendor) {
> EFI_STRING_ID TokenToGet;
> SMBIOS_TABLE_TYPE0 *SmbiosRecord;
> SMBIOS_TABLE_TYPE0 *InputData;
> + CHAR16 *DefaultVersionString;
>
> //
> // First check for invalid parameters.
> @@ -187,17 +188,30 @@ SMBIOS_MISC_TABLE_FUNCTION (MiscBiosVendor) {
> HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Vendor, NULL);
> }
>
> - Version = GetBiosVersion ();
> + DefaultVersionString = HiiGetString (
> + mSmbiosMiscHiiHandle,
> + STRING_TOKEN (STR_MISC_BIOS_VERSION),
> + NULL
> + );
>
> - 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
> - );
> + 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 = GetBiosVersion ();
> + if (StrLen (Version) > 0) {
> + TokenToUpdate = STRING_TOKEN (STR_MISC_BIOS_VERSION);
> + HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Version, NULL);
> + }
> }
>
> Char16String = GetBiosReleaseDate ();
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#101264): https://edk2.groups.io/g/devel/message/101264
Mute This Topic: https://groups.io/mt/97575576/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list