/** @file CapsuleRuntimeDxe.h - Capsule runtime driver declarations. **/ #ifndef __CAPSULERUNTIMEDXE_H__ #define __CAPSULERUNTIMEDXE_H__ #include "../uefi_headers/Uefi.h" EFI_STATUS EFIAPI CapsuleRuntimeDxeDriverEntryPoint ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ); EFI_STATUS EFIAPI CapsuleUpdateCapsule ( IN EFI_CAPSULE_HEADER **CapsuleHeaderArray, IN UINT64 CapsuleCount, IN EFI_PHYSICAL_ADDRESS ScatterGatherList OPTIONAL ); EFI_STATUS EFIAPI CapsuleQueryCapsuleCapabilities ( IN EFI_CAPSULE_HEADER **CapsuleHeaderArray, IN UINT64 CapsuleCount, OUT UINT64 *MaxCapsuleSize, OUT EFI_STATUS *ResetType ); BOOLEAN EFIAPI IsCapspaceGuidEqual ( IN EFI_GUID *Guid1, IN EFI_GUID *Guid2 ); UINT64 ReadUnaligned64 ( IN UINT64 *Buffer ); EFI_STATUS EFIAPI CheckCapsuleType ( IN EFI_CAPSULE_HEADER *CapsuleHeader ); STATIC EFI_STATUS GetCapsuleRuntimeProtocol ( VOID ); VOID EFIAPI VirtualAddressChangeEvent ( IN EFI_EVENT Event, IN VOID *Context ); VOID EFIAPI ExitBootServicesEvent ( IN EFI_EVENT Event, IN VOID *Context ); VOID EFIAPI RuntimeCapsuleEvent ( IN EFI_EVENT Event, IN VOID *Context ); VOID EFIAPI CapsuleRuntimeVariableEvent ( IN EFI_EVENT Event, IN VOID *Context ); UINT64 AsmCpuid ( IN UINT32 Index, OUT UINT32 *Eax OPTIONAL, OUT UINT32 *Ebx OPTIONAL, OUT UINT32 *Ecx OPTIONAL, OUT UINT32 *Edx OPTIONAL ); #endif /* __CAPSULERUNTIMEDXE_H__ */