/** @file Copyright (c) 2011 - 2020, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #ifndef _PREPI_H_ #define _PREPI_H_ #include #include #include #include #include #include #include #include #include #include extern UINT64 mSystemMemoryEnd; RETURN_STATUS EFIAPI TimerConstructor ( VOID ); VOID PrePiMain ( IN UINTN UefiMemoryBase, IN UINTN StacksBase, IN UINT64 StartTimeStamp ); EFI_STATUS EFIAPI MemoryPeim ( IN EFI_PHYSICAL_ADDRESS UefiMemoryBase, IN UINT64 UefiMemorySize ); EFI_STATUS EFIAPI PlatformPeim ( VOID ); VOID PrimaryMain ( IN UINTN UefiMemoryBase, IN UINTN StacksBase, IN UINT64 StartTimeStamp ); VOID SecondaryMain ( IN UINTN MpId ); // Either implemented by PrePiLib or by MemoryInitPei VOID BuildMemoryTypeInformationHob ( VOID ); EFI_STATUS GetPlatformPpi ( IN EFI_GUID *PpiGuid, OUT VOID **Ppi ); // Initialize the Architecture specific controllers VOID ArchInitialize ( VOID ); VOID EFIAPI ProcessLibraryConstructorList ( VOID ); #endif /* _PREPI_H_ */