summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Core/Pei/PeiMain.h
AgeCommit message (Collapse)Author
2010-01-04Add default implementation of EFI_CPU_IO_PPI and EFI_PCI_CFG2_PPI for ↵klu2
EFI_SERVICES_TABLE. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9662 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-25Add fixing for supporting third-party FV in unknown format. klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9601 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-03After PeiCore is shadowed into permanent memory, the pointers to build-in ↵klu2
Ffs2 FvPpi should be also fixed up to be pointed to the one in permanent memory. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9508 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-11Enabling EFI_PEI_FIRMWARE_VOLUME_PPI introduced by PI1.2.klu2
1, Implement EFI_PEI_FIRMWARE_VOLUME_PPI for FFS2 format as build-in supporting FV format in PeiCore. 2, Reduce the assumption of memory-mapped FV in PeiCore. PeiCore should access FV via EFI_PEI_FIRMWARE_VOLUME_PPI interface but not cast FvHandle/FileHandle to EFI_FIRMWARE_VOLUME_HEADER/EFI_FV_FILE_HEADER directly. 3, Reduce AllFv[] and AllFvCount in PEI_CORE_INSTANCE structure. Original PEI_CORE_INSTANCE use AllFv[] and Fv[] array to manage discovered FV and dispatched FV. But not need to make thing too complex. Now PEI_CORE_FV_HANDLE array of Fv[] will take responsibility to manage all FV instance and status. 4, Fix the bug use PeiDispatcher use wrong index for PeiFfsFindNextVolume(), 5, Fix the bug in PeiFfsFindNextVolume(), if instance is not found, *VolumeHandle should be set to NULL but not VolumeHandle was set to NULL. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9407 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-08updated to use the term “temporary memory” but not CAReric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8035 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-05Update PeiCore to handle FvImage with PI FV extension headerlgao4
Update Capsule PCDs PcdMaxSizePopulateCapsule and PcdMaxSizeNonPopulateCapsule to the flexible PCD type. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7805 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06Clean up FaultTolerantWriteDxe to remove the duplicated definition.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7471 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-20coding styleeric_tian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7311 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-16Clean up to update the reference of the these macros:qhuang8
EFI_SIGNATURE_16 -> SIGNATURE_16 EFI_SIGNATURE_32 -> SIGNATURE_32 EFI_SIGNATURE_64 -> SIGNATURE_64 EFI_FIELD_OFFSET -> OFFSET_OF EFI_MAX_BIT -> MAX_BIT EFI_MAX_ADDRESS -> MAX_ADDRESS These macros are not defined in UEFI spec. It makes more sense to use the equivalent macros in Base.h to avoid alias. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7056 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-03Global variables have been moved backward ahead of functions.jji4
Only a few cases were left due to its module structure. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6816 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-17Update comments for PeiCorelgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6552 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-13Rename PiLibInstallFvInfoPpi() to PeiServicesInstallFvInfoPpi() and remove ↵qhuang8
the reference of PeiPiLib, it has been merged to PeiServicesLib git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6522 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-281. build.py's changes : include XXXEntryPointLib.h into the corresponding ↵eric_tian
autogen.c files of various modules to avoid the inconsistence between the interface definition of library class and the implementation of autogen.c 2. code base changes : modify some interface definitions to follow the lastest Mde Library Spec. 3. PeiCore changes : remove the return value of PeiCore() which is meaningless as PeiCore will never reach the end of procedure.replace it with VOID. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6271 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-211) Update SetPeiServicesTablePointer's prototype add CONST modifier.qwang12
2) Move STRING_REF from MdePkg/Include/Uefi/UefiBaseType.h to IntelFramework/Include/Protocol/FrameworkHii.h. 3) Move RELOFST from MdePkg/Include/Uefi/UefiInternalFormRepresentation.h to IntelFramework/Include/Protocol/FrameworkHii.h. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6166 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-20Fix ECC issue.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6142 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-04clean up the un-suitable ';' location when declaring the functions.vanjeff
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5820 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-03Clean up BottomOfCarHeap, TopOfCarHeap, SizeOfTemporaryMemory, ↵klu2
SizeOfCacheAsRam, MaxTopOfCarHeap from PeiCore's private data structure. Because after PI enabling, these data value can be got from SecCore's handoff data structure. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5786 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-18Re-integrate patch in r5626~r5628:Enhance PeiCore dispatcher and fix a bug ↵qhuang8
in the patch. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5669 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-12Temporarily rollback the change from 5625 though 5628 for more investigation.qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5629 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-12Add PeimDispatcherReenter to fix bug of PeiDispatch can not be quit correctly.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5628 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-11Enhance PeiCore's dispatcher, move PeimDispatchOnThisPass and ↵klu2
PeimNeedingDispatch to private data to hold status for PeiCore's second reenter. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5626 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-08Add more comments for PeiCore.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5618 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-08Correct comments.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5617 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-08Correct comments.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5614 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-23Code scrub for PeiCore module.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5558 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-19Fix a bug that PeiCore might fail to fix up Ppi pointer in CAR. qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5527 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-16Fix function comment to follows doxygen format.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5499 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-14Change MAX_PPI_DESCRIPTORS to FixedPcd PcdPeiCoreMaxPpiSupported, the ↵lgao4
default value is 64. Maybe other platform requires more than 64 Ppi and set this Pcd value. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5061 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-19Modify all file header to follow doxygen formatklu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4917 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-07For Itanium platform, the switch CAR action has been moved to SecCore ↵klu2
according to PI specification, so I clean up the PeiCore to remove stack related code. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4803 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-29Merge Temporary Ram support patch.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4782 6f19259b-4bc3-4df7-8a09-765794883524
2007-12-26Fixed the bug that the PPI descriptor number defined in PeiCore.h is not ↵vanjeff
enough to hold all the PPI and PPI notifies. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4435 6f19259b-4bc3-4df7-8a09-765794883524
2007-12-10MdeModule cleanup for PI:klu2
1) PeiMain: - Use PCD for bundle of status code which definitions are put into MdePkg.dec file. 2) DxeMain: - Use PCD for bundle of status code which definitions are put into MdePkg.dec file. - Do not produce SectionExtraction protocol which is belong to IntelFramework specification. - Update many macro for PI specifications. 3) DxeIpl - Use PCD for bundle of status code which definitions are put into MdePkg.dec file. 4) Add SectionExtractionDxe module (IntelFrameworkModulePkg) - This module will produce EFI_SECTION_EXTRACTION_PROTOCOL defined in framework specification. If a old platform want to use this protocol, then this platform need dispatch this DXE driver. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4376 6f19259b-4bc3-4df7-8a09-765794883524
2007-12-06Enable PeiCore to dispatch the encapsulated fv images with depex expression. ↵lgao4
This feature can process the different fv images in the different boot path, which is useful for boot performance and image size. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4366 6f19259b-4bc3-4df7-8a09-765794883524
2007-11-29remove building of EFI_SEC_PLATFORM_INFORMATION_PPI GUIDed HOB from PEI ↵qwang12
core. Platform module is a better place for size and performance consideration. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4344 6f19259b-4bc3-4df7-8a09-765794883524
2007-11-191) Make PEI PI File system service to skip PAD fileqwang12
2) Remove some unused code git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4302 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-18Fix a bug:qwang12
PI spec Vol 1, 7.3.1 specifies that this same information reported by EFI_SEC_PLATFORM_INFORMATION_PPI will be placed in a GUIDed HOB with the PPI GUID as the HOB GUID for HOB consumer phase. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4166 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-16Remove comments for removed parameter.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4123 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-151) add gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported and ↵qwang12
gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxPeimPerFv to replace the MACRO definitions. 2) Fix a bug in Pei dispatcher to suppoprt PEI Apriori file git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4116 6f19259b-4bc3-4df7-8a09-765794883524
2007-10-10Increase max FVs from 4 to 6.mdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4083 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-28Remove PeCoffLoader library class and its instances.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3967 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-281. Replace PeCoffLoader library by PeCoff lib for PeiCore, DxeIpl and DxeMain. lgao4
2. Add three PeCoff library instances for NT32 PeImage load. 3. Update PeCoffGetEntryPointLib to support TeImage. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3965 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-24Merge branch of PI tree to main trunkklu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3918 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-14Add InvokePeiCore function to invoke the PeiCore in new stack.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3844 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-12PI Enable: klu2
1) The entry point of PeiCore has been changed to EFI_PEI_CORE_ENTRY_POINT defined in PI. 2) Nt32, Tiger and lakeport platform's SecCore has been updated. 3) Autogen tools also has been updated. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3804 6f19259b-4bc3-4df7-8a09-765794883524
2007-09-04Merge the PI enabling works from the branchqwang12
First round of PI enabling work: 1) PiPeiCis changes (CONST, EFI_PEI_FILE_HANDLE.. etc) 2) Make use of FirmwareVolume 2 protocol. 3) Verified for Nt32Pkg and real platform for S3. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3773 6f19259b-4bc3-4df7-8a09-765794883524
2007-08-30[PI compatible enabling] Add PeiRegisterForShadow interface for PEI_SERVICEklu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3743 6f19259b-4bc3-4df7-8a09-765794883524
2007-08-30Add some definitions which will be used for future PI enabling.klu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3742 6f19259b-4bc3-4df7-8a09-765794883524
2007-08-13Add missing definition EFI_PEIM_ENTRY_POINT to IntelFrameworkPkg and rename ↵klu2
original to EFI_PEIM_ENTRY_POINT2 to follow PI definition. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3629 6f19259b-4bc3-4df7-8a09-765794883524
2007-08-101) Move the structure definitions related GUID ↵klu2
EFI_STATUS_CODE_SPECIFIC_DATA_GUID and EFI_STATUS_CODE_DATA_TYPE_STRING_GUID from IntelFrameworkPkg\Framework/StatusCodeDataTypeId.h to IntelFrameworkPkg\Guid/StatusCodeDataTypeId.h 2) Remove IntelFrameworkPkg/Framework/StatusCodeDataTypeId.h git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3611 6f19259b-4bc3-4df7-8a09-765794883524