Commit Graph

1174 Commits

Author SHA1 Message Date
ydong10 5c4513344a Refine code to follow coding style.
Signed-off-by: ydong10

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12281 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-05 14:17:47 +00:00
li-elvin 6088db3802 Move generic IA32_SEGMENT_DESCRIPTOR definition to BaseLib.h.
Signed-off-by: li-elvin
Reviewed-by: mdkinney


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12265 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-02 11:37:50 +00:00
ydong10 6709bbd17f Add check before use to make code run more safer.
Signed-off-by: ydong10

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12262 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-02 07:51:45 +00:00
jljusten fe69ac847a MdePkg: Add S3 library interfaces and base implementations
Signed-off-by: jljusten
Reviewed-by: mdkinney
Reviewed-by: rsun3
Reviewed-by: jyao1

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12222 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-29 22:16:28 +00:00
xdu2 b9610b9cb5 Add new API GetTimeInNanoSecond() to TimerLib to convert elapsed ticks to time in unit of nanoseconds.
Signed-off-by: xdu2
Reviewed-by: mdkinney

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12206 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-25 05:59:17 +00:00
ydong10 83f1f16a83 Refine code to follow coding style.
Signed-off-by: ydong10

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12196 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-24 10:10:33 +00:00
niruiyu 3e5cfe98e9 Simplify the SmmPeriodicSmiLib to call AllocatePool() for every entry in the SMI periodic handler list.
Signed-off-by: niruiyu
Reviewed-by: mdkinney

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12173 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-19 01:37:47 +00:00
niruiyu 569224f9de Use linked list to replace the current array solution to store the periodic SMI handlers to support more than 8 periodic SMI handlers.
Signed-off-by: niruiyu
Reviewed-by: xdu2

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12127 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-15 01:55:41 +00:00
lgao4 41342801ff Fix X64 compile error.
Signed-off-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12110 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-09 06:29:47 +00:00
jcarsey 6bae492fb4 clarify the logic of the print length counting functions in both PrintLib library instances.
signed-off-by: jcarsey
reviewed-by: geekboy15a

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12102 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-08 20:50:31 +00:00
lgao4 48c0731857 Fix X64 compile error.
Signed-off-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12086 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-04 06:33:49 +00:00
jcarsey f405c0674a Add 2 functions to UefiLib library class: CatSPrint and CatVSPrint.
Implement these functions in the UefiLib instance.

Add 2 functions to PrintLib library class: SPrintLengthAsciiFormat and SPrintLength.
Implement these functions in the BasePrintLib instance and the DxePrintLib2Protocol instance.

Signed-off-by: jcarsey
Reviewed-by: jljusten
Reviewed-by: geekboy15a

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12081 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-02 23:33:06 +00:00
geekboy15a 3c47fe65ed MdePkg: Fixed hang/reset in thunk code when building with GCC X64
Reverted changes of data areas from .long back to .space 4.  This was done
because the size of .long is based off of .int and may vary.  Using a fixed size
is required because these values are for patching code.  Also note that .space
will automatically initialize the data to zero.  Not initializing all values to
zero was causing the hang/reset.

Signed-off-by: geekboy15a
Reviewed-by: darylm503
Reviewed-by: jljusten



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12079 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-02 22:29:50 +00:00
lzeng14 3397c6f590 For libraries that have multiple module types support, just define a [Depex] section for specified module types that are permitted to have a [Depex] section.
Signed-off-by: lzeng14
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12052 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-27 08:54:57 +00:00
andrewfish f7c8bd9f9d MdePkg: Update CpuSleep to use ARMv7 instruction.
The code was using ARMv6 co-processor reg, that is a no-op on ARMv7. WFI is the instruction on ARMv7.

signed-off-by: andrewfish
reviewed-by: mdkinney



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12035 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-20 17:47:44 +00:00
andrewfish bab427db7d MdePkg: Fix X64 clang compile issues.
Fixed issues with X64 clang, and also make StackSwitch push a zero on the new stack to prevent a stack unwind into memory that is no longer valid.

