-/*++\r
+/** @file\r
\r
Copyright (c) 2006 - 2007, Intel Corporation\r
All rights reserved. This program and the accompanying materials\r
\r
Revision History\r
\r
---*/\r
+**/\r
\r
#ifndef _PEI_MAIN_H_\r
#define _PEI_MAIN_H_\r
VOID *Raw;\r
} PEI_PPI_LIST_POINTERS;\r
\r
-#define MAX_PPI_DESCRIPTORS 64\r
-\r
typedef struct {\r
INTN PpiListEnd;\r
INTN NotifyListEnd;\r
INTN DispatchListEnd;\r
INTN LastDispatchedInstall;\r
INTN LastDispatchedNotify;\r
- PEI_PPI_LIST_POINTERS PpiListPtrs[MAX_PPI_DESCRIPTORS];\r
+ PEI_PPI_LIST_POINTERS PpiListPtrs[FixedPcdGet32 (PcdPeiCoreMaxPpiSupported)];\r
} PEI_PPI_DATABASE;\r
\r
\r
--*/\r
;\r
\r
-#if defined (MDE_CPU_IPF)\r
- //\r
- // In Ipf we should make special changes for the PHIT pointers to support\r
- // recovery boot in cache mode.\r
- //\r
-#define SWITCH_TO_CACHE_MODE(CoreData) SwitchToCacheMode(CoreData)\r
-#define CACHE_MODE_ADDRESS_MASK 0x7FFFFFFFFFFFFFFFULL\r
-VOID\r
-SwitchToCacheMode (\r
- IN PEI_CORE_INSTANCE *CoreData\r
-)\r
-/*++\r
-\r
-Routine Description:\r
-\r
- Switch the PHIT pointers to cache mode after InstallPeiMemory in CAR.\r
-\r
-Arguments:\r
-\r
- CoreData - The PEI core Private Data\r
-\r
-Returns:\r
-\r
---*/\r
-;\r
-\r
-#else\r
-\r
-#define SWITCH_TO_CACHE_MODE(CoreData)\r
-\r
-#endif\r
-\r
//\r
// PPI support functions\r
//\r
)\r
;\r
\r
-/**\r
- Transfers control to a function starting with a new stack.\r
-\r
- Transfers control to the function specified by EntryPoint using the new stack\r
- specified by NewStack and passing in the parameters specified by Context1 and\r
- Context2. Context1 and Context2 are optional and may be NULL. The function\r
- EntryPoint must never return.\r
-\r
- If EntryPoint is NULL, then ASSERT().\r
- If NewStack is NULL, then ASSERT().\r
-\r
- @param EntryPoint A pointer to function to call with the new stack.\r
- @param Context1 A pointer to the context to pass into the EntryPoint\r
- function.\r
- @param Context2 A pointer to the context to pass into the EntryPoint\r
- function.\r
- @param NewStack A pointer to the new stack to use for the EntryPoint\r
- function.\r
- @param NewBsp A pointer to the new BSP for the EntryPoint on IPF. It's\r
- Reserved on other architectures.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PeiSwitchStacks (\r
- IN SWITCH_STACK_ENTRY_POINT EntryPoint,\r
- IN VOID *Context1, OPTIONAL\r
- IN VOID *Context2, OPTIONAL\r
- IN VOID *NewStack,\r
- IN VOID *NewBsp\r
- );\r
-\r
EFI_STATUS\r
PeiFindFileEx (\r
IN CONST EFI_PEI_FV_HANDLE FvHandle,\r