[edk2-devel] [edk2-platforms: PATCH v3 6/9] TigerlakeOpenBoardPkg: Use same variable name for FspNvsHob.

Heng Luo heng.luo at intel.com
Tue Oct 12 01:33:53 UTC 2021


Reviewed-by: Heng Luo <heng.luo at intel.com>

> -----Original Message-----
> From: Chiu, Chasel <chasel.chiu at intel.com>
> Sent: Friday, October 8, 2021 2:43 PM
> To: devel at edk2.groups.io
> Cc: Chiu, Chasel <chasel.chiu at intel.com>; Chaganty, Rangasai V
> <rangasai.v.chaganty at intel.com>; Desimone, Nathaniel L
> <nathaniel.l.desimone at intel.com>; Luo, Heng <heng.luo at intel.com>
> Subject: [edk2-platforms: PATCH v3 6/9] TigerlakeOpenBoardPkg: 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: Sai Chaganty <rangasai.v.chaganty at intel.com>
> Cc: Nate DeSimone <nathaniel.l.desimone at intel.com>
> Cc: Heng Luo <heng.luo at intel.com>
> Signed-off-by: Chasel Chiu <chasel.chiu at intel.com>
> ---
> 
> Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLib/
> PeiFspPolicyInitLib.c   | 21 ++++++++++++++++++---
> 
> Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLib/
> PeiFspPolicyInitLib.inf |  1 +
>  Platform/Intel/TigerlakeOpenBoardPkg/TigerlakeURvp/OpenBoardPkg.dsc
> |  3 +++
>  3 files changed, 22 insertions(+), 3 deletions(-)
> 
> diff --git
> a/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLi
> b/PeiFspPolicyInitLib.c
> b/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLi
> b/PeiFspPolicyInitLib.c
> index fc523e93d1..938b74e5d8 100644
> ---
> a/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLi
> b/PeiFspPolicyInitLib.c
> +++ b/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPoli
> +++ cyInitLib/PeiFspPolicyInitLib.c
> @@ -9,7 +9,9 @@
>  #include <Library/FspWrapperApiLib.h> #include <Library/BaseMemoryLib.h>
> #include <Library/MemoryAllocationLib.h>+#include <Library/PeiLib.h> #include
> <Ppi/FspmArchConfigPpi.h>+#include <PolicyUpdateMacro.h>  VOID EFIAPI@@
> -70,9 +72,11 @@ SiliconPolicyDonePreMem(
>  ) {   EFI_STATUS                   Status;+  UINTN                        FspNvsBufferSize;+
> VOID                         *FspNvsBufferPtr; #if FixedPcdGet8(PcdFspModeSelection) ==
> 0-  FSPM_ARCH_CONFIG_PPI                  *FspmArchConfigPpi;-
> EFI_PEI_PPI_DESCRIPTOR                *FspmArchConfigPpiDesc;+
> FSPM_ARCH_CONFIG_PPI         *FspmArchConfigPpi;+  EFI_PEI_PPI_DESCRIPTOR
> *FspmArchConfigPpiDesc;    FspmArchConfigPpi = (FSPM_ARCH_CONFIG_PPI *)
> AllocateZeroPool (sizeof (FSPM_ARCH_CONFIG_PPI));   if (FspmArchConfigPpi ==
> NULL) {@@ -80,7 +84,6 @@ SiliconPolicyDonePreMem(
>      return EFI_OUT_OF_RESOURCES;   }   FspmArchConfigPpi->Revision            =
> 1;-  FspmArchConfigPpi->NvsBufferPtr        = NULL;   FspmArchConfigPpi-
> >BootLoaderTolumSize = 0;    FspmArchConfigPpiDesc =
> (EFI_PEI_PPI_DESCRIPTOR *) AllocateZeroPool (sizeof
> (EFI_PEI_PPI_DESCRIPTOR));@@ -98,6 +101,18 @@ SiliconPolicyDonePreMem(
>    ASSERT_EFI_ERROR (Status); #endif +  //+  // Initialize S3 Data variable
> (S3DataPtr). It may be used for warm and fast boot paths.+  //+  FspNvsBufferPtr
> = NULL;+  FspNvsBufferSize  = 0;+  Status = PeiGetLargeVariable
> (L"FspNvsBuffer", &gFspNvsBufferVariableGuid, &FspNvsBufferPtr,
> &FspNvsBufferSize);+  if (Status == EFI_SUCCESS) {+    DEBUG ((DEBUG_INFO,
> "Get L\"FspNvsBuffer\" gFspNvsBufferVariableGuid - %r\n", Status));+    DEBUG
> ((DEBUG_INFO, "FspNvsBuffer Size - 0x%x\n", FspNvsBufferSize));+
> UPDATE_POLICY (((FSPM_UPD *) FspmUpd)->FspmArchUpd.NvsBufferPtr,
> FspmArchConfigPpi->NvsBufferPtr, FspNvsBufferPtr);+  }+   //   // Install Policy
> Ready PPI   // While installed, RC assumes the Policy is ready and finalized. So
> pleasediff --git
> a/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLi
> b/PeiFspPolicyInitLib.inf
> b/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLi
> b/PeiFspPolicyInitLib.inf
> index 708fbac08f..0236ae45ae 100644
> ---
> a/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPolicyInitLi
> b/PeiFspPolicyInitLib.inf
> +++ b/Platform/Intel/TigerlakeOpenBoardPkg/FspWrapper/Library/PeiFspPoli
> +++ cyInitLib/PeiFspPolicyInitLib.inf
> @@ -181,3 +181,4 @@
>    gTianoLogoGuid                          ## CONSUMES   gCnviConfigGuid
> ## CONSUMES   gHdAudioPreMemConfigGuid                ## CONSUMES+
> gFspNvsBufferVariableGuid               ## CONSUMESdiff --git
> a/Platform/Intel/TigerlakeOpenBoardPkg/TigerlakeURvp/OpenBoardPkg.dsc
> b/Platform/Intel/TigerlakeOpenBoardPkg/TigerlakeURvp/OpenBoardPkg.dsc
> index 1adf634034..451492f984 100644
> --- a/Platform/Intel/TigerlakeOpenBoardPkg/TigerlakeURvp/OpenBoardPkg.dsc
> +++ b/Platform/Intel/TigerlakeOpenBoardPkg/TigerlakeURvp/OpenBoardPkg.ds
> +++ c
> @@ -142,6 +142,9 @@
> 
> GpioCheckConflictLib|$(PLATFORM_SI_PACKAGE)/IpBlock/Gpio/Library/BaseGpi
> oCheckConflictLibNull/BaseGpioCheckConflictLibNull.inf !endif
> +[LibraryClasses.Common.SEC]+
> VariableReadLib|MinPlatformPkg/Library/BaseVariableReadLibNull/BaseVariabl
> eReadLibNull.inf+ [LibraryClasses.IA32.SEC]
> TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLib/Sec
> TestPointCheckLib.inf
> TestPointCheckLib|$(PLATFORM_PACKAGE)/Test/Library/TestPointCheckLibNull
> /TestPointCheckLibNull.inf--
> 2.28.0.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#81788): https://edk2.groups.io/g/devel/message/81788
Mute This Topic: https://groups.io/mt/86164710/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list