Commit Graph

391 Commits

Author SHA1 Message Date
erictian e439df5074 Make sure the return value of MapKey is correct by moving the assignment into memory lock protection region
Signed-off-by: erictian
Reviewed-by: rsun3

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11700 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-25 03:04:31 +00:00
niruiyu 396e9039ae Add the DriverFamilyOverride support in DxeCore.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11698 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-24 03:32:42 +00:00
lzeng14 deff65a4fd CalculateSum8() and CalculateSum16() defined in BaseLib are used to calculate checksum.
Signed-off-by: lzeng14
Reviewed-by: rsun3

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11674 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-17 12:13:35 +00:00
mdkinney a36a9b3794 Fix LocateDevicePath() to return proper error status code. It was returning EFI_INVALID_PARAMETER if Device was NULL even if not handles matched the search criteria. The proper behavior is to return EFI_NOT_FOUND if not handles match the search criteria, and only return EFI_INVALID_PARAMETER if at least one match is found and Device is NULL.
Also update function header comment block for LocateDevicePath() to match UEFI Specification.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11406 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-16 16:17:09 +00:00
lgao4 89cd8129f7 Update PeiCore and DxeCore to verify FFS data checksum.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11332 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-23 03:09:55 +00:00
lgao4 d613c2a88b Correct typo in word in DxeCore.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11307 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-12 01:34:05 +00:00
lgao4 b695e7ff4a Updates function description per UEFI2.3d. No impact is for functionality. 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-02-12 01:29:17 +00:00
mdkinney 5d1cf216ed Fix bounds check on parameter of type EFI_GCD_IO_TYPE to use 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-21 18:49:36 +00:00
mdkinney aa927cae81 Clean up GCD DEBUG() macros so DEBUG_CODE() is only used to enable/disable 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-11 23:11:23 +00:00
mdkinney f9d1f97c45 Add DEBUG() macros to all GCD services to monitor all changes to the GCD 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
2011-01-06 02:51:08 +00:00
mdkinney fa542a1e77 1) Change location of DEBUG() macro that prints the name of the FFS file 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-06 21:55:14 +00:00
mdkinney 6a55eea3eb Update PEI/DXE/SMM dispatchers to include DEBUG ((DEBUG_DISPATCH, )) macros 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-12-04 20:05:09 +00:00
lgao4 6eea8eaeef Add new PCD 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-09 07:54:53 +00:00
vanjeff 785b5f5a50 swaps the order of timer disable and memory map termination to make sure memory map unchanged.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10999 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-03 03:21:29 +00:00
ydong10 cd7bfc2c63 Refine code to make code run safely.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10880 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-16 04:51:25 +00:00
mdkinney d0d41b52e0 Move registration of DXE Core with PeCoffExtraActionLib after the lib constructors have been executed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10778 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-06 23:09:49 +00:00
mdkinney b43619d0cd Update DXE Core so its own PE/COFF image is passed to the PeCoffExtraActionLib
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10769 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-03 05:20:15 +00:00
lgao4 1d6ee65f82 Enhance FV2.ReadSection() to read GUIDED section raw data when its 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-28 01:12:18 +00:00
vanjeff 4cf7e0380e 1. Add init flag DEBUG_AGENT_INIT_DXE_AP.
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-19 02:26:09 +00:00
rsun3 35f9e94ed4 Add a missing parameter description in the function header for CoreFindFreePagesI().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10589 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-17 07:18:53 +00:00
mdkinney 2345e7d4a4 1) Improve how memory usage is tracked in DXE Core
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-06-14 23:21:26 +00:00
lgao4 0e4483bc69 Fix DxeCore Dispatch Issue that DXE drivers may not be dispatched if they 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-14 08:27:28 +00:00
hhtian cd5ebaa06d Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10420 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 09:49:11 +00:00
niruiyu 3140ceda76 Fix a bug that FV->ReadSection cannot get the EFI_SECTION_GUID_DEFINED type section data.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10384 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-21 02:40:36 +00:00
klu2 c5d00b30c1 Fix the issue that GCC treat enum type as unsigned int which incompatible 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-07 02:33:16 +00:00
jljusten b295dfd486 MdeModulePkg: Fix warning with VS2005 toolchain on IA32
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10338 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-05 03:43:36 +00:00
jgong5 38c7df9848 Avoid DEBUG_CLEAR_MEMORY clearing MemoryMap internal structure.
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-04-03 05:34:16 +00:00
jgong5 a5ca8fa772 Hold Memory Lock until DEBUG_CLEAR_MEMORY called in CoreFreePages().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10284 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-19 04:22:35 +00:00
vanjeff 213fecefbb 1. update the definitions in debug agent library, rename 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-13 16:52:46 +00:00
jchen20 9bfb494096 The patch attached is to fix the issue that LMFA feature is failed on OVMF. 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-10 02:47:05 +00:00
rsun3 60cf9cfc14 Minor bug fix and robustness check improvement.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10168 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-03 09:40:16 +00:00
vanjeff e7af83aece 1. Refine debug agent library.
2. DxeCore and DxeIpl consume debug agent library. 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10119 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-27 17:04:12 +00:00
rsun3 d2fbaaab17 Add more code robustness check for modules under MdeModulePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10108 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-26 08:53:27 +00:00
klu2 8976547970 Clean up EFI_SPECIFICATION_VERSION and PI_SPECIFICATION_VERSION.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10072 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25 16:31:22 +00:00
rsun3 12fbc893e4 Minor comment fix.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10058 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 08:09:39 +00:00
lgao4 6bfbb5f0e0 1. Correct File header to ## @file
2. Remove unnecessary .common] postfix on section.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10052 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 00:21:16 +00:00
mdkinney cd539d485d Fix comment
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10048 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-23 17:59:48 +00:00
andrewfish 3351d21fe1 Cleanup HOB DEBUG prints
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10020 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-17 01:12:55 +00:00
mdkinney 74e44290e2 1) Fix build issues
2) Change ARCHITECTURAL_PROTOCOL_ENTRY name to EFI_CORE_PROTOCOL_NOTIFY_ENTRY so it can be used for both Architectural Protocols and optional protocols that the DXE Core may use.  Also remove BOOLEAN ArchitecturalProtocol field, so it is back to its original form.
3) Put mArchProtocols[] back to its original form, but add a NULL entry at the end so the end of the table can be easily detected in loops
4) Add mOptionalProtocols[] that at this time only has the SMM Base 2 Protocol in it.
5) Add NULL entry to mMissingProtocols[] so the end of the table can be easily detected.
6) Update all loops on mArchProtocols[], mOptionalProtocols, and mMissingProtocols[] to remove Index(s) and simply looks for a NULL ProtocolGuid to find the end of the table.
7) Update protocol notify events to pass the associated EFI_CORE_PROTOCOL_NOTIFY_ENTRY * as the Context parameter.   This simplifies GenericProtocolNotify() by completely eliminating the search loop.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10016 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 20:59:57 +00:00
andrewfish 8e90dd6b54 Clean up HOB debug prints
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10012 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 03:05:59 +00:00
andrewfish b33339fa64 Fix crash in UnixPkg and BeagleBoard caused by gSmmBase2 getting added to the now incorectly named mARchProtocols list. CoreDispatchMissingArchProtocols() did to check to see if the element was an AP (not all are now). Also Missing entry was not bounds checked, it was assumed to be <= Index witch is no longer true. So in both UnixPkg and BeagleBoard the loop was blowing past the end and garbage data caused page faults. Also add m prefix to global.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10011 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-16 02:52:15 +00:00
mdkinney 0803854bc1 Update DXE Core to be compatible with PI 1.2 SMM Drivers.
PI 1.2 SMM Drivers are allowed to call UEFI/DXE services and Protocols from the entry point of the PI 1.2 SMM Driver.  These UEFI/DXE services and Protocols may directly or indirectly calls the UEFI Boot Services RaiseTPL() and RestoreTPL().  These UEFI Boot Services use the CPU Architectural Protocol to enable interrupts if the TPL level is below TPL_HIGH_LEVEL and enable interrupts of the TPL is at TPL_HIGH_LEVEL.  Interrupts should be masked while executing SMM drivers, so if a direct or indirect call to the UEFI Boot Service RestoreTPL() would enable interrupts, then an interrupt could be incorrectly delivered in SMM context.  

