Newer
Older
AMI-Aptio-BIOS-Reversed / MdeModulePkg / Universal / CapsuleRuntimeDxe / CapsuleRuntimeDxe.h
/** @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__ */