From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web12.1054.1634949158733128101 for ; Fri, 22 Oct 2021 17:32:41 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=ziheCEI7; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: nathaniel.l.desimone@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10145"; a="229280455" X-IronPort-AV: E=Sophos;i="5.87,173,1631602800"; d="scan'208";a="229280455" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Oct 2021 17:32:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,173,1631602800"; d="scan'208";a="663374578" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga005.jf.intel.com with ESMTP; 22 Oct 2021 17:32:41 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Fri, 22 Oct 2021 17:32:40 -0700 Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Fri, 22 Oct 2021 17:32:40 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Fri, 22 Oct 2021 17:32:40 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.105) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Fri, 22 Oct 2021 17:32:38 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dLy7FXgKkPbcVCr7Z7QHCfoIHFF7yg0s9SvCvnaVK/QYFADSRbiH/b4ipIzz//Lry4+U1nmgOElvOcjS7Ar+tqCAO38f60jDGfCgSw0SJ8vZZiEupZlEscrjngYvHQWSIMYb2yMvJXc0z81uHICEc4FowkhUR7AS3aE7Y5wp6mL5X1K+wHvf6GSfkYd95mpVAALuZEZiN/9TNbHhSQIi4nDwT2CnrBzEk5Ah31eTpHCX7BhG3AfrP3VXk4Od5pyAmINHwaPxELtzvZLCreIGuEdtfEjVxV08MoyMMEauIeCETXCUkQR7zCaDfr0FwRxzxWvhbQYGoioyZxYv25hU9w== 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=ij+HcJeDyYRaPJmDOXDMjIVyTZMgvsMfuKAWvpNVTtg=; b=PP8t/NZlAfx6gyj9bepTLOskBegyb1Tu+WUzjEXm6PIrFWRJHXWyWlLupKNBx7vmmquYApRU7/S+2Bu+S8pBAXAzcGyPN6op70eDiZnbQ4oJDz4dEIuQMQj5VoiRSPxW405RZjVDcHlDweHGLHEggbAqd1nIyytQf9imLah7/sKwKvMlesX9C/4mmUanRk8CGcYJmvzaKaaLVUm5LxGc++A/FMHFHcZPloUEHG5qmqj+jclXtm2Wxekms6ucNY2VECIcOW8NsnRwySKeGXc5nzqB+20jrRCdqNTfdilcQFk/58761BBT/p+7Uuxf0vzalpO+0nLFuYNIznRm1XkeFA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ij+HcJeDyYRaPJmDOXDMjIVyTZMgvsMfuKAWvpNVTtg=; b=ziheCEI7d4hCd7tAECPwJ9KzCmpDDRSVVMFwn85ZvSQc/wq0RC0x9BHtm1QzRaj5HJ2iEZ3E4603eqGJQL9bnlEACO23ArX0WJKxBCgoNWTb851j3L0rH5Xl72K1H3UIpCWEY6e5DYfdl9kEoyqvvG90hkFeaejIiZrztl9O5Ao= Received: from MW4PR11MB5821.namprd11.prod.outlook.com (2603:10b6:303:184::5) by CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.16; Sat, 23 Oct 2021 00:31:59 +0000 Received: from MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::6140:8298:9d5a:df46]) by MW4PR11MB5821.namprd11.prod.outlook.com ([fe80::6140:8298:9d5a:df46%9]) with mapi id 15.20.4628.018; Sat, 23 Oct 2021 00:31:59 +0000 From: "Nate DeSimone" To: "Oram, Isaac W" , "devel@edk2.groups.io" CC: "Chiu, Chasel" , Liming Gao , "Dong, Eric" Subject: Re: [edk2-devel][edk2-platforms][PATCH V1 09/11] MinPlatformPkg/SpifvbService: Publish FV based on board request Thread-Topic: [edk2-devel][edk2-platforms][PATCH V1 09/11] MinPlatformPkg/SpifvbService: Publish FV based on board request Thread-Index: AQHXwgs7jG6Py88zMEyKbN+VkFSOGavfvoag Date: Sat, 23 Oct 2021 00:31:59 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.6.200.16 dlp-product: dlpe-windows authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 783f8b51-0f2d-4894-977f-08d995bc867e x-ms-traffictypediagnostic: CO1PR11MB4929: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: retILbWGfhNnmhAPZKpRtFpYyTY2e9Wm1jsNR3Ds0IOwQVWxQu6LQyNvqDo2hKmyWy6EpTKXU7CTtr59GzClzKpQfC2AM9upsFYtd/zLq08pQRVE257nLoWTF4wWx9IHNxLvDwDNpiPIRGW+Xrwqz/+eCVJD05wnXUN+j0fDY5c2TVdjD2B1kA7kJuKGS/1ZLPT/GN3BqOiqZVIjGtPop/ENqBVnvL5eXpkLsQyxVq4T89/+4biBewKenteB9G5s2j+TL2pzeektpszBvRtUGigNPuRAmJnpaHuSQ2mDwNqNy6OE+h9OsvU/YfrfouUZYZOTXxlESbSGrqGhifBf4cCwEt8/sOVS+015jYZhzsLtu5X9pTev/ZJnQajM43JOIjnh8oIUrtM6Xzq7fDLykMsaiHvJKQz9zMCxCy7p1Ufw+mFEExy1zyjpLqva+7itxXAH3ogvJs1ysUHM6iSXZx3A8CWW35bfaQjoYffT35gN9Msn/vXQMGnJqCCURX2ZiEM1AGQraS4dioirWsGOXTTupo44yC5WALGm04zvY6b0EIduZaS9KPcRmi2Xmtk48wGOJiP2bXoUWkhJO/o4rgHQAv5UU1ZBdI/9zz0QXaOFF7kzZIXBvItCXMMmt0nGubi+l0dMKrSl7Ew7Ux/gD2+arhJSb1jc5+ZxKBFqPdHMJ8ZdcfYp06aBmVIp7wuD7tmmRYIf1LBBUHTcQijbNw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR11MB5821.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(33656002)(83380400001)(9686003)(66446008)(8936002)(5660300002)(6506007)(38070700005)(38100700002)(122000001)(55016002)(508600001)(54906003)(186003)(4326008)(76116006)(66946007)(107886003)(2906002)(26005)(7696005)(66556008)(66476007)(86362001)(64756008)(53546011)(82960400001)(71200400001)(110136005)(8676002)(52536014)(316002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?+vwdvE9UYUxZ1yP9flMeBEPt1r0yS52laNTm4YcQbOrtBFWru7wBGXDtXkaV?= =?us-ascii?Q?dEFwFCQl/0GQ//+iq4zeAJ15e+ttrDdvewuyrijSzk1ti6enuDjbOovQGNQU?= =?us-ascii?Q?nhRtOhYHYc+zkc1fB+t3TaDKFo86bqkki/1Jrzbl0hvOF351gQhUK7N/LOpG?= =?us-ascii?Q?TLNtSZ0LsB6C32gLO+x4Vb9FJHjTWqcLaFebKGjKgelNSbvnEp3HmJcnMeU2?= =?us-ascii?Q?/VyRubWGx8+LltEOsXPlmPxPxdiq3AcOQEeAKeibVY8SNnuO0IlcXGVZGBlj?= =?us-ascii?Q?6epdQC1h4KkKv73rixbQ2wDyZrvs7Jg151hSv6U0gVtR2XC/87h7DPivsPZx?= =?us-ascii?Q?I/NXJg8LO/YZku7yde4dMOZQNyJYJqm0/nu//WlnvZNXu4dxh2sgXg3ujNI0?= =?us-ascii?Q?8sx3FqYOFAoVr7yWcNgpyxsEBJpdvtOonv0ZJdlFguDKfz6AxaGxgW3crXJB?= =?us-ascii?Q?wK1PNbOgf/oayHCLOKm/s9sXeNMLi2zux8XN2S2OG052KbIBBrvInc6Z4YHH?= =?us-ascii?Q?a/q9Xsk4CUb0GIOdEkjb4AmyQSNF28WwxDymQ9VNy+KJ/xvNLldwp51WlD+f?= =?us-ascii?Q?E4MWighXMIugfr8ianu6lK+NIx+HQZbFOdWqCPd8SLGVuQVafSTuW1Q8hCRQ?= =?us-ascii?Q?MUWoD3JnnlZdx4hFNslwt56FD9+lKTl0qFTWv3s5ohQlf8Aa3nXuP/7uqxpZ?= =?us-ascii?Q?CSYDPCWhQAp+l6aixxCx3rX4zRsqYNdtQROH6aLFJD+6XFB3nF5k6gP4ogMU?= =?us-ascii?Q?RkiOWh89/ADjEkGdeJM0EWzTGQZPjTm2lAZI6XroK5Yr3OX8cOefU5RSt1pV?= =?us-ascii?Q?f8oopsEwsnPXgYazJd5bk6qJ6Muv6Ui7SfsM/tklJj8JdjN6MuIBI+TLlGME?= =?us-ascii?Q?REeE1JqL6WqEsNjhUBfA7ynFbyESc+4U8hmiYWYZ9ez+i6vv2WWqkofs4auR?= =?us-ascii?Q?zPSEi0iy7L6KNYWmQrXE6GnfTrzoGV/Pu2AGbIVXGcPHRt49tmtj0z50NtWy?= =?us-ascii?Q?XsrKbl2p1YZ1i2bJJ4QVR4cDAPwfeEmcocN46zVZZYdiNBhwfEfJkBokAoBg?= =?us-ascii?Q?22aw21+PllcK3cMOxzspkLo4HrS0nj8H95DBqxV7r7qHpBL8OMf2zGFY14Gp?= =?us-ascii?Q?y58bM6JR0/TIIfRzOOzL89wAVHVwUiOePq5rAwfwULFhIDxoBYT2+yRIUfi2?= =?us-ascii?Q?GH+AXqiSQAebQG+nqkKPBpwxCedk52wo0sDf2/omSVEPqsOTkJK41+R+tOQN?= =?us-ascii?Q?EugRUBy7DlQNY14HEesHF4Eb8qW1zT/4mPSi2Vwg3ZcaBAb1NDWqmAwVyS68?= =?us-ascii?Q?8VY4PZ9U11ZeGfXVddWFMgDduGacf9WY4Y9oSZhsMd3d16EdTVismxLm0sSc?= =?us-ascii?Q?JEw/0tYIBAcpJdhpHeKNYC/t/DaOem40hNsGbN5yWSL6mSLu9lY3YZWOsJZZ?= =?us-ascii?Q?j7kfuDF45VCeIyOdoOwbe/S6vLuHoF6mTeoH4O8iFuwH+S10GE4K/6jMzdoS?= =?us-ascii?Q?zSb5DrZM/rcLhm0cwxfYBLpgITdf1HtsEymZp0SU+x3K3ZqCIKJR2WEzBZe+?= =?us-ascii?Q?joge12kkLiHH6YkV+S9d5uz+Zutl9FuNYUsjP3QLS+WtYXey7gW2Hx5Nakqd?= =?us-ascii?Q?ufftzuxXNimQPEx5/+xuVQ/d6uSI3UzYt3iq21Lx04TjuWJlRp8WJeLx7x2O?= =?us-ascii?Q?Of/5Sg=3D=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR11MB5821.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 783f8b51-0f2d-4894-977f-08d995bc867e X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2021 00:31:59.1304 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: UNfCijAndHpv7i4RKtrDfdxeYfdGUdDjuaar1FIH9WyMRUY7t9arqa3MdRABfLONg9kBz3le9JAFW6wi9h8Ag8PLZFAYrS21i3YUdibjzT8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4929 Return-Path: nathaniel.l.desimone@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Isaac, Please update copyright year on SpiFvbServiceCommon.h, SpiFvbServiceCommon.= c, SpiFvbServiceSmm.inf, SpiFvbServiceStandaloneMm.inf, and SpiFvbServiceMm= .c Thanks, Nate > -----Original Message----- > From: Oram, Isaac W > Sent: Friday, October 15, 2021 2:26 PM > To: devel@edk2.groups.io > Cc: Chiu, Chasel ; Desimone, Nathaniel L > ; Liming Gao > ; Dong, Eric > Subject: [edk2-devel][edk2-platforms][PATCH V1 09/11] > MinPlatformPkg/SpifvbService: Publish FV based on board request >=20 > Change MM reporting to use ReportFvLib API ReportMmFv (); This removed > the hardcoded table of FV to publish. > Also removed the unused "default" table. >=20 > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Liming Gao > Cc: Eric Dong > Signed-off-by: Isaac Oram > --- >=20 > Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCommon. > c | 16 -------- >=20 > Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCommon. > h | 7 ---- > Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceMm.c > | 41 ++++++++++++-------- > Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm.inf > | 1 + >=20 > Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceStandalon > eMm.inf | 1 + > 5 files changed, 27 insertions(+), 39 deletions(-) >=20 > diff --git > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCommo > n.c > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceComm > on.c > index 113c749d04..b8a255dbf4 100644 > --- > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCommo > n.c > +++ > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCom > +++ mon.c > @@ -15,22 +15,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // > FVB_GLOBAL mFvbModuleGlobal; >=20 > -// > -// This platform driver knows there are multiple FVs on FD. > -// Now we only provide FVs on Variable region and MicorCode region for > performance issue. > -// > -FV_INFO mPlatformFvBaseAddress[] =3D { > - {0, 0}, // {FixedPcdGet32(PcdFlashNvStorageVariableBase), > FixedPcdGet32(PcdFlashNvStorageVariableSize)}, > - {0, 0}, // {FixedPcdGet32(PcdFlashFvMicrocodeBase), > FixedPcdGet32(PcdFlashFvMicrocodeSize)}, > - {0, 0} > -}; > - > -FV_INFO mPlatformDefaultBaseAddress[] =3D { > - {0, 0}, // {FixedPcdGet32(PcdFlashNvStorageVariableBase), > FixedPcdGet32(PcdFlashNvStorageVariableSize)}, > - {0, 0}, // {FixedPcdGet32(PcdFlashFvMicrocodeBase), > FixedPcdGet32(PcdFlashFvMicrocodeSize)}, > - {0, 0} > -}; > - > FV_MEMMAP_DEVICE_PATH mFvMemmapDevicePathTemplate =3D { > { > { > diff --git > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCommo > n.h > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceComm > on.h > index e9d69e9858..d1d61b124f 100644 > --- > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCommo > n.h > +++ > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceCom > +++ mon.h > @@ -71,11 +71,6 @@ typedef struct { > EFI_DEVICE_PATH_PROTOCOL EndDevPath; > } FV_MEMMAP_DEVICE_PATH; >=20 > -typedef struct { > - UINT32 FvBase; > - UINT32 FvSize; > -} FV_INFO; > - > // > // Protocol APIs > // > @@ -152,7 +147,5 @@ extern FVB_GLOBAL mFvbModuleG= lobal; > extern FV_MEMMAP_DEVICE_PATH > mFvMemmapDevicePathTemplate; > extern FV_PIWG_DEVICE_PATH mFvPIWGDevicePathTemplate; > extern EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL > mFvbProtocolTemplate; > -extern FV_INFO mPlatformFvBaseAddress[]; > -extern FV_INFO mPlatformDefaultBaseAddress[]; >=20 > #endif > diff --git > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceMm.c > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceMm.c > index 016f19587c..1d8d55b8f2 100644 > --- > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceMm.c > +++ > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceMm. > +++ c > @@ -11,6 +11,7 @@ > #include "SpiFvbServiceCommon.h" > #include #include > > +#include > #include >=20 > /** > @@ -97,8 +98,12 @@ InstallFvbProtocol ( > The function does the necessary initialization work for > Firmware Volume Block Driver. >=20 > + @param VOID > + > + @retval EFI_SUCCESS The driver initialized successfully. > + @retval EFI_UNSUPPORTED The driver failed to initialize proper= ly. > **/ > -VOID > +EFI_STATUS > FvbInitialize ( > VOID > ) > @@ -113,15 +118,17 @@ FvbInitialize ( > UINT32 MaxLbaSize; > UINT32 BytesWritten; > UINTN BytesErased; > + FV_INFO *BoardFvInfoTablePtr; >=20 > - mPlatformFvBaseAddress[0].FvBase =3D > PcdGet32(PcdFlashNvStorageVariableBase); > - mPlatformFvBaseAddress[0].FvSize =3D > PcdGet32(PcdFlashNvStorageVariableSize); > - mPlatformFvBaseAddress[1].FvBase =3D > PcdGet32(PcdFlashFvMicrocodeBase); > - mPlatformFvBaseAddress[1].FvSize =3D > PcdGet32(PcdFlashFvMicrocodeSize); > - mPlatformDefaultBaseAddress[0].FvBase =3D > PcdGet32(PcdFlashNvStorageVariableBase); > - mPlatformDefaultBaseAddress[0].FvSize =3D > PcdGet32(PcdFlashNvStorageVariableSize); > - mPlatformDefaultBaseAddress[1].FvBase =3D > PcdGet32(PcdFlashFvMicrocodeBase); > - mPlatformDefaultBaseAddress[1].FvSize =3D > PcdGet32(PcdFlashFvMicrocodeSize); > + // > + // Retrieve the FV Info from the board library // > + BoardFvInfoTablePtr =3D NULL; ReportMmFv (&BoardFvInfoTablePtr); if > + (!BoardFvInfoTablePtr) { > + ASSERT (BoardFvInfoTablePtr !=3D NULL); > + return EFI_UNSUPPORTED; > + } >=20 > // > // We will only continue with FVB installation if the @@ -132,11 +139,= 11 @@ > FvbInitialize ( > // Make sure all FVB are valid and/or fix if possible > // > for (Idx =3D 0;; Idx++) { > - if (mPlatformFvBaseAddress[Idx].FvSize =3D=3D 0 && > mPlatformFvBaseAddress[Idx].FvBase =3D=3D 0) { > + if (BoardFvInfoTablePtr[Idx].FvSize =3D=3D 0 && > + BoardFvInfoTablePtr[Idx].FvBase =3D=3D 0) { > break; > } >=20 > - BaseAddress =3D mPlatformFvBaseAddress[Idx].FvBase; > + BaseAddress =3D BoardFvInfoTablePtr[Idx].FvBase; > FvHeader =3D (EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) BaseAddress; >=20 > if (!IsFvHeaderValid (BaseAddress, FvHeader)) { @@ -192,10 +199,10= @@ > FvbInitialize ( > // > BufferSize =3D 0; > for (Idx =3D 0; ; Idx++) { > - if (mPlatformFvBaseAddress[Idx].FvSize =3D=3D 0 && > mPlatformFvBaseAddress[Idx].FvBase =3D=3D 0) { > + if (BoardFvInfoTablePtr[Idx].FvSize =3D=3D 0 && > + BoardFvInfoTablePtr[Idx].FvBase =3D=3D 0) { > break; > } > - BaseAddress =3D mPlatformFvBaseAddress[Idx].FvBase; > + BaseAddress =3D BoardFvInfoTablePtr[Idx].FvBase; > FvHeader =3D (EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) BaseAddress; >=20 > if (!IsFvHeaderValid (BaseAddress, FvHeader)) { @@ -212,7 +219,7 @= @ > FvbInitialize ( > mFvbModuleGlobal.FvbInstance =3D (EFI_FVB_INSTANCE *) > AllocateRuntimeZeroPool (BufferSize); > if (mFvbModuleGlobal.FvbInstance =3D=3D NULL) { > ASSERT (FALSE); > - return; > + return EFI_SUCCESS; > } >=20 > MaxLbaSize =3D 0; > @@ -220,10 +227,10 @@ FvbInitialize ( > mFvbModuleGlobal.NumFv =3D 0; >=20 > for (Idx =3D 0; ; Idx++) { > - if (mPlatformFvBaseAddress[Idx].FvSize =3D=3D 0 && > mPlatformFvBaseAddress[Idx].FvBase =3D=3D 0) { > + if (BoardFvInfoTablePtr[Idx].FvSize =3D=3D 0 && > + BoardFvInfoTablePtr[Idx].FvBase =3D=3D 0) { > break; > } > - BaseAddress =3D mPlatformFvBaseAddress[Idx].FvBase; > + BaseAddress =3D BoardFvInfoTablePtr[Idx].FvBase; > FvHeader =3D (EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) BaseAddress; >=20 > if (!IsFvHeaderValid (BaseAddress, FvHeader)) { @@ -268,4 +275,6 @= @ > FvbInitialize ( >=20 > } > } > + > + return EFI_SUCCESS; > } > diff --git > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm.in > f > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm.in > f > index 10e51e1175..7b69bedcdc 100644 > --- > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm.in > f > +++ > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSmm > +++ .inf > @@ -34,6 +34,7 @@ > UefiDriverEntryPoint > SpiFlashCommonLib > MmServicesTableLib > + ReportFvLib >=20 > [Packages] > MdePkg/MdePkg.dec > diff --git > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceStandal > oneMm.inf > b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceStandal > oneMm.inf > index 9f08d3673f..1dfb2520e7 100644 > --- > a/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceStandal > oneMm.inf > +++ b/Platform/Intel/MinPlatformPkg/Flash/SpiFvbService/SpiFvbServiceSta > +++ ndaloneMm.inf > @@ -33,6 +33,7 @@ > MmServicesTableLib > SpiFlashCommonLib > StandaloneMmDriverEntryPoint > + ReportFvLib >=20 > [Packages] > MdePkg/MdePkg.dec > -- > 2.27.0.windows.1