rsun3
d99e698158
Lost a file in last check-in.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11101 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-29 03:37:13 +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
rsun3
23394428fd
Fix build break when doing 32-bit build with some certain C compiler option combinations.
...
Use the library functions for shift operations in BaseLib for a 64-bit integer where the code is shared for 32-bit and 64-bit.
Defining bitfields in structures with > 32 bits will cause these types of issues on IA32 builds. So the largest bitfield should be type UINT32 with a max size of :32.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10983 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-28 02:01:43 +00:00
rsun3
b1b8c631f6
Add DisableLvtInterrupts() for the Local APIC library class.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10827 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-27 03:46:18 +00:00
rsun3
ae40aef1fb
Improve Local APIC library class. Add new library APIs: GetApicVersion(), SendFixedIpi(), SendFixedIpiAllExcludingSelf(), GetApicTimerState(). Remove GetApicTimerDivisor (), its functionality can be covered by GetApicTimerState().
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10824 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-26 05:58:42 +00:00
rsun3
bf73cc4bbc
Add Local APIC Library class defining APIs for common Local APIC operations. Add two Local APIC library instances, one is for xAPIC mode only, the other is for x2APIC capable processors which have xAPIC and x2APIC modes.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10814 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-23 06:34:39 +00:00
xli24
a48caeebba
Add boundary check against variable MTRR count.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10787 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-10 08:57:36 +00:00
xli24
430fbbe096
Code refinement.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10647 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-13 03:08:54 +00:00
hhtian
01a1c0fc9e
Update the copyright notice format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10429 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 12:25:26 +00:00
geekboy15a
ed8dfd7bfe
Fixed GCC 4.4 build issues due to EFIAPI not being used when required.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10380 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-16 23:36:53 +00:00
xli24
947a573ada
Add Checking for MTRR existence.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10223 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-10 02:38:39 +00:00
xli24
5bdfa4e58a
Add array index check to avoid potential buffer overflow.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10179 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04 06:38:22 +00:00
lgao4
7b202cb0f9
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@10051 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-23 23:58:38 +00:00
mdkinney
58b23d903e
Use atomic AsmDisableCache() and AsmDisableCache() functions instead of AsmWriteCr0() and AsmWbinvd() calls
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9998 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 00:44:27 +00:00
jyao1
3ba736f39c
Revert incompatible change:
...
1) No API change from old version.
2) Change MACRO:
#define MTRR_NUMBER_OF_VARIABLE_MTRR 32 // the semantics are changed from NUMBER to MAX_NUMBER.
#define FIRMWARE_VARIABLE_MTRR_NUMBER 6 // wrong and deprecated
#define MTRR_LIB_IA32_VARIABLE_MTRR_END 0x20F // wrong and deprecated
#define RESERVED_FIRMWARE_VARIABLE_MTRR_NUMBER 2 // add new one.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9941 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-05 22:27:07 +00:00
jyao1
3b9be4164b
Original MTRR lib hardcode VARIABLE_MTRR as 8. But it is 7 in Core2 if SMRR enabled, and 10 in latest Corei7.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9935 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-05 06:33:42 +00:00
qhuang8
948cecf4bb
Clean up MtrrLib to remove unnecessary package dependency
...
Add it to the [Components] section of UefiCpuPkg for build validation
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9823 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-26 06:40:22 +00:00
geekboy15a
2127579be1
Fixed incorrect syntax for immediate HEX value.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9700 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-08 21:39:54 +00:00
geekboy15a
3d49c108a0
Removed use of pre-initialized global data in this file as it was causing problems with UNIXGCC tool chain.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9699 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-08 21:29:30 +00:00
jljusten
d6d8e8925f
BaseUefiCpuLib: Preserve EBX register in InitializeFloatingPointUnits
...
The EBX register should be preserved for the IA32 C calling convention.
The use of the CPUID instruction was modifying the EBX register, so
we push and pop EBX.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9573 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-16 23:29:20 +00:00
qhuang8
86973faa31
Update x64 version of InitializeFpu.asm to use raw op-codes instead of 'finit' so that some early version of MS assemblers can support.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9496 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-30 06:28:42 +00:00
qhuang8
989322c384
Introduce UefiCpuLib library class in UefiCpuPkg and add one instance of BaseUefiCpuLib. The major purpose of this library class / instance is to provide some routines that are generic for IA32 family CPU
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9480 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-25 04:25:02 +00:00
jljusten
e50466da24
Add MTRR library for IA32 & X64 processor architectures.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8394 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-27 21:09:39 +00:00