From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR04-HE1-obe.outbound.protection.outlook.com (EUR04-HE1-obe.outbound.protection.outlook.com [40.107.7.52]) by mx.groups.io with SMTP id smtpd.web09.6165.1666698410846472435 for ; Tue, 25 Oct 2022 04:46:52 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=fs7CsMbe; spf=pass (domain: arm.com, ip: 40.107.7.52, mailfrom: sami.mujawar@arm.com) ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=YcdDLT1ph2fpUZH5VYdaB7+FW/L+zFp5PI4BmQTj4TFx3TUJ07QxPzvLeO0M8rsMYnqfH4uwN2eqr2ApnoCadlMiv/MY3onQ1R19fek1TrsJUbLsSRJJKWQ3waUrZnsWLillO9Iq8S+KkubC16yQwkyp8xT6d4XDrRAx5Xlbyzd45yjJ2lcTwKMMenLKjshDVZ1JWFIVxuUD2io7KjRRsfV0aeMun4f1rgCaR2C+Vobm32ODn7+2Oz/5nij0DSrTrL6UBdwzKITdDcOz1hmE2Xo3W+9zh6tOnWMf4zTwQU3fRyva4stZ0N6X+KFIdczcswV8c+2rkGnMkFn9T4j0dw== ARC-Message-Signature: i=2; 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=SS6xW0gMpvEcGzOxEDiCOPtRIlQAH2++fBO4GxAEZcw=; b=jWeX8b/Uw+xcGsw6tKu8AGEiuoZQ8mNwYudxMceq7GjuQjblokZ3UyK3y7eougSpGvQfmhYy7XkQp+60k4TyRoTuI2XktTfjJOf0uRS6B/cNp1Ngf2row16Siz9awPk1RHEx/4UemcZmhlonceMklYk8t4/whj5QeXisBq8BiZ9vkrBw3LSAl3H5ld/0WSk9M0B5Fp/K8fFoDeKYq/JdSC6ewEKMjfc4EA/qUle2R/nMJpyZH7v4mxtF9GrPL75ZC7crI1XIxv2o5wCjauX0TiO8FslMaO0vfGnrg6H7x+/RsAtNy0icQIRZdWKN2iK47H0FHxSe4endfSWI0tcG2A== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=edk2.groups.io smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SS6xW0gMpvEcGzOxEDiCOPtRIlQAH2++fBO4GxAEZcw=; b=fs7CsMbeGfqLc1ao+X89/uvNXsH/RBpW5+enGSMKRFJcMyj70zHbGuMs0GWdtRRLfdpdd+OSADAEq1U8V9QZadBMWnfeYF1zG9jQGCjiOJARJaHyqDP3jOZ+HfDb7C7j7nlIC+2oAxV70m6T0tOdpo9Npyb1DZoKMWnszUFx+SU= Received: from FR3P281CA0099.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:a1::16) by AS2PR08MB9870.eurprd08.prod.outlook.com (2603:10a6:20b:595::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.21; Tue, 25 Oct 2022 11:46:41 +0000 Received: from VI1EUR03FT022.eop-EUR03.prod.protection.outlook.com (2603:10a6:d10:a1:cafe::cf) by FR3P281CA0099.outlook.office365.com (2603:10a6:d10:a1::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5746.18 via Frontend Transport; Tue, 25 Oct 2022 11:46:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VI1EUR03FT022.mail.protection.outlook.com (100.127.144.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.32 via Frontend Transport; Tue, 25 Oct 2022 11:46:40 +0000 Received: ("Tessian outbound 58faf9791229:v130"); Tue, 25 Oct 2022 11:46:40 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 99e99005bde80aad X-CR-MTA-TID: 64aa7808 Received: from ff61564c9bb4.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id DA269565-EA32-4AD3-9708-98EA12911556.1; Tue, 25 Oct 2022 11:46:33 +0000 Received: from EUR05-AM6-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ff61564c9bb4.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 25 Oct 2022 11:46:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fSkwi2plCLAiPy1nT0UiuWNCEFFAtyznSDPQNGp4hfrasKftPA6ZlE+Bp48xeLoQHdzF9JRA+FMmf8xCfosGztfC5u4MJkS1u6zExacZ1P8q7F0tj7BCY8j5b5gJ40P7XekqZVFOoLcF6BgQmcTh3HiI1YQFlOLfcCRRu7TkwPudsLQa6J1HEdXrW41uhepGSOofbN+U54DgOi02p1eaSicKAyyJyKzai0Z7JCBdMihaedzOkX2Wisi0vEmiraxZuYn0iKFKVEVUj7+f1iD3NDQurQxXiN/uwoG0miMRfdF2Fp3gXvU3qSVUA3ovHAPRCsTKQcYiQtsuybcCFAEB6Q== 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=SS6xW0gMpvEcGzOxEDiCOPtRIlQAH2++fBO4GxAEZcw=; b=aR+tZTLxD1l88omLeS7lMeb4nyvndPxgpKlpUkexz/w+B8VDEDYPatthz74j5qCZ5dT3Fsiw3H87O9F96q2MVnxqmuiQf3Db/V1DnNr+lh9fBXsmx9H3F5GoklWX7Xd1y4uBOBSQVHMdg3tnYjxVj7rvCyiKWmWhq7ki05Vwk0gVKY3LWL70tHCGI1l6tCR597l5FbkyqNak5mvAgM3KxFb/n0bN/fYRm6CXqUX5fRX1+SlROnx1K8xpomeyPo2etmCh9nkeVQ33eJhKZvT2mtfNrUy3jaWtYGKVKfInN7/gfgY2XuO/YvXA+LjK/HW8cO/OIWHYeqRgnI2PUuo0dg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SS6xW0gMpvEcGzOxEDiCOPtRIlQAH2++fBO4GxAEZcw=; b=fs7CsMbeGfqLc1ao+X89/uvNXsH/RBpW5+enGSMKRFJcMyj70zHbGuMs0GWdtRRLfdpdd+OSADAEq1U8V9QZadBMWnfeYF1zG9jQGCjiOJARJaHyqDP3jOZ+HfDb7C7j7nlIC+2oAxV70m6T0tOdpo9Npyb1DZoKMWnszUFx+SU= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from AS8PR08MB6806.eurprd08.prod.outlook.com (2603:10a6:20b:39b::12) by DB9PR08MB6490.eurprd08.prod.outlook.com (2603:10a6:10:25a::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.29; Tue, 25 Oct 2022 11:46:31 +0000 Received: from AS8PR08MB6806.eurprd08.prod.outlook.com ([fe80::283c:fe2e:699d:2bf]) by AS8PR08MB6806.eurprd08.prod.outlook.com ([fe80::283c:fe2e:699d:2bf%5]) with mapi id 15.20.5746.027; Tue, 25 Oct 2022 11:46:31 +0000 Message-ID: Date: Tue, 25 Oct 2022 12:46:29 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.4.0 Subject: Re: [PATCH v3 1/1] ArmPlatformPkg/PrePeiCore: Print the firmware version early in boot To: Leif Lindholm , Rebecca Cran Cc: devel@edk2.groups.io, Oliver Steffen , Gerd Hoffmann , Ard Biesheuvel References: <20221011205952.357499-1-rebecca@quicinc.com> <20221011205952.357499-2-rebecca@quicinc.com> From: "Sami Mujawar" In-Reply-To: X-ClientProxiedBy: LO6P123CA0053.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:310::18) To AS8PR08MB6806.eurprd08.prod.outlook.com (2603:10a6:20b:39b::12) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: AS8PR08MB6806:EE_|DB9PR08MB6490:EE_|VI1EUR03FT022:EE_|AS2PR08MB9870:EE_ X-MS-Office365-Filtering-Correlation-Id: 191153d8-1265-45d3-242e-08dab67e94ed x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: hC8sUvVD7EhY2ZioIa8M3OPqFUYWSPyq0XK2tr7meJp2gRYDkbthYA4+db0DBgaNFActv9ZmelH/yhLerUvgLkoOXVfJP7fOYRQD5a7BfDWu7+BRosMVycNGLiU2S5ZfEqlxfxZk2CR3Y1ogzRIKHQCpbzzAkxk6KMUhn00tpd++0Sb77Tcm0quUd0BxijNt0FcT5+3KZ39a8mQvH+xOEGhRf9wY/Qcmkxhc5duo1eNzxJVgmxIwL/DW3HXHbSX/zj48dPh1t4yp08IghwenIhPC84d+h/osaipEBMI/75xDSDoR+ke/QLSVtn9mm6me54gloTIcVeEgRPOgGfNIkpZZO2aYMzNBeynA4exeEqUO2LmcEAqTD0sRn/xzSZftHJh7RMnmZu6QL2X84bqV3ZNv0FYpJ1mHW9IJ8QoioFcgEvwPFyjz+getDdEkn6bp5HS9mllrGHF9A09HEJHD10kGzrrPE1SgjKUq9MamCBX0Dx4K44qHTB+pa63hqUIUyMXgrb4z2i9WvDgQlCFC+o+/4sje8awyQjRDLMdn9jabAvLE74OraRY5/6I0Y6KtWr+XVxbzGClBDrc4zEbpgy/uOadRSz+3Jk7ybNIYgEuCTwjIHNWwSSf8fDCA1wGxSsdLRSqAd/pKEiFAUrsj5dM4u9lNJy0yHQQEZaa2KLMEmNATFDSOKFRBbVIWtQtI9Orw1FE3sb/Lwrx+TUu+5Rmv9XzmFCN7a+JqCRy9fQ0IHauB2oLzTKtniLs/GGSQHg3GBQId/fClpyW1W73IbxuyIa7o7iW6LeoV9lpiC0Q= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB6806.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(136003)(396003)(346002)(39860400002)(366004)(376002)(451199015)(31696002)(36756003)(83380400001)(66946007)(86362001)(2906002)(38100700002)(66556008)(31686004)(44832011)(478600001)(5660300002)(110136005)(8676002)(54906003)(316002)(6486002)(186003)(53546011)(2616005)(66476007)(6512007)(4326008)(41300700001)(26005)(6506007)(8936002)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB6490 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Return-Path: Sami.Mujawar@arm.com X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VI1EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 704243e8-7cfc-455b-c485-08dab67e8efe X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /7EIy0ParKFDzNG4JJiw6tQCz+hCmfC55SdkXCYQ4CI1OPqLJLOlBNDXLjXs42Tn3+c1pjk8Yzmlp1VqUuSc3yZjxsGf04bSzQPqGGZWDKFAUBscNhjTZiR7AXk5xK3Hpe3xHVW496b+YaM7ucQGzb6rpmql1a5MB4/VKSdJkDxmXqifTDKyKi0xojXxVg+bDnNmjHU5KJfYdW+oeDHqOl2Cv01XO3vYzdNxfH0shTg5QV+0uYV2F0H3x9lgygbQDNjxizT/Bfk2sO58f2MSxp+/yIBOv1MuQ/MPAWPSwKly0V7cjEl+Chijiio5qp+pJvL4TWGm+jqqFi8CSNwBS0idyy6c3KGE0j2M8XZyvwjtEMOuF1dVAq9+PO2utExwYIDFckKU1jKf0sLD3Da+nOZmXy1pSBu/orTEnhqy+Oo5/SadXzekSqLajFT0HwJhJCdou0TS7t+0xKdCKBtqunOCA6OtyxLw9cz2baOVp/Updrrh8bYcLp9YEQs+W9gmDpUntPD8gUv2V5CxZAL9gFCmckruPRbS1xmzBge43S43qp35lME8BXr9WUd6E9cwamBV6NPTRrtgoW5bdvRCagCzNL7GKFxdv9SxKHTy5cXRl8HmPdbrfqmXK3guvGXw2Dc5E2lvIBRVbJEIn12IYcXVss9JbtiqWzC55P8EYAV/S7/WRhePpGUZzVDLV5C95y2RHcgyf461l+GiQX2rNJ8ns6n4Zo8mn2fuQFhA+4OrLw9oPKG/YbgxfX3ZUFmWKzWi1/NIjaqWVi1w5kwWMG98FnQapyinQVjZRDEoz1WP+gJUdHeykePge8W3u5M7 X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230022)(4636009)(346002)(376002)(136003)(39860400002)(396003)(451199015)(46966006)(40470700004)(36840700001)(81166007)(356005)(82310400005)(6512007)(86362001)(82740400003)(40480700001)(36756003)(41300700001)(26005)(4326008)(40460700003)(53546011)(8676002)(2616005)(44832011)(6506007)(107886003)(70206006)(478600001)(8936002)(70586007)(54906003)(36860700001)(316002)(110136005)(5660300002)(6486002)(47076005)(31696002)(186003)(336012)(2906002)(83380400001)(31686004)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2022 11:46:40.5644 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 191153d8-1265-45d3-242e-08dab67e94ed X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: VI1EUR03FT022.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9870 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Hi Leif, This change looks good to me. Reviewed-by: Sami Mujawar Regards, Sami Mujawar On 25/10/2022 12:41 pm, Leif Lindholm wrote: > On Tue, Oct 11, 2022 at 14:59:52 -0600, Rebecca Cran wrote: >> Copy code from PrePi to PrePeiCore that prints the firmware version >> and build date early in the boot process. > I'm good with this, but I'd prefer to break the printout into a helper > function in order to reduce clutter in CEntryPoint. > > i.e. fold in > > --- > diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCore.c > b/ArmPlatformPkg/PrePeiCore/PrePeiCore.c > index 674f4f7df498..225e22f75c23 100644 > --- a/ArmPlatformPkg/PrePeiCore/PrePeiCore.c > +++ b/ArmPlatformPkg/PrePeiCore/PrePeiCore.c > @@ -54,15 +54,32 @@ CreatePpiList ( > *PpiListSize =3D sizeof (gCommonPpiTable) + PlatformPpiListSize; > } > > +STATIC > +VOID > +PrintFirmwareVersion ( > + VOID > + ) > +{ > + CHAR8 Buffer[100]; > + UINTN CharCount; > + > + CharCount =3D AsciiSPrint ( > + Buffer, > + sizeof (Buffer), > + "UEFI firmware (version %s built at %a on %a)\n\r", > + (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString), > + __TIME__, > + __DATE__ > + ); > + SerialPortWrite ((UINT8 *)Buffer, CharCount); > +} > + > VOID > CEntryPoint ( > IN UINTN MpId, > IN EFI_PEI_CORE_ENTRY_POINT PeiCoreEntryPoint > ) > { > - CHAR8 Buffer[100]; > - UINTN CharCount; > - > if (!ArmMmuEnabled ()) { > // Data Cache enabled on Primary core when MMU is enabled. > ArmDisableDataCache (); > @@ -100,15 +117,8 @@ CEntryPoint ( > // Invoke "ProcessLibraryConstructorList" to have all library const= ructors > // called. > ProcessLibraryConstructorList (); > - CharCount =3D AsciiSPrint ( > - Buffer, > - sizeof (Buffer), > - "UEFI firmware (version %s built at %a on %a)\n\r", > - (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString), > - __TIME__, > - __DATE__ > - ); > - SerialPortWrite ((UINT8 *)Buffer, CharCount); > + > + PrintFirmwareVersion(); > > // Initialize the Debug Agent for Source Level Debugging > InitializeDebugAgent (DEBUG_AGENT_INIT_POSTMEM_SEC, NULL, > NULL); > --- > > If you're happy with that, I can apply and push. > > / > Leif > >> Signed-off-by: Rebecca Cran >> Reviewed-by: Sami Mujawar >> Tested-by: Oliver Steffen >> --- >> ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf | 3 +++ >> ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf | 3 +++ >> ArmPlatformPkg/PrePeiCore/PrePeiCore.c | 14 ++++++++++++++ >> 3 files changed, 20 insertions(+) >> >> diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf b/ArmPlatfor= mPkg/PrePeiCore/PrePeiCoreMPCore.inf >> index a5b4722459d1..4a3112b58dcb 100644 >> --- a/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf >> +++ b/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf >> @@ -54,6 +54,9 @@ [Ppis] >> gEfiTemporaryRamSupportPpiGuid >> gArmMpCoreInfoPpiGuid >> >> +[Pcd] >> + gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString >> + >> [FeaturePcd] >> gArmPlatformTokenSpaceGuid.PcdSendSgiToBringUpSecondaryCores >> >> diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf b/ArmPlatfo= rmPkg/PrePeiCore/PrePeiCoreUniCore.inf >> index 466a2b01c384..ab5bf1dac2d8 100644 >> --- a/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf >> +++ b/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf >> @@ -52,6 +52,9 @@ [LibraryClasses] >> [Ppis] >> gEfiTemporaryRamSupportPpiGuid >> >> +[Pcd] >> + gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString >> + >> [FeaturePcd] >> gArmPlatformTokenSpaceGuid.PcdSendSgiToBringUpSecondaryCores >> >> diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCore.c b/ArmPlatformPkg/Pre= PeiCore/PrePeiCore.c >> index 9c4b25df953d..1d4f6969b660 100644 >> --- a/ArmPlatformPkg/PrePeiCore/PrePeiCore.c >> +++ b/ArmPlatformPkg/PrePeiCore/PrePeiCore.c >> @@ -11,6 +11,8 @@ >> #include >> #include >> #include >> +#include >> +#include >> >> #include "PrePeiCore.h" >> >> @@ -58,6 +60,9 @@ CEntryPoint ( >> IN EFI_PEI_CORE_ENTRY_POINT PeiCoreEntryPoint >> ) >> { >> + CHAR8 Buffer[100]; >> + UINTN CharCount; >> + >> // Data Cache enabled on Primary core when MMU is enabled. >> ArmDisableDataCache (); >> // Invalidate instruction cache >> @@ -93,6 +98,15 @@ CEntryPoint ( >> // Invoke "ProcessLibraryConstructorList" to have all library cons= tructors >> // called. >> ProcessLibraryConstructorList (); >> + CharCount =3D AsciiSPrint ( >> + Buffer, >> + sizeof (Buffer), >> + "UEFI firmware (version %s built at %a on %a)\n\r", >> + (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString), >> + __TIME__, >> + __DATE__ >> + ); >> + SerialPortWrite ((UINT8 *)Buffer, CharCount); >> >> // Initialize the Debug Agent for Source Level Debugging >> InitializeDebugAgent (DEBUG_AGENT_INIT_POSTMEM_SEC, NULL, NULL); >> -- >> 2.30.2 >> IMPORTANT NOTICE: The contents of this email and any attachments are confid= ential and may also be privileged. If you are not the intended recipient, p= lease notify the sender immediately and do not disclose the contents to any= other person, use it for any purpose, or store or copy the information in = any medium. Thank you.