UefiCpuPkg: Disable MTRR programming for UefiPayloadPkg
The MTRRs have already been programmed by FSB. Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
This commit is contained in:
committed by
Jeremy Soller
parent
599f4a4ddd
commit
83c68bbe1d
@ -2763,6 +2763,10 @@ IsMtrrSupported (
|
|||||||
CPUID_VERSION_INFO_EDX Edx;
|
CPUID_VERSION_INFO_EDX Edx;
|
||||||
MSR_IA32_MTRRCAP_REGISTER MtrrCap;
|
MSR_IA32_MTRRCAP_REGISTER MtrrCap;
|
||||||
|
|
||||||
|
if (PcdGetBool(PcdCpuDisableMtrrProgramming)) {
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Check CPUID(1).EDX[12] for MTRR capability
|
// Check CPUID(1).EDX[12] for MTRR capability
|
||||||
//
|
//
|
||||||
|
@ -37,4 +37,4 @@
|
|||||||
|
|
||||||
[Pcd]
|
[Pcd]
|
||||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuNumberOfReservedVariableMtrrs ## SOMETIMES_CONSUMES
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuNumberOfReservedVariableMtrrs ## SOMETIMES_CONSUMES
|
||||||
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuDisableMtrrProgramming ## CONSUMES
|
||||||
|
@ -197,6 +197,10 @@
|
|||||||
# @Prompt SMM Code Access Check.
|
# @Prompt SMM Code Access Check.
|
||||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmCodeAccessCheckEnable|TRUE|BOOLEAN|0x60000013
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmCodeAccessCheckEnable|TRUE|BOOLEAN|0x60000013
|
||||||
|
|
||||||
|
## Disables MTRR programming in case it's already programmed by FSB.
|
||||||
|
# @Prompt Disable MTRR programming.
|
||||||
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuDisableMtrrProgramming|FALSE|BOOLEAN|0x00000017
|
||||||
|
|
||||||
## Specifies the number of variable MTRRs reserved for OS use. The default number of
|
## Specifies the number of variable MTRRs reserved for OS use. The default number of
|
||||||
# MTRRs reserved for OS use is 2.
|
# MTRRs reserved for OS use is 2.
|
||||||
# @Prompt Number of reserved variable MTRRs.
|
# @Prompt Number of reserved variable MTRRs.
|
||||||
|
@ -140,9 +140,13 @@
|
|||||||
|
|
||||||
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuHotPlugDataAddress_HELP #language en-US "Contains the pointer to a CPU Hot Plug Data structure if CPU hot-plug is supported."
|
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuHotPlugDataAddress_HELP #language en-US "Contains the pointer to a CPU Hot Plug Data structure if CPU hot-plug is supported."
|
||||||
|
|
||||||
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuNumberOfReservedVariableMtrrs_PROMPT #language en-US "Number of reserved variable MTRRs"
|
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuDisableMtrrProgramming_PROMPT #language en-US "Number of reserved variable MTRRs"
|
||||||
|
|
||||||
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuNumberOfReservedVariableMtrrs_HELP #language en-US "Specifies the number of variable MTRRs reserved for OS use."
|
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuDisableMtrrProgramming_HELP #language en-US "Specifies the number of variable MTRRs reserved for OS use."
|
||||||
|
|
||||||
|
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuNumberOfReservedVariableMtrrs_PROMPT #language en-US "Disable MTRR programming."
|
||||||
|
|
||||||
|
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuNumberOfReservedVariableMtrrs_HELP #language en-US "Disables MTRR programming in case it's already programmed by FSB."
|
||||||
|
|
||||||
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuApLoopMode_PROMPT #language en-US "The AP wait loop state"
|
#string STR_gUefiCpuPkgTokenSpaceGuid_PcdCpuApLoopMode_PROMPT #language en-US "The AP wait loop state"
|
||||||
|
|
||||||
|
@ -326,6 +326,8 @@
|
|||||||
!if $(SOURCE_DEBUG_ENABLE)
|
!if $(SOURCE_DEBUG_ENABLE)
|
||||||
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
|
||||||
!endif
|
!endif
|
||||||
|
# Disable MTRR programming
|
||||||
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuDisableMtrrProgramming|TRUE
|
||||||
|
|
||||||
[PcdsPatchableInModule.common]
|
[PcdsPatchableInModule.common]
|
||||||
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x7
|
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x7
|
||||||
|
@ -335,6 +335,8 @@
|
|||||||
!if $(SOURCE_DEBUG_ENABLE)
|
!if $(SOURCE_DEBUG_ENABLE)
|
||||||
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
|
gEfiSourceLevelDebugPkgTokenSpaceGuid.PcdDebugLoadImageMethod|0x2
|
||||||
!endif
|
!endif
|
||||||
|
# Disable MTRR programming
|
||||||
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuDisableMtrrProgramming|TRUE
|
||||||
|
|
||||||
[PcdsPatchableInModule.common]
|
[PcdsPatchableInModule.common]
|
||||||
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x7
|
gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x7
|
||||||
|
Reference in New Issue
Block a user