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

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __OEMSAVESMBIOSDXE_H__
#define __OEMSAVESMBIOSDXE_H__

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

//
// Function Prototypes
//

EFI_STATUS
EFIAPI
DebugAssert(
  VOID
);

EFI_STATUS
EFIAPI
DebugPrint(
  VOID
);

EFI_STATUS
EFIAPI
StrLen(
  VOID
);

EFI_STATUS
EFIAPI
AsciiStrLen(
  VOID
);

EFI_STATUS
EFIAPI
ReadUnaligned64(
  VOID
);

EFI_STATUS
EFIAPI
CompareGuid(
  VOID
);

EFI_STATUS
EFIAPI
OemSaveSmbiosPcdvalue(
  VOID
);

EFI_STATUS
EFIAPI
OemRestoreSmbiosPcdvalue(
  VOID
);

EFI_STATUS
EFIAPI
OemRestoreSmbiosString(
  VOID
);

EFI_STATUS
EFIAPI
OemSaveSmbiosDxeEntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
OemSaveSmbiosDxeEntry(
  VOID
);

EFI_STATUS
EFIAPI
global variable storage(
  VOID
);

EFI_STATUS
EFIAPI
gImageHandle;(
  VOID
);

EFI_STATUS
EFIAPI
*gSmbiosProtocol = NULL;  // qword_2F68(
  VOID
);

EFI_STATUS
EFIAPI
VOID                    *mHobList         = NULL;  // qword_2F78(
  VOID
);

/// set by OemRestoreSmbiosPcdvalue, consumed by OemRestoreSmbiosString
EFI_STATUS
EFIAPI
flags(
  VOID
);

EFI_STATUS
EFIAPI
gSystemManufacturerRestored    = FALSE;  // byte_2F18  Token 118(
  VOID
);

EFI_STATUS
EFIAPI
Token 117(
  VOID
);

EFI_STATUS
EFIAPI
Token 119(
  VOID
);

EFI_STATUS
EFIAPI
Token 120(
  VOID
);

EFI_STATUS
EFIAPI
Token 187(
  VOID
);

EFI_STATUS
EFIAPI
Token 121(
  VOID
);

EFI_STATUS
EFIAPI
Token 122(
  VOID
);

EFI_STATUS
EFIAPI
Token 123(
  VOID
);

EFI_STATUS
EFIAPI
Token 124(
  VOID
);

EFI_STATUS
EFIAPI
Token 125(
  VOID
);

EFI_STATUS
EFIAPI
Token 126(
  VOID
);

EFI_STATUS
EFIAPI
Token 127(
  VOID
);

EFI_STATUS
EFIAPI
Token 128(
  VOID
);

EFI_STATUS
EFIAPI
Token 129(
  VOID
);

EFI_STATUS
EFIAPI
Token 188(
  VOID
);

EFI_STATUS
EFIAPI
definitions(
  VOID
);

EFI_STATUS
EFIAPI
-- from unk_2EC0(
  VOID
);

EFI_STATUS
EFIAPI
-- from unk_2EF0(
  VOID
);

EFI_STATUS
EFIAPI
-- from unk_2ED0(
  VOID
);

EFI_STATUS
EFIAPI
/ library wrapper functions(
  VOID
);

EFI_STATUS
EFIAPI
overlap: copy forwards in 8-byte chunks(
  VOID
);

EFI_STATUS
EFIAPI
remaining bytes(
  VOID
);

EFI_STATUS
EFIAPI
CMOS index 0x4B to get debug level(
  VOID
);

EFI_STATUS
EFIAPI
= IoRead8 (0x70);(
  VOID
);

EFI_STATUS
EFIAPI
--  sub_41C(
  VOID
);

EFI_STATUS
EFIAPI
all system/board/chassis PCD values and saves them into the(
  VOID
);

EFI_STATUS
EFIAPI
UEFI variable.(
  VOID
);

EFI_STATUS
EFIAPI
information buffers (280 bytes each for SMBIOS strings)(
  VOID
);

EFI_STATUS
EFIAPI
SmbiosStrings[13][280];(
  VOID
);

EFI_STATUS
EFIAPI
existing variable (may not exist on first boot)(
  VOID
);

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

EFI_STATUS
EFIAPI
Token 118 - System Manufacturer(
  VOID
);

EFI_STATUS
EFIAPI
= GetPcdProtocol ();(
  VOID
);

EFI_STATUS
EFIAPI
Token 117 - System Product Name(
  VOID
);

EFI_STATUS
EFIAPI
Token 119 - System Version(
  VOID
);

EFI_STATUS
EFIAPI
Token 120 - System Serial Number(
  VOID
);

EFI_STATUS
EFIAPI
Token 187 - System UUID(
  VOID
);

EFI_STATUS
EFIAPI
Token 121 - Base Board Manufacturer(
  VOID
);

EFI_STATUS
EFIAPI
Token 122 - Base Board Product Name(
  VOID
);

EFI_STATUS
EFIAPI
Token 123 - Base Board Version(
  VOID
);

EFI_STATUS
EFIAPI
Token 124 - Base Board Serial Number(
  VOID
);

