PrePi.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /** @file
  2. Library that helps implement monolithic PEI (i.e. PEI part of SEC)
  3. Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
  4. SPDX-License-Identifier: BSD-2-Clause-Patent
  5. **/
  6. #ifndef _PI_PEI_H_
  7. #define _PI_PEI_H_
  8. #include <PiPei.h>
  9. #include <Library/BaseLib.h>
  10. #include <Library/PrePiLib.h>
  11. #include <Library/PcdLib.h>
  12. #include <Library/DebugLib.h>
  13. #include <Library/BaseMemoryLib.h>
  14. #include <Library/UefiDecompressLib.h>
  15. #include <Library/PeCoffLib.h>
  16. #include <Library/CacheMaintenanceLib.h>
  17. #include <Library/MemoryAllocationLib.h>
  18. #include <Library/TimerLib.h>
  19. #include <Library/PerformanceLib.h>
  20. #include <Guid/MemoryAllocationHob.h>
  21. #define GET_HOB_TYPE(Hob) ((Hob).Header->HobType)
  22. #define GET_HOB_LENGTH(Hob) ((Hob).Header->HobLength)
  23. #define GET_NEXT_HOB(Hob) ((Hob).Raw + GET_HOB_LENGTH (Hob))
  24. #define END_OF_HOB_LIST(Hob) (GET_HOB_TYPE (Hob) == EFI_HOB_TYPE_END_OF_HOB_LIST)
  25. //
  26. // Get the data and data size field of GUID
  27. //
  28. #define GET_GUID_HOB_DATA(GuidHob) ((VOID *) (((UINT8 *) &((GuidHob)->Name)) + sizeof (EFI_GUID)))
  29. #define GET_GUID_HOB_DATA_SIZE(GuidHob) (((GuidHob)->Header).HobLength - sizeof (EFI_HOB_GUID_TYPE))
  30. #endif