OvmfPkg: remove PcdCsmEnable

PcdCsmEnable was introduced in commits 50f911d25d39 ("OvmfPkg: introduce
PcdCsmEnable feature flag", 2020-02-05) and 75839f977d37
("OvmfPkg/PlatformPei: detect SMRAM at default SMBASE (for real)",
2020-02-05). Remove it, and substitute constant FALSE wherever it has been
evaluated thus far.

Regression test: after building OVMF IA32X64 with -D SMM_REQUIRE, and
booting it on Q35, the log still contains

> Q35SmramAtDefaultSmbaseInitialization: SMRAM at default SMBASE found

Cc: Anthony Perard <anthony.perard@citrix.com>
Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
https://bugzilla.tianocore.org/show_bug.cgi?id=4588
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20231110235820.644381-3-lersek@redhat.com>
Reviewed-by: Jiewen Yao <Jiewen.yao@intel.com>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Acked-by: Corvin Köhne <corvink@FreeBSD.org>
Acked-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Laszlo Ersek 2023-11-11 00:57:45 +01:00 committed by mergify[bot]
parent 506cc670c0
commit 3099db510e
8 changed files with 13 additions and 34 deletions

View File

@ -378,7 +378,6 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
!ifdef $(CSM_ENABLE) !ifdef $(CSM_ENABLE)
!error "CSM is being torn down" !error "CSM is being torn down"
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE
!endif !endif
!if $(SECURE_BOOT_ENABLE) == TRUE !if $(SECURE_BOOT_ENABLE) == TRUE
gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|TRUE

View File

@ -497,8 +497,3 @@
## This feature flag indicates the firmware build supports secure boot. ## This feature flag indicates the firmware build supports secure boot.
gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|FALSE|BOOLEAN|0x6d gUefiOvmfPkgTokenSpaceGuid.PcdSecureBootSupported|FALSE|BOOLEAN|0x6d
## Informs modules (including pre-DXE-phase modules) whether the platform
# firmware contains a CSM (Compatibility Support Module).
#
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|FALSE|BOOLEAN|0x35

View File

@ -473,7 +473,6 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
!ifdef $(CSM_ENABLE) !ifdef $(CSM_ENABLE)
!error "CSM is being torn down" !error "CSM is being torn down"
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE
!endif !endif
!if $(SMM_REQUIRE) == TRUE !if $(SMM_REQUIRE) == TRUE
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE

View File

@ -480,7 +480,6 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
!ifdef $(CSM_ENABLE) !ifdef $(CSM_ENABLE)
!error "CSM is being torn down" !error "CSM is being torn down"
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE
!endif !endif
!if $(SMM_REQUIRE) == TRUE !if $(SMM_REQUIRE) == TRUE
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE

View File

@ -499,7 +499,6 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
!ifdef $(CSM_ENABLE) !ifdef $(CSM_ENABLE)
!error "CSM is being torn down" !error "CSM is being torn down"
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE
!endif !endif
!if $(SMM_REQUIRE) == TRUE !if $(SMM_REQUIRE) == TRUE
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire|TRUE

View File

@ -365,7 +365,6 @@
gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE gEfiMdeModulePkgTokenSpaceGuid.PcdInstallAcpiSdtProtocol|TRUE
!ifdef $(CSM_ENABLE) !ifdef $(CSM_ENABLE)
!error "CSM is being torn down" !error "CSM is being torn down"
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable|TRUE
!endif !endif
[PcdsFixedAtBuild] [PcdsFixedAtBuild]

View File

@ -89,32 +89,22 @@ Q35SmramAtDefaultSmbaseInitialization (
) )
{ {
RETURN_STATUS PcdStatus; RETURN_STATUS PcdStatus;
UINTN CtlReg;
UINT8 CtlRegVal;
ASSERT (PlatformInfoHob->HostBridgeDevId == INTEL_Q35_MCH_DEVICE_ID); ASSERT (PlatformInfoHob->HostBridgeDevId == INTEL_Q35_MCH_DEVICE_ID);
PlatformInfoHob->Q35SmramAtDefaultSmbase = FALSE; CtlReg = DRAMC_REGISTER_Q35 (MCH_DEFAULT_SMBASE_CTL);
if (FeaturePcdGet (PcdCsmEnable)) { PciWrite8 (CtlReg, MCH_DEFAULT_SMBASE_QUERY);
DEBUG (( CtlRegVal = PciRead8 (CtlReg);
DEBUG_INFO, PlatformInfoHob->Q35SmramAtDefaultSmbase = (BOOLEAN)(CtlRegVal ==
"%a: SMRAM at default SMBASE not checked due to CSM\n", MCH_DEFAULT_SMBASE_IN_RAM);
__func__ DEBUG ((
)); DEBUG_INFO,
} else { "%a: SMRAM at default SMBASE %a\n",
UINTN CtlReg; __func__,
UINT8 CtlRegVal; PlatformInfoHob->Q35SmramAtDefaultSmbase ? "found" : "not found"
));
CtlReg = DRAMC_REGISTER_Q35 (MCH_DEFAULT_SMBASE_CTL);
PciWrite8 (CtlReg, MCH_DEFAULT_SMBASE_QUERY);
CtlRegVal = PciRead8 (CtlReg);
PlatformInfoHob->Q35SmramAtDefaultSmbase = (BOOLEAN)(CtlRegVal ==
MCH_DEFAULT_SMBASE_IN_RAM);
DEBUG ((
DEBUG_INFO,
"%a: SMRAM at default SMBASE %a\n",
__func__,
PlatformInfoHob->Q35SmramAtDefaultSmbase ? "found" : "not found"
));
}
PcdStatus = PcdSetBoolS ( PcdStatus = PcdSetBoolS (
PcdQ35SmramAtDefaultSmbase, PcdQ35SmramAtDefaultSmbase,

View File

@ -133,7 +133,6 @@
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSnpSecretsSize gUefiOvmfPkgTokenSpaceGuid.PcdOvmfSnpSecretsSize
[FeaturePcd] [FeaturePcd]
gUefiOvmfPkgTokenSpaceGuid.PcdCsmEnable
gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire
[Ppis] [Ppis]