# SmbiosDataUpdateDxeNeonCityEPRP

| Index | Module | Size | Phase |
|-------|--------|------|-------|
| 0349 | SmbiosDataUpdateDxeNeonCityEPRP | 15,584 bytes | DXE |

UEFI DXE driver that updates SMBIOS data structures at runtime for the NeonCity EPRP platform (Purley family). Handles SMBIOS Type 9 (System Slots, up to 30 slots), Type 41 (Onboard Devices, 8 devices), and an additional extended device type (4 entries). Uses the UBA layer with HII string packages for platform-specific SMBIOS string customization.

## Key Functions

- **ModuleEntryPoint** -- Driver entry point
- **UefiDriverEntryPoint** -- Initializes HII services, DxeServicesTable, PCI MMCONFIG base, and HOB list
- **SmbiosDataUpdateEntry** -- Opens UBA private protocol, registers HII packages, sets up callback
- **SmbiosDataUpdateCallback** -- Main callback: updates Type 9 (slots), Type 41 (onboard devices), and extended types
- **UpdateSmbiosType9SystemSlots** -- Updates slot name strings for up to 30 PCIe slot entries
- **UpdateSmbiosType41OnboardDevices** -- Updates device name strings for up to 8 onboard devices
- **UpdateSmbiosTypeUnknownExtended** -- Updates extended device type entries (4 entries)

## Dependencies

- UBA Protocol, UBA SMBIOS String Library
- HII Database Protocol, HII Config Routing Protocol
- DxeServicesTable, PCI MMCONFIG Protocol
- UEFI Boot Services, Runtime Services

## Platform

x86-64, PE32+, UEFI DXE driver, VS2015 debug build, PurleyRpPkg/UBA/TypeNeonCityEPRP.