cpu/intel/common: Add `set_feature_ctrl_vmx_arg()`

Allow deciding whether to enable VMX through a function parameter. Used
in a follow-up.

Change-Id: I4f932de53207cd4e24cb4c67d20c60f708bfaa89
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/61505
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>
This commit is contained in:
Angel Pons 2022-01-31 17:38:06 +01:00 committed by Felix Held
parent 57fc1b91b9
commit b998fd073d
2 changed files with 8 additions and 2 deletions

View File

@ -8,6 +8,7 @@
void set_vmx_and_lock(void); void set_vmx_and_lock(void);
void set_feature_ctrl_vmx(void); void set_feature_ctrl_vmx(void);
void set_feature_ctrl_vmx_arg(bool enable);
void set_feature_ctrl_lock(void); void set_feature_ctrl_lock(void);
/* /*

View File

@ -16,11 +16,10 @@ void set_vmx_and_lock(void)
set_feature_ctrl_lock(); set_feature_ctrl_lock();
} }
void set_feature_ctrl_vmx(void) void set_feature_ctrl_vmx_arg(bool enable)
{ {
msr_t msr; msr_t msr;
uint32_t feature_flag; uint32_t feature_flag;
int enable = CONFIG(ENABLE_VMX);
feature_flag = cpu_get_feature_flags_ecx(); feature_flag = cpu_get_feature_flags_ecx();
/* Check that the VMX is supported before reading or writing the MSR. */ /* Check that the VMX is supported before reading or writing the MSR. */
@ -62,6 +61,12 @@ void set_feature_ctrl_vmx(void)
printk(BIOS_DEBUG, "VMX status: %s\n", printk(BIOS_DEBUG, "VMX status: %s\n",
enable ? "enabled" : "disabled"); enable ? "enabled" : "disabled");
} }
void set_feature_ctrl_vmx(void)
{
set_feature_ctrl_vmx_arg(CONFIG(ENABLE_VMX));
}
void set_feature_ctrl_lock(void) void set_feature_ctrl_lock(void)
{ {
msr_t msr; msr_t msr;