/** @file PlatformReset.h -- Header for PlatformReset Copyright (c) HR650X BIOS Decompilation Project **/ #ifndef __PLATFORMRESET_H__ #define __PLATFORMRESET_H__ #include "../uefi_headers/Uefi.h" extern EFI_HANDLE ImageHandle; extern EFI_SYSTEM_TABLE *gST; extern EFI_BOOT_SERVICES *gBS; extern EFI_RUNTIME_SERVICES *gRT; extern EFI_BOOT_SERVICES *mBS; extern EFI_RUNTIME_SERVICES *mRT; extern EFI_DS *gDS; extern EFI_EVENT mRuntimePciEvent; extern EFI_EVENT mEfiExitBootServiceEvent; extern EFI_MM_PCI_USRA *mPciUsra; extern VOID *mHobList; extern EFI_EVENT mRuntimeEvent; extern EFI_EVENT mEfiEventReadyToBoot; extern EFI_EVENT mVirtualAddressChangeEvent; extern EFI_RUNTIME_SERVICES *mRuntimeServices; extern EFI_EVENT mSetVirtualAddressMapEvent; extern EFI_RESET_SYSTEM mOriginalResetSystem; extern UINTN mPciExpressRegBase; extern UINTN mPciExpressMmBaseCount; extern UINTN mPciExpressMmBaseIndex; extern VOID *mPciExpressMmBaseRegBase; extern PCD_PROTOCOL *mPcd; extern BOOLEAN mRuntimeVirtualAddrMapDone; extern BOOLEAN mRuntimePciExpressInitialized; extern VOID *mDebugOutputProtocol; EFI_STATUS EFIAPI ModuleEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); EFI_STATUS EFIAPI PlatformResetDriverEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); EFI_STATUS EFIAPI PlatformResetUnload (VOID); EFI_STATUS EFIAPI PlatformResetEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); VOID EFIAPI PlatformResetSystem ( IN EFI_RESET_TYPE ResetType, IN EFI_STATUS ResetStatus, IN UINTN DataSize, IN VOID *ResetData OPTIONAL ); VOID EFIAPI NullNotification (VOID); EFI_STATUS EFIAPI SaveOriginalResetSystemNotify (VOID); VOID *EFIAPI ZeroMemWrapper ( IN VOID *Buffer, IN UINTN Length ); VOID EFIAPI CpuPauseWrapper (VOID); UINT64 EFIAPI AsmReadTscWrapper (VOID); VOID EFIAPI EnableInterruptsWrapper (VOID); VOID EFIAPI DisableInterruptsWrapper (VOID); UINTN EFIAPI AsmReadEflagsWrapper (VOID); EFI_STATUS EFIAPI ZeroMemValidated ( IN VOID *Buffer, IN UINTN Length ); EFI_STATUS EFIAPI GetDebugOutputProtocol (VOID); EFI_STATUS EFIAPI DebugPrintWrapper ( IN EFI_STATUS ErrorLevel, IN CONST CHAR8 *Format, ... ); EFI_STATUS EFIAPI DebugAssertWrapper ( IN EFI_STATUS File, IN EFI_STATUS Line, IN EFI_STATUS Description ); VOID EFIAPI ClearBootServicesPointerNotify (VOID); VOID EFIAPI ExitBootServicesNotify (VOID); UINTN EFIAPI GetSystemConfigurationTableByGuid ( IN EFI_GUID *TableGuid, OUT VOID **Table ); VOID *EFIAPI GetHobListPointer (VOID); VOID EFIAPI SetVirtualAddressMapNotify (VOID); VOID EFIAPI ConvertRuntimePointersNotify (VOID); EFI_STATUS EFIAPI RuntimePciExpressCleanupNotify (VOID); UINTN EFIAPI GetPciExpressMmioConfigSpaceAddress ( IN UINTN Address ); BOOLEAN EFIAPI CompareGuid64 ( IN EFI_GUID *Guid1, IN EFI_GUID *Guid2 ); UINT64 EFIAPI ReadUnaligned64 ( IN CONST VOID *Buffer ); VOID *EFIAPI GetPcdProtocolPointer (VOID); VOID EFIAPI IoWrite16Wrapper ( IN OUT volatile UINT16 *Port ); UINT32 EFIAPI IoRead32Wrapper ( IN UINT16 Port ); EFI_STATUS EFIAPI FreeRuntimePciExpressMap (VOID); #endif /* __PLATFORMRESET_H__ */