summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Core
AgeCommit message (Collapse)Author
2011-02-23Update PeiCore and DxeCore to verify FFS data checksum.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11332 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-12Update DEBUG log information to specify SMM driver to be loaded in SmmCorelgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11308 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-12Correct typo in word in DxeCore.lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11307 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-12Updates function description per UEFI2.3d. No impact is for functionality. ↵lgao4
The main changes include: 1. For LoadImage() service, EFI_ACCESS_DENIED return status is added, and EFI_SECURITY_VIOLATION return status description is updated. Meanwhile, EFI_PE32_IMAGE_PROTOCOL. LoadPeImage() in MdeModulePkg is also updated to match LoadImage() service. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11306 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-21Fix bounds check on parameter of type EFI_GCD_IO_TYPE to use ↵mdkinney
EfiGcdIoTypeMaximum instead of EfiGcdMemoryTypeMaximum. Also fix typo in DEBUG() message string for gDS->AllocateIoSpace() calls. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11268 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-11Clean up GCD DEBUG() macros so DEBUG_CODE() is only used to enable/disable ↵mdkinney
the DBG MMIO and GCD I/O map dumps git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11243 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-06Add DEBUG() macros to all GCD services to monitor all changes to the GCD ↵mdkinney
Memory and GCD I/O maps when DEBUG_GCD is set in PcdDebugPrintErrorLevel. If DEBUG_PROPERTY_DEBUG_CODE_ENABLED is also set in PcdDebugPropertyMask, then the GCD Memory and I/O Maps will be dumped every time there is a GCD change. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11230 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-09when SMM Communication Protocol.Communicate() is called from within SMM, ↵rsun3
SMRAM is accessible so it is not necessary to check the SMRAM open/lock state via SMM ACCESS Protocol. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11142 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-061) Change location of DEBUG() macro that prints the name of the FFS file ↵mdkinney
being evaluated by the DXE Dispatcher to eliminate a duplicate print. 2) Change location of DEBUG() macro that prints the name of the FFS file being evaluated by the SMM Dispatcher to eliminate a duplicate print. 3) Remove all references and processing of SOR from the PiSmmCore. Treat use of SOR in the dependency expression of an SMM Driver as an invalid depex opcode. 4) Remove all references for an SMM Driver being in the "Untrusted" state from the PiSmmCore. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11127 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-04Update PEI/DXE/SMM dispatchers to include DEBUG ((DEBUG_DISPATCH, )) macros ↵mdkinney
to log the evaluation of all dependency expressions. This logging can be enabled by setting the DEBUG_DISPATCH bit(0x80) of the PCD gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11117 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-09Add new PCD ↵lgao4
gEfiMdeModulePkgTokenSpaceGuid.PcdMaxEfiSystemTablePointerAddress for the MdeModulePkg that allows the platform DSC file to specify the address below which the EFI_SYSTEM_TABLE_POINTER structure is allocated. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11018 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-04Complement fix for revision #10998 (Remove PI SMM IPL's dependency on CPU AP).rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11001 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-03swaps the order of timer disable and memory map termination to make sure ↵vanjeff
memory map unchanged. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10999 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-03Remove PI SMM IPL's dependency on CPU AP so that PI SMM IPL can be ↵rsun3
dispatched before the CPU AP is installed. If PI SMM IPL will be dispatched before the CPU AP is installed for a platform, the platform developer is expected to set cache-ability of SMRAM to WB earlier to improve performance of SMM initialization. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10998 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-18Refine code to make code run more safely.ydong10
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10955 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-16Refine code to make code run safely.ydong10
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10880 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-15Refine soma code to make code run safely.ydong10
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10877 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-26Avoid DxeCore to reclaim PEI stack as IDT may be on it (like 32-bit OVMF).pgao2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10825 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-06Move registration of DXE Core with PeCoffExtraActionLib after the lib ↵mdkinney
constructors have been executed. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10778 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-03Update DXE Core so its own PE/COFF image is passed to the PeCoffExtraActionLibmdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10769 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-28Enhance FV2.ReadSection() to read GUIDED section raw data when its ↵lgao4
extraction guided protocol doesn’t exist. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10702 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-191. Add init flag DEBUG_AGENT_INIT_DXE_AP.vanjeff
2. Add definition DEBUG_AGENT_CONTINUE. 3. Update the definition of InitializeDebugAgent() more comments. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10660 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-18Fix 64-bit bug in DxeIpl. You can't cast an & UINT64 to a UINT32 *, as the ↵andrewfish
upper 32-bits do not get updated. In my case there was data on the stack for the upper 32-bits and it caused the size to be greater than 4GB. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10659 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-07Update the previous fix to only shadow the function for supported processor ↵andrewfish
architectrues. The old way required non supported processor architectures to opt out. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10637 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-07Fix issue with ARM port. Image.c shadow code is not ANSI C and crashes on ↵andrewfish
ARM. So I did the same thing that is done on Itanium and skipped the shadow for ARM architecture in all cases. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10636 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-291) Call ProcessNotifyList() to process all Dispatch Notifications after the ↵mdkinney
Memory Discovered PPI is installed. 2) Add ProcessLibraryConstructorList() call when OldCoreData != NULL and OldCoreData->ShadowedPeiCore == NULL. 3) Make sure no lib functions are used prior to the ProcessLibraryConstructorList() call. 4) Clean up comments git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10611 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-17Add a missing parameter description in the function header for ↵rsun3
CoreFindFreePagesI(). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10589 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-141) Improve how memory usage is tracked in DXE Coremdkinney
2) Update GetMemoryMap() to merge adjacent memory descriptors with identical types and attributes. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10579 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-14Fix DxeCore Dispatch Issue that DXE drivers may not be dispatched if they ↵lgao4
depend on the protocols produced by SMM driver. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10491 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-111) Fix IPF ICC 11.1 issue when /Ox is used related to the use of local ↵mdkinney
variables and parameter across the transition when TEMP RAM is disabled. 2) Update the logic that computes the offset of the heap and stack from TEMP RAM to Permanent RAM to handle all possible offsets values. 3) Minor cleanups to the PEI_CORE_INSTANCE structure 4) Simplify the logic that manages the TEMP RAM to PERM RAM transition and clean up the related DEBUG() messages. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10481 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-10Minor comment update.xdu2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10477 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-07Fix ICC 11.1 build breakmdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10467 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-05Use new API GetSectionFromAnyFvByFileType() of MdePkg DxeServicesLib ↵lgao4
library to get PE data of SMM_CORE driver. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10457 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24Update the copyright notice formathhtian
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10420 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-21Fix a bug that FV->ReadSection cannot get the EFI_SECTION_GUID_DEFINED type ↵niruiyu
section data. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10384 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-07Fix the issue that GCC treat enum type as unsigned int which incompatible ↵klu2
with UEFI spec's INT32. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10347 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-05MdeModulePkg: Fix warning with VS2005 toolchain on IA32jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10338 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-03Avoid DEBUG_CLEAR_MEMORY clearing MemoryMap internal structure.jgong5
In CoreFreePages(), the following sequence might break the MemoryMap internal structure: CoreConvertPages() -> CoreFreeMemoryMapStack() -> AllocateMemoryMapEntry() -> CoreAllocatePoolPages() -> DEBUG_CLEAR_MEMORY() CoreConvertPages() will call CoreFreeMemoryMapStack() after it adds the freed memory range, so the latter might use the just freed memory range when calling AllocateMemoryMapEntry(). But CoreFreePages() will call DEBUG_CLEAR_MEMORY() after CoreConvertPages(). This might clear up the memory map entry structure. The fix calls DEBUG_CLEAR_MEMORY() just after freed memory range is added in CoreConvertPages(), which is safe. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10335 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-21Change BufferSize from UINTN * to UINTN to eliminate pointer to pointer in ↵jyao1
SmmCore for security consideration. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10299 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-19Hold Memory Lock until DEBUG_CLEAR_MEMORY called in CoreFreePages(). jgong5
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10284 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-131. update the definitions in debug agent library, rename ↵vanjeff
DEBUG_AGENT_INIT_DXE to DEBUG_AGENT_INIT_DXE_CORE and add DEBUG_AGENT_INIT_S3. 2. disable debug timer interrupt in ExitBootServices(). git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10239 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-12Fixed a bug in LMFA code jchen20
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10233 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-11roll back IDT_ENTRY counter to 32vanjeff
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10229 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-10The patch attached is to fix the issue that LMFA feature is failed on OVMF. ↵jchen20
The root cause is that OVMF platform reserved 128k top memory range for EMU variable range before PEI memory range re-locate to specified memory range, which is quite different from real platform. The original implementation has an assumption that AllocatePage will NOT be invoked until PEI memory range is re-located to preassigned memory range, , which is TRUE in most real platform, but FALSE on OVMF platform. So This patch is to enhanced the memory resource HOB re-organization algorithm to eliminate the assumption. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10225 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-09Minor update comment to remove unprintable character in source file.qhuang8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10214 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-09Fix the SMRAM caching range base and size. The original code uses the ↵jgong5
biggest SMRAM range base and size to set the cache attribute by gDS->SetMemorySpaceAttributes(). This is not correct because the platform code might split the TSEG into several ranges. The fix searches and joins all the adjacent ranges to the biggest SMRAM range into a cacheable range so that TSEG can be cached as a whole. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10213 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04Fix a bug that a NULL pointer may be dereferenced. rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10178 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04Fix a bug in load modules at fixed address which may potentially impact OS S3.jchen20
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10175 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04Fix a bug in LMFA which may potentially impact OS S3.jchen20
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10174 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04Remove Size==0 branch in SmmAllocatePool()hhuan13
The background is : The SmmMemoryAllocationLib of one of the instance of MemoryAllocation library class. As in MdePkg comment for AllocatePool() : “If AllocationSize is 0, then a valid buffer of 0 size is returned.”,the SMM library implements AllocatePool by SMST service SmmAllocatePool which does NOT support the zero size. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10171 6f19259b-4bc3-4df7-8a09-765794883524