///\r
/// Point to ServiceTableShadow\r
///\r
- EFI_PEI_SERVICES *PS;\r
+ EFI_PEI_SERVICES *Ps;\r
PEI_PPI_DATABASE PpiData;\r
\r
///\r
EFI_PHYSICAL_ADDRESS FreePhysicalMemoryTop;\r
VOID* ShadowedPeiCore;\r
CACHE_SECTION_DATA CacheSection;\r
+ //\r
+ // For Loading modules at fixed address feature to cache the top address below which the \r
+ // Runtime code, boot time code and PEI memory will be placed. Please note that the offset between this field \r
+ // and Ps should not be changed since maybe user could get this top address by using the offet to Ps. \r
+ //\r
+ EFI_PHYSICAL_ADDRESS LoadModuleAtFixAddressTopAddress;\r
+ //\r
+ // The field is define for Loading modules at fixed address feature to tracker the PEI code\r
+ // memory range usage. It is a bit mapped array in which every bit indicates the correspoding memory page\r
+ // available or not. \r
+ //\r
+ UINT64 *PeiCodeMemoryRangeUsageBitMap;\r
+ //\r
+ // This field points to the shadowed image read function\r
+ //\r
+ PE_COFF_LOADER_READ_FILE ShadowedImageRead;\r
} PEI_CORE_INSTANCE;\r
\r
///\r
/// Pei Core Instance Data Macros\r
///\r
#define PEI_CORE_INSTANCE_FROM_PS_THIS(a) \\r
- CR(a, PEI_CORE_INSTANCE, PS, PEI_CORE_HANDLE_SIGNATURE)\r
+ CR(a, PEI_CORE_INSTANCE, Ps, PEI_CORE_HANDLE_SIGNATURE)\r
\r
/**\r
Function Pointer type for PeiCore function.\r