From nobody Mon Feb 9 07:22:37 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+51414+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+51414+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1574903290; cv=none; d=zohomail.com; s=zohoarc; b=AjtEM9oqvKvNsQ1l2hwrNM4LIk9VUdztM2VUFokC0XAkOPnJaeQ1R2LhWdz5+0jJh+61pawam5Alh92AtvP+nty1HY2I/vluHe9DGhldWmFIcGEAQLBriqDXUvHBzW8xAVcgwpSzzEs06sR03KU9FB+M3zDjEWrgz958wuESTjc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1574903290; h=Cc:Date:From:In-Reply-To:List-Id:List-Unsubscribe:Message-ID:Reply-To:References:Sender:Subject:To; bh=iPOsxF7X1bw8GDSVbgDBIqbjfnZgrx985PqzQ8r+BJo=; b=G6PD3eYlsIQOialhdhAHIXRJjPAFR4yI5SQuj72Zc/veQJIgmBz+fa1zUqJqXssTQ1c3Wu48eRzZLJE/14/cleCYjjyYqQknKsydS2tJQt6qkuQdAgKyceV50iEmollE3ww+7auQS7sdZPcrl3MwvB3MMHAs1yH/1VKPWcaC0yE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+51414+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1574903290994480.3201255072181; Wed, 27 Nov 2019 17:08:10 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id v7y4YY1788612x0TjI7vp62f; Wed, 27 Nov 2019 17:08:10 -0800 X-Received: from mga02.intel.com (mga02.intel.com []) by mx.groups.io with SMTP id smtpd.web09.956.1574903281826413616 for ; Wed, 27 Nov 2019 17:08:09 -0800 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False X-Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Nov 2019 17:08:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,251,1571727600"; d="scan'208";a="383668016" X-Received: from makuback-desk1.amr.corp.intel.com ([10.7.159.162]) by orsmga005.jf.intel.com with ESMTP; 27 Nov 2019 17:08:09 -0800 From: "Kubacki, Michael A" To: devel@edk2.groups.io Cc: Chasel Chiu , Nate DeSimone , Liming Gao Subject: [edk2-devel] [edk2-platforms][PATCH V2 29/47] MinPlatformPkg: Add FvAdvancedPreMemory Date: Wed, 27 Nov 2019 17:05:56 -0800 Message-Id: <20191128010614.43628-30-michael.a.kubacki@intel.com> In-Reply-To: <20191128010614.43628-1-michael.a.kubacki@intel.com> References: <20191128010614.43628-1-michael.a.kubacki@intel.com> Precedence: Bulk List-Unsubscribe: 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,michael.a.kubacki@intel.com X-Gm-Message-State: Z5iFzZobBwTsR0pka9xi9KJtx1787277AA= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1574903290; bh=oqfjczZ63TJitfjECJJGuuFUpwqMbHQvaZ51KmY24nY=; h=Cc:Date:From:Reply-To:Subject:To; b=Le3qAKcHYk78hO4TKzgtFq7UOHzlCAHHt7AbgTJhu7a6ls1e9J1BBucVsITZz+XplfT j1iwzWXozuiD830yei6z9A1c8cL35KRw0Uoo06Ecdn2QjvMlr7mdF5nbrifx93u81YSwr hv71jUEeQJQ4reTays634X8xVZqI1Cm6Khg= X-ZohoMail-DKIM: pass (identity @groups.io) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" This change adds a new firmware volume to MinPlatformPkg called FvAdvancedPreMemory. This firmware volume is used to hold advanced feature modules that must be available in pre-memory. Previously, these modules were kept as an uncompressed child FV in FvAdvanced. However, in memory constrained environments before permanent memory is initialized, it is preferable to have a dedicated firmware volume that can simply be installed as a standalone firmware volume to reduce the need for creating FV HOBs for other post-memory advanced features if they are not needed and to simplify the FV layout and FV installation process. Cc: Chasel Chiu Cc: Nate DeSimone Cc: Liming Gao Signed-off-by: Michael Kubacki Reviewed-by: Chasel Chiu --- Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec = | 3 ++ Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiRepor= tFvLib.inf | 42 ++++++++++---------- Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/PeiRepor= tFvLib.c | 24 ++++++++--- 3 files changed, 44 insertions(+), 25 deletions(-) diff --git a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec b/Platform/In= tel/MinPlatformPkg/MinPlatformPkg.dec index 6a765d689d..21013cc87c 100644 --- a/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec +++ b/Platform/Intel/MinPlatformPkg/MinPlatformPkg.dec @@ -168,6 +168,9 @@ SetCacheMtrrLib|Include/Library/SetCacheMtrrLib.h gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityBase|0x00000000|UINT32|0= x20000010 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize|0x00000000|UINT32|0= x20000011 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityOffset|0x00000000|UINT32= |0x20000012 + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryBase|0x00000000= |UINT32|0x2000002D + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize|0x00000000= |UINT32|0x2000002E + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset|0x000000= 00|UINT32|0x2000002F gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedBase|0x00000000|UINT32|0= x20000013 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize|0x00000000|UINT32|0= x20000014 gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedOffset|0x00000000|UINT32= |0x20000015 diff --git a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFv= Lib/PeiReportFvLib.inf b/Platform/Intel/MinPlatformPkg/PlatformInit/Library= /PeiReportFvLib/PeiReportFvLib.inf index 4d96c9cf31..1ce3034fcc 100644 --- a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/Pei= ReportFvLib.inf +++ b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/Pei= ReportFvLib.inf @@ -1,7 +1,7 @@ ### @file # Component information file for the Report Firmware Volume (FV) library. # -# Copyright (c) 2018, Intel Corporation. All rights reserved.
+# Copyright (c) 2018 - 2019, Intel Corporation. All rights reserved.
# # SPDX-License-Identifier: BSD-2-Clause-Patent # @@ -30,22 +30,24 @@ PeiReportFvLib.c =20 [Pcd] - gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedBase ## CONSUMES - gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize ## CONSUMES + gMinPlatformPkgTokenSpaceGuid.PcdFspWrapperBootMode ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaBaseAddress ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashAreaSize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspUSize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecurityBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvSecuritySize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedBase ## CONSU= MES + gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedSize ## CONSU= MES diff --git a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFv= Lib/PeiReportFvLib.c b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/P= eiReportFvLib/PeiReportFvLib.c index 6e49b1239d..b61587f6e3 100644 --- a/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/Pei= ReportFvLib.c +++ b/Platform/Intel/MinPlatformPkg/PlatformInit/Library/PeiReportFvLib/Pei= ReportFvLib.c @@ -1,7 +1,7 @@ /** @file Source code file for Report Firmware Volume (FV) library =20 -Copyright (c) 2018, Intel Corporation. All rights reserved.
+Copyright (c) 2018 - 2019, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent =20 **/ @@ -40,11 +40,16 @@ ReportPreMemFv ( NULL, 0 ); - DEBUG ((DEBUG_INFO, "Install FlashFvAdvanced - 0x%x, 0x%x\n", PcdGet32 (= PcdFlashFvAdvancedBase), PcdGet32 (PcdFlashFvAdvancedSize))); + DEBUG (( + DEBUG_INFO, + "Install FlashFvAdvancedPreMemory - 0x%x, 0x%x\n", + PcdGet32 (PcdFlashFvAdvancedPreMemoryBase), + PcdGet32 (PcdFlashFvAdvancedPreMemorySize) + )); PeiServicesInstallFvInfo2Ppi ( - &(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvanced= Base))->FileSystemGuid), - (VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedBase), - PcdGet32 (PcdFlashFvAdvancedSize), + &(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvanced= PreMemoryBase))->FileSystemGuid), + (VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedPreMemoryBase), + PcdGet32 (PcdFlashFvAdvancedPreMemorySize), NULL, NULL, 0 @@ -117,6 +122,15 @@ ReportPostMemFv ( NULL, 0 ); + DEBUG ((DEBUG_INFO, "Install FlashFvAdvanced - 0x%x, 0x%x\n", PcdGet32= (PcdFlashFvAdvancedBase), PcdGet32 (PcdFlashFvAdvancedSize))); + PeiServicesInstallFvInfo2Ppi ( + &(((EFI_FIRMWARE_VOLUME_HEADER *) (UINTN) PcdGet32 (PcdFlashFvAdvanc= edBase))->FileSystemGuid), + (VOID *) (UINTN) PcdGet32 (PcdFlashFvAdvancedBase), + PcdGet32 (PcdFlashFvAdvancedSize), + NULL, + NULL, + 0 + ); } =20 // --=20 2.16.2.windows.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 (#51414): https://edk2.groups.io/g/devel/message/51414 Mute This Topic: https://groups.io/mt/63459363/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-