/** @file
  SetupConfigUpdateDxeLightningRidgeEXECB4.h -- Header for SetupConfigUpdateDxeLightningRidgeEXECB4

Copyright (c) HR650X BIOS Decompilation Project
**/

#ifndef __SETUPCONFIGUPDATEDXELIGHTNINGRIDGEEXECB4_H__
#define __SETUPCONFIGUPDATEDXELIGHTNINGRIDGEEXECB4_H__

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

//
// Function Prototypes
//

EFI_STATUS
EFIAPI
SetupConfigUpdateDxeLightningRidgeEXECB4EntryPoint(
  VOID
);

EFI_STATUS
EFIAPI
UbaDebugPrint(
  VOID
);

EFI_STATUS
EFIAPI
IsPlatformHob(
  VOID
);

EFI_STATUS
EFIAPI
ReadUnaligned64OrAssert(
  VOID
);

EFI_STATUS
EFIAPI
UbaAssert(
  VOID
);

EFI_STATUS
EFIAPI
for UEFI boot/runtime services.(
  VOID
);

EFI_STATUS
EFIAPI
gImageHandle = NULL;(
  VOID
);

EFI_STATUS
EFIAPI
list pointer, cached for use by HOB library functions.(
  VOID
);

EFI_STATUS
EFIAPI
*mHobList = NULL;(
  VOID
);

EFI_STATUS
EFIAPI
protocol interface pointer, obtained via LocateProtocol.(
  VOID
);

EFI_STATUS
EFIAPI
*gUbaProtocolInterface = NULL;(
  VOID
);

EFI_STATUS
EFIAPI
debug print routing function pointer; obtained via(
  VOID
);

EFI_STATUS
EFIAPI
using the UBA debug protocol GUID.(
  VOID
);

EFI_STATUS
EFIAPI
gUbaDebugPrint = NULL;(
  VOID
);

EFI_STATUS
EFIAPI
definitions(
  VOID
);

EFI_STATUS
EFIAPI
gUbaSlotDataUpdateConfigProtocolGuid =(
  VOID
);

EFI_STATUS
EFIAPI
data update configuration table data.(
  VOID
);

EFI_STATUS
EFIAPI
structure is published via the UBA protocol to describe the(
  VOID
);

EFI_STATUS
EFIAPI
data update configuration for the LightningRidge EX EC B4(
  VOID
);

EFI_STATUS
EFIAPI
mSlotDataUpdateConfig = {(
  VOID
);

EFI_STATUS
EFIAPI
data payload descriptor GUID table(
  VOID
);

EFI_STATUS
EFIAPI
entry in this table describes a slot data payload by GUID and(
  VOID
);

EFI_STATUS
EFIAPI
data.(
  VOID
);

EFI_STATUS
EFIAPI
struct {(
  VOID
);

EFI_STATUS
EFIAPI
declarations.(
  VOID
);

EFI_STATUS
EFIAPI
EFIAPI(
  VOID
);

EFI_STATUS
EFIAPI
cached HOB list if already resolved.(
  VOID
);

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

EFI_STATUS
EFIAPI
if no HOB list entry was found matching the expected GUID.(
  VOID
);

EFI_STATUS
EFIAPI
(HobList == NULL) {(
  VOID
);

EFI_STATUS
EFIAPI
unaligned GUID values from the HOB entries.(
  VOID
);

EFI_STATUS
EFIAPI
= (EFI_GUID *)ReadUnaligned64 ((UINT64 *)CandidateHobEntry);(
  VOID
);

EFI_STATUS
EFIAPI
data update payload configuration(
  VOID
);

EFI_STATUS
EFIAPI
following table defines the GUID and size of each slot data(
  VOID
);

EFI_STATUS
EFIAPI
that this driver registers with the UBA protocol.(
  VOID
);

EFI_STATUS
EFIAPI
1: UBA Slot Data Update Config Table  — 32 bytes(
  VOID
);

EFI_STATUS
EFIAPI
2: UBA Slot Data GUID EXECB4          — 40 bytes(
  VOID
);

EFI_STATUS
EFIAPI
payloads are installed into the UBA configuration database(
  VOID
);

EFI_STATUS
EFIAPI
the entry point execution.(
  VOID
);

EFI_STATUS
EFIAPI
1: Initialize UEFI service table pointers.(
  VOID
);

EFI_STATUS
EFIAPI
= ImageHandle;(
  VOID
);

EFI_STATUS
EFIAPI
2: Resolve the HOB list. Required by the HOB library for(
  VOID
);

EFI_STATUS
EFIAPI
HOB traversal.(
  VOID
);

EFI_STATUS
EFIAPI
();(
  VOID
);

EFI_STATUS
EFIAPI
3: Log the slot data update registration event.(
  VOID
);

EFI_STATUS
EFIAPI
((
  VOID
);

EFI_STATUS
EFIAPI
4: Locate the UBA protocol interface.(
  VOID
);

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

EFI_STATUS
EFIAPI
5: Install slot data update payloads into the UBA database.(
  VOID
);

EFI_STATUS
EFIAPI
= sizeof (mSlotDataPayloads) / sizeof (mSlotDataPayloads[0]);(
  VOID
);

#endif /* __SETUPCONFIGUPDATEDXELIGHTNINGRIDGEEXECB4_H__ */