# SetupConfigUpdateDxeLightningRidgeEXECB4

## Function Table

| Address | Name | Description |
|---------|------|-------------|
|  | **SetupConfigUpdateDxeLightningRidgeEXECB4EntryPoint** |  |
|  | **UbaDebugPrint** |  |
|  | **IsPlatformHob** |  |
|  | **ReadUnaligned64OrAssert** |  |
|  | **UbaAssert** |  |
| Globals | **for UEFI boot/runtime services.** |  |
| EFI_HANDLE | **gImageHandle = NULL;** |  |
| HOB | **list pointer, cached for use by HOB library functions.** |  |
| VOID | ***mHobList = NULL;** |  |
| UBA | **protocol interface pointer, obtained via LocateProtocol.** |  |
| VOID | ***gUbaProtocolInterface = NULL;** |  |
| UBA | **debug print routing function pointer; obtained via** |  |
| LocateProtocol | **using the UBA debug protocol GUID.** |  |
| UBA_DEBUG_PRINT | **gUbaDebugPrint = NULL;** |  |
| GUID | **definitions** |  |
| EFI_GUID | **gUbaSlotDataUpdateConfigProtocolGuid =** |  |
| Slot | **data update configuration table data.** |  |
| This | **structure is published via the UBA protocol to describe the** |  |
| slot | **data update configuration for the LightningRidge EX EC B4** |  |
| UBA_SLOT_DATA_UPDATE_CONFIG | **mSlotDataUpdateConfig = {** |  |
| Slot | **data payload descriptor GUID table** |  |
| Each | **entry in this table describes a slot data payload by GUID and** |  |
| slot | **data.** |  |
| typedef | **struct {** |  |
| Forward | **declarations.** |  |
| EFI_STATUS | **EFIAPI** |  |
| Return | **cached HOB list if already resolved.** |  |
| if | **(mHobList != NULL) {** |  |
| ASSERT | **if no HOB list entry was found matching the expected GUID.** |  |
| if | **(HobList == NULL) {** |  |
| Read | **unaligned GUID values from the HOB entries.** |  |
| CandidateGuid | **= (EFI_GUID *)ReadUnaligned64 ((UINT64 *)CandidateHobEntry);** |  |
| Slot | **data update payload configuration** |  |
| The | **following table defines the GUID and size of each slot data** |  |
| payload | **that this driver registers with the UBA protocol.** |  |
| Payload | **1: UBA Slot Data Update Config Table  — 32 bytes** |  |
| Payload | **2: UBA Slot Data GUID EXECB4          — 40 bytes** |  |
| These | **payloads are installed into the UBA configuration database** |  |
| during | **the entry point execution.** |  |
| Step | **1: Initialize UEFI service table pointers.** |  |
| gImageHandle | **= ImageHandle;** |  |
| Step | **2: Resolve the HOB list. Required by the HOB library for** |  |
| subsequent | **HOB traversal.** |  |
| GetHobList | **();** |  |
| Step | **3: Log the slot data update registration event.** |  |
| UbaDebugPrint | **(** |  |
| Step | **4: Locate the UBA protocol interface.** |  |
| Status | **= gBS->LocateProtocol (** |  |
| Step | **5: Install slot data update payloads into the UBA database.** |  |
| PayloadCount | **= sizeof (mSlotDataPayloads) / sizeof (mSlotDataPayloads[0]);** |  |

---
*Generated by HR650X BIOS Decompilation Project*