5 FSP PostCode
The FSP outputs 16 bit postcode to indicate which API and in which module the execution is happening.
| Bit Range | Description |
| Bit15 - Bit12 (X) | used to indicate the phase/api under which the code is executing |
| Bit11 - Bit8 (Y) | used to indicate the module |
| Bit7 (ZZ bit 7) | reserved for error |
| Bit6 - Bit0 (ZZ) | individual codes |
5.1 PostCode Info
Below diagram represents the 16 bit PostCode usage in FSP.
5.1.1 TempRamInit API Status Codes (0xFxxx)
| PostCode | Module | Description |
| 0x0000 | FSP | TempRamInit API Entry (The change in upper byte is due to not enabling of the Port81 early in the boot) |
| 0x007F | FSP | TempRamInit API Exit |
5.1.2 FspMemoryInit API Status Codes (0xDxxx)
| PostCode | Module | Description |
| 0xD800 | FSP | FspMemoryInit API Entry |
| 0xD87F | FSP | FSpMemoryInit API Exit |
| 0xDA00 | SA | Pre-Mem SaInit Entry |
| 0xDA01 | SA | DeviceConfigurePreMem Start |
| 0xDA02 | SA | OverrideDev0Did Start |
| 0xDA04 | SA | OverrideDev2Did Start |
| 0xDA06 | SA | Programming SA Bars |
| 0xDA08 | SA | Install SA HOBs |
| 0xDA0A | SA | Reporting SA PCIe code version |
| 0xDA0C | SA | SaSvInit Start |
| 0xDA10 | SA | Initializing DMI |
| 0xDA1F | SA | Initializing DMI/OPI Max PayLoad Size |
| 0xDA20 | SA | Initializing SwitchableGraphics |
| 0xDA30 | SA | Initializing SA PCIe |
| 0xDA3F | SA | Programming PEG credit values Start |
| 0xDA40 | SA | Initializing DMI Tc/Vc mapping |
| 0xDA42 | SA | CheckOffboardPcieVga |
| 0xDA44 | SA | CheckAndInitializePegVga |
| 0xDA50 | SA | Initializing Graphics |
| 0xDA7F | SA | Pre-Mem SaInit Exit |
| 0xDB00 | PCH | PCH API Entry |
| 0xDC00 | CPU | Pre-Mem Entry |
| 0xDC7F | CPU | Pre-Mem Exit |
5.1.3 TempRamExit API Status Codes (0xBxxx)
| PostCode | Module | Description |
| 0xB800 | FSP | TempRamExit API Entry |
| 0xB87F | FSP | TempRamExit API Exit |
5.1.3 FspSiliconInit API Status Codes (0x9xxx)
| PostCode | Module | Description |
| 0x9800 | FSP | FspSiliconInit API Entry |
| 0x987F | FSP | FspSiliconInit API Exit |
| 0x9A00 | SA | Post-Mem SaInit Entry |
| 0x9A01 | SA | DeviceConfigure Start |
| 0x9A02 | SA | UpdateSaHobPostMem Start |
| 0x9A03 | SA | Initializing Pei Display |
| 0x9A04 | SA | PeiGraphicsNotifyCallback Entry |
| 0x9A05 | SA | CallPpiAndFillFrameBuffer |
| 0x9A06 | SA | GraphicsPpiInit |
| 0x9A07 | SA | GraphicsPpiGetMode |
| 0x9A08 | SA | FillFrameBufferAndShowLogo |
| 0x9A0F | SA | PeiGraphicsNotifyCallback Exit |
| 0x9A10 | SA | Initializing SA Overclocking |
| 0x9A14 | SA | Initializing SA SkyCam device |
| 0x9A16 | SA | Initializing SA GMM device |
| 0x9A18 | SA | Internal Device and Misc Configurations |
| 0x9A1A | SA | SaProgramLlcWays Start |
| 0x9A20 | SA | Initializing PciExpressInitPostMem |
| 0x9A30 | SA | Initializing Vtd |
| 0x9A32 | SA | Initializing Pavp |
| 0x9A34 | SA | PeiInstallSmmAccessPpi Start |
| 0x9A36 | SA | EdramWa Start |
| 0x9A4F | SA | Post-Mem SaInit Exit |
| 0x9A50 | SA | SaSecurityLock Start |
| 0x9A5F | SA | SaSecurityLock End |
| 0x9A60 | SA | SaSResetComplete Entry |
| 0x9A61 | SA | Set BIOS_RESET_CPL to indicate all configurations complete |
| 0x9A62 | SA | SaSvInit2 Start |
| 0x9A63 | SA | GraphicsPmInit Start |
| 0x9A64 | SA | SaPeiPolicyDump Start |
| 0x9A6F | SA | SaSResetComplete Exit |
| 0x9A70 | SA | SaS3ResumeAtEndOfPei Callback Entry |
| 0x9A7F | SA | SaS3ResumeAtEndOfPei Callback Exit |
| 0x9B7F | PCH | Post-Mem ScInit Entry |
| 0x9B01 | PCH | Post-Mem Program HSIO ModPHY settings |
| 0x9B02 | PCH | Post-Mem SMBus configuration |
| 0x9B03 | PCH | Post-Mem LPC configuration |
| 0x9B04 | PCH | Post-Mem SATA initizalization |
| 0x9B05 | PCH | Post-Mem PCIe initizalization |
| 0x9B06 | PCH | Post-Mem xHCI initizalization |
| 0x9B07 | PCH | Post-Mem xDCI initizalization |
| 0x9B08 | PCH | Post-Mem HD Audio initizalization |
| 0x9B09 | PCH | Post-Mem GMM configuration |
| 0x9B0A | PCH | Post-Mem LPSS initizalization |
| 0x9B0B | PCH | Post-Mem SCS initizalization |
| 0x9B0C | PCH | Post-Mem ISH initizalization |
| 0x9B0D | PCH | Post-Mem ITSS configuration |
| 0x9B40 | PCH | Post-Mem OnEndOfPEI Entry |
| 0x9B4F | PCH | Post-Mem OnEndOfPEI Exit |
| 0x9B7F | PCH | Post-Mem ScInit Exit |
| 0x9C00 | CPU | Post-Mem Entry |
| 0x9C7F | CPU | Post-Mem Exit |
5.1.4 NotifyPhase API Status Codes (0x6xxx)
| PostCode | Module | Description |
| 0x6800 | FSP | NotifyPhase API Entry |
| 0x687F | FSP | NotifyPhase API Exit |