signed-off-by: andrewfish
reviewed-by: lgao4
reviewed-by: mdkinney



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12007 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-12 03:01:34 +00:00
jcarsey d3e0289ccf Clarify the requirements for the Destination parameter of UnicodeStrToAsciiStr.
signed-off-by:jcarsey
Reviewed-by:lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11917 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-28 15:01:53 +00:00
ydong10 18ad26da31 Initialize data before using it
Signed-off-by: ydong10
Reviewed-by: lgao4


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11869 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-21 02:24:46 +00:00
lgao4 1955808d94 For BaseLib IsNull() function , update retval value comment to match its function description.
Signed-off-by: lgao4
Reviewed-by: rni2


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11825 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-15 02:45:58 +00:00
mdkinney 863be5d010 Add ESAL support libraries to MdePkg
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11784 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-10 18:58:08 +00:00
niruiyu ef2635c399 Change BuildGuidHob and BuildGuidDataHob to return NULL upon failure.
Guarantee no memory corruption in an out of memory condition even in production builds.

Signed-off-by: niruiyu
Reviewed-by: mdkinney

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11775 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-09 02:51:00 +00:00
lgao4 4b0f378c19 Fix ICC build break.
Signed-off-by: lgao4
Reviewed-by: rsun3
Reviewed-by: mdkinney

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11704 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-26 04:53:24 +00:00
lgao4 244bff4e14 Update BasePrintLib to handle the unaligned GUID.
Signed-off-by: lgao4
Reviewed-by: rsun3


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11697 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-24 02:08:31 +00:00
niruiyu b8a62661e4 Add BlockIO revision 3 definition. Add new API ScsiInquiryCommandEx to UefiScsiLib.
Signed-off-by: niruiyu
Reviewed-by: erictian

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11691 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-23 07:45:40 +00:00
lgao4 7eb2c64d34 Update the description of Loaded Image Protocol Unload function to follow the UEFI2.3.1 Spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11560 6f19259b-4bc3-4df7-8a09-765794883524
2011-04-19 06:33:25 +00:00
ydong10 a77badbb42 Refine code to follow coding style.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11400 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-15 00:53:52 +00:00
ydong10 6e80bc62cc Enhance inf to follow spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11393 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-14 08:46:05 +00:00
mdkinney 2891fc8b2d Update DebugLib to provide support for "err" command in the EFI Shell to adjust the filter mask for DEBUG() messages. The "err" command provide the ability to adjust this filter mask at a global level through an EFI Variable and at the module level through a the Debug Mask Protocol. In order to support the degree of flexibility, the DebugLib needs to use library to abstract the get/set operations to the filter mask.
1) Define new DebugPrintErrorLevelLib that produces an API that DebugPrint() APIs in DebugLib implementations can use to retrieve the current mask for filtering DebugPrint() statements.
2) Add a BASE type implementation of the DebugPrintErrorLevelLib that directly accessed PcdDebugPrintErrorLevel to provide backward compatibility with the current EDK II DebugLib behavior.
3) Update description of the DebugPrint() API in the DebugLib to describe the new dependency on the DebugPrintErrorLevelLib that replaces the prior dependency in the PcdDebugPrintErrorLevel PCD.
4) Update the comments in BaseDebugLibNull to match (3).
5) Update BaseDebugLibSerialPort to use DebugPrintErrorLevelLib instead of the PcdDebugPrintErrorLevel PCD.
6) Update UefiDebugLinConOut to use DebugPrintErrorLevelLib instead of the PcdDebugPrintErrorLevel PCD.
7) Update UefiDebugLibStdErr to use DebugPrintErrorLevelLib instead of the PcdDebugPrintErrorLevel PCD.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11365 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-10 22:12:34 +00:00
gikidy 1b71e7f1ad A minor change for the format of usage align with spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11326 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-21 08:07:22 +00:00
ydong10 ba319b960e Update inappropriate comments.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11322 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-17 00:45:08 +00:00
lgao4 6beb225a9a Per PI1.2B spec, for the case that TE Image Relocation Data Directory Entry Virtual Address is non-zero, but the Relocation Data Directory Size is zero, BasePeCoffLib should only handle such case as PIC TE image.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11315 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-16 01:18:28 +00:00
mdkinney 40039e28ed Add SmmPeriodicSmiLib to MdePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11302 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-11 00:09:16 +00:00
andrewfish 4c8a6e069c Replace INTERWORK_FUNC, with GCC_ASM_EXPORT() and GCC_ASM_IMPORT() and update the rest of the MdePkg ARM assembler to use the macro. Leave the old INTERWORK_FUNC macro in place until we can make sure all the other packages have been updated and then it can be removed.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11289 6f19259b-4bc3-4df7-8a09-765794883524
2011-02-01 05:01:35 +00:00
darylm503 af072124e4 Fix InternalMemScanMem* functions so that they return the pointer to the matched object, as specified, instead of the following object.
Replaces the fix instituted in rev. 10821 with a more understandable, sustainable, and efficient fix that behaves the same regardless of compiler.

