FvInfoPei.c 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /** @file
  2. Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
  3. SPDX-License-Identifier: BSD-2-Clause-Patent
  4. Module Name:
  5. FvInfoPei.c
  6. Abstract:
  7. EFI 2.0 PEIM to initialize the cache and program for unlock processor
  8. --*/
  9. #include <PiPei.h>
  10. #include <Guid/FirmwareFileSystem2.h>
  11. #include <Ppi/FirmwareVolumeInfo.h>
  12. #include <Library/PcdLib.h>
  13. #include <Library/DebugLib.h>
  14. EFI_PEI_FIRMWARE_VOLUME_INFO_PPI mAddtionFVPpi = {
  15. EFI_FIRMWARE_FILE_SYSTEM2_GUID,
  16. (VOID*)(UINTN)FixedPcdGet32(PcdFlashFvRecovery2Base),
  17. FixedPcdGet32(PcdFlashFvRecovery2Size),
  18. NULL,
  19. NULL
  20. };
  21. EFI_PEI_PPI_DESCRIPTOR mPpiList[] = {
  22. (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),
  23. &gEfiPeiFirmwareVolumeInfoPpiGuid,
  24. &mAddtionFVPpi
  25. };
  26. /**
  27. Add Recovery Fv Info to the Pei Core.
  28. @param PeiServices General purpose services available to every PEIM.
  29. @retval Status
  30. **/
  31. EFI_STATUS
  32. EFIAPI
  33. PeimInitializeFvInfo (
  34. IN EFI_PEI_FILE_HANDLE FileHandle,
  35. IN CONST EFI_PEI_SERVICES **PeiServices
  36. )
  37. //
  38. // GC_TODO: FfsHeader - add argument and description to function comment
  39. //
  40. {
  41. EFI_STATUS Status;
  42. Status = (**PeiServices).InstallPpi (PeiServices, &mPpiList[0]);
  43. ASSERT_EFI_ERROR (Status);
  44. DEBUG ((EFI_D_INFO, "\nFvInfo Add Fv Info\n"));
  45. return Status;
  46. }