# FlashDriver

## Function Table

| Address | Name | Description |
|---------|------|-------------|
|  | **ModuleEntryPoint** |  |
|  | **FlashDriverInit** |  |
|  | **FlashDriverEntry** |  |
|  | **FlashDriverUnload** |  |
|  | **FlashSpinelHandler** |  |
|  | **FlashProtocolInstall** |  |
|  | **FlashVirtualAddressNotify** |  |
|  | **FlashFreePciExpressMmio** |  |
|  | **FlashDeviceProbe** |  |
|  | **DebugPrint** |  |
|  | **DebugAssert** |  |
|  | **EfiGetSystemConfigurationTable** |  |
|  | **CompareGuid** |  |
|  | **ReadUint64FromBuffer** |  |
|  | **NotifyVirtualAddressChangeNull** |  |
|  | **NotifyVirtualAddressChangeRelease** |  |
|  | **NullFunction** |  |
|  | **RuntimeNotifyEvent** |  |
|  | **RuntimeFreePages** |  |
|  | **PciExpressGetAddress** |  |
|  | **IoWrite16** |  |
|  | **IoRead32** |  |
|  | **DivU64x32** |  |
|  | **FlashIsReadyGet** |  |
|  | **FlashSpiFlashCmd** |  |
|  | **NotifySetDsNull** |  |
|  | **CpuPause** |  |
| Global | **Variables** |  |
| gImageHandle | **0x7218** |  |
| gST | **0x7208** |  |
| gBS | **0x7210** |  |
| gRT | **0x7220** |  |
| 0x7228 | **UINT64      BootServices_0;     //                0x7240** |  |
| DxeServices | **0x7250** |  |
| MmPciBase | **0x7258** |  |
| 0x73B8 | **UINT64      gPciExpressBaseAddress; //            0x7280** |  |
| PCIe | **Segment/Bus cache** |  |
| UINTN | **mPciExpressRegistration; //          0x7288** |  |
| qword_7270 | **0x7270** |  |
| qword_7278 | **0x7278** |  |
| byte_7268 | **0x7268** |  |
| Flash | **protocol & state** |  |
| UINT64 | **FlashProtocolHandle;    // qword_72F8 0x72F8** |  |
| qword_72F0 | **0x72F0** |  |
| qword_72E8 | **0x72E8** |  |
| qword_7290 | **0x7290** |  |
| qword_7318 | **0x7318** |  |
| qword_7308 | **0x7308** |  |
| dword_7310 | **0x7310** |  |
| dword_7300 | **0x7300** |  |
| qword_7338 | **0x7338** |  |
| byte_7332 | **0x7332** |  |
| byte_7331 | **0x7331** |  |
| Event | **notification handles** |  |
| UINT64 | **VirtualAddressChangeEvent; // qword_7230 0x7230** |  |
| qword_7238 | **0x7238** |  |
| qword_73B0 | **0x73B0** |  |
| qword_73C0 | **0x73C0** |  |
| Function | **Implementations** |  |
| Register | **virtual address change notify events** |  |
| Locate | **DxeServicesTable** |  |
| Status | **= EfiGetSystemConfigurationTable(&gEfiDxeServicesTableGuid, &gDS);** |  |
| Locate | **MmPciBase protocol** |  |
| if | **(gPciUsra == NULL) {** |  |

---
*Generated by HR650X BIOS Decompilation Project*