From ad6073c8b0bf3915e57f75947eb17bdaa2df926d Mon Sep 17 00:00:00 2001 From: Subrata Banik Date: Sat, 1 Apr 2023 20:37:12 +0530 Subject: soc/intel/meteorlake: Enable VMX using coreboot CPU feature program This function calls into `set_feature_ctrl_vmx_arg()` to enable VMX for virtualization if not done by FSP (based on DROP_CPU_FEATURE_PROGRAM_IN_FSP config is enabled) in MeteorLake SoC based platform. TEST=Able to build and boot google/rex. Signed-off-by: Subrata Banik Change-Id: I7e49c15fd4f78a3e633855fea550720f0a685062 Reviewed-on: https://review.coreboot.org/c/coreboot/+/74161 Tested-by: build bot (Jenkins) Reviewed-by: Kapil Porwal Reviewed-by: Eric Lai --- src/soc/intel/meteorlake/chip.h | 2 ++ src/soc/intel/meteorlake/cpu.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/src/soc/intel/meteorlake/chip.h b/src/soc/intel/meteorlake/chip.h index 9d9a600b45..d4abed88c2 100644 --- a/src/soc/intel/meteorlake/chip.h +++ b/src/soc/intel/meteorlake/chip.h @@ -350,6 +350,8 @@ struct soc_intel_meteorlake_config { /* Energy-Performance Preference (HWP feature) */ bool enable_energy_perf_pref; uint8_t energy_perf_pref_value; + + bool disable_vmx; }; typedef struct soc_intel_meteorlake_config config_t; diff --git a/src/soc/intel/meteorlake/cpu.c b/src/soc/intel/meteorlake/cpu.c index fa1b83f49c..bc7f7c76e8 100644 --- a/src/soc/intel/meteorlake/cpu.c +++ b/src/soc/intel/meteorlake/cpu.c @@ -145,6 +145,9 @@ void soc_core_init(struct device *cpu) disable_three_strike_error(); set_aesni_lock(); + + /* Enable VMX */ + set_feature_ctrl_vmx_arg(CONFIG(ENABLE_VMX) && !conf->disable_vmx); } } -- cgit v1.2.3