vanjeff
91ec78241c
1. Introduce the API MtrrGetDefaultMemoryType () in Mtrr Library.
...
2. Invoke MtrrGetDefaultMemoryType() to get the default memory type instead of the hard code value in module.
3. Add go though for UC attributes.
Signed-off-by: vanjeff
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12587 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-28 06:01:55 +00:00
lgao4
8d3dd3144c
Update Base type SecPeiDxeTimerLibUefiCpu to support all module type.
...
Signed-off-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12576 6f19259b-4bc3-4df7-8a09-765794883524
2011-10-27 00:43:13 +00:00
rsun3
f7bb98019a
UefiCpuPkg VTF0: Fix support for finding SEC image of type TE.
...
Update Flat32SearchForSecEntryPoint assembly code to support finding an SEC image using the TE image format.
Signed-off-by: rsun3
Reviewed-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12462 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-28 01:36:33 +00:00
jyao1
378175d258
Add PCD for 1G page table
...
signed off by: jyao1
reviewed by: jfan12
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12397 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-21 03:45:35 +00:00
rsun3
1e60a0ecfc
UefiCpuPkg MTRR Library: enhance MTRR Library.
...
When it finds that a request range is covered by an existing MTRR with same cache type, the MTRR library set a flag and continues to check other MTRRs and invalidate any MTRR of the same request range with a higher-priority cache type.
Signed-off-by: rsun3
Reviewed-by: gxing
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12388 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-20 07:36:11 +00:00
ydong10
d499fad0b0
UefiCpuPkg VTF0: Rename README to ReadMe.txt, add nasm version
...
* Rename README to ReadMe.txt
* Document that nasm 2.03 or newer is required for building VTF0
Signed-off-by: ydong10
Reviewed-by: jljusten
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12384 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-20 01:49:52 +00:00
jyao1
54d3b84e3e
Correct 1G page table generation.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12380 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-19 13:02:05 +00:00
jljusten
a0248b0936
UefiCpuPkg VTF0: Add README, remove Makefile
...
* Add README
* Remove Makefile which is no longer used to build VTF0
Signed-off-by: jljusten
Reviewed-by: geekboy15a
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12355 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-15 17:25:17 +00:00
jyao1
c56b65665d
Use CPU_HOB to detect max address support from platform, and added 1G page table support.
...
Sign-off-by: jyao1
Reviewed-by: li-elvin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12332 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-13 05:48:57 +00:00
rsun3
1a2ad6fca7
Enhance the MTRR lib to support the case where alignment of base address < length.
...
Signed-off by: rsun3
Reviewed-by: hhuan13
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12330 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-13 03:06:48 +00:00
mdkinney
5f867ad00d
Add generic HPET Timer DXE Driver and support libraries
...
Signed-off-by: mdkinney
Reviewed-by: li-elvin
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12259 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-02 02:42:19 +00:00
jljusten
1f569620d2
UefiCpuPkg: Add S3Resume2Pei PEIM
...
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@12227 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-29 22:19:13 +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
rsun3
8332983e2e
UefiCpuPkg: Replace the un-necessary WBINVD instruction at the reset vector with two NOPs in VTF0.
...
Signed-off-by: rsun3
Reviewed-by: mdkinney
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12085 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-04 03:25:14 +00:00
niruiyu
a6ce6cf992
Fix typo that breaks the build.
...
Signed-off-by: niruiyu
Reviewed-by: vanjeff
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12002 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-08 06:51:30 +00:00
andrewfish
4d0ceb8dca
UefiCpuPkg: Fix X64 clang compiler/assembler warnings.
...
Signed-off-by: andrewfish
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11996 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 18:12:29 +00:00
jljusten
323940278e
UefiCpuPkg/CpuDxe: Put CPU to sleep during Idle events
...
When the MdeModulePkg gCoreEventIdleGuid event is signaled,
CpuSleep is called. This will cause the CPU to sleep until
the next interrupt occurs.
Signed-off-by: jljusten
Reviewed-by: mdkinney
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11842 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-16 23:28:16 +00:00
vanjeff
62ba7e1704
CpuDxe entry point () only register exception handlers unassigned before.
...
Signed-off-by: vanjeff
Reviewed-by: rsun3
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11699 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-25 02:35:34 +00:00
rsun3
4ec21e8b50
Per PI 1.2 errata B spec, for SetMemoryAttributes() service of CPU Architecture Protocol, EFI_INVALID_PARAMETER should be returned for cases:
...
If Attributes specifies a combination of memory attributes that cannot be set together, then EFI_INVALID_PARAMETER is returned. For example, if both EFI_MEMORY_UC and EFI_MEMORY_WT are set.
Signed-off-by: rsun3
Reviewed-by: jyao1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11694 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-24 01:56:29 +00:00
rsun3
24f7e42cb7
A complement fix for revision 11664 to update GCC assembly files : clear the direction flag in interrupt/exception handlers' assembly entry code before calling C functions to follow the UEFI calling convention.
...
Signed-off-by: rsun3
Reviewed-by: jyao1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11670 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-17 08:35:20 +00:00
rsun3
ad8cbf7197
Clear the direction flag in interrupt/exception handlers' assembly entry code before calling C functions to follow the UEFI calling convention.
...
Signed-off-by: rsun3
Reviewed-by: jyao1
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11664 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-16 06:10:42 +00:00
ydong10
4fe180bae6
Enhance inf to follow spec.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11395 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-14 08:50:25 +00:00
mdkinney
5e9ae436e9
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) Add default mappings for the DebugPrintErrorLevelLib to the DSC file for this package.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11378 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-10 22:43:06 +00:00
mdkinney
76f6d95440
Remove extra {} inside DEBUG_CODE() macro
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11244 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-11 23:12:13 +00:00
mdkinney
ec44f02ecc
Fix 32-bit build break
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11235 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-07 00:41:08 +00:00
mdkinney
f877f3006e
Add DEBUG() macros for DEBUG_CACHE to MTRR Library show all changes memory caches setting changes.
...
If DEBUG_PROPERTY_DEBUG_CODE_ENABLED is also set in PcdDebugPropertyMask, then the entire set of MTRRs will be displayed on every memory cache setting change.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11231 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-06 02:57:26 +00:00
rsun3
304a39b746
Fix a bug that the size of a gate descriptor in the IDT is 8 bytes. The size is 8 bytes in 32-bit mode, while it is 16 bytes in 64-bit mode. Replace the hard-coded size with a sizeof.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11177 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-17 02:38:26 +00:00
mdkinney
4038c1fddd
Add MtrrLib and LocalApicLib declarations to the UefiCpuPkg DEC file.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11128 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-07 20:23:20 +00:00
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
ydong10
1e51d5954b
Refine code to follow the coding style.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10992 6f19259b-4bc3-4df7-8a09-765794883524
2010-11-01 09:00:23 +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
ydong10
c52acd89e8
Refine code to remove type converting warning.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10982 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-26 07:52:31 +00:00
jljusten
557b970a2f
UefiCpuPkg CpuDxe: Fix bug with CPU Arch RegisterInterruptHandler
...
The change in r10765 introduced an issue where inherited interrupt
handlers would override the driver's RegisterInterruptHandler
functionality.
DUET installs a IDT with 256 entries early in it's boot. Therefore,
no interrupt handlers could be installed with DUET while using
UefiCpuPkg/CpuDxe (instead of DuetPkg/CpuDxe).
This change forces the IDT to be modified when RegisterInterruptHandler
is called to ensure the UEFI handler will be installed properly.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10972 6f19259b-4bc3-4df7-8a09-765794883524
2010-10-22 01:07:48 +00:00
rsun3
84a773d18b
Rename two files to follow the file naming convention.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10853 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-07 10:23:05 +00:00
rsun3
09a90201ee
Rename two files to follow the file naming convention.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10852 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-07 10:22:21 +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
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