From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web08.1090.1639706015583835441 for ; Thu, 16 Dec 2021 17:53:35 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=S43DS6bQ; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: chasel.chiu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1639706015; x=1671242015; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=f1ZKPkk2HsQz1lPreaPmz06i05DKv8NuWqqTTMS6KGI=; b=S43DS6bQSgCynRuXPUbgqV55boXRWShnXPh+keQADh/MZvwprHQmEeXI n5+9ZNik5Cfzk0Ap24XQPqbLAoubgEd2f2X8QQ4QjHb9k9Jg9cWOqbvoo oUABRtNQ5opR2cNqxB8Rc/R3/tjxB8XP1xSlX1TLLsNLQqoGEGw3WD+Za IaPLwBYgCklY8NiWYC4A8tI6gBuQlrQtizbCAtL21nJ8zyFG5ymqbsql9 VrelSXrdwWpnpYt3d0tQmSbNsqliN6T71o+yb3RX2OQxKX1noC7S84nDI ymCexYdfMTum/IakXuAm5ylIz6x1oCwiCQRuIDw/DY9LgScQWsMyRro7+ w==; X-IronPort-AV: E=McAfee;i="6200,9189,10200"; a="239605080" X-IronPort-AV: E=Sophos;i="5.88,213,1635231600"; d="scan'208";a="239605080" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Dec 2021 17:53:34 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,213,1635231600"; d="scan'208";a="615395013" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga004.jf.intel.com with ESMTP; 16 Dec 2021 17:53:34 -0800 Received: from fmsmsx608.amr.corp.intel.com (10.18.126.88) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 16 Dec 2021 17:53:33 -0800 Received: from fmsmsx604.amr.corp.intel.com (10.18.126.84) by fmsmsx608.amr.corp.intel.com (10.18.126.88) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 16 Dec 2021 17:53:33 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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.2308.20 via Frontend Transport; Thu, 16 Dec 2021 17:53:33 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.171) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Thu, 16 Dec 2021 17:53:32 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YPqGo5IfzG9KQKNYOiAjOLcxGiQUu6khWnV//likADDU9cxfaIrqX4hznv7prshup+uvf5CTlUg1f4wOIdCpTHoWL2Y/iMKFIO+ydYQz2E+0su7QI8ymqqv5YIf3v3YK2rDqZ24g6bAvKbor8ACieAkoZOXy5ODxIgFTgO0otSar7YKFUp5jAV3LACxFjDnTioPxoOUU34KyQ7DNpg3Hbm7jLap01UfZJA+9iUHE4X8Kb2kCkK/QG7/zayIwnX+GxWvabGvUV/B7fRtLMtsC1h5JsHs1YdQtiLGRDNcTQRdaerWkxQAGT2p3IML6QTjj4GeffUBvIwN0SiLtbw7Alg== 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=c2tKDFPlUyt3Hh4l8fi3wOraN6qejZJq+g5TLDzpg7o=; b=lj0xD3uWTy91J8g5e8QoDcRIz/iyMR4yvyxtQDBB4VbD+G5bX+09v0hYsmcu7g3Nrd++8f5q8AHeFBZ+Gds/YiP5q7sihjDxKG+lXYkP1gV+tUijfdgDaBSudJ69ulikhclKyfLc5DJv7yd141IPAGiHHBXjtsrjWmDyaI3uQxSByccz9nKUFL2uXDhgPvYsEbzMw4lqJblIJrr8CJeREGXcOyJ9B7AOVHkfMP9x2bMVvQumNcR9aLMc5yect7OuLXgen5nWQ6YG05dnjqyDKQ2AiPcoVo+EI0FVcbRRm24kwENk6MMxaoScuMZxqwWyIZn8lHVLCn9Ep9NQLaTnoA== 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 Received: from BN9PR11MB5483.namprd11.prod.outlook.com (2603:10b6:408:104::10) by BN8PR11MB3571.namprd11.prod.outlook.com (2603:10b6:408:8f::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4801.14; Fri, 17 Dec 2021 01:53:31 +0000 Received: from BN9PR11MB5483.namprd11.prod.outlook.com ([fe80::30af:cda7:8cd4:f9f9]) by BN9PR11MB5483.namprd11.prod.outlook.com ([fe80::30af:cda7:8cd4:f9f9%9]) with mapi id 15.20.4778.018; Fri, 17 Dec 2021 01:53:31 +0000 From: "Chiu, Chasel" To: "Kuo, Ted" , "S, Ashraf Ali" , "devel@edk2.groups.io" CC: "Desimone, Nathaniel L" , "Zeng, Star" , "Duggapu, Chinni B" , "Chaganty, Rangasai V" , "Solanki, Digant H" , "V, Sangeetha" , "Ni, Ray" Subject: Re: [PATCH v8] IntelFsp2WrapperPkg : FSPM/S UPD data address based on Build Type Thread-Topic: [PATCH v8] IntelFsp2WrapperPkg : FSPM/S UPD data address based on Build Type Thread-Index: AQHX8lRzM2XzMUEop02HiCM2dO8rnaw077uAgAD7TYA= Date: Fri, 17 Dec 2021 01:53:31 +0000 Message-ID: References: <7886ad065bf2cb1b513300da04db32a698d4b590.1639642126.git.ashraf.ali.s@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 6800d631-3728-4224-5940-08d9c100070b x-ms-traffictypediagnostic: BN8PR11MB3571:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:913; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: +b6Duhe8/+Pi9MoIdxn8FWJ5Nfhm636mTwRpCsNNvov98uK1swHDorEXo/hYB7G3vl0heeWeHnUIQ+pWOZXDvhERyW2NBPOEcv6cSYgpeLgJ99s0TVEG5I+2vWyW69ANZlP8LJasq7lUmbqEI37GudarTXvSK2BcEJ5fiqvUuYFnXdKDmPw7CXnVFMmSZFlh2nlIOIlhMy42ifJNBEuFYGCpbDqeZ15lG1lS2a0apfYMI1GRsp2qEJr1MGGRr+OGGxTd2881q+wcPAlT+zsuo9L0uZQX/CZxwyrtnR0sQ/B0/iVOnIg47fowvn44i7OkICo9Qy3jGi7DNdK/cbLyOWKGzNQFuPxLWUn/sTlh45iszBSj5F08Hwwo4PSQIXUkZvWhd2Cw9ohGqWLDipWVnlH4hdqm2JJScWDoJuS66sKWoTKwt/OXqR8l57dT3gK3fMyBFAjw/tmb/xY934O2YWLBBLnMQGZXXS8G5J0FctsuBCDWO6kM2rJ6P0s+JWFOK3vKoKvBSDW5W5I44ge4zpQnOslabk/qBVUOFMMHP1j2CQWp9hzE8C1sH92xf/ZKaDL40onqhkfvK/DTquF5Yqpds0weuBLNHFgH8L5QqdUACLMkb8aueI5s0bMhRkHfju/J7b6q19ubGXN0WigngplYN7Ms0n3Q64D4jXVMEf1ZxNFvk7QxQ93+maioSkiJJ9gqUKebkphxuT85SdT8wiRU8PuViHTGbAuG36MqNv/0B8xEprNGS66eNnTVcTzcxabWrKEWgaAtM4dtiQCjiQ203EvEDJ3f8YZEk+bogbU= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN9PR11MB5483.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(38100700002)(71200400001)(122000001)(316002)(6506007)(83380400001)(508600001)(53546011)(55016003)(76116006)(66946007)(66556008)(64756008)(66446008)(2906002)(66476007)(82960400001)(26005)(54906003)(110136005)(5660300002)(8936002)(33656002)(186003)(4326008)(107886003)(38070700005)(52536014)(19627235002)(7696005)(8676002)(9686003)(86362001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?n0KPbX05jkgJu7kp6racwbmwRxE5W4yKxLKLry9OrIgS6MYIX6KFSNJAidOQ?= =?us-ascii?Q?isaIkHVfHAzIzHZuvcSMDXm397vd1luVUNAzypb5llN/xJRr6tGvZIwiPe1Q?= =?us-ascii?Q?oTZmmv4078n4cufV6Xm3MSYdM4zVRktBIzddqnFoKNC5EKQl/2IeQG6dAdFf?= =?us-ascii?Q?4qgr3Jig7n6XM60qzvd65RFFiCq5gMeJ9f/MsR9hc5+EFdKlUlkREthDa48q?= =?us-ascii?Q?a0y/46MiyVmIsXU3lq60csKTJJOyNHKyqy30IpEozg3oNLSE0WgVHyvC+vWh?= =?us-ascii?Q?mAVZm27l8sF23FcxUtTiB4z8Hbb55V4ZS42uNCX7B72OEWo7bg7XdU1+EcIJ?= =?us-ascii?Q?8wk53+GWhv5hvaAkYYqBsEBk5zjPLxKX2INuF9o3g1o6w9qomiTd7c/6JT7c?= =?us-ascii?Q?8mu6WH6K6d1Tru+yJVUQiFJgEtcVXFb+WHvut1G20warxeLHaP3Or1fIVDpp?= =?us-ascii?Q?KKIVNJn2Wlernhyxp84e+lD9vcgKlI5+u+0EmppGP2PG+pj7KGu7PZMrSdFj?= =?us-ascii?Q?1t3+xgvbRpmXTZHqmnTYby3YzttPTyII+wXeFhxnPtq3TwT9r3+iiEGHREKr?= =?us-ascii?Q?ISr3GPflL2pPhd1yQktddEWyR6IDaKX79jHTQCNoFPlJ423kyWXIMMythuo7?= =?us-ascii?Q?1rcux+SdR2JAShwsEo0ku+hC9xatJlgWAyv11514DeO5PxVp9GLmNZWKjH0L?= =?us-ascii?Q?OlwBNKOF0lpUSBs/p0uULKQ+kmeT5rr4+Xnn7LT25+8gwWc1FaRgLvp1ppBD?= =?us-ascii?Q?GNXKGGqkaqGrEm5lw2QbVAtJli4/vVXYh6Qj2Nioox92jio1wg0GJOMeg23e?= =?us-ascii?Q?yWh7zv2oKlo3uTQhF465iDngZaHVTCjT8IOrZW4NFHbIazlHSLnIlu0plb+D?= =?us-ascii?Q?5blFKAlO0F6VZ2WSpbe1MYGp+C8C2dZNJqrurLgTYf+VAXYJTUr63C6Pm8w+?= =?us-ascii?Q?hMXCNpZenwNnZxk7pLtLfrC7RtmHSs3JpDQnH0cTkuXR1N/AvbZXYAI8E032?= =?us-ascii?Q?8FkA0YJ5m9nBu46SB5CjYvcqua1wm0FxdOfQoxHZMVn9lw7EMa84pkwOiM9j?= =?us-ascii?Q?6hPIH8xRqKyCbM9neHDpjU3Ygstjyo5cW+byAdIIweQWsbP+L8W0KUY7wb4z?= =?us-ascii?Q?JOikxKaAuiOix+CfT+mnr4OgdzDTo9SmSgjafGhQiD/gA1XbUIDB93iBl+WD?= =?us-ascii?Q?bIonJ+ZfoKoV6g6JzMAVWpRpxwE7aJUIdkw71VBLeLO98bl5HHyuK/EJYIZY?= =?us-ascii?Q?FMZlcXFIKIcEMqnvr5jT7szsvwad2WH14Sh1/P/Af9KC+660yv+9EPr9SV7d?= =?us-ascii?Q?XOwLOWIx0PoU2vfhtD2Mw/1PtxJFGQT4paaGRKsUSQbCknaR+eJgdCRbknig?= =?us-ascii?Q?m8AZqNLELDaaOZmPHZVwS9zE/3i6BVWDxnhCZGarrBTv892TZDQbosOf0ivL?= =?us-ascii?Q?IeN1DUdzCVEZVfLYHMw3IBxIKIcPGQyy7l0YNo9hrd78g5qWe7w5IiIWcvTP?= =?us-ascii?Q?Xqtl37gNO6ochPr3HBnImj64Nu76dsldMSq/Sgq8NU3y0wMYzOGeyIY2Po9u?= =?us-ascii?Q?nlyQ9+aa5DpyEUPwYZednd6hh55Mq1SyHfUnV7dljM1wdBv2I4IyUHbjV/Q4?= =?us-ascii?Q?xc0+pa0Pr0IzloPpk7RyCeg=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN9PR11MB5483.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6800d631-3728-4224-5940-08d9c100070b X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Dec 2021 01:53:31.0576 (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: N4JutskUBdY38E+nXa2rGPG7Ap4DupK7MqD0bm2yXprRbPiAw63isjEHcXV2RqPrS+oOfoO9S1EAXwXSQLP+GQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR11MB3571 Return-Path: chasel.chiu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Ted, Some bootloaders may choose to always use PcdFspmUpdDataAddress64 regardles= s 32bit or 64bit builds, we do not need to block such usage cases by checki= ng UINTN size. Thanks, Chasel > -----Original Message----- > From: Kuo, Ted > Sent: Thursday, December 16, 2021 6:47 PM > To: S, Ashraf Ali ; devel@edk2.groups.io > Cc: Chiu, Chasel ; Desimone, Nathaniel L > ; Zeng, Star ; Dugga= pu, > Chinni B ; Chaganty, Rangasai V > ; Solanki, Digant H > ; V, Sangeetha ; Ni, R= ay > > Subject: RE: [PATCH v8] IntelFsp2WrapperPkg : FSPM/S UPD data address bas= ed > on Build Type >=20 > Can we use the size of UINTN instead of the value of > PcdFspmUpdDataAddress64 to decide which PCD should be returned in > GetFspmUpdDataAddress and GetFspsUpdDataAddress? >=20 > Thanks, > Ted >=20 > -----Original Message----- > From: S, Ashraf Ali > Sent: Thursday, December 16, 2021 4:10 PM > To: devel@edk2.groups.io > Cc: S, Ashraf Ali ; Chiu, Chasel ; > Desimone, Nathaniel L ; Zeng, Star > ; Kuo, Ted ; Duggapu, Chinni B > ; Chaganty, Rangasai V > ; Solanki, Digant H > ; V, Sangeetha ; Ni, R= ay > > Subject: [PATCH v8] IntelFsp2WrapperPkg : FSPM/S UPD data address based o= n > Build Type >=20 > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3D3642 > when the module is not building in IA32 mode which will lead to building = error. > when a module built-in X64 function pointer will be the size of 64bit wid= th which > cannot be fit in 32bit address which will lead to error. to overcome this= issue > introducing the 2 new PCD's for the 64bit modules can consume it. based o= n the > which pcd platform set, use that. >=20 > Cc: Chasel Chiu > Cc: Nate DeSimone > Cc: Star Zeng > Cc: Kuo Ted > Cc: Duggapu Chinni B > Cc: Rangasai V Chaganty > Cc: Digant H Solanki > Cc: Sangeetha V > Cc: Ray Ni > Signed-off-by: Ashraf Ali S > --- > .../FspmWrapperPeim/FspmWrapperPeim.c | 25 ++++++++++++++++--- > .../FspmWrapperPeim/FspmWrapperPeim.inf | 3 ++- > .../FspsWrapperPeim/FspsWrapperPeim.c | 25 ++++++++++++++++--- > .../FspsWrapperPeim/FspsWrapperPeim.inf | 3 ++- > IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec | 2 ++ > 5 files changed, 50 insertions(+), 8 deletions(-) >=20 > diff --git a/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.c > b/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.c > index 287e7f9159..49fbb27eca 100644 > --- a/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.c > +++ b/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.c > @@ -3,7 +3,7 @@ > register TemporaryRamDonePpi to call TempRamExit API, and register > MemoryDiscoveredPpi > notify to call FspSiliconInit API. >=20 > - Copyright (c) 2014 - 2020, Intel Corporation. All rights reserved.
> + Copyright (c) 2014 - 2021, Intel Corporation. All rights > + reserved.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > **/ > @@ -38,6 +38,25 @@ >=20 > extern EFI_GUID gFspHobGuid; >=20 > +/** > + Get the FSP M UPD Data address > + > + @return FSP-M UPD Data Address > +**/ > + > +UINTN > +EFIAPI > +GetFspmUpdDataAddress ( > + VOID > + ) > +{ > + if (PcdGet64 (PcdFspmUpdDataAddress64) !=3D 0) { > + return (UINTN) PcdGet64 (PcdFspmUpdDataAddress64); > + } else { > + return (UINTN) PcdGet32 (PcdFspmUpdDataAddress); > + } > +} > + > /** > Call FspMemoryInit API. >=20 > @@ -67,7 +86,7 @@ PeiFspMemoryInit ( > return EFI_DEVICE_ERROR; > } >=20 > - if ((PcdGet32 (PcdFspmUpdDataAddress) =3D=3D 0) && (FspmHeaderPtr- > >CfgRegionSize !=3D 0) && (FspmHeaderPtr->CfgRegionOffset !=3D 0)) { > + if ((GetFspmUpdDataAddress () =3D=3D 0) && (FspmHeaderPtr->CfgRegionSi= ze > + !=3D 0) && (FspmHeaderPtr->CfgRegionOffset !=3D 0)) { > // > // Copy default FSP-M UPD data from Flash > // > @@ -79,7 +98,7 @@ PeiFspMemoryInit ( > // > // External UPD is ready, get the buffer from PCD pointer. > // > - FspmUpdDataPtr =3D (FSPM_UPD_COMMON *)PcdGet32 > (PcdFspmUpdDataAddress); > + FspmUpdDataPtr =3D (FSPM_UPD_COMMON *) GetFspmUpdDataAddress(); > ASSERT (FspmUpdDataPtr !=3D NULL); > } >=20 > diff --git a/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf > b/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf > index 00166e56a0..5d0e021401 100644 > --- a/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf > +++ b/IntelFsp2WrapperPkg/FspmWrapperPeim/FspmWrapperPeim.inf > @@ -6,7 +6,7 @@ > # register TemporaryRamDonePpi to call TempRamExit API, and register > MemoryDiscoveredPpi # notify to call FspSiliconInit API. > # > -# Copyright (c) 2014 - 2020, Intel Corporation. All rights reserved. > +# Copyright (c) 2014 - 2021, Intel Corporation. All rights > +reserved.
> # > # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -60,6 +60,7 @@ > gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection ## CONSUMES > gIntelFsp2WrapperTokenSpaceGuid.PcdFsptBaseAddress ## CONSUMES > gIntelFsp2WrapperTokenSpaceGuid.PcdFspMeasurementConfig ## > CONSUMES > + gIntelFsp2WrapperTokenSpaceGuid.PcdFspmUpdDataAddress64 ## > CONSUMES >=20 > [Sources] > FspmWrapperPeim.c > diff --git a/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c > b/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c > index f7459a90b5..ddee9cd029 100644 > --- a/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c > +++ b/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.c > @@ -3,7 +3,7 @@ > register TemporaryRamDonePpi to call TempRamExit API, and register > MemoryDiscoveredPpi > notify to call FspSiliconInit API. >=20 > - Copyright (c) 2014 - 2020, Intel Corporation. All rights reserved.
> + Copyright (c) 2014 - 2021, Intel Corporation. All rights > + reserved.
> SPDX-License-Identifier: BSD-2-Clause-Patent >=20 > **/ > @@ -181,6 +181,25 @@ FspSiliconInitDoneGetFspHobList ( > } > } >=20 > +/** > + Get the FSP S UPD Data address > + > + @return FSP-S UPD Data Address > +**/ > + > +UINTN > +EFIAPI > +GetFspsUpdDataAddress ( > + VOID > + ) > +{ > + if (PcdGet64 (PcdFspsUpdDataAddress64) !=3D 0) { > + return (UINTN) PcdGet64 (PcdFspsUpdDataAddress64); > + } else { > + return (UINTN) PcdGet32 (PcdFspsUpdDataAddress); > + } > +} > + > /** > This function is for FSP dispatch mode to perform post FSP-S process. >=20 > @@ -283,7 +302,7 @@ PeiMemoryDiscoveredNotify ( > return EFI_DEVICE_ERROR; > } >=20 > - if ((PcdGet32 (PcdFspsUpdDataAddress) =3D=3D 0) && (FspsHeaderPtr- > >CfgRegionSize !=3D 0) && (FspsHeaderPtr->CfgRegionOffset !=3D 0)) { > + if ((GetFspsUpdDataAddress () =3D=3D 0) && (FspsHeaderPtr->CfgRegionSi= ze > + !=3D 0) && (FspsHeaderPtr->CfgRegionOffset !=3D 0)) { > // > // Copy default FSP-S UPD data from Flash > // > @@ -292,7 +311,7 @@ PeiMemoryDiscoveredNotify ( > SourceData =3D (UINTN *)((UINTN)FspsHeaderPtr->ImageBase + > (UINTN)FspsHeaderPtr->CfgRegionOffset); > CopyMem (FspsUpdDataPtr, SourceData, (UINTN)FspsHeaderPtr- > >CfgRegionSize); > } else { > - FspsUpdDataPtr =3D (FSPS_UPD_COMMON *)PcdGet32 > (PcdFspsUpdDataAddress); > + FspsUpdDataPtr =3D (FSPS_UPD_COMMON *) GetFspsUpdDataAddress(); > ASSERT (FspsUpdDataPtr !=3D NULL); > } >=20 > diff --git a/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf > b/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf > index aeeca58d6d..da0049a654 100644 > --- a/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf > +++ b/IntelFsp2WrapperPkg/FspsWrapperPeim/FspsWrapperPeim.inf > @@ -6,7 +6,7 @@ > # register TemporaryRamDonePpi to call TempRamExit API, and register > MemoryDiscoveredPpi # notify to call FspSiliconInit API. > # > -# Copyright (c) 2014 - 2020, Intel Corporation. All rights reserved. > +# Copyright (c) 2014 - 2021, Intel Corporation. All rights > +reserved.
> # > # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -68,6 +68,7 @@ > gIntelFsp2WrapperTokenSpaceGuid.PcdFspsUpdDataAddress ## CONSUMES > gIntelFsp2WrapperTokenSpaceGuid.PcdFspModeSelection ## CONSUMES > gIntelFsp2WrapperTokenSpaceGuid.PcdFspMeasurementConfig ## > CONSUMES > + gIntelFsp2WrapperTokenSpaceGuid.PcdFspsUpdDataAddress64 ## > CONSUMES >=20 > [Guids] > gFspHobGuid ## CONSUMES ## HOB > diff --git a/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec > b/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec > index b8dac1b574..a5a8b8a19e 100644 > --- a/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec > +++ b/IntelFsp2WrapperPkg/IntelFsp2WrapperPkg.dec > @@ -121,3 +121,5 @@ > # >=20 > gIntelFsp2WrapperTokenSpaceGuid.PcdFspmUpdDataAddress|0x00000000|UIN > T32|0x50000000 >=20 > gIntelFsp2WrapperTokenSpaceGuid.PcdFspsUpdDataAddress|0x00000000|UINT > 32|0x50000001 > + > + > gIntelFsp2WrapperTokenSpaceGuid.PcdFspmUpdDataAddress64|0x00000000|U > IN > + T64|0x50000002 > + > + > gIntelFsp2WrapperTokenSpaceGuid.PcdFspsUpdDataAddress64|0x00000000|UI > N > + T64|0x50000003 > -- > 2.30.2.windows.1