Reviewed-by: Nate DeSimone <nathaniel.l.desim...@intel.com> > -----Original Message----- > From: Chiu, Chasel <chasel.c...@intel.com> > Sent: Thursday, October 7, 2021 11:43 PM > To: devel@edk2.groups.io > Cc: Chiu, Chasel <chasel.c...@intel.com>; Desimone, Nathaniel L > <nathaniel.l.desim...@intel.com> > Subject: [edk2-platforms: PATCH v3 7/9] WhiskeylakeOpenBoardPkg: Use > same variable name for FspNvsHob. > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3678 > > To simplify the implementation the variable Name/GUID has been changed > to "FspNvsBuffer" and gFspNvsBufferVariableGuid regardless it stores the > data from FSP_NON_VOLATILE_STORAGE_HOB2 or > FSP_NON_VOLATILE_STORAGE_HOB. > > Cc: Nate DeSimone <nathaniel.l.desim...@intel.com> > Signed-off-by: Chasel Chiu <chasel.c...@intel.com> > --- > > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSiliconPo > licyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c | 63 > ++++++++++++--- > ------------------------------------------------ > > Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Library/ > PeiSiliconPolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c | 63 > ++++++++++++--------------------------------------------------- > > Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSiliconPo > licyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf | 5 ++--- > > Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Library/ > PeiSiliconPolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf | 4 ++-- > > Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Include/Fdf/FlashMa > pInclude.fdf | 18 > +++++++++--------- > Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc > | 3 +++ > > Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoardPk > g.dsc | 3 +++ > 7 files changed, 43 insertions(+), 116 deletions(-) > > diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilicon > PolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > b/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilicon > PolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > index a341a58930..ab35bc3f8f 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilicon > PolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilic > +++ onPolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > @@ -2,7 +2,7 @@ > Implementation of Fsp Misc UPD Initialization. - Copyright (c) 2019, > Intel > Corporation. All rights reserved.<BR>+ Copyright (c) 2019 - 2021, Intel > Corporation. All rights reserved.<BR> SPDX-License-Identifier: BSD-2- > Clause-Patent **/ @@ -17,11 +17,9 @@ > #include <FspmUpd.h> #include <FspsUpd.h> -#include > <Library/MemoryAllocationLib.h> #include <Library/DebugLib.h> #include > <Library/DebugPrintErrorLevelLib.h> #include <Library/PciLib.h>-#include > <Ppi/ReadOnlyVariable2.h> #include <Guid/MemoryOverwriteControl.h> > #include <PchAccess.h> @@ -44,55 +42,18 @@ > PeiFspMiscUpdUpdatePreMem ( > ) { EFI_STATUS Status;- > EFI_PEI_READ_ONLY_VARIABLE2_PPI > *VariableServices;- UINTN VariableSize;- VOID > *MemorySavedData;-- Status = PeiServicesLocatePpi (- > &gEfiPeiReadOnlyVariable2PpiGuid,- 0,- NULL,- > (VOID **) > &VariableServices- );- if (EFI_ERROR (Status)) {- > ASSERT_EFI_ERROR > (Status);- return Status;- }-- VariableSize = 0;- MemorySavedData = > NULL;- > Status = VariableServices->GetVariable (- > VariableServices,- > L"MemoryConfig",- > &gFspNonVolatileStorageHobGuid,- > NULL,- &VariableSize,- > MemorySavedData- > );- if (Status == EFI_BUFFER_TOO_SMALL) {- MemorySavedData = > AllocatePool (VariableSize);- if (MemorySavedData == NULL) {- ASSERT > (MemorySavedData != NULL);- return EFI_OUT_OF_RESOURCES;- }-- > DEBUG ((DEBUG_INFO, "VariableSize is 0x%x\n", VariableSize));- Status = > VariableServices->GetVariable (- > VariableServices,- > L"MemoryConfig",- > &gFspNonVolatileStorageHobGuid,- > NULL,- &VariableSize,- > MemorySavedData- > );- if (Status == EFI_SUCCESS) {- FspmUpd->FspmArchUpd.NvsBufferPtr > = MemorySavedData;- } else {- DEBUG ((DEBUG_ERROR, "Fail to retrieve > Variable:\"MemoryConfig\" gMemoryConfigVariableGuid, Status = %r\n", > Status));- ASSERT_EFI_ERROR (Status);- }+ UINTN > FspNvsBufferSize;+ VOID *FspNvsBufferPtr;++ > FspNvsBufferPtr = NULL;+ FspNvsBufferSize = 0;+ Status = > PeiGetLargeVariable (L"FspNvsBuffer", &gFspNvsBufferVariableGuid, > &FspNvsBufferPtr, &FspNvsBufferSize);+ if (Status == EFI_SUCCESS) {+ > FspmUpd->FspmArchUpd.NvsBufferPtr = FspNvsBufferPtr;+ } else {+ > DEBUG ((DEBUG_INFO, "Cannot create FSP NVS Buffer, UEFI variable does > not exist (this is likely a first boot)\n"));+ FspmUpd- > >FspmArchUpd.NvsBufferPtr = NULL; }- FspmUpd- > >FspmArchUpd.NvsBufferPtr = MemorySavedData; return EFI_SUCCESS; > }diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y/PeiSiliconPolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y/PeiSiliconPolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > index 145deb5de3..381ef232ea 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y/PeiSiliconPolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y > +++ /PeiSiliconPolicyUpdateLibFsp/PeiFspMiscUpdUpdateLib.c > @@ -2,7 +2,7 @@ > Implementation of Fsp Misc UPD Initialization. - Copyright (c) 2020, > Intel > Corporation. All rights reserved.<BR>+ Copyright (c) 2020 - 2021, Intel > Corporation. All rights reserved.<BR> SPDX-License-Identifier: BSD-2- > Clause-Patent **/ @@ -18,11 +18,9 @@ > #include <FspmUpd.h> #include <FspsUpd.h> -#include > <Library/MemoryAllocationLib.h> #include <Library/DebugLib.h> #include > <Library/DebugPrintErrorLevelLib.h> #include <Library/PciLib.h>-#include > <Ppi/ReadOnlyVariable2.h> #include <Guid/MemoryOverwriteControl.h> > #include <PchAccess.h> #include <Platform.h>@@ -46,54 +44,17 @@ > PeiFspMiscUpdUpdatePreMem ( > ) { EFI_STATUS Status;- > EFI_PEI_READ_ONLY_VARIABLE2_PPI > *VariableServices;- UINTN VariableSize;- VOID > *MemorySavedData;-- Status = PeiServicesLocatePpi (- > &gEfiPeiReadOnlyVariable2PpiGuid,- 0,- NULL,- > (VOID **) > &VariableServices- );- if (EFI_ERROR (Status)) {- > ASSERT_EFI_ERROR > (Status);- return Status;- }-- VariableSize = 0;- MemorySavedData = > NULL;- > Status = VariableServices->GetVariable (- > VariableServices,- > L"MemoryConfig",- > &gFspNonVolatileStorageHobGuid,- > NULL,- &VariableSize,- > MemorySavedData- > );- if (Status == EFI_BUFFER_TOO_SMALL) {- MemorySavedData = > AllocatePool (VariableSize);- if (MemorySavedData == NULL) {- ASSERT > (MemorySavedData != NULL);- return EFI_OUT_OF_RESOURCES;- }-- > DEBUG ((DEBUG_INFO, "VariableSize is 0x%x\n", VariableSize));- Status = > VariableServices->GetVariable (- > VariableServices,- > L"MemoryConfig",- > &gFspNonVolatileStorageHobGuid,- > NULL,- &VariableSize,- > MemorySavedData- > );- if (Status == EFI_SUCCESS) {- FspmUpd->FspmArchUpd.NvsBufferPtr > = MemorySavedData;- } else {- FspmUpd->FspmArchUpd.NvsBufferPtr = > NULL;- DEBUG ((DEBUG_ERROR, "Fail to retrieve > Variable:\"MemoryConfig\" gMemoryConfigVariableGuid, Status = %r\n", > Status));- ASSERT_EFI_ERROR (Status);- }+ UINTN > FspNvsBufferSize;+ VOID *FspNvsBufferPtr;++ > FspNvsBufferPtr = NULL;+ FspNvsBufferSize = 0;+ Status = > PeiGetLargeVariable (L"FspNvsBuffer", &gFspNvsBufferVariableGuid, > &FspNvsBufferPtr, &FspNvsBufferSize);+ if (Status == EFI_SUCCESS) {+ > FspmUpd->FspmArchUpd.NvsBufferPtr = FspNvsBufferPtr;+ } else {+ > DEBUG ((DEBUG_INFO, "Cannot create FSP NVS Buffer, UEFI variable does > not exist (this is likely a first boot)\n"));+ FspmUpd- > >FspmArchUpd.NvsBufferPtr = NULL; } FspmUpd->FspmConfig.TsegSize > = FixedPcdGet32 (PcdTsegSize);diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilicon > PolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilicon > PolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > index 2c90d0cb94..362dc2c995 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilicon > PolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/FspWrapper/Library/PeiSilic > +++ onPolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > @@ -2,7 +2,7 @@ > # Provide FSP wrapper platform related function. # #-# Copyright (c) 2019 - > 2020 Intel Corporation. All rights reserved.<BR>+# Copyright (c) 2019 - 2021 > Intel Corporation. All rights reserved.<BR> # # SPDX-License-Identifier: BSD- > 2-Clause-Patent #@@ -82,7 +82,6 @@ > PchInfoLib PchHsioLib PchPcieRpLib- MemoryAllocationLib > DebugPrintErrorLevelLib SiPolicyLib PchGbeLib@@ -132,7 +131,7 @@ > gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdMrcSpdAddressTable3 > [Guids]- gFspNonVolatileStorageHobGuid ## CONSUMES+ > gFspNvsBufferVariableGuid ## CONSUMES gTianoLogoGuid > ## CONSUMES gEfiMemoryOverwriteControlDataGuid diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y/PeiSiliconPolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y/PeiSiliconPolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > index 529c2f1253..1a664b1327 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y/PeiSiliconPolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/FspWrapper/Librar > y > +++ /PeiSiliconPolicyUpdateLibFsp/PeiSiliconPolicyUpdateLibFsp.inf > @@ -2,7 +2,7 @@ > # FSP silicon policy updates for the Up Xtreme board. # #-# Copyright (c) > 2020, Intel Corporation. All rights reserved.<BR>+# Copyright (c) 2020 - > 2021, > Intel Corporation. All rights reserved.<BR> # # SPDX-License-Identifier: BSD- > 2-Clause-Patent #@@ -136,7 +136,7 @@ > gWhiskeylakeOpenBoardPkgTokenSpaceGuid.PcdBoardBomId [Guids]- > gFspNonVolatileStorageHobGuid ## CONSUMES+ > gFspNvsBufferVariableGuid ## CONSUMES gTianoLogoGuid > ## CONSUMES gEfiMemoryOverwriteControlDataGuid diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Include/Fdf/Flash > MapInclude.fdf > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Include/Fdf/Flash > MapInclude.fdf > index f7aa730ae7..698efce248 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Include/Fdf/Flash > MapInclude.fdf > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/Include/Fdf/Flash > M > +++ apInclude.fdf > @@ -2,7 +2,7 @@ > # Flash map for the UpXtreme Board. # #-# Copyright (c) 2020, Intel > Corporation. All rights reserved.<BR>+# Copyright (c) 2020 - 2021, Intel > Corporation. All rights reserved.<BR> # # SPDX-License-Identifier: BSD-2- > Clause-Patent #@@ -35,16 +35,16 @@ SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvOsBootSize = > 0x00090000 > SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootOffset = > 0x00190000 # Flash addr (0xFFAE0000) SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvUefiBootSize = > 0x00190000 # SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemoryOffset = > 0x00320000 # Flash addr (0xFFC70000)-SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize = > 0x00170000 #-SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset > = 0x00490000 # Flash addr (0xFFDE0000)+SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPostMemorySize = > 0x00160000 #+SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSOffset > = 0x00480000 # Flash addr (0xFFDD0000) SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspSSize = 0x00070000 > #-SET gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset = > 0x00500000 # Flash addr (0xFFE50000)+SET > gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvOffset = 0x004F0000 > # > Flash addr (0xFFE40000) SET > gSiPkgTokenSpaceGuid.PcdFlashMicrocodeFvSize = 0x00050000 > #- > SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset = > 0x00550000 # Flash addr (0xFFEA0000)+SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMOffset = > 0x00540000 # Flash addr (0xFFE90000) SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspMSize = 0x000EA000 > #-SET gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset = > 0x0063A000 # Flash addr (0xFFF8A000)+SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTOffset = > 0x0062A000 # Flash addr (0xFFF7A000) SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvFspTSize = 0x00006000 > #-SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset = > 0x00640000 # Flash addr (0xFFF90000)+SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemoryOffset = > 0x00630000 # Flash addr (0xFFF80000) SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvAdvancedPreMemorySize = > 0x00010000 #-SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemoryOffset = > 0x00650000 # Flash addr (0xFFFA0000)-SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemorySize = > 0x00060000 #+SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemoryOffset = > 0x00640000 # Flash addr (0xFFF90000)+SET > gMinPlatformPkgTokenSpaceGuid.PcdFlashFvPreMemorySize = > 0x00070000 #diff --git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc > index ee2aedd978..9d08dc3fe4 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/UpXtreme/OpenBoardPkg.dsc > @@ -142,6 +142,9 @@ > ####################################### > PlatformHookLib|$(PROJECT)/Library/BasePlatformHookLib/BasePlatformHo > okLib.inf +[LibraryClasses.Common.SEC]+ > VariableReadLib|MinPlatformPkg/Library/BaseVariableReadLibNull/BaseVari > ableReadLibNull.inf+ [LibraryClasses.IA32.SEC] > ####################################### # Platform Packagediff - > -git > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.dsc > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.dsc > index b69cc8deb0..8d25b818ee 100644 > --- > a/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pkg.dsc > +++ > b/Platform/Intel/WhiskeylakeOpenBoardPkg/WhiskeylakeURvp/OpenBoard > Pk > +++ g.dsc > @@ -142,6 +142,9 @@ > ####################################### > PlatformHookLib|$(PROJECT)/Library/BasePlatformHookLib/BasePlatformHo > okLib.inf +[LibraryClasses.Common.SEC]+ > VariableReadLib|MinPlatformPkg/Library/BaseVariableReadLibNull/BaseVari > ableReadLibNull.inf+ [LibraryClasses.IA32.SEC] > ####################################### # Platform Package-- > 2.28.0.windows.1
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#81774): https://edk2.groups.io/g/devel/message/81774 Mute This Topic: https://groups.io/mt/86164711/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-