Felix Held has submitted this change. ( https://review.coreboot.org/c/coreboot/+/61506 )
Change subject: soc/intel/cannonlake: Add `disable_vmx` devtree option ......................................................................
soc/intel/cannonlake: Add `disable_vmx` devtree option
This option isn't meant to be assigned statically through devicetrees, but at runtime according to some config mechanism. It works in conjunction with the existing Kconfig option.
Change-Id: Ia760be61466bc6a0ec187746e6e32537029512b4 Signed-off-by: Angel Pons th3fanbus@gmail.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/61506 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Patrick Rudolph siro@das-labor.org Reviewed-by: Marvin Drees marvin.drees@9elements.com --- M src/soc/intel/cannonlake/chip.h M src/soc/intel/cannonlake/cpu.c 2 files changed, 4 insertions(+), 1 deletion(-)
Approvals: build bot (Jenkins): Verified Patrick Rudolph: Looks good to me, approved Marvin Drees: Looks good to me, but someone else must approve
diff --git a/src/soc/intel/cannonlake/chip.h b/src/soc/intel/cannonlake/chip.h index 774b526..c7e71f6 100644 --- a/src/soc/intel/cannonlake/chip.h +++ b/src/soc/intel/cannonlake/chip.h @@ -448,6 +448,8 @@
/* Disable CPU Turbo in IA32_MISC_ENABLE */ bool cpu_turbo_disable; + + bool disable_vmx; };
typedef struct soc_intel_cannonlake_config config_t; diff --git a/src/soc/intel/cannonlake/cpu.c b/src/soc/intel/cannonlake/cpu.c index 6af3e1a..10921a2 100644 --- a/src/soc/intel/cannonlake/cpu.c +++ b/src/soc/intel/cannonlake/cpu.c @@ -144,7 +144,8 @@ enable_turbo();
/* Enable Vmx */ - set_vmx_and_lock(); + set_feature_ctrl_vmx_arg(CONFIG(ENABLE_VMX) && !cfg->disable_vmx); + set_feature_ctrl_lock(); }
static void per_cpu_smm_trigger(void)