Can you please summarize the changes in V2 of the series? Thanks, Michael
> -----Original Message----- > From: Desimone, Nathaniel L <nathaniel.l.desim...@intel.com> > Sent: Thursday, November 21, 2019 12:59 AM > To: devel@edk2.groups.io > Cc: Chiu, Chasel <chasel.c...@intel.com>; Kubacki, Michael A > <michael.a.kuba...@intel.com>; Chaganty, Rangasai V > <rangasai.v.chaga...@intel.com>; Gao, Liming <liming....@intel.com>; > Oram, Isaac W <isaac.w.o...@intel.com>; Jeremy Soller > <jer...@system76.com> > Subject: [edk2-platforms] [PATCH V2 00/14] SecFspWrapperPlatformSecLib > Cleanup > > This patch series cleans up two outstanding problems with > SecFspWrapperPlatformSecLib: > > 1. There are several copies of SecFspWrapperPlatformSecLib > thoughout the codebase, this patch series consolidates > the various implementations down to a single implementation > contained in MinPlatformPkg. > > The WhiskeylakeOpenBoardPkg implementation of > SecFspWrapperPlatformSecLib diverged from MinPlatformPkg by halting the > TCO watch dog timer early in SEC instead of early in PEI. Analysis of this > change has shown that it is unnessesary, so this patch series move that code > back to PEI. > > The KabylakeOpenBoardPkg implementation of > SecFspWrapperPlatformSecLib contains support for FSP dispatch mode. This > was integrated into MinPlatformPkg, eliminating the need for > KabylakeOpenBoardPkg version. > > 2. Due to EFI_PEI_TEMPORARY_RAM_DONE_PPI being implemented > by SecMain, the BoardInitLib event callbacks for > BeforeTempRamExit() and AfterTempRamExit() are currently > linked by PlatformSecLib. Linking BoardInitLib in SEC > phase places a lot of restrictions on how BoardInitLib > is implemented. To mitigate this, the BoardInitLib calls > have been moved to a PlatformInitPreMem. > PlatformInitPreMem is invoked by PlatformSecLib using the > new PLATFORM_INIT_TEMP_RAM_EXIT_PPI, which then invokes > the BoardInitLib event callbacks. > > This patch series also includes some general cleanup. > > Cc: Chasel Chiu <chasel.c...@intel.com> > Cc: Michael Kubacki <michael.a.kuba...@intel.com> > Cc: Sai Chaganty <rangasai.v.chaga...@intel.com> > Cc: Liming Gao <liming....@intel.com> > Cc: Isaac W Oram <isaac.w.o...@intel.com> > Cc: Jeremy Soller <jer...@system76.com> > Signed-off-by: Nate DeSimone <nathaniel.l.desim...@intel.com> > > Nate DeSimone (14): > KabylakeSiliconPkg: Change MODULE_TYPE of SiliconInitLib to PEIM > KabylakeOpenBoardPkg: Update location of SiliconInitLib > KabylakeSiliconPkg: Cleanup old comments > CoffeeLakeSiliconPkg: Move TcoWdtHob.h > CoffeeLakeSiliconPkg: TcoWdtHob.h Cleanup > CoffeelakeSiliconPkg: Add SiliconInitLib > WhiskeylakeOpenBoardPkg: Add SiliconInitLib APIs to BoardInitLib > WhiskeylakeOpenBoardPkg: Whitespace cleanup in BoardInitLib > WhiskeylakeOpenBoardPkg: Remove SecFspWrapperPlatformSecLib > override > MinPlatformPkg: FSP Dispatch Mode Support for PlatformSecLib > MinPlatformPkg: Coding style cleanups in MinPlatformPkg.dec > KabylakeOpenBoardPkg: Add support for > PcdFspDispatchModeUseFspPeiMain > KabylakeOpenBoardPkg: Remove SecFspWrapperPlatformSecLib override > MinPlatformPkg: Remove BoardInitLib dependency from PlatformSecLib > > .../FspWrapperPlatformSecLib.c | 186 --------- > .../SecFspWrapperPlatformSecLib/FsptCoreUpd.h | 40 -- > .../SecFspWrapperPlatformSecLib/Ia32/Fsp.h | 42 -- > .../Ia32/PeiCoreEntry.nasm | 130 ------- > .../Ia32/SecEntry.nasm | 361 ------------------ > .../Ia32/Stack.nasm | 72 ---- > .../PlatformInit.c | 47 --- > .../SecFspWrapperPlatformSecLib.inf | 97 ----- > .../SecGetPerformance.c | 89 ----- > .../SecPlatformInformation.c | 78 ---- > .../SecRamInitData.c | 36 -- > .../SecTempRamDone.c | 73 ---- > .../GalagoPro3/OpenBoardPkg.dsc | 4 +- > .../KabylakeRvp3/OpenBoardPkg.dsc | 4 +- > .../KabylakeRvp3/OpenBoardPkg.fdf | 5 +- > .../KabylakeRvp3/OpenBoardPkgPcd.dsc | 20 + > .../FspWrapperPlatformSecLib.c | 34 +- > .../SecFspWrapperPlatformSecLib.inf | 9 +- > .../SecTempRamDone.c | 72 +++- > .../Include/Ppi/PlatformInitTempRamExitPpi.h | 55 +++ > .../Intel/MinPlatformPkg/MinPlatformPkg.dec | 313 ++++++++------- > .../PlatformInitPei/PlatformInitPreMem.c | 76 +++- > .../PlatformInitPei/PlatformInitPreMem.inf | 1 + > .../FspWrapperPlatformSecLib.c | 163 -------- > .../SecFspWrapperPlatformSecLib/FsptCoreUpd.h | 40 -- > .../SecFspWrapperPlatformSecLib/Ia32/Fsp.h | 43 --- > .../Ia32/PeiCoreEntry.nasm | 130 ------- > .../Ia32/SecEntry.nasm | 361 ------------------ > .../Ia32/Stack.nasm | 72 ---- > .../PlatformInit.c | 54 --- > .../SecFspWrapperPlatformSecLib.inf | 97 ----- > .../SecGetPerformance.c | 90 ----- > .../SecPlatformInformation.c | 79 ---- > .../SecRamInitData.c | 37 -- > .../SecTempRamDone.c | 48 --- > .../Include/Guid/TcoWdtHob.h | 41 -- > .../BoardInitLib/PeiBoardInitPostMemLib.inf | 1 + > .../BoardInitLib/PeiBoardInitPreMemLib.inf | 1 + > .../PeiMultiBoardInitPostMemLib.inf | 1 + > .../PeiMultiBoardInitPreMemLib.inf | 2 +- > .../PeiWhiskeylakeURvpInitPostMemLib.c | 191 +++++---- > .../PeiWhiskeylakeURvpInitPreMemLib.c | 346 +++++++---------- > .../BoardInitLib/WhiskeylakeURvpInit.h | 1 + > .../WhiskeylakeURvp/OpenBoardPkg.dsc | 7 +- > .../Include/Guid/TcoWdtHob.h | 22 ++ > .../Include/Library/SiliconInitLib.h | 28 ++ > .../PeiSiliconInitLib/PeiSiliconInitLib.inf | 46 +++ > .../Library/PeiSiliconInitLib/SiliconInit.c | 19 + > .../PeiSiliconInitLib/SiliconInitPreMem.c | 109 ++++++ > .../PeiSiliconInitLib.inf} | 5 +- > .../SiliconInit.c | 3 + > .../SiliconInitPreMem.c | 4 +- > 52 files changed, 890 insertions(+), 2995 deletions(-) delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/FspWrapperPlatformSecLib.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/FsptCoreUpd.h > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/Fsp.h > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/PeiCoreEntry.nasm > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/SecEntry.nasm > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/Ia32/Stack.nasm > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/PlatformInit.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecFspWrapperPlatformSecLib.inf > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecGetPerformance.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecPlatformInformation.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecRamInitData.c > delete mode 100644 > Platform/Intel/KabylakeOpenBoardPkg/FspWrapper/Library/SecFspWrapper > PlatformSecLib/SecTempRamDone.c > create mode 100644 > Platform/Intel/MinPlatformPkg/Include/Ppi/PlatformInitTempRamExitPpi.h > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/FspWrapperPlatformSecLib.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/FsptCoreUpd.h > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/Fsp.h > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/PeiCoreEntry.nasm > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/SecEntry.nasm > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/Ia32/Stack.nasm > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/PlatformInit.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecFspWrapperPlatformSecLib.inf > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecGetPerformance.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecPlatformInformation.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecRamInitData.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/SecFspWra > pperPlatformSecLib/SecTempRamDone.c > delete mode 100644 > Platform/Intel/WhiskeylakeOpenBoardPkg/Include/Guid/TcoWdtHob.h > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Include/Guid/TcoWdtHob.h > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Include/Library/SiliconInitLib.h > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/PeiSiliconInitLib.in > f > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInit.c > create mode 100644 > Silicon/Intel/CoffeelakeSiliconPkg/Library/PeiSiliconInitLib/SiliconInitPreMem > .c > rename > Silicon/Intel/KabylakeSiliconPkg/Library/{SiliconInitLib/SiliconInitLib.inf => > PeiSiliconInitLib/PeiSiliconInitLib.inf} (86%) rename > Silicon/Intel/KabylakeSiliconPkg/Library/{SiliconInitLib => > PeiSiliconInitLib}/SiliconInit.c (95%) rename > Silicon/Intel/KabylakeSiliconPkg/Library/{SiliconInitLib => > PeiSiliconInitLib}/SiliconInitPreMem.c (95%) > > -- > 2.24.0.windows.2 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#51107): https://edk2.groups.io/g/devel/message/51107 Mute This Topic: https://groups.io/mt/61073533/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-