From 222903e57a497f6d4b1b293e713caab66a23d862 Mon Sep 17 00:00:00 2001 From: Eran Mitrani Date: Mon, 19 Dec 2022 11:27:10 -0800 Subject: [PATCH] soc/intel/meteorlake: Hook up FSP hyper-threading setting to option API Select `HAVE_HYPERTHREADING` and hook up the hyper-threading setting from the FSP to the option API so that related mainboards don't have to do that. Unless otherwise configured (e.g. the CMOS setting or overridden by the mainboard code), the value from the Kconfig setting `FSP_HYPERTHREADING` is used. Port of commit a182faeb88a0 ("soc/intel/alderlake: Hook up FSP hyper-threading setting to option API") Change-Id: I0b3e1a4049312c6b1ec950382c92274e0350001f Signed-off-by: Eran Mitrani Reviewed-on: https://review.coreboot.org/c/coreboot/+/71115 Tested-by: build bot (Jenkins) Reviewed-by: Kapil Porwal Reviewed-by: Subrata Banik --- src/soc/intel/meteorlake/Kconfig | 1 + src/soc/intel/meteorlake/romstage/fsp_params.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/soc/intel/meteorlake/Kconfig b/src/soc/intel/meteorlake/Kconfig index 27d154b754..03951cc963 100644 --- a/src/soc/intel/meteorlake/Kconfig +++ b/src/soc/intel/meteorlake/Kconfig @@ -30,6 +30,7 @@ config CPU_SPECIFIC_OPTIONS select GENERIC_GPIO_LIB select HAVE_DEBUG_RAM_SETUP select HAVE_FSP_GOP + select HAVE_HYPERTHREADING select HAVE_INTEL_COMPLIANCE_TEST_MODE select HAVE_SMI_HANDLER select IDT_IN_EVERY_STAGE diff --git a/src/soc/intel/meteorlake/romstage/fsp_params.c b/src/soc/intel/meteorlake/romstage/fsp_params.c index 25c44c672e..ec5a3af4bb 100644 --- a/src/soc/intel/meteorlake/romstage/fsp_params.c +++ b/src/soc/intel/meteorlake/romstage/fsp_params.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include @@ -140,8 +141,7 @@ static void fill_fspm_cpu_params(FSP_M_CONFIG *m_cfg, m_cfg->CpuRatio = (rdmsr(MSR_FLEX_RATIO).lo >> 8) & 0xff; m_cfg->PrmrrSize = get_valid_prmrr_size(); - /* Enable Hyper Threading */ - m_cfg->HyperThreading = 1; + m_cfg->HyperThreading = get_uint_option("hyper_threading", CONFIG(FSP_HYPERTHREADING)); } static void fill_fspm_security_params(FSP_M_CONFIG *m_cfg,