From 0503274c74ccec733b4c2d2f2d4291bf00f46c3f Mon Sep 17 00:00:00 2001 From: Matt DeVillier Date: Fri, 14 Apr 2023 15:00:26 -0500 Subject: soc/intel/apl: program VMX per Kconfig setting While FSP programs the VmxEnable UPD per CONFIG_ENABLE_VMX, it doesn't set the lock bit, which prevents Windows from enabling virtualization on devices which support it. Call set_vmx_and_lock() to ensure the lock bit is properly set. TEST=build/boot Win11 on google/ampton,reef; verify virtualization enabled. Change-Id: I54ea0adb0a6d10f2df18f604b1f1e5a7a145dfb3 Signed-off-by: Matt DeVillier Reviewed-on: https://review.coreboot.org/c/coreboot/+/76804 Reviewed-by: CoolStar Tested-by: build bot (Jenkins) Reviewed-by: Sean Rhodes --- src/soc/intel/apollolake/cpu.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/soc/intel/apollolake') diff --git a/src/soc/intel/apollolake/cpu.c b/src/soc/intel/apollolake/cpu.c index a5b8ef31f3..f849350dd0 100644 --- a/src/soc/intel/apollolake/cpu.c +++ b/src/soc/intel/apollolake/cpu.c @@ -80,6 +80,9 @@ void soc_core_init(struct device *cpu) set_aesni_lock(); + /* Set virtualization based on Kconfig option */ + set_vmx_and_lock(); + /* * Enable ACPI PM timer emulation, which also lets microcode know * location of ACPI_BASE_ADDRESS. This also enables other features -- cgit v1.2.3