Star Zeng
84edd20bd0
MdeModulePkg DxeCore/PiSmmCore: Add UEFI memory and SMRAM profile support.
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16335 6f19259b-4bc3-4df7-8a09-765794883524
2014-11-12 03:27:48 +00:00
Eric Dong
4e1005eca7
Update code to support VS2013 tool chain.
...
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15695 6f19259b-4bc3-4df7-8a09-765794883524
2014-07-28 07:52:57 +00:00
lzeng14
16bacc0720
Fix the memory leak issue and enhance the check for CoreReadImageFile return.
...
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Ting Ye <ting.ye@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13704 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-07 01:35:44 +00:00
lzeng14
0407056e64
Check the return code from CoreLocateDevicePath() in MdeModulePkg/Core/Dxe/Image/Image.c CoreLoadImageCommon().
...
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13703 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-06 05:00:34 +00:00
lgao4
bc2dfdbcfc
Add PI1.2.1 SAP2 support and UEFI231B mantis 896
...
1. Update SecurityManagementLib to support SAP2 and SAP services.
2. Update SecurityStub driver to produce SAP2 and SAP protocol both.
3. Update DxeCore and SmmCore to use SAP2 and SAP service to verify Image.
4. Update DxeCore ConnectController() to use SAP2 service to check user permission.
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Guo Dong <dong.guo@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13660 6f19259b-4bc3-4df7-8a09-765794883524
2012-08-22 02:32:12 +00:00
lzeng14
f3235b77e4
Record LoadImage perf log for LoadImageEx() and use NULL as Handle to record StartImage perf log when StartImage() fails.
...
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13379 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-30 10:48:50 +00:00
lgao4
d2c243e199
Fix the potential issue that NULL pointer may be referred in LoadImage().
...
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Rui Sun <rui.sun@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13293 6f19259b-4bc3-4df7-8a09-765794883524
2012-05-08 03:10:37 +00:00
ydong10
28186d4566
Validate some fields in PE image to make sure not access violation for later code.
...
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13211 6f19259b-4bc3-4df7-8a09-765794883524
2012-04-24 03:00:32 +00:00
lgao4
f00237c1d2
Fix ICC9 build break.
...
Signed-off-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12446 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-27 03:46:25 +00:00
lgao4
60c0073fd7
Remove ASSERT (EFI_IMAGE_MACHINE_TYPE_SUPPORTED (Image->Machine)) in StartImage.
...
Signed-off-by: lgao4
Reviewed-by: jyao1 rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12443 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-26 09:32:30 +00:00
niruiyu
31222776db
Set *ImageHandle to NULL when LoadImage() returns EFI_ACCESS_DENIED.
...
Signed-off-by: niruiyu
Reviewed-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11783 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-10 03:05:40 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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