Add some definitions which will be used for future PI enabling.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3742 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
klu2 2007-08-30 07:35:09 +00:00
parent b61439a709
commit 3a63377f2b
1 changed files with 32 additions and 0 deletions

View File

@ -48,6 +48,8 @@ Revision History
extern EFI_GUID gEfiPeiCorePrivateGuid;
#define PEI_CORE_INTERNAL_FFS_FILE_DISPATCH_TYPE 0xff
//
// Pei Core private data structures
//
@ -70,6 +72,27 @@ typedef struct {
PEI_PPI_LIST_POINTERS PpiListPtrs[MAX_PPI_DESCRIPTORS];
} PEI_PPI_DATABASE;
#define PEI_CORE_MAX_FV_SUPPORTED 4
#define PEI_CORE_MAX_PEIM_PER_FV 32
//
// PEI_CORE_FV_HANDE.PeimState
// Do not change these values as there is code doing math to change states.
// Look for Private->Fv[FvCount].PeimState[PeimCount]++;
//
#define PEIM_STATE_NOT_DISPATCHED 0x00
#define PEIM_STATE_DISPATCHED 0x01
#define PEIM_STATE_REGISITER_FOR_SHADOW 0x02
#define PEIM_STATE_DONE 0x03
typedef struct {
EFI_FIRMWARE_VOLUME_HEADER *FvHeader;
UINT8 PeimState[PEI_CORE_MAX_PEIM_PER_FV];
EFI_PEI_FILE_HANDLE FvFileHandles[PEI_CORE_MAX_PEIM_PER_FV];
BOOLEAN ScanFv;
} PEI_CORE_FV_HANDLE;
typedef struct {
UINT8 CurrentPeim;
UINT8 CurrentFv;
@ -93,6 +116,15 @@ typedef struct{
EFI_PEI_SERVICES *PS; // Point to ServiceTableShadow
PEI_PPI_DATABASE PpiData;
PEI_CORE_DISPATCH_DATA DispatchData;
UINTN FvCount;
PEI_CORE_FV_HANDLE Fv[PEI_CORE_MAX_FV_SUPPORTED];
EFI_PEI_FILE_HANDLE CurrentFvFileHandles[PEI_CORE_MAX_PEIM_PER_FV];
UINTN AprioriCount;
UINTN CurrentPeimFvCount;
UINTN CurrentPeimCount;
EFI_PEI_FILE_HANDLE CurrentFileHandle;
UINTN AllFvCount;
EFI_PEI_FV_HANDLE AllFv[PEI_CORE_MAX_FV_SUPPORTED];
EFI_PEI_HOB_POINTERS HobList;
BOOLEAN SwitchStackSignal;
BOOLEAN PeiMemoryInstalled;