soc/intel/skylake: enable VMX support
Use soc/common VMX block to enable VMX on supported devices. Change-Id: Iaa1a6201b431783d709c0509715fa8e8b1ce349a Signed-off-by: Matt DeVillier <matt.devillier@gmail.com> Reviewed-on: https://review.coreboot.org/25332 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Youness Alaoui <snifikino@gmail.com>
This commit is contained in:
parent
83abfdfb21
commit
969ef10f54
|
@ -84,6 +84,7 @@ config CPU_SPECIFIC_OPTIONS
|
|||
select SOC_INTEL_COMMON_BLOCK_SPI
|
||||
select SOC_INTEL_COMMON_BLOCK_TIMER
|
||||
select SOC_INTEL_COMMON_BLOCK_UART
|
||||
select SOC_INTEL_COMMON_BLOCK_VMX
|
||||
select SOC_INTEL_COMMON_BLOCK_XHCI
|
||||
select SOC_INTEL_COMMON_GFX_OPREGION
|
||||
select SOC_INTEL_COMMON_NHLT
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include <intelblocks/mp_init.h>
|
||||
#include <intelblocks/sgx.h>
|
||||
#include <intelblocks/smm.h>
|
||||
#include <intelblocks/vmx.h>
|
||||
#include <pc80/mc146818rtc.h>
|
||||
#include <soc/cpu.h>
|
||||
#include <soc/msr.h>
|
||||
|
@ -476,6 +477,8 @@ static void post_mp_init(void)
|
|||
smm_lock();
|
||||
#endif
|
||||
|
||||
mp_run_on_all_cpus(vmx_configure, 2000);
|
||||
|
||||
mp_run_on_all_cpus(sgx_configure, 2000);
|
||||
}
|
||||
|
||||
|
@ -552,3 +555,17 @@ int soc_fill_sgx_param(struct sgx_param *sgx_param)
|
|||
sgx_param->enable = conf->sgx_enable;
|
||||
return 0;
|
||||
}
|
||||
int soc_fill_vmx_param(struct vmx_param *vmx_param)
|
||||
{
|
||||
device_t dev = SA_DEV_ROOT;
|
||||
assert(dev != NULL);
|
||||
config_t *conf = dev->chip_info;
|
||||
|
||||
if (!conf) {
|
||||
printk(BIOS_ERR, "Failed to get chip_info for VMX param\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
vmx_param->enable = conf->VmxEnable;
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue