From nobody Mon Feb 9 18:43:56 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+84193+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+84193+1787277+3901457@groups.io; arc=fail (BodyHash is different from the expected one) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1638331942905134.03049092181664; Tue, 30 Nov 2021 20:12:22 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id XrBaYY1788612x34epQYJWiW; Tue, 30 Nov 2021 20:12:22 -0800 X-Received: from NAM10-BN7-obe.outbound.protection.outlook.com (NAM10-BN7-obe.outbound.protection.outlook.com [40.107.92.139]) by mx.groups.io with SMTP id smtpd.web11.87219.1638331941356440176 for ; Tue, 30 Nov 2021 20:12:21 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=lUH38ftRq+QeUXG2sEfqSjmzYD1XxpaH+LECmKrC2chyD0QyLMJZwtBvq6myyd/QNrdZYuE4pjtAZ1FobcvKeSj/y+TKNonUUEk0YI30A8wBPn/pRtbQ2133uhVIGc/TEu5tDxGcJB3MAWukYQQFzIQ2MSQeDaU6JPQVstAr+qLrBXYoIlRfyYncnjlp5HyBfa7maGY06qnjDUQG6lH9SAlVaied2vXfpp/xeqxguHAUIfw/K9fXjtkiNQu31W3YompR7P5T3vfSkGWvMk3DGByAwbBkOM+YeB5xY0MR3qAfe5VmHg9yaOG/iCMWOCVslkNfomlyvwrH4aMW2dkPpg== 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=wIeCotFKoZFcYIjw2Rm/hKH/GsPJqQN5YsrYUBIC70o=; b=jfGDes107IZBbdMFmB00qCljqmT/MB9d6ZzZLlvT2W/w5b+C5BTRMWCP1fdAzqRU9kef8R4gSHzxO70Pdg5cvI5P5oVteErJrDmO1DLeadaXAgAjYI9JOJ9aiHYaUI2c4OBlF6mymdMElXoAJls8mUlD0vkqHdEZoO2ysDWTyB6Ncsu019Vk+IH7fRMlOfgFeW6u8olhdxojRTwkET+YGSEp5cee1OY8HEQ1ZChOEq6PnH3V6oWNwxWiywfC3tvaPV4JnW5SdiXXEAPenvL6sfii7xF7CFwRfrIhHhS9q8Ff9JTDozemPk5iTU7vfbtlkMy3By5Z+OFcfO4XOYwR4Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=os.amperecomputing.com; dkim=pass header.d=os.amperecomputing.com; arc=none X-Received: from PH0PR01MB7287.prod.exchangelabs.com (2603:10b6:510:10a::21) by PH0PR01MB6539.prod.exchangelabs.com (2603:10b6:510:96::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.23; Wed, 1 Dec 2021 04:12:20 +0000 X-Received: from PH0PR01MB7287.prod.exchangelabs.com ([fe80::254c:9533:7f35:aee]) by PH0PR01MB7287.prod.exchangelabs.com ([fe80::254c:9533:7f35:aee%5]) with mapi id 15.20.4734.024; Wed, 1 Dec 2021 04:12:20 +0000 From: "Nhi Pham via groups.io" To: devel@edk2.groups.io Cc: patches@amperecomputing.com, Nhi Pham , Leif Lindholm , Ard Biesheuvel , Rebecca Cran Subject: [edk2-devel] [PATCH 2/3] ArmPkg/SmbiosMiscDxe: Get full SMBIOS strings from OemMiscLib Date: Wed, 1 Dec 2021 11:10:30 +0700 Message-Id: <20211201041031.31824-3-nhi@os.amperecomputing.com> In-Reply-To: <20211201041031.31824-1-nhi@os.amperecomputing.com> References: <20211201041031.31824-1-nhi@os.amperecomputing.com> X-ClientProxiedBy: SG2PR01CA0124.apcprd01.prod.exchangelabs.com (2603:1096:4:40::28) To PH0PR01MB7287.prod.exchangelabs.com (2603:10b6:510:10a::21) MIME-Version: 1.0 X-Received: from sw004.amperecomputing.com (118.69.219.201) by SG2PR01CA0124.apcprd01.prod.exchangelabs.com (2603:1096:4:40::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4734.22 via Frontend Transport; Wed, 1 Dec 2021 04:12:17 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 58dbc4f2-724f-4ae4-fb9b-08d9b480c48d X-MS-TrafficTypeDiagnostic: PH0PR01MB6539: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5516; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Message-Info: cJmNhQmna8EAO9erX9wj+SN3SuBKjgJuTabcX+19V1eVyU6tx9dweeRt1by0d8YKohcaxDor48a+x/BSQ7v6Z1A7XOgKXiCOiE0+pK0V8FImMTKUWK2z5+zmMnesCyL75+yTYKrfZXBJCI19F7HMR154KQJj4YPIhH445do8Aloou0X1exaENU45GGL+qM6W0UXMBDTMRXwsuIjHIbcYGL/gG8H8zOItzXq/oF0Qavr1cwHi6WMKOw/pwF5kpIjvzxyEOWMCYW5iNhhSw5Oq0Zds31AvvSONuhXX/rOqnKtk8OHTfAFhFrzQA8oseRw2iyMbHxV5g8hlLzzyuOeagI5r0C1ktRZYoGHPP5GSI+nGY2YjvMzIeYpEoRj+DGTQ0Pz77ZaOy8wuDLZJ5pwUdP1zPKb6zfL5ntfaWyxhEZYVi5p+swHlr/7iBfcrTHe8+BE7vs2JA1uv3CKa29XfrKpQoB7aUWXOxzj2B5UuxiOQCCjksV0Vn3ogIuN9ctgA+awAeuqg5pTNN9VYef0RiyOWyZf0H6KXxMHE3n1m2KZ4Mc9vaADm7V2vMiKcFX4BUUnXMwtNXqL2y3OY99s+drkvnjtzHsG2p5dr+qJqhmYCGgwYIsRy0Gl2abmi1Co8BnoW/SqY1qhet0XmL2Ugps5uyMXq7kHQgKwJnoOQEHqzatfo8ZwU1JwATbKrCHwuf+JXvZCFcMPVODsHj8TtRA== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?+JQFaeUtjRp8k6Q+wVi58nOFOTfR23ZW94SsYpYx/aeJ5uUf6C3ngUsTZVeo?= =?us-ascii?Q?K56GWuEuN0iKIVlEhperC9BUrNgGL9uBMVTU3MnGhE0zJfCgCZ+L3doOFwxX?= =?us-ascii?Q?81IlzlXiTzo/hHHyOIo4C/jlplW47D/OgIqr1dwX+TUNA5sMPPhZC8EUnF5+?= =?us-ascii?Q?hyykkhYIUGHR2AbljLKKFqUkFPfUUchcD/f+2h0gToxMUZE5UxgGoyrZtoWE?= =?us-ascii?Q?jjdRNK/WDlcEdakvbOu5MZQJu2w/YiSWUh3JuiTc8WhCO1/jxvD+uRkgOV6v?= =?us-ascii?Q?nXnDThzNgyaayV78FfEhlk0IztxcgN2ObWQDfeF9XiUKThbX015ajV4vi2RZ?= =?us-ascii?Q?1A8C6xyPwhLvaEokc6n+PnOvCbpXlnBcrX3oCoOaV2zYQOly1V5mwexaXE6e?= =?us-ascii?Q?izSuZEE+kj8Qe6hAzsQSxhlISYapFabx80/9dgTHtI+sAsUhx9VMqM+vsMJm?= =?us-ascii?Q?rsiOGK5eJGrkB5YAJWJHeqgOmaXAAQ57llmJO/MDgDZRsCt69NMGfMRNRSpb?= =?us-ascii?Q?ztGWTKYLRnttf960a/kiELUSg9CHxP1bbw8nXBaVeOVaSfrK7RGkra9Q+Jx2?= =?us-ascii?Q?xjYVtekJQ2gewlsGnM1o+GchaLnhsR3D8O6b//j5ClEhXu1qCRYmfavOjXlG?= =?us-ascii?Q?UcUOU9vI3fxBJWsrfBLXGs9gHCzmWYb4Ni3OrduSzRpKql0p1MR7eUpZT2VA?= =?us-ascii?Q?has+DVdJ0Bgkumcr/O6YOXApSzC0MEDfp9tbTEfPwbNLGsa2OTsT5FtOTvkZ?= =?us-ascii?Q?HM2gC9CY1GqENK8FLiOtzKUdAcBr6hAIw9G93lAmixa/eHxaqA3gzGmM2q2q?= =?us-ascii?Q?bks+rzOkUtFCDTT6QV0GnKxupME+GE72eGGEknGJztFY7CpnWaLq+wZr1IU4?= =?us-ascii?Q?79bkcs24rGLKT/A3kHZEYgSIZeEoGwjqz6o9Yw5zNVFkEkkhD8AmUOCjKW7K?= =?us-ascii?Q?Z/B4qf4e+e2o1Znm+tq3ayOxJzQqOzLUfDA6Fn/emL79Ev6CNmMge4NyN5Y6?= =?us-ascii?Q?+R4aRWnYN9Bz4u6Q8ynG5n7QGaK7Jfpq5OlZDEnRXOeZUsTbaIW4S2C7zQwa?= =?us-ascii?Q?BVn8YXZ2x4ShMRBwCDrRPgQr6iTr3WL5YECpx47r9kY1zrZh5bGDJnY/AR4s?= =?us-ascii?Q?QFO2mmxysB6aE+Hl33h+f67qVbz+umADCz2+8eDwublW6SOKBZvGbRm6TlNj?= =?us-ascii?Q?IFz1vTTtjxh96sOs1EU+i6b1N6h3mnJI8B9jNHjzWM//JxoPvD2roScLWAhW?= =?us-ascii?Q?uq5CMAVSYbMmSnBEs4YGFaFMmOYzf1G/QqfUxr28Tk3qJ9z7FWS4KSOBa7Tc?= =?us-ascii?Q?1m7ceuVpS1286d4adFu/d0iuTlFxcfLcu9ENHNRuChkAuvU8jOsaJqNBfmC2?= =?us-ascii?Q?rFljbs5JI5N19WqC/RqlyGgfyej3Y6TSINNBthCRpdhhqhgEmK6C7z25JOZA?= =?us-ascii?Q?5XPb9h1+seLaeoQRZM0w4x4j5Al85LgSxW/ZBv/gHjiB2wOWMem4lKgPl7F1?= =?us-ascii?Q?lM3luio8Tmm+YsKMeZ1K599wBzAT8Rtn6aApnTVC+js1eQBUZpujrPtSbvnn?= =?us-ascii?Q?JUNzaHCkMwucvg+9eCNC47DGHIaL8+jy1lca1pGnNACBcFEhBvOjufIlAs50?= =?us-ascii?Q?wH44SDII03k69TiZMSv7EFVWQ7dERTeMzyOwnQVwKWJuJMsb/lADKtzM1+iC?= =?us-ascii?Q?bAlDRgrCuQ/aHgvBcsNQCmgDews=3D?= X-OriginatorOrg: os.amperecomputing.com X-MS-Exchange-CrossTenant-Network-Message-Id: 58dbc4f2-724f-4ae4-fb9b-08d9b480c48d X-MS-Exchange-CrossTenant-AuthSource: PH0PR01MB7287.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2021 04:12:19.8647 (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: dkkk388GZqrFijeNznrVdCw86unhI0mCJ55wQyy5waXJcYffMmTngUiHfuMZ3sDBpXah/SzE0SqkUox1OlKGwwU2AwG7c7jyJlrOCY5KOf4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR01MB6539 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,nhi@os.amperecomputing.com X-Gm-Message-State: hDDRfBrEKDn3fwfSRRf6nhIvx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1638331942; bh=aHEOrIX30T37n6G1yB0VvBwUVaHXiF27FZBuRdFP6qM=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=GJhyj7mjiNcsIrmXJ8WmPBohiuO+R7skkXm3FmkVIktn+sccelU8ASFgmx4iUGEiSag 2n/4FRmqCgzd4KK9jVerv24oLEYkS8QVDGIqac69JR7nuuWtniKc/mvE5kVAghnAO1LMf flA9OkgRbQOOqtQUma/ClyFbi1CyisvyyN0= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1638331943186100001 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Typically, the information of the SMBIOS type 1/2/3 is fetched from an FRU device during UEFI booting intead of fixed PCDs. Therefore, this patch is to add more HII string fields in the OemMiscLib and support updating these SMBIOS types with the strings provided by the OemMiscLib if the PCDs are empty. Cc: Leif Lindholm Cc: Ard Biesheuvel Cc: Rebecca Cran Signed-off-by: Nhi Pham Reviewed-by: Sami Mujawar --- ArmPkg/Include/Library/OemMiscLib.h = | 3 +++ ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerFunctio= n.c | 10 ++++++++++ ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacturerFunc= tion.c | 15 +++++++++++++++ 3 files changed, 28 insertions(+) diff --git a/ArmPkg/Include/Library/OemMiscLib.h b/ArmPkg/Include/Library/O= emMiscLib.h index 0b03fe8d4de3..aa68c0a92632 100644 --- a/ArmPkg/Include/Library/OemMiscLib.h +++ b/ArmPkg/Include/Library/OemMiscLib.h @@ -44,11 +44,14 @@ typedef enum SerialNumType01, UuidType01, SystemManufacturerType01, + VersionType01, SkuNumberType01, FamilyType01, AssertTagType02, SerialNumberType02, BoardManufacturerType02, + ProductNameType02, + VersionType02, SkuNumberType02, ChassisLocationType02, AssetTagType03, diff --git a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufac= turerFunction.c b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemMa= nufacturerFunction.c index 2c69c2593f5d..2c73d63444fe 100644 --- a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerFu= nction.c +++ b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type01/MiscSystemManufacturerFu= nction.c @@ -75,12 +75,22 @@ SMBIOS_MISC_TABLE_FUNCTION(MiscSystemManufacturer) if (StrLen (Product) > 0) { TokenToUpdate =3D STRING_TOKEN (STR_MISC_SYSTEM_PRODUCT_NAME); HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Product, NULL); + } else { + OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, + STRING_TOKEN (STR_MISC_SYSTEM_PRODUCT_NAME), + ProductNameType01 + ); } =20 pVersion =3D (CHAR16 *) PcdGetPtr (PcdSystemVersion); if (StrLen (pVersion) > 0) { TokenToUpdate =3D STRING_TOKEN (STR_MISC_SYSTEM_VERSION); HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, pVersion, NULL); + } else { + OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, + STRING_TOKEN (STR_MISC_SYSTEM_VERSION), + VersionType01 + ); } =20 OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, diff --git a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManu= facturerFunction.c b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseB= oardManufacturerFunction.c index 097777a23904..7f397d8d2aaa 100644 --- a/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacture= rFunction.c +++ b/ArmPkg/Universal/Smbios/SmbiosMiscDxe/Type02/MiscBaseBoardManufacture= rFunction.c @@ -79,18 +79,33 @@ SMBIOS_MISC_TABLE_FUNCTION(MiscBaseBoardManufacturer) if (StrLen (BaseBoardManufacturer) > 0) { TokenToUpdate =3D STRING_TOKEN (STR_MISC_BASE_BOARD_MANUFACTURER); HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, BaseBoardManufactur= er, NULL); + } else { + OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, + STRING_TOKEN (STR_MISC_BASE_BOARD_MANUFACTURER), + BoardManufacturerType02 + ); } =20 BaseBoardProductName =3D (CHAR16 *) PcdGetPtr (PcdBaseBoardProductName); if (StrLen (BaseBoardProductName) > 0) { TokenToUpdate =3D STRING_TOKEN (STR_MISC_BASE_BOARD_PRODUCT_NAME); HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, BaseBoardProductNam= e, NULL); + } else { + OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, + STRING_TOKEN (STR_MISC_BASE_BOARD_PRODUCT_NAME), + ProductNameType02 + ); } =20 Version =3D (CHAR16 *) PcdGetPtr (PcdBaseBoardVersion); if (StrLen (Version) > 0) { TokenToUpdate =3D STRING_TOKEN (STR_MISC_BASE_BOARD_VERSION); HiiSetString (mSmbiosMiscHiiHandle, TokenToUpdate, Version, NULL); + } else { + OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, + STRING_TOKEN (STR_MISC_BASE_BOARD_VERSION), + VersionType02 + ); } =20 OemUpdateSmbiosInfo (mSmbiosMiscHiiHandle, --=20 2.17.1 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#84193): https://edk2.groups.io/g/devel/message/84193 Mute This Topic: https://groups.io/mt/87420727/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-