From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.115; helo=mga14.intel.com; envelope-from=star.zeng@intel.com; receiver=edk2-devel@lists.01.org Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id D39C62119EBD8 for ; Mon, 17 Dec 2018 22:08:09 -0800 (PST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Dec 2018 22:08:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,367,1539673200"; d="scan'208";a="284368736" Received: from shwdeopenpsi068.ccr.corp.intel.com ([10.239.158.46]) by orsmga005.jf.intel.com with ESMTP; 17 Dec 2018 22:08:08 -0800 From: Star Zeng To: edk2-devel@lists.01.org Cc: Star Zeng Date: Tue, 18 Dec 2018 14:07:59 +0800 Message-Id: <1545113286-49760-1-git-send-email-star.zeng@intel.com> X-Mailer: git-send-email 2.7.0.windows.1 Subject: [PATCH V2 0/7] Remove PcdPeiCoreMaxXXX PCDs X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Dec 2018 06:08:10 -0000 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1405 V2: 1. Pick up some RB tags. 2. Handle the great comment from Jian for patch 1/7 at https://lists.01.org/pipermail/edk2-devel/2018-December/034121.html. Repo: git@github.com:lzeng14/edk2.git Branch: RemovePcdPeiCoreMaxXXX_V2 Test done: Make sure the Private->CurrentFvFileHandles content could be same. V1: Repo: git@github.com:lzeng14/edk2.git Branch: RemovePcdPeiCoreMaxXXX Background as below. Problem: As static configuration from the PCDs, the binary PeiCore (for example in FSP binary with dispatch mode) could not predict how many FVs, Files or PPIs for different platforms. Burden: Platform developers need configure the PCDs accordingly for different platforms. To solve the problem and remove the burden, we can update code to remove the using of PcdPeiCoreMaxFvSupported, PcdPeiCoreMaxPeimPerFv and PcdPeiCoreMaxPpiSupported by extending buffer dynamically for FV, File and PPI management. Test done: Build code with VS2012, VS2015 and GCC49. Boot Nt32, Ovmf (including 32, 3264 and 64 with no SMM) to UEFI SHELL. Boot some internal platforms (including a platform with dispatch mode FSP binary) to UEFI SHELL and Windows. More test will be welcome and appreciated. :) Patches to update edk2-platforms Repo will be sent out separately. Star Zeng (7): MdeModulePkg PeiCore: Remove the using of PcdPeiCoreMaxPeimPerFv SecurityPkg Tcg(2)Pei: Remove the using of PcdPeiCoreMaxFvSupported MdeModulePkg PeiCore: Remove the using of PcdPeiCoreMaxFvSupported MdeModulePkg PeiCore: Remove the using of PcdPeiCoreMaxPpiSupported OvmfPkg: Remove PcdPeiCoreMaxXXX PCDs' statement Vlv2TbltDevicePkg: Remove PcdPeiCoreMaxXXX PCDs' statement MdeModulePkg: Remove PcdPeiCoreMaxXXX PCDs MdeModulePkg/Core/Pei/Dispatcher/Dispatcher.c | 181 +++++++------ MdeModulePkg/Core/Pei/FwVol/FwVol.c | 67 ++++- MdeModulePkg/Core/Pei/PeiMain.h | 96 +++++-- MdeModulePkg/Core/Pei/PeiMain.inf | 3 - MdeModulePkg/Core/Pei/PeiMain/PeiMain.c | 94 +++---- MdeModulePkg/Core/Pei/Ppi/Ppi.c | 355 ++++++++++++++------------ MdeModulePkg/MdeModulePkg.dec | 13 - MdeModulePkg/MdeModulePkg.uni | 12 - OvmfPkg/OvmfPkgIa32.dsc | 2 - OvmfPkg/OvmfPkgIa32X64.dsc | 2 - OvmfPkg/OvmfPkgX64.dsc | 2 - SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c | 59 +++-- SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf | 1 - SecurityPkg/Tcg/TcgPei/TcgPei.c | 59 +++-- SecurityPkg/Tcg/TcgPei/TcgPei.inf | 1 - Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc | 2 - Vlv2TbltDevicePkg/PlatformPkgIA32.dsc | 2 - Vlv2TbltDevicePkg/PlatformPkgX64.dsc | 2 - 18 files changed, 539 insertions(+), 414 deletions(-) -- 2.7.0.windows.1