UINTN CurrentPeimFvCount;\r
UINTN CurrentPeimCount;\r
EFI_PEI_FILE_HANDLE CurrentFileHandle;\r
+ BOOLEAN PeimNeedingDispatch;\r
+ BOOLEAN PeimDispatchOnThisPass;\r
+ BOOLEAN PeimDispatcherReenter;\r
UINTN AllFvCount;\r
EFI_PEI_FV_HANDLE AllFv[FixedPcdGet32 (PcdPeiCoreMaxFvSupported)];\r
EFI_PEI_HOB_POINTERS HobList;\r
BOOLEAN PeiMemoryInstalled;\r
EFI_PHYSICAL_ADDRESS StackBase;\r
UINT64 StackSize;\r
- VOID *BottomOfCarHeap;\r
- VOID *TopOfCarHeap;\r
VOID *CpuIo;\r
EFI_PEI_SECURITY2_PPI *PrivateSecurityPpi;\r
EFI_PEI_SERVICES ServiceTableShadow;\r
- UINTN SizeOfTemporaryMemory;\r
- UINTN SizeOfCacheAsRam;\r
- VOID *MaxTopOfCarHeap;\r
EFI_PEI_PPI_DESCRIPTOR *XipLoadFile;\r
EFI_PHYSICAL_ADDRESS PhysicalMemoryBegin;\r
UINT64 PhysicalMemoryLength;\r
/**\r
Conduct PEIM dispatch.\r
\r
- @param SecCoreData Points to a data structure containing information about the PEI core's operating\r
- environment, such as the size and location of temporary RAM, the stack location and\r
- the BFV location.\r
+ @param SecCoreData Pointer to the data structure containing SEC to PEI handoff data\r
@param PrivateData Pointer to the private data passed in from caller\r
\r
@retval EFI_SUCCESS Successfully dispatched PEIM.\r
\r
@param Private PeiCore's private data structure\r
@param FileHandle PEIM's file handle\r
- @param PeimCount Peim count in all dispatched PEIMs.\r
+ @param PeimCount The index of last dispatched PEIM.\r
\r
- @retval TRUE Can be dispatched\r
- @retval FALSE Cannot be dispatched\r
+ @retval TRUE Can be dispatched\r
+ @retval FALSE Cannot be dispatched\r
\r
**/\r
BOOLEAN\r
\r
/**\r
\r
- Convert Ppi description and PpiData pointer in heap after temporary memory\r
- is migrated to permenent memory.\r
- \r
- @param PrivateData PeiCore's private data structure\r
- @param OldCheckingBottom The old checking bottom.\r
- @param OldCheckingTop The old checking top.\r
+ Migrate the Hob list from the CAR stack to PEI installed memory.\r
+\r
+ @param PrivateData Pointer to PeiCore's private data structure.\r
+ @param OldCheckingBottom Bottom of temporary memory range. All Ppi in this range\r
+ will be fixup for PpiData and PpiDescriptor pointer.\r
+ @param OldCheckingTop Top of temporary memory range. All Ppi in this range\r
+ will be fixup for PpiData and PpiDescriptor.\r
@param Fixup The address difference between\r
the new Hob list and old Hob list.\r
\r
\r
/**\r
\r
- Install PPI services.\r
+ Install PPI services. It is implementation of EFI_PEI_SERVICE.InstallPpi.\r
\r
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.\r
@param PpiList Pointer to ppi array that want to be installed.\r
\r
@retval EFI_SUCCESS if all PPIs in PpiList are successfully installed.\r
@retval EFI_INVALID_PARAMETER if PpiList is NULL pointer\r
- @retval EFI_INVALID_PARAMETER if any PPI in PpiList is not valid\r
+ if any PPI in PpiList is not valid\r
@retval EFI_OUT_OF_RESOURCES if there is no more memory resource to install PPI\r
\r
**/\r
\r
@retval EFI_SUCCESS if the operation was successful\r
@retval EFI_INVALID_PARAMETER if OldPpi or NewPpi is NULL\r
- @retval EFI_INVALID_PARAMETER if NewPpi is not valid\r
+ if NewPpi is not valid\r
@retval EFI_NOT_FOUND if the PPI was not in the database\r
\r
**/\r
@param PeiServices An indirect pointer to the EFI_PEI_SERVICES table published by the PEI Foundation.\r
@param FileHandle File handle of a Fv type file.\r
@param AuthenticationState Pointer to attestation authentication state of image.\r
-\r
+ If return 0, means pass security checking.\r
\r
@retval EFI_NOT_FOUND FV image can't be found.\r
@retval EFI_SUCCESS Successfully to process it.\r