From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (NAM11-BN8-obe.outbound.protection.outlook.com [40.107.236.100]) by mx.groups.io with SMTP id smtpd.web10.7538.1678955440169185998 for ; Thu, 16 Mar 2023 01:30:40 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="no key for verify" header.i=@amperemail.onmicrosoft.com header.s=selector1-amperemail-onmicrosoft-com header.b=nuFsHKxI; spf=pass (domain: os.amperecomputing.com, ip: 40.107.236.100, mailfrom: tinhnguyen@os.amperecomputing.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=P/SKS1AUa9zrgpp18y+D/jwFo4LZaeI4dRP4tUa14o3PdHVOZuRSBqwG6yI3mUdRm9cT8yOcaebRfHg/i5dbIesDIYIp/2ID/QnHUoPwDt2K8kEmlN2RI2raRtt2FExLfnfj0Spm61DcyJqsblHM7/2fpRjPrMjS8doJAFgPB7xk3EqX/QTH/DbB8Z/nVbYwezRW6i5MLArQqNNHWe+1hCyAgF3bLH7Af/6+qYTUWQUA5JW0KE9PZv3YH2O9ffDAeilxgemJ4K7ja5KuZNzqjBG0u+8T/r6XCIciFBEAmIR5y9xvVg4+yQ5cA+DdEZvvgxnA/NINF3a5eE7GNFRKDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=s7HR6BPa+0u4G0PMOAFmlxLgNlH6EMIm0DdRpnUvyJY=; b=AbNtKNWG2PfjsB7K7+ceNP6fq57b948yqpMsd9SqEneWNkFTkx9m+xP+tUAv1UyDiL723x8nkCQQxTk/YFEjuZB+Ui3rMmlnu+8BRewV6OyL9HlwmQDWmmKwSUNP7mE8+L7sQJEyTp0F8gSnfG1BTrxliL3pDgO782LDLasFVfWGRvEuFHmLpKNDqxGMcJ9EB9yioWbiNSOSf9vgo2idG30Myr5C7nPqtJEF2AlW+fBknhYyE2xIKRsANtFVcZ2isPzH701bf/cnUpkNSX59OsEbvFPw8u7H4WJOUiBN5lJD5aTW4xU5COVw0KLpm5BUK4+SkCsFQOZ6qfVf77FvUg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=amperemail.onmicrosoft.com; dkim=pass header.d=amperemail.onmicrosoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amperemail.onmicrosoft.com; s=selector1-amperemail-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=s7HR6BPa+0u4G0PMOAFmlxLgNlH6EMIm0DdRpnUvyJY=; b=nuFsHKxIiUme0MqhoVYyVaNaxpluIl9LNrPOUmSAam4sNEDsk2Geg2AeWttS10t8EXxLG+cotBQaXBSx2YhUmWIhCuFzpPu7FXa9hzlIFfc4XMCmaAUT5LsNw9pyjVWNjbOeEV0tTlBxRt8ny8bJFEQ51capgYI1rUtyLSUlwe0= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amperemail.onmicrosoft.com; Received: from PH0PR01MB7506.prod.exchangelabs.com (2603:10b6:510:f5::22) by PH0PR01MB7333.prod.exchangelabs.com (2603:10b6:510:dd::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6222.8; Thu, 16 Mar 2023 08:30:36 +0000 Received: from PH0PR01MB7506.prod.exchangelabs.com ([fe80::db61:2d8e:771e:7e33]) by PH0PR01MB7506.prod.exchangelabs.com ([fe80::db61:2d8e:771e:7e33%5]) with mapi id 15.20.6222.008; Thu, 16 Mar 2023 08:30:36 +0000 Message-ID: Date: Thu, 16 Mar 2023 15:30:26 +0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [PATCH 1/1] ArmPkg/SmbiosMiscDxe: Adjust the priority of getting firmware version To: Tinh Nguyen , devel@edk2.groups.io Cc: patches@amperecomputing.com, quic_llindhol@quicinc.com, ardb+tianocore@kernel.org, Nhi Pham , rebecca@bsdio.com References: <20230313064321.170866-1-tinhnguyen@os.amperecomputing.com> From: "Tinh Nguyen" In-Reply-To: <20230313064321.170866-1-tinhnguyen@os.amperecomputing.com> X-ClientProxiedBy: SI2P153CA0017.APCP153.PROD.OUTLOOK.COM (2603:1096:4:140::10) To PH0PR01MB7506.prod.exchangelabs.com (2603:10b6:510:f5::22) Return-Path: tinhnguyen@os.amperecomputing.com MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH0PR01MB7506:EE_|PH0PR01MB7333:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b13341e-3e3c-442a-6e34-08db25f8b772 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1sWi2Oz8mgQjk0Q1Ib/38EIcosK84sJbhDMGaoIKk7MlZ3lDOCwboIs9Twlpc/f3bwbdstuDDYYXoiX7951B6X7hURWPF78OvGRBCyZrd7CFnvI+A47KlcbcHT8o3mmkqgvR31YR4hdcBJaDce81B8iCsi7LvhtlT/IvRFtIyS4QHzMEcOvsFUaAep1HST1uC9JPCWR1mSMNqPXyaX3ghWbE439ezsgUc4u1NnFmx1s+3D1GeSbcgMb2zROV3O7iPRMmeRiz/A0hOyQwqoyvK0tcIRTEfLXrf56y451yUoDzwZf5bjqKFnv00gwolKFYjpQtgs0838UG2BPSVQ0h5ANepqoXmKFenE8/MwHR95/yTVtUGspMSVONW0kzwF3dsWpSdabGl6pOxg4h6goApSqLNZ2+mF2G9ZETszc2bcrITk7OlofS1wxanezCnwJFRLF9qbCP4QqR5vgB6Oiw+6loXqUZ+X8vQh43W1rYSBMAS9rgePWfICb1upezJkho/si3gqmZKLUPGnnON2pn8gYDjL6i7WOpQ9bCN00EDixbhWvyJkiZTcBOQiiinB7D/MohyXr6aXN7dVoFlyDLgt7S8Ksd8TyNiOE4MN7aAEe8qWsmVgCFn+0Dktu8zEVu7Gd7r8WBrD2Tw8TIyj4WqO0INxiYx6A2MqEQR6xfWhdP3Zv4VPTzoQe1wYCRhNJKuX7DRY0855X+AL07+RdKfv2yg4g65JX9CwIqhPOcTeA= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR01MB7506.prod.exchangelabs.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(39850400004)(396003)(376002)(346002)(136003)(366004)(451199018)(83170400001)(6666004)(186003)(26005)(6512007)(6506007)(53546011)(316002)(66946007)(66556008)(66476007)(52116002)(6486002)(478600001)(38350700002)(38100700002)(2616005)(42882007)(83380400001)(31696002)(2906002)(41300700001)(8676002)(4326008)(8936002)(5660300002)(31686004)(43740500002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ajE0UXNjZ2I4UDJSVHA5aVZVUWRQb2l5ZytsRzVjN1h0eFhwS1ZqUmNBLzg0?= =?utf-8?B?UGVpeHlhNnQ5V0M1U3kxWTdHOG1iWTJpWWNMRTFQTVhFbFZlbkdEdTVOWmF5?= =?utf-8?B?MmRMTnhJM0NLdnNZajRpcVpzUXd0cWwyc3ljVEQ2UWk5WHd5VTA1a2ZRdEw1?= =?utf-8?B?ZkJRRmMzL2M2a01XVi9WMVBrcGFGd29MMnptbGpXTm1pL0RkZXYyQzI4d3RW?= =?utf-8?B?NFBnTC9OVE1VTkxxaERMRlNiNTBFMlR3eHJQWUdOT3RVZmc2UHFaNFhDblRD?= =?utf-8?B?ZDBVdzYvWVdqMHNEM2hGL0tiM0NRdkxiU0lkbEZ4Y0p6UnBUelBCMUcxcVk4?= =?utf-8?B?NFdTWFJ5QmpvRGRTalV0WnZJTnptVGtVUVc5bC9oaEdIbkFleE1XSlZXSGtl?= =?utf-8?B?K1lsaEh0UXlhOEZyUkU3V0w5dHVzRldSbmFFdzdhd0grb1BObXVqVWlCNEx3?= =?utf-8?B?UmwyanV3d1FCUTg5MkF0TXJ1TEtPN2JOL1BpbjNPQWJHVXNZTUtPbmhhbWhs?= =?utf-8?B?anJCczZLVmpPRUtlaXZsWERQajJVVmlBTHcrS1lmaVY5ZlJBZ2V2NjhUQlhX?= =?utf-8?B?OHVNeHVYekUwVFV2WElUYlpKYUo2WDhJdlRUMFpTcmRsdkxlOTNhTEh2K1c3?= =?utf-8?B?Mk9ac25IZXdjQlBsc1orUTcwNE12NTAyNkh3Rks2bDVYTCtIeDVQN2MxWTBD?= =?utf-8?B?MWdkNG1ubFdxWFRTMmlvdUhuSFZiTTlMRXJCeFBxWkZIN0k2WjFKVnlvTDRk?= =?utf-8?B?T1pBSllhSlpzRnZrK3NqY3lCN1F3WkFJaUdoOVN1VGRtWldib2pxRmlWc0I0?= =?utf-8?B?MGIvdWx4S0orVnhxSFVVN2FQS3BMVEwvdUdqMWp0T045Q09sNUNSeHYyOWF4?= =?utf-8?B?TzY2M2xGOFduZ1RHRldiSDRYN1NaZnRzQVZHTGY0cW9FY2h1UVhoL1g5Zy9k?= =?utf-8?B?V2xsYVE4TEx4UnFxSyt6ZTRYTnUrSnVva3RFOVVCR2ljOGdyL3RxclBZbmNx?= =?utf-8?B?YjB4VWhVZlJJL0VnQlQzbHFNaWVyUXBZdW1ESjZaTE50ZHF5L1hyQlNEN205?= =?utf-8?B?UFhmazdyNmdabnZheTBDRzIvajVtcE9VQzRUcC80Q0tpa0JqTm1UaldrSk1K?= =?utf-8?B?QWkvOFdZamtocGwwVXlmeCtkcDRuUkdsdXF2Z0haZzBCSTVVbktHZ1RpWElV?= =?utf-8?B?TXd5QjZFbSt3a04yaTRYWG50TU55SW9CRkNkVVNPWmg1bUNpTWZQWEdrL1NW?= =?utf-8?B?RHpiNXJVMnBDVWNsNFRtMld0QlFPeDkwRTJhRjE0dy9GYy9VQkNYRmxITVND?= =?utf-8?B?UlNVN2RjYkFCdjZ0S2ZzSWZzSXdiQlFMVEJsMStYeHczSURvQnJPK2NhUUZN?= =?utf-8?B?N0pTUEd4eERjdGFMZE5aQ0tld2NzNEtsVTFDMDQxU0UwOGNFQ0FidHpWVlZX?= =?utf-8?B?YXVTbi8rZFNPN1g1SnVuR3o5bjV6dW9QbUh2V3FsU1pKZDBmOFdBTWsvVENz?= =?utf-8?B?d1ZGOW9EVlYzbVNiclhnZGIyb2FWSWxOdjVic2d3R1dEWUNwalFIdFB1WFlO?= =?utf-8?B?ZWJ3cHpKdm54cGVUZWlTOXFzbW0zY3lJb05hQk9aM05oZTlJZnJPdm1DTUpF?= =?utf-8?B?NDRVRlVGQkVBSENqTEpjUFA4UTNpdUwxczczenNnM0ZpZFQ3dGJYWDhwZFVr?= =?utf-8?B?VlorNTR1MU1jNlpQYjBnR281Y3JKTDl6MXVSMUZUSSt3REhScUVoMmNGLzY3?= =?utf-8?B?TjdIUTJvckVpRWNMaTBYME92V2t2LzhEbThFWjdiNmRiRUpQbTRLZ2xCT3Ns?= =?utf-8?B?dkhXT252MER1K1N1YmZ0VkNsWjRWU25uRklMQ0N1ZUQ2Y0RmMFdhZHJDQVdM?= =?utf-8?B?ZzVSZHJXNUk4WUxQR3NxTkZmQ2ZNbFZ4cXpKUmRSTnRjbko5cXorZU9SMHRp?= =?utf-8?B?eVlYZUEwQVBxMk1VdUMyRVM0SkJGMUxpNlRZaGxlQ3pUcGxqcHVsa1JpaXY3?= =?utf-8?B?aEh4UWNjN2pxOC9vNHM4dlJFUFVWVXpMWkNLU0VZMGNUTDZwVEtxbHNMMEg5?= =?utf-8?B?bUIrVUpRTXZyUmxXSjMxWmFuL0hHTENQUVF0NlIzRlo2M3l0VnB5Z3RxTFE0?= =?utf-8?B?VTJod3VmcnRWdzRlQ3IvOXVPRW8ybkl1OU9NaUthcEJxODdQN1VjWHRvZW9l?= =?utf-8?Q?p4G/9tUJp+ioOILx4HZnZJLPiy/v4IdwgeSwI8+gda/m?= X-OriginatorOrg: amperemail.onmicrosoft.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b13341e-3e3c-442a-6e34-08db25f8b772 X-MS-Exchange-CrossTenant-AuthSource: PH0PR01MB7506.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Mar 2023 08:30:36.5646 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: f2cqmPcTZHUT/kQeNVVzo45iHdNYFvtGP44CPCClaC+l8XNgxRHiPmcfL/B6Tkw9bdEbn2xHSP3y5pbVczBS3FR05G+l+BYxKDnmY6QPCj6rzUmzPqLQCguHPmwfvTLU X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR01MB7333 Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit + 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 > Signed-off-by: Tinh Nguyen > --- > 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.
> + Copyright (c) 2022 - 2023, Ampere Computing LLC. All rights reserved.
> Copyright (c) 2021, NUVIA Inc. All rights reserved.
> Copyright (c) 2009, Intel Corporation. All rights reserved.
> Copyright (c) 2015, Hisilicon Limited. All rights reserved.
> @@ -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 ();