EFI_STATUS
EFIAPI
Token 125 - Base Board Asset Tag(
  VOID
);

EFI_STATUS
EFIAPI
Token 126 - Chassis Manufacturer(
  VOID
);

EFI_STATUS
EFIAPI
Token 127 - Chassis Version(
  VOID
);

EFI_STATUS
EFIAPI
Token 128 - Chassis Serial Number(
  VOID
);

EFI_STATUS
EFIAPI
Token 129 - Chassis Asset Tag(
  VOID
);

EFI_STATUS
EFIAPI
Token 188 - Chassis Type: if not 2, save byte from chassis asset tag slot(
  VOID
);

EFI_STATUS
EFIAPI
the variable(
  VOID
);

EFI_STATUS
EFIAPI
= 3657;(
  VOID
);

EFI_STATUS
EFIAPI
--  sub_A70(
  VOID
);

EFI_STATUS
EFIAPI
the OemSmbiosPcdValue variable and restores PCD tokens that still(
  VOID
);

EFI_STATUS
EFIAPI
default ("To be filled by O.E.M.") values.(
  VOID
);

EFI_STATUS
EFIAPI
118 - System Manufacturer(
  VOID
);

EFI_STATUS
EFIAPI
117 - System Product Name (offset 0x148 in Buffer = 280 bytes)(
  VOID
);

EFI_STATUS
EFIAPI
119 - System Version (offset 0x260)(
  VOID
);

EFI_STATUS
EFIAPI
120 - System Serial Number (offset 0x378)(
  VOID
);

EFI_STATUS
EFIAPI
187 - System UUID (offset 0x490, 16 bytes)(
  VOID
);

EFI_STATUS
EFIAPI
121 - Base Board Manufacturer (offset 0x4A0)(
  VOID
);

EFI_STATUS
EFIAPI
122 - Base Board Product Name (offset 0x5B8)(
  VOID
);

EFI_STATUS
EFIAPI
123 - Base Board Version (offset 0x6D0)(
  VOID
);

EFI_STATUS
EFIAPI
124 - Base Board Serial Number (offset 0x7E8)(
  VOID
);

EFI_STATUS
EFIAPI
125 - Base Board Asset Tag (offset 0x900)(
  VOID
);

EFI_STATUS
EFIAPI
126 - Chassis Manufacturer (offset 0xA18)(
  VOID
);

EFI_STATUS
EFIAPI
127 - Chassis Version (offset 0xB30)(
  VOID
);

EFI_STATUS
EFIAPI
128 - Chassis Serial Number (offset 0xC48)(
  VOID
);

EFI_STATUS
EFIAPI
129 - Chassis Asset Tag (offset 0xD60)(
  VOID
);

EFI_STATUS
EFIAPI
188 - Chassis Type: if already 2, skip; otherwise restore from saved byte(
  VOID
);

EFI_STATUS
EFIAPI
--  sub_1138(
  VOID
);

EFI_STATUS
EFIAPI
restored PCD values into the SMBIOS table via EFI_SMBIOS_PROTOCOL.(
  VOID
);

EFI_STATUS
EFIAPI
each type (1=System, 2=BaseBoard, 3=Chassis), if the corresponding(
  VOID
);

EFI_STATUS
EFIAPI
flag is set, writes the string into the SMBIOS record.(
  VOID
);

EFI_STATUS
EFIAPI
= gBS->LocateProtocol (&gEfiSmbiosProtocolGuid, NULL, (VOID **)&Smbios);(
  VOID
);

EFI_STATUS
EFIAPI
= 1;(
  VOID
);

EFI_STATUS
EFIAPI
handle(
  VOID
);

EFI_STATUS
EFIAPI
CMOS to check if this is a ThinkSystem platform(
  VOID
);

EFI_STATUS
EFIAPI
(0x72, 0x5C);(
  VOID
);

EFI_STATUS
EFIAPI
"ThinkSystem " prefix(
  VOID
);

EFI_STATUS
EFIAPI
UUID: read from saved 16-byte UUID in buffer (offset 0x490)(
  VOID
);

EFI_STATUS
EFIAPI
(gSystemUuidRestored) {(
  VOID
);

EFI_STATUS
EFIAPI
= 2;(
  VOID
);

EFI_STATUS
EFIAPI
= 3;(
  VOID
);

EFI_STATUS
EFIAPI
type byte at buffer+0xD60+280 (= offset 0xE78 from buffer start)(
  VOID
);

EFI_STATUS
EFIAPI
(gChassisTypeRestored) {(
  VOID
);

EFI_STATUS
EFIAPI
--  _ModuleEntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
entry point. Initializes globals, then calls the three main(
  VOID
);

EFI_STATUS
EFIAPI
in order: OemRestoreSmbiosPcdvalue, OemSaveSmbiosPcdvalue(
  VOID
);

EFI_STATUS
EFIAPI
HOB list(
  VOID
);

EFI_STATUS
EFIAPI
();(
  VOID
);

EFI_STATUS
EFIAPI
UEFI DXE driver entry.(
  VOID
);

#endif /* __OEMSAVESMBIOSDXE_H__ */