IntelFsp2Pkg: Add FSP 2.4 MultiPhase interface.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3916 Provide FSP 2.4 MultiPhase interface and scripts support. Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Cc: Star Zeng <star.zeng@intel.com> Signed-off-by: Chasel Chiu <chasel.chiu@intel.com> Reviewed-by: Nate DeSimone <nathaniel.l.desimone@intel.com>
This commit is contained in:
committed by
mergify[bot]
parent
4b7bd4c591
commit
df25a5457f
@@ -28,6 +28,7 @@ FspUpdSignatureCheck (
|
||||
|
||||
/**
|
||||
This function handles FspMultiPhaseSiInitApi.
|
||||
Starting from FSP 2.4 this function is obsolete and FspMultiPhaseSiInitApiHandlerV2 is the replacement.
|
||||
|
||||
@param[in] ApiIdx Internal index of the FSP API.
|
||||
@param[in] ApiParam Parameter of the FSP API.
|
||||
@@ -42,3 +43,36 @@ FspMultiPhaseSiInitApiHandler (
|
||||
{
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
/**
|
||||
FSP MultiPhase Platform Get Number Of Phases Function.
|
||||
|
||||
Allows an FSP binary to dynamically update the number of phases at runtime.
|
||||
For example, UPD settings could negate the need to enter the multi-phase flow
|
||||
in certain scenarios. If this function returns FALSE, the default number of phases
|
||||
provided by PcdMultiPhaseNumberOfPhases will be returned to the bootloader instead.
|
||||
|
||||
@param[in] ApiIdx - Internal index of the FSP API.
|
||||
@param[in] NumberOfPhasesSupported - How many phases are supported by current FSP Component.
|
||||
|
||||
@retval TRUE - NumberOfPhases are modified by Platform during runtime.
|
||||
@retval FALSE - The Default build time NumberOfPhases should be used.
|
||||
|
||||
**/
|
||||
BOOLEAN
|
||||
EFIAPI
|
||||
FspMultiPhasePlatformGetNumberOfPhases (
|
||||
IN UINT8 ApiIdx,
|
||||
IN OUT UINT32 *NumberOfPhasesSupported
|
||||
)
|
||||
{
|
||||
/* Example for platform runtime controlling
|
||||
if ((ApiIdx == FspMultiPhaseSiInitApiIndex) && (Feature1Enable == FALSE)) {
|
||||
*NumberOfPhasesSupported = 0;
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE
|
||||
*/
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
Reference in New Issue
Block a user