Commit Graph

122 Commits

Author SHA1 Message Date
qhuang8 46dd23b81e 1.Define SPIN_LOCK as "volatile UINTN" to prevent mutli-processor access harzard.
2.Sync MTFTP4 Protocol GUID with spec.
3.Sync the definition the EFI_IP4_VARIABLE_DATA and EFI_TCP4_VARIABLE_DATA with spec

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2514 6f19259b-4bc3-4df7-8a09-765794883524
2007-03-29 07:45:24 +00:00
vanjeff 0f6b6f755b 1. Removed #ifndef to enable Capsule architecture protocol on IPF.
2. Added ASSERT (FLASE) in SwitchStack ().
3. Removed unreached branch from UefiNotTiano.c.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2510 6f19259b-4bc3-4df7-8a09-765794883524
2007-03-28 03:28:13 +00:00
vanjeff cb41bea732 1. Removed AsmSwitchStackAndBackingStore from BaseLib.h
2. Modified SwitchStack definition update to MWG 0.60e.
3. Added BaseLib/Ipf/InternalSwitchStack.c and removed BaseLib/Ipf/Non-existing.c
4. Updated any references of AsmSwitchStackAndBackingStore to SwichStack on IPF.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2499 6f19259b-4bc3-4df7-8a09-765794883524
2007-03-22 03:03:32 +00:00
vanjeff e5f461a850 1. Remove #ifdef _MSC_EXTENSION_ from all source files
2. Remove #ifdef _GCC_ from all resource files
3. Remove #if 0 from all resource files
4. Remove #ifdef MDE_CPU_IPF and #ifdef MDE_CPU_EBC
5. Remove #progam from Decode.c
6. Remove #ifdef TIANO_EXTENSION_FLAG from source files
7. Remove #ifdef SUPPORT_IPV6, since code base doesn't support IPV6 at all.
8. Remove #ifdef SpecialNowaitVersion from pxe_bc_mtftp.c, since it's only used for test.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2470 6f19259b-4bc3-4df7-8a09-765794883524
2007-03-15 02:33:16 +00:00
qwang12 6a352324b9 Update all String related functions in BaseLib for this change introduced in Mde Library Spec 0.60e:
"Updated all functions that take pointers to Unicode strings as parameters to ASSERT() if the pointer is not aligned in a 16-bit boundary."

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2375 6f19259b-4bc3-4df7-8a09-765794883524
2007-02-13 01:47:44 +00:00
xli24 15f83a8852 Update MDE and EdkModule packages for ICC build with /W4 /WX /Ox switches, for some latest modifications break it.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2366 6f19259b-4bc3-4df7-8a09-765794883524
2007-02-12 08:12:05 +00:00
qwang12 d958721a06 1) Added BIT0, BIT1, …, BIT63 to the Base Defines
2) Added MIN() and MAX() macros to the Base Macros
3) Added StrStr(), StrDecimalToUnitn(), StrDecimalToUint64(), StrHexToUintn(), StrHexToUintn64(), UnicodeToAscii(), AsciiStrStr(), AsciiStrDecimalToUnitn(), AsciiStrDecimalToUint64(), AsciiStrHexToUintn(), AsciiStrHexToUintn64(), and AsciiToUnicode() to the Base Library String Functions
4) Added the Base Library Checksum Functions which include CalculateSum8(), CaclculateCheckSum8(), CalculateSum16(), CalculateChecksum16(), CalculateSum32(), CalculateCheckSum32(), CalculateSum64(), CalculateChecksum64().

5) Added MMIO Buffer functions to the I/O Library including MmioReadBuffer8(), MmioReadBuffer16(), MmioReadBuffer32(), MmioReadBuffer64(), MmioWriteBuffer8(), MmioWriteBuffer16(), MmioWriteBuffer32(), MmioWriteBuffer64().

6) Changed the parameter name from SizeOfValue to SizeOfBuffer in PcdSetPtr(), PcdSetPtrEx(), PatchPcdSetPtr(), LibPcdSetPtr(), LibPcdSetPtrEx(), LibPatchPcdSetPtr()

7) Added RADIX_HEX flag to the Print Library to support the conversion of values to hexadecimal strings in UnicodeValueToString() and AsciiValueToString() 

