Commit Graph

201 Commits

Author SHA1 Message Date
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 5b7e61a0c5 Add explicit type cast to suppress possible warning of precession loss.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10783 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-10 06:57:32 +00:00
mdkinney 0564ae5ee6 Inherit entries from previous IDT when new IDT is installed.
Update CS in each inherited IDT entry to match CS for the new GDT.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10765 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-03 04:54:44 +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
rsun3 61ece967cb Skip restoration of DRx registers to support in-circuit emualators or debuggers set breakpoint in interrupt/exception context.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10573 6f19259b-4bc3-4df7-8a09-765794883524
2010-06-11 03:22:15 +00:00
lgao4 164d59644f Clean up package/platform DSC files by the following steps:
1. Remove PCDs those use the default values/types from the DEC file.
  2. Remove the unused library instances.
  3. Group common library instances in common [LibraryClasses] section as the default library instance for all modules.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10534 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-21 02:49:45 +00:00
qhuang8 d60957b856 Fix minor format issue in file header
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10488 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-13 01:10:56 +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
lgao4 712389b848 Update the modules with the different module GUID to avoid the different modules with the same module GUID.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10345 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-06 02:56:49 +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
jljusten a495774f69 Remove svn:executable on *.c, *.h, *.asm, *.S, *.inf and *.asl*
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10087 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25 18:17:41 +00:00
klu2 24321aa11e Clean up EFI_SPECIFICATION_VERSION and PI_SPECIFICATION_VERSION.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10077 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-25 16:50:12 +00:00
vanjeff dc8f418d71 roll back changing on save and restore interrupt status, it needn't doing.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10059 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 08:29:53 +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 8d96b9765e Add Memory Allocation Library instance for modules of type DXE_SMM_DRIVER
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10004 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-14 06:18:15 +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
jljusten 6640eb366c UefiCpuPkg/CpuDxe: Fix build error
This driver was not building following the r9935 & r9941 changes.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9969 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-10 17:37:37 +00:00
jljusten e518b40c16 UefiCpuPkg: Add CpuDxe driver to UefiCpuPkg.dsc for build test coverage
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9968 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-10 17:37:10 +00:00
jljusten 3e6374dfd8 UefiCpuPkg/CpuDxe: Remove unnecessary OvmfPkg dependency
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9967 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-10 17:36:50 +00:00
vanjeff ea99e00d76 a)Save and disable CPU interrupt before calling AsmWriteIdtr().
b)Restore CPU interrupt status after callng AsmWriteIdtr().


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9956 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-09 09:23:17 +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
geekboy15a bc252e8ea4 Adding files from OvmfPkg to common location. This is so multiple packages can use pre-built reset vector code.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9911 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 17:56:00 +00:00
mdkinney 759f21f1d1 Remove unused structure
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9853 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-28 21:09:54 +00:00
mdkinney 4a3af380b8 Minor clean up of DEC file.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9842 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-27 23:05:44 +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
qhuang8 311004b238 Fix ICC build break
Fix some typos

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9770 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-15 02:54:46 +00:00
qhuang8 44fdeb35c5 Fix ICC build break
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9769 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-15 02:49:42 +00:00
mdkinney e643315bae Add generic CpuIoPei module that produces the CPU I/O PPU using the services of the MdePkg IoLib
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9764 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 23:47:50 +00:00
mdkinney 3ea1d3e611 Update CpuIo2Dxe to also support IPF
Clean up CpuIo2Dxe to follow the same design as the IntelFrameworkModulePlg module CpuIoDxe and the UefiCpuPkg module CpuIo2Smm


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9761 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 22:14:50 +00:00
mdkinney bc230a23ed Clean up function header comments to match SMM CPU I/O 2 Protocol definition in the MdePkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9757 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 20:15:14 +00:00
mdkinney dbc225ca51 Update Width check for < 0.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9754 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 18:14:39 +00:00
mdkinney 08a29011c9 Fix file header
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9741 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 05:18:07 +00:00
mdkinney 173eeac9eb Add module that produces the SMM CPU I/O 2 Protocol
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9737 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-14 04:24:00 +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
xli24 3ca55ed48d Check in driver to produce CPU I/O 2 Protocol for IA32 and X64 architecture.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9522 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-07 03:09:04 +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
qhuang8 c8adfe9ddc Use .p2align directive instead of ambiguous .align directive.
(Judging from the context, the original .align should means the power of two.)


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9156 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-20 08:05:49 +00:00
qhuang8 c2fd60f071 Update to make end-of-line consistent for all source files in MdePkg. There are no other updates besides that change.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9155 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-20 08:04:40 +00:00
gikidy 3668c083cd Remove ".intel_syntax", convert MASM to GAS.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9079 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-17 05:39:17 +00:00
gikidy db63aeea6d Remove ".intel_syntax", convert MASM to GAS.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9067 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-14 04:01:56 +00:00
jljusten a47463f283 Add CPU DXE driver for IA32 & X64 processor architectures.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8395 6f19259b-4bc3-4df7-8a09-765794883524
2009-05-27 21:09:47 +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
jljusten 235946217e Remove unneeded reference to DuetPkg.dec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7611 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 20:22:58 +00:00
jljusten 9e7864e27e Add UefiCpuPkg.dsc and UefiCpuPkg.dec for UefiCpuPkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7609 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 20:15:52 +00:00
jljusten 8b2ba4d882 Moving DuetPkg/CpuIoDxe to UefiCpuPkg.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7608 6f19259b-4bc3-4df7-8a09-765794883524
2009-02-23 19:56:13 +00:00