PrePi.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /** @file
  2. *
  3. * Copyright (c) 2011-2012, ARM Limited. All rights reserved.
  4. *
  5. * SPDX-License-Identifier: BSD-2-Clause-Patent
  6. *
  7. **/
  8. #ifndef _PREPI_H_
  9. #define _PREPI_H_
  10. #include <PiPei.h>
  11. #include <Library/PcdLib.h>
  12. #include <Library/ArmLib.h>
  13. #include <Library/BaseMemoryLib.h>
  14. #include <Library/DebugLib.h>
  15. #include <Library/IoLib.h>
  16. #include <Library/MemoryAllocationLib.h>
  17. #include <Library/HobLib.h>
  18. #include <Library/SerialPortLib.h>
  19. #define SerialPrint(txt) SerialPortWrite (txt, AsciiStrLen(txt)+1);
  20. RETURN_STATUS
  21. EFIAPI
  22. TimerConstructor (
  23. VOID
  24. );
  25. VOID
  26. PrePiMain (
  27. IN UINTN UefiMemoryBase,
  28. IN UINTN StacksBase,
  29. IN UINT64 StartTimeStamp
  30. );
  31. EFI_STATUS
  32. EFIAPI
  33. MemoryPeim (
  34. IN EFI_PHYSICAL_ADDRESS UefiMemoryBase,
  35. IN UINT64 UefiMemorySize
  36. );
  37. EFI_STATUS
  38. EFIAPI
  39. PlatformPeim (
  40. VOID
  41. );
  42. // Either implemented by PrePiLib or by MemoryInitPei
  43. VOID
  44. BuildMemoryTypeInformationHob (
  45. VOID
  46. );
  47. // Initialize the Architecture specific controllers
  48. VOID
  49. ArchInitialize (
  50. VOID
  51. );
  52. #endif /* _PREPI_H_ */