8) Added EfiGetCurrentTpl() UEFI Library.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2363 6f19259b-4bc3-4df7-8a09-765794883524
2007-02-12 02:53:23 +00:00
xli24 582510249f Make MDE package pass intel IPF compiler with /W4 /WX switched on.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2312 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-25 06:05:36 +00:00
bbahnsen fd73932fec Mark some .c files as MSFT only.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2213 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-10 23:46:32 +00:00
bxing a9a812a0ed 1. Added comments to ASM files
2. Fixed a bug in 64-bit AsmDisablePaging64(), which may cause a #GP exception.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2206 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-10 06:57:04 +00:00
tgingold a2b1bf96b3 Use ASM_PFX to optionnaly set the underscore prefix
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2179 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-06 14:52:39 +00:00
bxing becca880dc Fixed tracker EDKT395
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2154 6f19259b-4bc3-4df7-8a09-765794883524
2006-12-29 09:06:29 +00:00
xli24 9710b9a67c Add volatile to modify LockValue in ReleaseSpinLock().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2008 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-24 02:27:09 +00:00
yshang1 733f4094ee To Fix PVCS 429.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2007 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-23 09:05:19 +00:00
xli24 2d57c546e0 Add volatile to modify LockValue in AcquireLockOrFail().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2006 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-23 09:01:43 +00:00
bbahnsen dfd52cc1c6 Add Thunk16.S -- needs to be ported from masm.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1971 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-17 16:54:19 +00:00
bbahnsen a1ef15526b Add gnu x86 assembly sources.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1970 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-17 16:48:52 +00:00
bbahnsen 32804425d7 Add an underscore for gcc.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1969 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-17 16:43:12 +00:00
bbahnsen e29e52e7c0 Initial port to x86_64 gnu assembly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1959 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-16 01:11:41 +00:00
bxing 38b5365e39 Enabled 4G+ memory in thunk.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1957 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-15 09:31:03 +00:00
xli24 c9708dddc1 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1931 6f19259b-4bc3-4df7-8a09-765794883524 2006-11-13 03:40:52 +00:00
xli24 38af355c85 Ia32/DivS64x64Remainder.c is not tool-chain specific, it supports both gcc and msft, so the ToolChainFamily="MSFT" description is incorrect.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1904 6f19259b-4bc3-4df7-8a09-765794883524
2006-11-06 08:13:19 +00:00
ajfish c993d0dac4 Did not check in new files correctly the first time!
Updated FPD files that include Runtime driver as a new lib was added to Runtime Driver for the cache flush. Removed Cache Flush routine from EDK DXE SAL Lib.
Cleaned up BaseLib IPF cache routines to only Flush ranges when needed and not to flush the entire cache. 

