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