# UbaInitPei

| Field       | Value                                        |
|-------------|----------------------------------------------|
| Index       | 0380                                         |
| Module      | UbaInitPei                                   |
| PE Size     | 4,960 bytes                                  |
| Phase       | PEI (Pre-EFI Initialization)                 |
| Sections    | .text / .rdata / .data / .reloc              |
| Arch        | IA-32 (0x014C)                               |
| SHA256      | 06f01781e67a5e8394bafdcb8d8a8ad9df8e3a5e6b82 |

## Overview

UbaInitPei is the PEI entry point for the UBA (Unified Board Architecture) subsystem. It initializes the UBA protocol and locates the platform type information during early PEI. The module provides helper functions for HOB traversal, GUID comparison, debug logging, and PEI service access that are used by the broader UBA initialization framework.

## Key Functions

- **UbaInitEntryPoint** -- Main entry point; initializes UBA protocol and platform type detection
- **UbaGetPlatformType** -- Retrieves the platform type identifier
- **UbaGetProtocol** -- Locates UBA protocols from the PEI database
- **UbaGetHobList / UbaFindHobByType** -- HOB list traversal for UBA configuration data
- **UbaDebugPrint / UbaAssertHandler** -- Debug and assertion services
- **UbaGuidCompare / UbaReadQword** -- Utility helpers for GUID comparison and memory access

## Dependencies

- MdePkg (BaseMemoryLib, BaseLib)
- PEI Services (HOB traversal, PPI location)
- UBA protocol definitions

## Platform

Intel Purley platform, Lenovo HR650X server.