UDK2018 UefiCpuPkg Notes
-
BaseXApicLib & BaseXApicX2ApicLib: Support AMD.
-
CpuCommonFeaturesLib:
- Enable PPIN (Protected Processor Inventory Number) feature.
- Remove SENTER feature because it's merged to SMX feature.
- Enable LMCE (Local Machine Check Exception) feature.
- Enable PROC_TRACE (Processor Trace) feature.
-
PiSmmCommunicationSmm: Deprecate SMM Communication ACPI Table.
-
CpuExceptionHandlerLib: Use separate stack for exception handlers when stack guard is enabled.
-
PiSmmCpuDxeSmm:
- Combine 2 separate INIT-SIPI-SIPI in S3 resume path to improve S3 boot performance.
- Produce EDKII_SMM_MEMORY_ATTRIBUTE_PROTOCOL. It's used by SMM heap gurad feature.
- Enable NULL pointer detection in SMM environment.
-
S3Resume2Pei:
- Signal EdkiiEndOfS3Resume event in the end of S3 resume path.
- Signal EdkiiS3SmmInitDone event after S3 SMM environment is initialized and before boot script is executed.
- Remove depecated macros in Include/Library/MtrrLib.h:
FIRMWARE_VARIABLE_MTRR_NUMBER
MTRR_LIB_IA32_MTRR_CAP
MTRR_LIB_IA32_MTRR_CAP_VCNT_MASK
MTRR_LIB_IA32_MTRR_FIX64K_00000
MTRR_LIB_IA32_MTRR_FIX16K_80000
MTRR_LIB_IA32_MTRR_FIX16K_A0000
MTRR_LIB_IA32_MTRR_FIX4K_C0000
MTRR_LIB_IA32_MTRR_FIX4K_C8000
MTRR_LIB_IA32_MTRR_FIX4K_D0000
MTRR_LIB_IA32_MTRR_FIX4K_D8000
MTRR_LIB_IA32_MTRR_FIX4K_E0000
MTRR_LIB_IA32_MTRR_FIX4K_E8000
MTRR_LIB_IA32_MTRR_FIX4K_F0000
MTRR_LIB_IA32_MTRR_FIX4K_F8000
MTRR_LIB_IA32_VARIABLE_MTRR_BASE
MTRR_LIB_IA32_VARIABLE_MTRR_END
MTRR_LIB_IA32_MTRR_DEF_TYPE
MTRR_LIB_MSR_VALID_MASK
MTRR_LIB_CACHE_VALID_ADDRESS
MTRR_LIB_CACHE_MTRR_ENABLED
MTRR_LIB_CACHE_FIXED_MTRR_ENABLED
-
MtrrLib: Add API MtrrSetMemoryAttributesInMtrrSettings().
-
Add CPUID definitions for AMD: Include/Register/Amd/Cpuid.h.
-
CpuCommonFeaturesLib: Fix a bug that wrongly enables SMX/VMX.
-
CpuMpDxe: Fix a bug that may cause S4 resume failure.
-
MtrrLib: Re-implement the library to guarantee optimal MTRR settings can always be calculated.
-
MpInitLib:
- Completely initialize AP when AP is re-enabled.
- Fix a bug that causes AP enters timer interrupt handler in the source level debug enabled environment.
- Fix a bug that timer interrupt is disabled in new BSP after SwitchBSP().
- Fix a bug that causes system hang due to below-1MB free memory cannot be found in PEI phase for AP wake up buffer.
- Fix a bug that may cause AP cannot be waken up due to wrong references of StartupApSignal.
-
CpuExceptionHandlerLib: Fix a bug that causes exception information cannot be dumped in release build.
-
PiSmmMCpuDxeSmm: Fix potential infinite loop issue when SMM profile is enabled.
-
SecCore: Fix a bug to guarantee correct SEC performance data can be got through SecPerformancePpi.
-
CpuCommonFeaturesLib:
- Fix AESNI feature detection.
- Fix Haswell CPU hang with 50% throttling.
- Do not unconditionally enable MCA even it's disabled.