Newer
Older
AMI-Aptio-BIOS-Reversed / PurleySktPkg / Smm / Ras / QuiesceSupport / QuiesceSupport / QuiesceSupport.h
/** @file
  QuiesceSupport.h -- Header for QuiesceSupport

  Source: DEBUG_VS2015\X64\PurleySktPkg\Smm\Ras\QuiesceSupport\QuiesceSupport\DEBUG
  Build: HR6N0XMLK DEBUG_VS2015 X64

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __QUIESCESUPPORT_H__
#define __QUIESCESUPPORT_H__

#include "../uefi_headers/Uefi.h"

//
// Function Prototypes
//

///
/// UEFI entry point / initialization function
///
EFI_STATUS
EFIAPI
ModuleEntryPoint(
  EFI_HANDLE ImageHandle,
  EFI_SYSTEM_TABLE *SystemTable
);

///
/// QuiesceSupportInitializeDriverContext
///   - initializes the module-local driver context
///
EFI_STATUS
EFIAPI
QuiesceSupportInitializeDriverContext(
  EFI_HANDLE ImageHandle
);

///
/// QuiesceSupportInstallQuiesceServices
///   - installs the quiesce support services for the SMM driver
///
EFI_STATUS
EFIAPI
QuiesceSupportInstallQuiesceServices(
  EFI_HANDLE ImageHandle,
  EFI_SYSTEM_TABLE *SystemTable
);

///
/// QuiesceSupportTearDownDriverContext
///   - cleanup helper for the module context
///
VOID
EFIAPI
QuiesceSupportTearDownDriverContext(
  VOID *Context
);

///
/// QuiesceSupportReleaseDriverContext
///   - releases the indexed context slot
///
VOID
EFIAPI
QuiesceSupportReleaseDriverContext(
  VOID *Context,
  INT64 Slot
);

///
/// QuiesceSupportAutoGenAssert
///   - AutoGen assertion helper
///
VOID
EFIAPI
QuiesceSupportAutoGenAssert(
  CHAR8 *FileName,
  INT32 Line,
  CHAR8 *Expression
);

///
/// QuiesceSupportNeedsInitialization
///   - gate for the initialization path
///
BOOLEAN
EFIAPI
QuiesceSupportNeedsInitialization(
  VOID *Context
);

///
/// QuiesceSupportCleanupOnFailure
///   - failure path cleanup helper
///
VOID
EFIAPI
QuiesceSupportCleanupOnFailure(
  VOID
);

extern EFI_STATUS  mQuiesceSupportStatus;
extern VOID        *mQuiesceSupportContext;

#endif /* __QUIESCESUPPORT_H__ */