Open PatrickRudolph opened 5 years ago
Hi @PatrickRudolph,
Which UPDs specifically did you need more information on?
This applies to all FSP, all UPDs and interfaces. I'll giving an example on Coffeelake:
INT8 SkipPostBootSai Offset 0x0A72 - Skip POSTBOOT SAI Deprecated $EN_DIS.
POSTBOOT SAI isn't explain in any publicy available documentation. It looks like it's run by default. What does it do?
UINT8 PchSbiUnlock Offset 0x08C2 - PCH Unlock SBI access Deprecated $EN_DIS.
How's it different from PchSbAccessUnlock ?
UINT8 SkipMpInit Offset 0x00C8 - Skip Multi-Processor Initialization When this is skipped
Which steps does a boot loader need to do to run Multi-Processor Initialization when this is skipped?
UINT16 VddVoltage Memory Voltage Memory Voltage Override (Vddq).
Missing units.
UINT16 TotalFlashSize Offset 0x0590 - TotalFlashSize Enable/Disable.
What does it do?
UINT16 BiosSize Offset 0x0592 - BiosSize Enable/Disable.
What does it do?
UINT8 SpdProfileSelected Offset 0x00D8 - SPD Profile
Which profile can be selected? Like XMP profiles?
UINT8 TxtAcheckRequest Offset 0x0594 - TxtAcheckRequest Enable/Disable.
What does it do?
UINT8 PeiGraphicsPeimInit What does PeiGraphicsPeimInit do?
.....
@nate-desimone ping!
@nate-desimone ping!
Even with the integration guide it's impossible to understand what UPDs are actually doing. If a firmware developer can't even properly understand what UPDs should be set, how should one use FSP in a secure manner? Please improve the interface documentation of all FSP releases and explain in detail what an UPD is actually doing, which dependencies it has, if it works in RELEASE/DEBUG mode only ...