diff options
Diffstat (limited to 'src/soc/intel/skylake/cpu.c')
-rw-r--r-- | src/soc/intel/skylake/cpu.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/soc/intel/skylake/cpu.c b/src/soc/intel/skylake/cpu.c index 91db06b3a6..63a04662e3 100644 --- a/src/soc/intel/skylake/cpu.c +++ b/src/soc/intel/skylake/cpu.c @@ -26,6 +26,16 @@ #include "chip.h" +bool cpu_soc_is_in_untrusted_mode(void) +{ + if (!CONFIG(MAINBOARD_SUPPORTS_COFFEELAKE_CPU)) + return false; + + /* IA_UNTRUSTED_MODE is not supported in Sky Lake */ + msr_t msr = rdmsr(MSR_BIOS_DONE); + return !!(msr.lo & ENABLE_IA_UNTRUSTED); +} + static void configure_misc(void) { config_t *conf = config_of_soc(); |