Reviewed by two peers.
Fixes HSD tracker 204556.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11237 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-07 23:00:16 +00:00
mdkinney a06638eac2 Fix issue when BaseDebugLibSerialPort is combined with BaseSerialPortLibNull. It will ASSERT() due to the recent addition of a CONSTRUCTOR to BaseDebugLibSerialPort that calls SerialPortInitialize().
The fix is to change SerialPortInitialize() to always return RETURN_SUCCESS instead of RETURN_UNSUPPORTED.


 



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11207 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-30 01:07:39 +00:00
ydong10 9c3d10b75d Update inappropriate comments.
fine code to make code run more safely.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11191 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-22 08:32:56 +00:00
mdkinney ccc96db96e Add CONSTRUCTOR to BaseDebugLibSerialPort to call SerialPortInitialize() in the SerialPortLib to make sure the serial port hardware is in the proper state for use.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11183 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 00:24:34 +00:00
mdkinney b35a5f731c Remove CONSTRUCTOR from DxePcdLib aligning the DxePcdLib design with the PeiPcdLib and reduces the number of CONSTRUCTORs that have to be run for most DXE modules.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11182 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 00:22:08 +00:00
mdkinney 5bd2d2cb03 Add an empty CONSTRUCTOR to the UefiLib to resolve library dependency issues.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11181 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-18 00:10:30 +00:00
mdkinney 5b98704413 Fix DxeHobLib to also support a module type of SMM_CORE.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11180 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-17 23:04:57 +00:00
andrewfish bcec20df61 Add support for ARM MOVW/MOVT instructions that were added in the latest PE/COFF specification. Currently they are not hooked in as we need to wait for the tools to get updated. Tools are needed to convert ELF to PE/COFF and to refixup FVs.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11176 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-16 21:44:49 +00:00
andrewfish e7cb469e3a Fix issue with CodeSourcery gcc requiring assembly functions to have a .type define inorder to support interworking (calling from thumb(C code) to ARM code (hadn written assembly). We had to add a macro as the .type directive is not supported, or needed, by Xcode. All ARM .S files need to be updated.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11167 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-15 00:58:34 +00:00
jljusten dccf78f0a2 MdePkg: Fix GCC Thunk support for IA32
In r11047 Ia32/Thunk.S was modified.  However, the current
implemention of Ia32/Thunk.S has contant values in the code
which must be updated if the code is changed.

This change updates those constants for the r11047 change.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11121 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-06 06:06:35 +00:00
rsun3 2057d8c843 Add a new Timer Library instance SecPeiDxeTimerLibUefiCpu into UefiCpuPkg. This library differs with the SecPeiDxeTimerLibCpu library in the MdePkg in that it uses the local APIC library so that it supports x2APIC mode.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11100 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-29 03:30:38 +00:00
li-elvin 4d4c535a32 Fix the issue that the high 16-bit of EAX may contain invalid data, which cause bad stack pointer, the change will ensure the high 16-bit of EAX is cleared.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11047 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-12 07:47:27 +00:00
ydong10 9be899c5cc Add API to ExtractGuidedSectionLib.h to retrieve the set of registered handlers.
API Function name is ExtractGuidedSectionGetHandlers.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11002 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-04 05:51:32 +00:00
lgao4 6517edbe51 Update UefiDriverEntryPoint library by adding BaseLib library class required by AutoGen code.
Update UefiApplicationEntryPoint library by adding BaseLib and DebugLib library class required by AutoGen code.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10954 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-18 09:59:55 +00:00
mdkinney f6b4e53dfe Update MODULE_TYPE to be DXE_RUNTIME_DRIVER
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10876 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-14 17:02:46 +00:00
mdkinney c91a44b857 Update this library to restrict usage to DXE_RUNTIME_DRIVER and DXE_SAL_DRIVER module types
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10865 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-10 20:08:03 +00:00
qhuang8 00dbccf2d5 Sync bug fix in Edk r10821 to PeiMemoryLib and UefiMemoryLib instances.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10822 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-26 00:50:37 +00:00