Newer
Older
AMI-Aptio-BIOS-Reversed / LenovoServerPkg / POSTStatus / LnvDriverDxe / LnvDriverDxe.h
@Ajax Dong Ajax Dong 2 days ago 10 KB Restructure the repo
/** @file
  LnvDriverDxe.h -- Header for LnvDriverDxe

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __LNVDRIVERDXE_H__
#define __LNVDRIVERDXE_H__

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

//
// Function Prototypes
//

EFI_STATUS
EFIAPI
GetDebugLevel(
  VOID
);

EFI_STATUS
EFIAPI
_ModuleEntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
LnvDriverDxeInitGlobals(
  VOID
);

EFI_STATUS
EFIAPI
LnvDriverDxeInit(
  VOID
);

EFI_STATUS
EFIAPI
OnReadyToBoot(
  VOID
);

EFI_STATUS
EFIAPI
LnvSetupConfigCallback0(
  VOID
);

EFI_STATUS
EFIAPI
LnvSetupConfigCallback1(
  VOID
);

EFI_STATUS
EFIAPI
OnExitBootServices(
  VOID
);

EFI_STATUS
EFIAPI
DebugPrint(
  VOID
);

EFI_STATUS
EFIAPI
DebugAssert(
  VOID
);

EFI_STATUS
EFIAPI
InstallProtocolInterface(
  VOID
);

EFI_STATUS
EFIAPI
UnicodeSPrint(
  VOID
);

EFI_STATUS
EFIAPI
UnicodeVSPrint(
  VOID
);

EFI_STATUS
EFIAPI
DsBootCurrentName(
  VOID
);

EFI_STATUS
EFIAPI
DebugLogPrint(
  VOID
);

EFI_STATUS
EFIAPI
IpmiTransportInit(
  VOID
);

EFI_STATUS
EFIAPI
IpmiTransportLocate(
  VOID
);

EFI_STATUS
EFIAPI
IpmiSendCommand(
  VOID
);

EFI_STATUS
EFIAPI
IpmiTransportSendCommand(
  VOID
);

EFI_STATUS
EFIAPI
StrLen(
  VOID
);

EFI_STATUS
EFIAPI
ReadUnaligned16(
  VOID
);

EFI_STATUS
EFIAPI
ReadUnaligned64(
  VOID
);

EFI_STATUS
EFIAPI
StrnLenS(
  VOID
);

EFI_STATUS
EFIAPI
AsciiStrLen(
  VOID
);

EFI_STATUS
EFIAPI
CompareGuid(
  VOID
);

EFI_STATUS
EFIAPI
AsciiSPrintWithTimestamp(
  VOID
);

EFI_STATUS
EFIAPI
AsciiVSPrint(
  VOID
);

EFI_STATUS
EFIAPI
AsciiSPrint(
  VOID
);

EFI_STATUS
EFIAPI
data(
  VOID
);

EFI_STATUS
EFIAPI
EFI_HANDLE  gImageHandle = NULL;(
  VOID
);

EFI_STATUS
EFIAPI
variables for protocol interfaces(
  VOID
);

EFI_STATUS
EFIAPI
VOID   *gProtocolInterface = NULL;     // qword_3C60(
  VOID
);

EFI_STATUS
EFIAPI
STATIC UINT64  gBootServicesPtr = 0;          // qword_3C70(
  VOID
);

EFI_STATUS
EFIAPI
STATIC UINT64  gSystemTablePtr = 0;           // qword_3C80(
  VOID
);

EFI_STATUS
EFIAPI
STATIC VOID   *gIpmiTransportProtocol = NULL;  // qword_3C90(
  VOID
);

EFI_STATUS
EFIAPI
//(
  VOID
);

EFI_STATUS
EFIAPI
definitions (from .rdata section)(
  VOID
);

EFI_STATUS
EFIAPI
gLnvDriverDxeProtocolGuid = { 0x9894A3A0, 0x440C, 0x4A8C, { 0x8F, 0x55, 0x35, 0x6E, 0x5F, 0x2E, 0xCE, 0x71 } };(
  VOID
);

EFI_STATUS
EFIAPI
declarations of local helper functions(
  VOID
);

EFI_STATUS
EFIAPI
UINTN(
  VOID
);

EFI_STATUS
EFIAPI
// ============================================================================(
  VOID
);

EFI_STATUS
EFIAPI
(sub_3AC)(
  VOID
);

EFI_STATUS
EFIAPI
the HOB list(
  VOID
);

EFI_STATUS
EFIAPI
();(
  VOID
);

EFI_STATUS
EFIAPI
or install the IPMI transport protocol(
  VOID
);

EFI_STATUS
EFIAPI
= gBS->LocateProtocol ((
  VOID
);

EFI_STATUS
EFIAPI
not found; register callback for when it becomes available(
  VOID
);

EFI_STATUS
EFIAPI
(&gLnvDriverDxeProtocolGuid);(
  VOID
);

EFI_STATUS
EFIAPI
(sub_64C)(
  VOID
);

EFI_STATUS
EFIAPI
ReadyToBoot event(
  VOID
);

EFI_STATUS
EFIAPI
= gBS->CreateEventEx ((
  VOID
);

EFI_STATUS
EFIAPI
ExitBootServices event(
  VOID
);

EFI_STATUS
EFIAPI
periodic timer event for configuration callback (index 0)(
  VOID
);

EFI_STATUS
EFIAPI
= gBS->CreateEvent ((
  VOID
);

EFI_STATUS
EFIAPI
periodic timer event for configuration callback (index 1)(
  VOID
);

EFI_STATUS
EFIAPI
initial LnvSetup configuration(
  VOID
);

EFI_STATUS
EFIAPI
= 0;(
  VOID
);

EFI_STATUS
EFIAPI
(sub_4AC)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_518)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_584)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_60C)(
  VOID
);

EFI_STATUS
EFIAPI
final configuration(
  VOID
);

EFI_STATUS
EFIAPI
(Event, Context);(
  VOID
);

EFI_STATUS
EFIAPI
(sub_810)(
  VOID
);

EFI_STATUS
EFIAPI
a small page to test memory availability(
  VOID
);

EFI_STATUS
EFIAPI
= EFI_SIZE_TO_PAGES (31);(
  VOID
);

EFI_STATUS
EFIAPI
(sub_890)(
  VOID
);

EFI_STATUS
EFIAPI
if the debug level is enabled(
  VOID
);

EFI_STATUS
EFIAPI
= GetDebugLevel ();(
  VOID
);

EFI_STATUS
EFIAPI
the protocol's debug print function (at offset +16)(
  VOID
);

EFI_STATUS
EFIAPI
(VaListMarker);(
  VOID
);

EFI_STATUS
EFIAPI
(sub_8D8)(
  VOID
);

EFI_STATUS
EFIAPI
the protocol's assert function (at offset +8)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_918)(
  VOID
);

EFI_STATUS
EFIAPI
the number of configuration table entries(
  VOID
);

EFI_STATUS
EFIAPI
= gST->NumberOfTableEntries;(
  VOID
);

EFI_STATUS
EFIAPI
for the HOB list GUID in the configuration table(
  VOID
);

EFI_STATUS
EFIAPI
(Index = 0; Index < Count; Index++) {(
  VOID
);

EFI_STATUS
EFIAPI
the HOB list was found(
  VOID
);

EFI_STATUS
EFIAPI
(gHobList == 0) {(
  VOID
);

EFI_STATUS
EFIAPI
(sub_9F0)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_A48)(
  VOID
);

EFI_STATUS
EFIAPI
hex(
  VOID
);

EFI_STATUS
EFIAPI
(sub_ABC)(
  VOID
);

EFI_STATUS
EFIAPI
leading whitespace (space = 0x20, tab = 0x09)(
  VOID
);

EFI_STATUS
EFIAPI
(*Str == 0x20 || *Str == 0x09) {(
  VOID
);

EFI_STATUS
EFIAPI
for sign(
  VOID
);

EFI_STATUS
EFIAPI
(*Str == '-') {(
  VOID
);

EFI_STATUS
EFIAPI
digits(
  VOID
);

EFI_STATUS
EFIAPI
(TRUE) {(
  VOID
);

EFI_STATUS
EFIAPI
(sub_B94)(
  VOID
);

EFI_STATUS
EFIAPI
(Index >= 3) {(
  VOID
);

EFI_STATUS
EFIAPI
(Index > 2) {(
  VOID
);

EFI_STATUS
EFIAPI
EFI errors(
  VOID
);

EFI_STATUS
EFIAPI
(Index > 0x1E) {(
  VOID
);

EFI_STATUS
EFIAPI
codes(
  VOID
);

EFI_STATUS
EFIAPI
((Status & 0x2000000000000000ULL) == 0) {(
  VOID
);

EFI_STATUS
EFIAPI
(sub_C5C)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_C84)(
  VOID
);

EFI_STATUS
EFIAPI
follows the standard UEFI VSPrint pattern.(
  VOID
);

EFI_STATUS
EFIAPI
MdePkg/Library/BasePrintLib/PrintLibInternal.c for reference.(
  VOID
);

EFI_STATUS
EFIAPI
format string character by character(
  VOID
);

EFI_STATUS
EFIAPI
= Format;(
  VOID
);

EFI_STATUS
EFIAPI
character, copy to output(
  VOID
);

EFI_STATUS
EFIAPI
percent(
  VOID
);

EFI_STATUS
EFIAPI
format specifier(
  VOID
);

EFI_STATUS
EFIAPI
Width = 0;(
  VOID
);

EFI_STATUS
EFIAPI
numeric width(
  VOID
);

EFI_STATUS
EFIAPI
CHAR16 *ParseEnd;(
  VOID
);

EFI_STATUS
EFIAPI
format type(
  VOID
);

EFI_STATUS
EFIAPI
(*FormatStr) {(
  VOID
);

EFI_STATUS
EFIAPI
format: %08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x(
  VOID
);

EFI_STATUS
EFIAPI
*Guid;(
  VOID
);

EFI_STATUS
EFIAPI
the hex letters(
  VOID
);

EFI_STATUS
EFIAPI
(UINTN i = 0; GuidStr[i] != L'\0'; i++) {(
  VOID
);

EFI_STATUS
EFIAPI
Status code(
  VOID
);

EFI_STATUS
EFIAPI
Status;(
  VOID
);

EFI_STATUS
EFIAPI
prefix(
  VOID
);

EFI_STATUS
EFIAPI
through to handle d/i/x/X/p(
  VOID
);

EFI_STATUS
EFIAPI
to string(
  VOID
);

EFI_STATUS
EFIAPI
DigitBuf[32];(
  VOID
);

EFI_STATUS
EFIAPI
digits in reverse(
  VOID
);

EFI_STATUS
EFIAPI
{(
  VOID
);

EFI_STATUS
EFIAPI
padding(
  VOID
);

EFI_STATUS
EFIAPI
(DigitCount < Width) {(
  VOID
);

EFI_STATUS
EFIAPI
digits in correct order(
  VOID
);

EFI_STATUS
EFIAPI
(sub_111C)(
  VOID
);

EFI_STATUS
EFIAPI
the boot string buffer(
  VOID
);

EFI_STATUS
EFIAPI
(BootString, 0, sizeof (BootString));(
  VOID
);

EFI_STATUS
EFIAPI
the current boot option index(
  VOID
);

EFI_STATUS
EFIAPI
= sizeof (BootCurrent);(
  VOID
);

EFI_STATUS
EFIAPI
the BootXXXX variable name(
  VOID
);

EFI_STATUS
EFIAPI
(BootOptionName, sizeof (BootOptionName) / sizeof (CHAR16), L"Boot%04X", BootCurrent);(
  VOID
);

EFI_STATUS
EFIAPI
the boot option variable data(
  VOID
);

EFI_STATUS
EFIAPI
exists; allocate buffer and read it(
  VOID
);

EFI_STATUS
EFIAPI
boot option description string starts at offset 6 in the(
  VOID
);

EFI_STATUS
EFIAPI
structure(
  VOID
);

EFI_STATUS
EFIAPI
= StrLen ((CONST CHAR16 *)((UINTN)VariableData + 6));(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1348)(
  VOID
);

EFI_STATUS
EFIAPI
the message into buffer(
  VOID
);

EFI_STATUS
EFIAPI
(VaListMarker, Format);(
  VOID
);

EFI_STATUS
EFIAPI
if too long(
  VOID
);

EFI_STATUS
EFIAPI
(Length > 230) {(
  VOID
);

EFI_STATUS
EFIAPI
current time(
  VOID
);

EFI_STATUS
EFIAPI
packet with timestamp(
  VOID
);

EFI_STATUS
EFIAPI
= AsciiSPrintWithTimestamp ((
  VOID
);

EFI_STATUS
EFIAPI
packet via IPMI transport protocol(
  VOID
);

EFI_STATUS
EFIAPI
= GetProtocolInterface ();(
  VOID
);

EFI_STATUS
EFIAPI
to locate the protocol(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1498)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_14F8)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1580)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1580 helper)(
  VOID
);

EFI_STATUS
EFIAPI
the protocol's SendCommand function at offset +16(
  VOID
);

EFI_STATUS
EFIAPI
EFI_SUCCESS;(
  VOID
);

EFI_STATUS
EFIAPI
(sub_15B8)(
  VOID
);

EFI_STATUS
EFIAPI
CMOS register 0x4B(
  VOID
);

EFI_STATUS
EFIAPI
(0x70, (IoRead8 (0x70) & 0x80) | 0x4B);(
  VOID
);

EFI_STATUS
EFIAPI
platform-specific debug register(
  VOID
);

EFI_STATUS
EFIAPI
= (MmioRead8 (0xFDAF0490) & 2) | 1;(
  VOID
);

EFI_STATUS
EFIAPI
}(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1608)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_169C)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_16CC)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_16FC)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1754)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1778)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_17E8)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1810)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_1844)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_18BC)(
  VOID
);

EFI_STATUS
EFIAPI
function is the main VSPrint implementation.(
  VOID
);

EFI_STATUS
EFIAPI
the full decompiled source, see the IDA output.(
  VOID
);

EFI_STATUS
EFIAPI
implementation handles:(
  VOID
);

EFI_STATUS
EFIAPI
0;(
  VOID
);

EFI_STATUS
EFIAPI
(sub_26C4)(
  VOID
);

EFI_STATUS
EFIAPI
(sub_2740)(
  VOID
);

EFI_STATUS
EFIAPI
misaligned bytes(
  VOID
);

EFI_STATUS
EFIAPI
AlignmentOffset;(
  VOID
);

EFI_STATUS
EFIAPI
aligned 32-bit values(
  VOID
);

EFI_STATUS
EFIAPI
= Length >> 2;(
  VOID
);

EFI_STATUS
EFIAPI
remaining bytes(
  VOID
);

EFI_STATUS
EFIAPI
(Length > 0) {(
  VOID
);

EFI_STATUS
EFIAPI
(sub_27A0)(
  VOID
);

EFI_STATUS
EFIAPI
copy direction based on overlap(
  VOID
);

EFI_STATUS
EFIAPI
Reverse = FALSE;(
  VOID
);

EFI_STATUS
EFIAPI
+= Length;(
  VOID
);

EFI_STATUS
EFIAPI
accelerated copy for aligned buffers >= 8 bytes(
  VOID
);

EFI_STATUS
EFIAPI
(Length < 8 || ((UINTN)Src & 7) != ((UINTN)Dst & 7)) {(
  VOID
);

EFI_STATUS
EFIAPI
misaligned start(
  VOID
);

EFI_STATUS
EFIAPI
(Reverse) {(
  VOID
);

EFI_STATUS
EFIAPI
8-byte aligned blocks(
  VOID
);

EFI_STATUS
EFIAPI
= Length >> 3;(
  VOID
);

EFI_STATUS
EFIAPI
= Length & 7;(
  VOID
);

#endif /* __LNVDRIVERDXE_H__ */