Removed the need for processor specific code in the Runtime driver by using MDE Cache Lib. 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1822 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-23 03:58:50 +00:00
ajfish 92ea7f231b Updated the Runtime Driver to use the MDE libs for cache flush and removed local copy of Cache flush code. Updated FPD files that include Runtime driver as a new lib was added to Runtime Driver for the cache flush. Removed Cache Flush routine from EDK DXE SAL Lib.
Cleaned up BaseLib IPF cache routines to only Flush ranges when needed and not to flush the entire cache. 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1811 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-22 07:32:16 +00:00
ajfish cd4903c497 Removed duplicate PalCallStatic functions in different libraries. Moved ReadItc and InvalidateInstructionCacheRange to the BaseLib so other libs don't need .s files.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1809 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-22 03:03:45 +00:00
rsun3 2f8df87003 Fix a bug in InternalMathDivRemU64x64(). The bug is that the 64-bit divisor is designed to be loaded to ecx:ebx but the high 4 byte of the divisor is forgotten to be loaded to ecx
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1693 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-09 10:09:26 +00:00
bxing 73c47db8c7 Optimized HighBitSetXX() functions
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1689 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-08 08:45:59 +00:00
mdkinney 705d3a7756 Use intrinsic
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1670 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:56:11 +00:00
mdkinney 9730cac8a1 Use intrinsic
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1669 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:50:23 +00:00
mdkinney 32a4d5cecf Use intrinsic
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1662 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:07:25 +00:00
mdkinney d8e5077483 Fix GCC build issue
Take advantage of some intrinsics from MSFT build tools


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1661 6f19259b-4bc3-4df7-8a09-765794883524
2006-10-04 23:06:00 +00:00
lgao4 542834ce80 Remove the duplicated Copy Right in msa header.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1634 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-27 09:26:40 +00:00
qhuang8 b7089db120 1.Fix .global issue in GAS (EdkT207).
2.Fix Label start with @ (EdkT208).

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1610 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-25 10:05:26 +00:00
mdkinney 23086ba84c Optimize the size of the Base Library for the MSFT 32-bit tool chains by taking advantage of inline assembly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1567 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-19 19:04:40 +00:00
bxing f23d790a79 Added an extra GDT entry to the GDT used by thunk code. SS register will always be loaded as flat segment before switching to 16-bit mode, since SS might not be always valid for NULL selector is allowed in 64-bit mode.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1541 6f19259b-4bc3-4df7-8a09-765794883524
2006-09-14 16:04:47 +00:00
bxing eeb1cd5af3 1. Added Non-existing.c in BaseLib to assert no invocations of SwitchStack() on IPF.
2. Added SwitchIplStacks() function to DxeIplPeim to encapsulate arch details on stack switching.
3. Added PeiSwitchStacks() function to PeiMain to encapsulate arch details on stack switching.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1328 6f19259b-4bc3-4df7-8a09-765794883524
2006-08-21 02:53:29 +00:00
bxing 681dbac98c Added AsmSwitchStackAndBackingStore() to BaseLib.h for stack switching on IPF.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1305 6f19259b-4bc3-4df7-8a09-765794883524
2006-08-17 05:32:47 +00:00
qhuang8 57315d7035 Fix a typo.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1176 6f19259b-4bc3-4df7-8a09-765794883524
2006-08-02 04:33:35 +00:00
vanjeff 4a78c00aac 1. cleanup functions header in PeCoffLoaderEx.c
2. fixed link error in EnablePaging64.asm

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1175 6f19259b-4bc3-4df7-8a09-765794883524
2006-08-02 03:19:19 +00:00
bxing ebca816989 Added a 64-bit version of EnablePaging64() on X64. AsmEnablePaging64() is the transition code to switch the processor from 32-bit into 64-bit long mode and thus is typically linked with 32-bit images only. However, it's desired to link the transition code into a 64-bit image in some special cases. CPU driver is a good example among those.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1092 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-25 08:30:02 +00:00
bxing 3f566587ae 1. Updated function headers in all assembly files.
2. Split x86LowLevel.c into a bunch of C files to make images linked with BaseLib smaller.
3. Fixed a few minor bugs.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1066 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-21 08:47:38 +00:00
vanjeff bda7fbcc2f 1.Added EFIAPI for some assembly functions declare
2.Modified some functions header 

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1052 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-20 02:48:06 +00:00
vanjeff 1ea5ca46c7 1. added functions header for BaseUefiDecompressLi
2. added some internal functions header for BaseLib
3. added EFIAPI for some internal assembly files declare

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1050 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-19 17:37:07 +00:00
bxing bbe4ba8149 Modified coding style, removed unnecessary comments and "offset" key words.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1033 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-17 09:38:46 +00:00
qhuang8 44cf7a02c1 Port thunk16 code from MSFT to GCC assembly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@999 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-14 06:30:17 +00:00
jwang36 5e1c3eedcd Added license & copyright declaration
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@967 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-13 08:24:50 +00:00
bxing 3cc092acf2 Revised GetPowerOfTwo32() and GetPowerOfTwo64() to be more efficient.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@963 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-13 08:05:35 +00:00
jwang36 3fc9d866c4 Enforced case-sensitive on the file names;
Corrected file and/or path names in some msa files.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@949 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-13 05:21:14 +00:00
qhuang8 64ad76699c 1. Add Assert in SetJump.S
2. Rename internal function of ModU64x32.S to avoid collision.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@948 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-13 04:58:40 +00:00
qhuang8 871fdd38c5 Fix a typo BaseLib.msa and add the missing file in BaseSmbusLib.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@922 6f19259b-4bc3-4df7-8a09-765794883524
2006-07-12 15:11:21 +00:00