Newer
Older
AMI-Aptio-BIOS-Reversed / SmiFlashDxe / SmiFlashDxe.h
@Ajax Dong Ajax Dong 2 days ago 3 KB Init
/** @file
  SmiFlashDxe.h -- Header for SmiFlashDxe

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __SMIFLASHDXE_H__
#define __SMIFLASHDXE_H__

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

//
// Function Prototypes
//

EFI_STATUS
EFIAPI
ReadUnaligned64(
  VOID
);

EFI_STATUS
EFIAPI
IsHobGuidMatch(
  VOID
);

EFI_STATUS
EFIAPI
DebugPrintWithLevel(
  VOID
);

EFI_STATUS
EFIAPI
DebugAssert(
  VOID
);

EFI_STATUS
EFIAPI
UefiBootServicesTableLibConstructor(
  VOID
);

EFI_STATUS
EFIAPI
SmiFlashEntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
ModuleEntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
SmiHandlerFlashUnregister(
  VOID
);

EFI_STATUS
EFIAPI
SmiHandlerUnload(
  VOID
);

EFI_STATUS
EFIAPI
Variables (.data section, zero-initialized)(
  VOID
);

EFI_STATUS
EFIAPI
0x3030. Called in sequence from SmiFlashEntryPoint.(
  VOID
);

EFI_STATUS
EFIAPI
Support Functions (linked from BaseLib / BaseMemoryLib)(
  VOID
);

EFI_STATUS
EFIAPI
to 4-byte boundary(
  VOID
);

EFI_STATUS
EFIAPI
4-byte chunks(
  VOID
);

EFI_STATUS
EFIAPI
bytes(
  VOID
);

EFI_STATUS
EFIAPI
for overlap: if Source < Destination and overlap exists(
  VOID
);

EFI_STATUS
EFIAPI
from end to avoid corruption.(
  VOID
);

EFI_STATUS
EFIAPI
small copies or overlapping alignment, go byte-by-byte(
  VOID
);

EFI_STATUS
EFIAPI
both pointers to 8-byte boundary(
  VOID
);

EFI_STATUS
EFIAPI
8-byte aligned chunks(
  VOID
);

EFI_STATUS
EFIAPI
Support: HobLib(
  VOID
);

EFI_STATUS
EFIAPI
unaligned head(
  VOID
);

EFI_STATUS
EFIAPI
in 8-byte words(
  VOID
);

EFI_STATUS
EFIAPI
byte comparison(
  VOID
);

EFI_STATUS
EFIAPI
GUID low half(
  VOID
);

EFI_STATUS
EFIAPI
GUID high half(
  VOID
);

EFI_STATUS
EFIAPI
low half(
  VOID
);

EFI_STATUS
EFIAPI
high half (duplicate)(
  VOID
);

EFI_STATUS
EFIAPI
Debug Protocol (library-level support)(
  VOID
);

EFI_STATUS
EFIAPI
debug level from CMOS(
  VOID
);

EFI_STATUS
EFIAPI
Services Table Constructor(
  VOID
);

EFI_STATUS
EFIAPI
secondary copies for SMI handler management(
  VOID
);

EFI_STATUS
EFIAPI
cleanup event(
  VOID
);

EFI_STATUS
EFIAPI
protocol notify for SMM base protocol(
  VOID
);

EFI_STATUS
EFIAPI
Handler Entry Point(
  VOID
);

EFI_STATUS
EFIAPI
SystemTable locally if not already done(
  VOID
);

EFI_STATUS
EFIAPI
configuration table for flash descriptor HOB(
  VOID
);

EFI_STATUS
EFIAPI
HOB table is stored as a flat array accessible via the(
  VOID
);

EFI_STATUS
EFIAPI
System Table configuration table.(
  VOID
);

EFI_STATUS
EFIAPI
= 0;(
  VOID
);

EFI_STATUS
EFIAPI
HOB entries looking for FLASH_DESCRIPTOR_HOB_GUID(
  VOID
);

EFI_STATUS
EFIAPI
proceed if flash region is 1MB (0x12) or 2MB (0x20)(
  VOID
);

EFI_STATUS
EFIAPI
(RegionType == FLASH_REGION_SIZE_1MB ||(
  VOID
);

EFI_STATUS
EFIAPI
and zero SMM communication buffer(
  VOID
);

EFI_STATUS
EFIAPI
= NULL;(
  VOID
);

EFI_STATUS
EFIAPI
"SFPFREC" SMI handler(
  VOID
);

EFI_STATUS
EFIAPI
+ 0x58 = SmiHandlerRegister(
  VOID
);

EFI_STATUS
EFIAPI
varargs call chain.(
  VOID
);

EFI_STATUS
EFIAPI
all registered init callbacks(
  VOID
);

EFI_STATUS
EFIAPI
Point (ModuleEntryPoint)(
  VOID
);

EFI_STATUS
EFIAPI
library constructor to initialize service table pointers(
  VOID
);

EFI_STATUS
EFIAPI
(ImageHandle, SystemTable);(
  VOID
);

EFI_STATUS
EFIAPI
main SMM flash entry point(
  VOID
);

EFI_STATUS
EFIAPI
= SmiFlashEntryPoint (ImageHandle, SystemTable);(
  VOID
);

EFI_STATUS
EFIAPI
entry point failed, clean up events(
  VOID
);

EFI_STATUS
EFIAPI
(EFI_ERROR (Status)) {(
  VOID
);

EFI_STATUS
EFIAPI
Handler Callbacks(
  VOID
);

EFI_STATUS
EFIAPI
+ 0x40 = SmiHandlerUnRegister(
  VOID
);

EFI_STATUS
EFIAPI
(gRuntimeServicesUnreg != NULL) {(
  VOID
);

#endif /* __SMIFLASHDXE_H__ */