The solution is for the DXE Core to register for the PI 1.2 SMM Base2 Protocol.  If that protocol is present in the platform, then the DXE Core can use the SMM Base 2 Protocol's InSmm() function to determine if the platform is currently executing in SMM content.  If the current context is in SMM, then do not allow any requests to be forwarded to the CPU Architecture Protocol to enable interrupts.





git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9997 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-13 01:57:22 +00:00
jchen20 852081fc68 revise the debug message to add 0x in front of the HEX number for consistency
replace FixedPcdGetXX with PcdGetXX to access PcdLoadModuleAtFixAddressEnable

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9964 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-10 06:10:53 +00:00
jchen20 99ff63cf03 change the GetPcd64 to FixedGetPcd64 to pass ECC
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9957 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-09 09:52:46 +00:00
erictian 853adefc0c format uniform: move tab to blank.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9949 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-08 05:54:54 +00:00
qhuang8 58125fb3f9 Remove DEBUG_LOAD for InstallProtocolInterface() to align with PPI installation debug message in PeiCore.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9945 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-08 03:14:15 +00:00
jchen20 ebfb7bb55b modified to pass the VS2003 build
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9944 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-08 03:13:09 +00:00
jchen20 54ea99a798 Enable the Load Module At fixed Address feature
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9937 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-05 07:54:16 +00:00
xli24 f9876ecf8a Remove reference to PCDs of status code value. Use macros introduced in PI1.2 instead.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9833 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-27 04:00:58 +00:00
rsun3 1ccdbf2a3e Improve coding style in MdeModulePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9793 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-19 06:42:21 +00:00
davidhuang 202c32790f PI 1.1 SMM Feature Check-in
1. Update DxeMain to support COMBINED_DXE_SMM driver dispatch.
2. Add ReportStatusCodeRouter SMM part.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9591 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-23 06:51:36 +00:00
lgao4 6320fa42c9 Produce LoadPeImage protocol only in framework compatibility mode.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9586 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-22 08:02:33 +00:00
lgao4 a13df02ed5 Correct error status to EFI_NOT_FOUND when the image can't be got.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9502 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-01 10:15:43 +00:00
lgao4 7748df3da9 Apply GetFileBufferByFilePath API of DxeServicesLib to replace local CoreOpenImageFile function.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9487 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-26 01:08:36 +00:00
lgao4 6d9a0f280d Update comments on setting >= 8 bytes Fv Alignment.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9372 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-26 09:14:47 +00:00
jljusten e3d7cceb99 Fix warnings generated by GCC.
These warnings seem to have been triggered by the recent change of
EFI_STATUS from INTN to UINTN.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9329 6f19259b-4bc3-4df7-8a09-765794883524
2009-10-02 06:40:58 +00:00
qhuang8 81bf52d6d8 Remove the error checking for multi-instance device path since Dxecore has been enhanced to handle that.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9295 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-21 14:35:01 +00:00
qhuang8 dc07b3d549 Enhance DxeCore LocateDevicePath() boot service to handle muli-instance device path.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9294 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-21 14:26:05 +00:00
lgao4 db0b7ad5f4 Make ASSERT statement more meaningful.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9276 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-17 01:57:24 +00:00
lgao4 919df8e6d2 Enhance PeiCore and DxeCore check whether the image machine type is supported when start image.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9266 6f19259b-4bc3-4df7-8a09-765794883524
2009-09-16 02:37:23 +00:00
qhuang8 bfef82a1f2 Adjust the parameter order of debug print. Judging from the context, the first parameter should be memory type while the second and third parameters should be memory start and end.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9184 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-24 15:44:35 +00:00
qhuang8 31f228cfc0 Make end of line consistent caused by previous check in.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9183 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-24 15:35:55 +00:00
qhuang8 248515801a Integrate the patch contributed by Andrew Fish to port MdeModulePkg to support ARM.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9174 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-24 15:22:14 +00:00
darylm503 e6d4b9d5a3 Clean up PERF macro usage. The macros were being used with 0 as the first parameter. This parameter is actually a void*. All of these instances were corrected to use NULL as the first parameter.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8955 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-15 22:34:41 +00:00
eric_tian 8bc18cc642 fix the typo in DxeCore
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8292 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-11 07:28:44 +00:00
qhuang8 7547649f22 Update DxeCore to support to install gEfiHiiPackageListProtocolGuid in LoadImage() if it detects the existence of HII resource on the PE image.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8142 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-22 02:06:58 +00:00
eric_tian 023c0fec45 retain gEfiLoadPeImageProtocolGuid, and only published by DxeCore to keep backward compatibility.
Native EDKII module should not use such protocol to load image

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8110 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-17 04:47:55 +00:00
eric_tian af3888e0b7 remove the gEfiLoadPeImageProtocolGuid and replace all references for it with BasePeCoffLib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8096 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-16 02:44:03 +00:00
vanjeff 0428a6cb12 fixed DMA not be stopped issue when gBS->ExitBootServices called.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8058 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-10 08:31:45 +00:00
gikidy 0a9fe76339 Add loaded Image device paths for EFI Drivers loaded from PCI Option ROM.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8022 6f19259b-4bc3-4df7-8a09-765794883524
2009-04-03 08:13:16 +00:00
lgao4 18fcd6a70c Add check to the allocated pool.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7861 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-11 02:53:15 +00:00
lgao4 1e34ba7e0c Fix build error caused by the unused local variable
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7860 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-11 01:52:09 +00:00
lgao4 df098cd518 Fix build error caused by the unused local variable
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7859 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-11 01:13:50 +00:00
qhuang8 8fd7909bb5 Cleanup to Remove default PCD value and extra build option.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7857 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-10 14:38:28 +00:00
klu2 84266565f5 Update DxeCore to deal PIWG FV device path case if FV contains extension header.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7850 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-10 09:26:52 +00:00
lgao4 4941d8817d Retire TCG platform protocol, which will be replaced by PI Security Architecture protocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7848 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-10 07:57:15 +00:00
eric_tian 8a9e0b7274 1. retire the FvbServiceLib. Directly locating FVB protocol to access interfaces.
2. modify the method of getting right FVB protocol interface. move the notification event of FVB installation into variable driver. and also move ExitBootService event into variable driver.
3. use EFI_FVB2_WRITE_STATUS flag to distinct whether the FVB protocol supports writing operation or not.Currently, DxeCore installs FVB which has ~EFI_FVB2_WRITE_STATUS(that is, disable write) attrbiute. FvbRuntimeDxe driver should provide a full FVB protocol, which returns EFI_FVB2_WRITE_STATUS attribute to signify itself provide writable FVB protocol. So other modules which need write data by FVB protocol can locate it correctly.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7835 6f19259b-4bc3-4df7-8a09-765794883524
2009-03-09 06:39:13 +00:00
eric_tian 04985a579c retire gEfiFirmwareVolumeDispatcherProtocolGuid
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7595 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 05:50:53 +00:00
eric_tian f999350bcf retire gEfiFirmwareVolumeDispatcherProtocolGuid as its original design is used to signify such FV need to be dispatched or not.
Currently our code has not such usage model, so Mike recommended us to retire this guid

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7593 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 05:35:08 +00:00
qhuang8 bc6b5892b0 Update DxeCore for the performance infrastructure updates: Use Raw sting to replace XXX_TOKEN
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7567 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 03:01:59 +00:00
qhuang8 20bcdbcb69 Add assertion to ensure pointer dereference has been checked against NULL pointer.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7528 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-16 02:07:32 +00:00
gikidy 055f28d0fb Meta-data reviewed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7523 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-13 08:38:34 +00:00
eric_tian 525aded947 add assert logic to avoid Klocwork fake report
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7512 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-12 06:39:01 +00:00
eric_tian fbbb42115c clean K8.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7492 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-10 09:56:23 +00:00
eric_tian 311a71b299 Cleanup K8 warning.
We need judge return status of CoreGetMemorySpaceMap() to avoid the generation of NULL pointer of MemorySpaceMap.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7448 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-06 03:58:04 +00:00
lgao4 657abcff30 Enhance DxeCore to handle the all block sized allowed by the PI Specification and remove the assumption that the FV block size is always larger than the size of an FV Header.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7426 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-04 03:37:14 +00:00
eric_tian 57dfc48f93 enhance the condition branch to handle Unix style file path. and avoid array overflow
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7394 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-02 08:01:35 +00:00
eric_tian 29dd3b04b0 Fix Klocwork warning. We should directly return EFI_INVALID_PARAMETER when BufferSize is NULL.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7323 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-21 04:56:24 +00:00
qhuang8 b364eeb012 Apply code to avoid security warnings.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7279 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-15 03:00:00 +00:00
lgao4 f497011482 Correct /FAcs option to /FAsc
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7191 6f19259b-4bc3-4df7-8a09-765794883524
2009-01-06 05:09:27 +00:00
jji4 7df7393feb check the usage of %d,%x,%ld,%lx and so on in debug print statement.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7080 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-18 08:48:36 +00:00
qhuang8 f3f2e05db8 Clean up to update the reference of the these macros:
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-16 15:34:21 +00:00
gikidy d7db090280 Fix some typo.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7008 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-12 06:04:02 +00:00
jji4 6f3156155b INF head modified
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7002 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-12 01:27:36 +00:00
mdkinney 50d7ebad92 Change _CR() to BASE_CR() to follow naming convention
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6888 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-06 01:23:24 +00:00
mdkinney 4e2dd553a6 Simplify call to FUNCTION_ENTRY_POINT() based on updates to that macro
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6884 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-05 23:26:01 +00:00
gikidy cfc8865f17 Remove some useless EDK_RELEASE_VERSION, EFI_SPECIFICATION_VERSION ,and review VALID_ARCHITECTURES in inf files with DSC file.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6818 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-03 09:08:05 +00:00
jljusten d9b834afbf Move call to CoreDisplayDiscoveredNotDispatched to be before the
ASSERT_EFI_ERROR (CoreAllEfiServicesAvailable ());
statement, since this ASSERT can force the system to hang.  Since
drivers not loading may be the reason that not all EFI services are
available, it is helpful to display the non-dispatched driver list
before using the ASSERT.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6687 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-24 00:19:49 +00:00
jljusten 9490351076 Add useful DEBUG message for determining the when drivers are
being loaded and dispatched.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6686 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-24 00:14:27 +00:00
mdkinney 7b3381a232 Clean up
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6676 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-22 00:51:51 +00:00
klu2 1232b21473 1, Add <Library/DevicePathLib.h> for all source that use device path utility macros
2, Add DevicePathLib library class to module's INF that use device path utility macros

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6456 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-11 15:42:40 +00:00
klu2 0ddec2cfde Remove over specific Guid
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6384 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-05 02:25:26 +00:00
qhuang8 da06ac1c70 Add missing TimerLib class since DxeMain directly use TimerLib API.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6345 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-31 04:53:07 +00:00
mdkinney 7cff25d649 Measure time spent in Driver Binding Supported() calls
Update time measurement of StartImage() calls to properly record the handle of the started Image


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6292 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-30 04:03:59 +00:00
eric_tian e34ecc8a1e Remove unnessary UEFI_SPECIFICATION_VERSION and PI_SPECIFICATION_VERSION in INF file
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6281 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-29 03:17:21 +00:00
xli24 405b567555 Refine file header for INF files of DXE and PEI core modules.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6276 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-28 13:16:21 +00:00
vanjeff 078bee4ebf clean up EBC in inf files.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6267 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-28 07:17:17 +00:00
qwang12 44cfd8a827 Move global variable to the top of C file for consistent coding style.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6255 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-27 11:40:49 +00:00
qwang12 0e549d5be5 Make use of correct format String:
1) UINT64 should use %lx
2) POINTER type should use %p
3) EFI_STATUS should use %r


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6253 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-27 10:13:00 +00:00
vanjeff 43025b293f ECC Clean up.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6205 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-24 02:55:01 +00:00
qhuang8 6e53646837 Fix several coding style violations
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6163 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-21 03:11:47 +00:00
klu2 e97835ba3f Change PeiMain/DxeMain's base name to PeiCore/DxeCore.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6073 6f19259b-4bc3-4df7-8a09-765794883524
2008-10-05 13:32:39 +00:00
qhuang8 2f2a277df4 1. Set the EFI_DEBUG_IMAGE_INFO_TABLE_MODIFIED bit on insertion/deletion of entries in DebugImageInfo Table.
2. Change field EFI_DEBUG_IMAGE_INFO_TABLE_HEADER.TableSize to be the number of valid entries. Apply another global variable mMaxTableEntries to track the maximum of the allocated entires.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6051 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-27 08:02:57 +00:00
eric_tian dc8d93ca0c add detail comments on the complicated code segment.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5954 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-23 14:49:45 +00:00
eric_tian ec90508b3d move header files in MdeModulePkg\Core\Dxe except DxeMain.h into their corresponding sub-module directories. It is used to provide good modularity.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5949 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-23 07:35:34 +00:00
lgao4 1046284db9 Don't align image address for TeImage, because TeImage section alignment is undefined.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5948 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-23 07:16:46 +00:00
qwang12 4792a1a65b Rollback change done in 5919: "Remove the status code EFI_ALREADY_STARTED to avoid confusion since it is not a possible return status from LoadFile() interface." It is accidentally overwritten in last check-in.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5925 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-18 09:03:36 +00:00
qwang12 61ad8a41e7 Remove the GrowBuffer function. Just use the simple way to get the buffer size and then read the buffer. This change improve the readability and save 0x60 byte of data for release build according to MAP file generated for X64 arch.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5924 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-18 08:42:11 +00:00
qhuang8 d9177625f6 Adjust the function layout to remove the prototype of internal functions to reduce sync efforts.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5921 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 14:20:29 +00:00
qhuang8 e676c4d0c6 Apply HighBitSet() in MDE baseLib to retire the internal function CoreHighestSetBit().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5920 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 13:35:14 +00:00
qhuang8 2ce854f515 Remove the status code EFI_ALREADY_STARTED to avoid confusion since it is not a possible return status from LoadFile() interface.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5919 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 13:34:18 +00:00
qhuang8 f94b9be34f Adjust the function layout of Timer.c to remove the prototype to reduce sync efforts.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5918 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 13:32:52 +00:00
qhuang8 3f1435782f Refine code to remove the last entry of mArchProtocol.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5917 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 13:31:43 +00:00
qhuang8 57b4ecb94b Fix several code review minor comments:
1. Line 79:Use the pre-initialized global variable mPoolHeadList = INITIALIZE_LIST_HEAD_VARIABLE (mPoolHeadList) to remove the statement in line 102
2. Line 337: The debug print statement: “Addr = %x” should change to “Addr = %p” since the expected Buffer is VOID *; How about “(len %x) %,d” ? The Size & Pool->Used belong to type UINTN? Cast it to UINT64 and use %lx 
3.Line 413, 418, 425, 477: Use “Buffer != NULL” instead of “NULL != Buffer”  
4. Line 451: The debug print statement: “FreePool = %x” should change to FreePool = %p” since Head->Data is pointer; How about “(len %x) %,d” ? The Head->Size& Pool->Used belong to type UINTN? Cast it to UINT64 and use %lx 


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5916 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 13:29:44 +00:00
qhuang8 d45fd26026 Fix several code review minor comments:
1.Line 1520, 1525, 1530:Use goto to save Release Lock
2.Line 224: Do not use DEBUG_ERROR, since it is not an error case
3.Scrub the DEBUG () print statement to add DEBUG_PAGE
4.Line 20: Typo of "help cooalese"


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5915 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 13:28:05 +00:00
qwang12 a70c0fd846 Add VA_END to end the VA_START.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5907 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 02:30:24 +00:00
qwang12 46fee0d7b6 Remove the unnecessary spin_lock protection around CoreUnloadImage. There is almost zero possibility for this reentrancy issue here. With this change, we also keep EDK 2 and EDK core's CoreUnloadImage consistent with each other.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5906 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-17 02:20:24 +00:00
eric_tian 11074aabe1 CoreHandleProtocol function description should be corrected.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5903 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-16 08:02:57 +00:00
eric_tian 1947c70c3e Merge the global data in ExecData.c to Event.c
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5901 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-16 07:53:15 +00:00
eric_tian c18f12d375 Comments for CoreInitializeMemoryServices should be updated
Comments for CoreInitializeGcdServices should be updated.
Comments for CoreInitializeEventServices should be updated.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5899 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-16 07:35:17 +00:00
eric_tian 5f3232d7e8 The file name Exec.h contains UEFI Event support functions and structure. But its file name is not very meaningful and we can consider renaming it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5898 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-16 07:22:44 +00:00
eric_tian 1349236994 follow up the comments from code review.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5891 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-16 05:19:25 +00:00
qhuang8 7899b79715 Remove the internal CoreCreateProtocolNotifyEvent() in DxeCore, for UefiLib provide the similar function EfiCreateProtocolNotifyEvent(). DxeCore can use that library function.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5883 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-12 01:12:31 +00:00
qhuang8 f0d5cbb66a Update the usage of ALIGN_VARIABLE for the interface change.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5870 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-10 16:05:24 +00:00
qwang12 fa3c419fec Fix a bug by adding CoreReleaseProtocolLock.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5866 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-10 06:30:40 +00:00
qhuang8 3b6ffb6a13 Add EFIAPI modifier for all GCD services APIs
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5865 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-10 03:25:49 +00:00
qhuang8 c0a23f8c37 Remove the prototype of internal functions to avoid the sync efforts.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5861 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-09 05:36:40 +00:00
qwang12 130f16022c Rename Hand.h to Handle.h.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5860 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-09 05:29:23 +00:00
qwang12 c79be85e9d Adjust the field position of PROTOCOL_NOTIFY.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5858 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-09 05:19:46 +00:00
qwang12 6c857d668c 1) Update some comment.
2) Add in handle for the out_of_resource cases
3) Add in Done label to clean up the code.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5853 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-09 02:39:44 +00:00
qhuang8 599979d4ce Remove unused global variable.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5852 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-09 01:50:38 +00:00
qhuang8 dbfb4b229c Remove two obsolete function prototypes.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5851 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-09 01:47:33 +00:00
qwang12 b9066aae25 Change field Handle to type IHANDLE to remove the type casting.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5846 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-08 12:50:40 +00:00
qwang12 4008328a99 Remove NULL_HANDLE. NULL_HANDLE should be replaced with NULL as consistency. For now, only DXE core is using this macro.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5836 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-08 05:02:38 +00:00
qwang12 7f932291b5 Add more comment for EFI_DEP_REPLACE_TRUE
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5833 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-08 02:00:38 +00:00
qwang12 7ffbd6182d Remove a dead macro EFI_DXESERVICE
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5832 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-08 01:55:51 +00:00
vanjeff 8ee3a19908 Updated EFI_FVB_ATTRIBUTES to EFI_FVB_ATTRIBUTES_2.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5800 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-03 08:55:55 +00:00
qhuang8 19e14fc9d9 1. Use AllocateAlignedPages() to remove tricky logic in DebugImageInfo.c
2. Add ReportStatusCodeLib instance in MdeModulePkg.dsc for DxeCore.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5774 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-02 05:51:05 +00:00
qhuang8 ceb9059cda clean up DxeCore to remove some dead code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5764 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-01 11:32:49 +00:00
qhuang8 2680a30801 Clean up DxeCore to use report status code macros in ReportStatusCode to retire CoreReportProgressCode() & CoreReportProgressCodeSpecific() in Library.c in DxeCore.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5761 6f19259b-4bc3-4df7-8a09-765794883524
2008-09-01 08:27:31 +00:00
qhuang8 de4e6bf963 Fix several approved code review comments:
1. Remove internal function prototypes to avoid sync efforts. The layout of them have been adjusted
2. Apply macro ALIGN_POINTER to get next section stream
3. Fix a potential memory leak issue.
4. Make the comparison between type UINTN and 0 consistent between one function.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5747 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-28 02:53:16 +00:00
qhuang8 9c4ac31cca Clean up DxeCore to remove duplicate memory allocation & device path utility services in Library.c.DxeCore should use MemoryAllocationLib & DevicePathLib for these API.
Minor cleanup the coding style: #include <DxeMain.h> should be changed to #include "DxeMain.h" since "DxeMain.h" is not pubic header fie.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5742 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-27 14:29:23 +00:00
qhuang8 070f0cf7f2 Add dependency of DevicePathLib to DxeCore so that the internal device path related APIs can be retired to avoid code duplication.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5738 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-27 13:48:11 +00:00
lgao4 e872988180 remove the unused msa files in MdeModulePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5726 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-25 05:03:29 +00:00
qhuang8 0e9b156ddc Remove the global variable of gDxeCoreBS and uses the gBS in UefiBootServicesTableLib for DXE Core.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5697 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-20 09:41:53 +00:00
qhuang8 4fdc91291e Add GLOBAL_REMOVE_IF_UNREFERENCED modifier in the array and change the protocol UI strings to ASCII string since they are only for debug purpose.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5672 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-18 08:40:52 +00:00
qhuang8 4e498a0f27 Remove an unreferenced field in PROTOCOL_INTERFACE data structure.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5670 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-18 08:39:05 +00:00
qwang12 1439777e96 1) Change DEBUG_ERROR TO DEBUG_LOAD as InstallProtocolInterface information is not an error.
2) Revert binary comparison for consistency.
3) Minor updates for comments.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5621 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-08 03:49:09 +00:00
mdkinney 51b02d81f0 Fix UEFI Boot Service CreateEvent() to follow UEFI Specification with respect to the use of TPL_APPLICATION
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5606 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-01 23:54:52 +00:00
mdkinney 911361242b Increase size of function addresses printed in DEBUG messages from 10 to 11 characters
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5602 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-01 22:41:20 +00:00
vanjeff 75b046c3d4 Using Spin lock instead of using RaiseTpl() to prevent UnloadImage() re-entrance.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5600 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-01 08:10:49 +00:00
qhuang8 443109389d Minor clean up.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5572 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-26 07:46:04 +00:00
qhuang8 022c6d45ef Code Scrub for Dxe Core.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5560 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-24 02:54:45 +00:00
qhuang8 e94a9ff727 Code scrub for DxeCore
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5520 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-18 09:50:09 +00:00
lgao4 5f597758e2 Code scrube for MdeModule Definitions.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5428 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-08 13:29:42 +00:00
qhuang8 6960e9ae7a Remove minor defects in Doxygen header
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5270 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-22 09:00:12 +00:00
vanjeff 57d6f36db6 add debug information.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5266 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 08:32:06 +00:00
qhuang8 23c98c9417 Update to fix minor coding style issues.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5256 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:40:12 +00:00
qhuang8 3b1d9fd579 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5255 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:10:16 +00:00
qhuang8 b21f513659 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5254 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:06:28 +00:00
qhuang8 1424518bd2 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5253 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:05:39 +00:00
qhuang8 ae91108427 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5252 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:05:17 +00:00
qhuang8 cc907d1264 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5251 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:04:53 +00:00
qhuang8 ecc7f77e91 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5250 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:04:28 +00:00
qhuang8 924c766d6f Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5249 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:03:34 +00:00
qhuang8 d614b00ae0 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5248 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:02:35 +00:00
qhuang8 7ad23c3cea Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5247 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:02:02 +00:00
qhuang8 6cea0db87c Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5246 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:00:57 +00:00
qhuang8 3a610a1877 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5245 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 01:00:25 +00:00
qhuang8 91ee5ef167 Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5244 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 00:59:13 +00:00
qhuang8 d4a9eca19a Change the file name case to follow coding style: The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5243 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 00:58:42 +00:00
qhuang8 4f1faae809 Change file name case to follow coding style:The first character should be capital.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5242 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-21 00:56:56 +00:00
qhuang8 db405d1b89 Minor coding style adjustment for DxeCore.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5196 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-13 09:09:11 +00:00
qhuang8 71f68914fa Fix the prediction warnings in DxeMain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5190 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-09 07:52:58 +00:00
qhuang8 162ed59443 Add doxygen style comments for functions in DxeMain.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5189 6f19259b-4bc3-4df7-8a09-765794883524
2008-05-09 07:08:30 +00:00
eric_tian 152af594cc [Description]
modify the value pointed by NumberOfPages to accordance with IN&OUT modifier's syntax.
[Impaction]
add comments for NumberOfPages parameter and assign a correct value to it.
[Reference Info]
NumberOfPages is only updated inside the if statement on line 725. If buffer is big enough the actual number of pages occupied by the image is not returned

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5112 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-22 08:38:30 +00:00
lgao4 504214c487 Add comments and DoxyGen format for these files.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5028 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-09 07:07:50 +00:00
jljusten 1be0dda62d Fix warnings generated by gcc for ia32 builds:
'cast from pointer to integer of different size'
when casting from a pointer directly to a
64 bit number.  Added an intermediate cast to
UINTN.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5009 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-08 20:59:38 +00:00
qhuang8 5fed8e341a Update DxeCore to load image wit supported machine types:
DXE Core          Supported Machine Types
=======          ===================
IA32                IA32, EBC, X64
X64                 X64, EBC, IA32
IPF                 IPF, EBC
EBC                 EBC



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4977 6f19259b-4bc3-4df7-8a09-765794883524
2008-04-02 06:56:35 +00:00
eric_tian 88c8f7fbfd [Description]
spelling mistake
[Impaction]
modify the mistake
[Reference Info]
Found the spelling mistake in pool.c

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4949 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-24 07:11:37 +00:00
eric_tian 1564e9ac2c [Description]
Duplicate the device path prior to the access to it 
[Impaction]
directly access the device path may cause an exception when the device path includes some unaligned device path nodes
[Reference Info]
In the case of ISCSI, there is a situation that the device path may consists of some unaligned device path node. it causes the unaligned exception when we access the node.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4905 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-19 02:05:57 +00:00
lgao4 e10293550f A leaf section type may contains an array of zero or more bytes. Support the section with the zero data.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4852 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-14 10:12:17 +00:00
qhuang8 383c303c49 Fix two minor defects:
1. CoreGetMemoryMap() returns unclean data
2. Zero length memory descriptor might be added to the memory map

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4790 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-04 11:33:13 +00:00
lgao4 6cd7b51e48 Correct the PeImage Source file to be measured by TCG.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4787 6f19259b-4bc3-4df7-8a09-765794883524
2008-03-04 09:32:41 +00:00
vanjeff ba39e316c9 1. Add EFI LOADED IMAGE DEVICE PATH Protocol in LoadImage() service, per UEFI 2.1b.
2. Update comments for DHCP.transmitreceive().
2. Update UefiPxeBcDxe.inf and PxeBcDxe.inf to assign correct protocol usages.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4758 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-26 08:38:29 +00:00
qhuang8 bb8ffffd1c Fix a conformance issue in gBS->CreateEvent() & gBS->CreateEventEx():
1. gBS->CreateEventEx() with EventGroup = NULL should behavior like gBS->CreateEvent()
2. EVT_SIGNAL_EXIT_BOOT_SERVICES & EVT_SIGNAL_VIRTUAL_ADDRESS_CHANGE are invalid parameters for gBS->CreateEventEx() if the EventGroup is not NULL.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4692 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-14 02:47:49 +00:00
jljusten d1f076304d MdeModulePkg/Core/Dxe/SectionExtraction/CoreSectionExtraction.c:
Surrounded unreferenced STATIC functions by '#if 0', '#endif' to
  prevent a compiler warning:
    NotifyGuidedExtraction, CreateGuidedExtractionRpnEvent


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4688 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-13 00:22:19 +00:00
qwang12 9226efe5eb 1) Cleanup HiiLib, IfrSupportLib.
2) Add ExtendedHiiLib and ExtendedIfrSupportLib which implement APIs that require the OPcode and Device Path which is specific to Intel's implementation.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4662 6f19259b-4bc3-4df7-8a09-765794883524
2008-02-02 13:15:44 +00:00
qwang12 93e3992d1e UEFI HII: Merge UEFI HII support changes from branch.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4599 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-21 14:39:56 +00:00
lgao4 822360ee34 Measure PEimage and ActionString data according to TPM requirement.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4494 6f19259b-4bc3-4df7-8a09-765794883524
2008-01-04 02:11:51 +00:00