summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFelix Singer <felixsinger@posteo.net>2021-12-31 00:15:18 +0100
committerFelix Singer <felixsinger@posteo.net>2022-05-26 11:48:28 +0000
commit8ba9410c69dbdb9e37bd7c8de2a523f7cfa7a76a (patch)
tree48a7fce684f8bde1b30fdf9d1965175c0181a3cf /src
parentedb1a4012700df227dcf5780b5f45fcf9c2a1625 (diff)
downloadcoreboot-8ba9410c69dbdb9e37bd7c8de2a523f7cfa7a76a.tar.gz
coreboot-8ba9410c69dbdb9e37bd7c8de2a523f7cfa7a76a.tar.bz2
coreboot-8ba9410c69dbdb9e37bd7c8de2a523f7cfa7a76a.zip
soc/intel/cannonlake: 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 overriden by the mainboard code), the value from the Kconfig setting `FSP_HYPERTHREADING` is used. Also, remove related code from the following mainboards, since it is obsolete now. * siemens/chili * starlabs/laptop/cml Change-Id: I173b87da5ce76549672c50ba30204cd77be8b82f Signed-off-by: Felix Singer <felixsinger@posteo.net> Reviewed-on: https://review.coreboot.org/c/coreboot/+/60544 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Sean Rhodes <sean@starlabs.systems> Reviewed-by: Nico Huber <nico.h@gmx.de>
Diffstat (limited to 'src')
-rw-r--r--src/mainboard/siemens/chili/romstage.c2
-rw-r--r--src/mainboard/starlabs/labtop/variants/cml/romstage.c4
-rw-r--r--src/soc/intel/cannonlake/Kconfig1
-rw-r--r--src/soc/intel/cannonlake/romstage/fsp_params.c3
4 files changed, 4 insertions, 6 deletions
diff --git a/src/mainboard/siemens/chili/romstage.c b/src/mainboard/siemens/chili/romstage.c
index ddcc2cc87c48..6f36a7f9e34b 100644
--- a/src/mainboard/siemens/chili/romstage.c
+++ b/src/mainboard/siemens/chili/romstage.c
@@ -26,8 +26,6 @@ void mainboard_memory_init_params(FSPM_UPD *memupd)
const uint8_t vtd = get_uint_option("vtd", 1);
memupd->FspmTestConfig.VtdDisable = !vtd;
- const uint8_t ht = get_uint_option("hyper_threading", memupd->FspmConfig.HyperThreading);
- memupd->FspmConfig.HyperThreading = ht;
variant_romstage_params(memupd);
diff --git a/src/mainboard/starlabs/labtop/variants/cml/romstage.c b/src/mainboard/starlabs/labtop/variants/cml/romstage.c
index 189b7f378c22..75a19e576b6e 100644
--- a/src/mainboard/starlabs/labtop/variants/cml/romstage.c
+++ b/src/mainboard/starlabs/labtop/variants/cml/romstage.c
@@ -73,10 +73,6 @@ void mainboard_memory_init_params(FSPM_UPD *memupd)
const uint8_t vtd = get_uint_option("vtd", 1);
memupd->FspmTestConfig.VtdDisable = !vtd;
- const uint8_t ht =
- get_uint_option("hyper_threading", memupd->FspmConfig.HyperThreading);
- memupd->FspmConfig.HyperThreading = ht;
-
fill_spd_data(&memcfg);
cannonlake_memcfg_init(&memupd->FspmConfig, &memcfg);
}
diff --git a/src/soc/intel/cannonlake/Kconfig b/src/soc/intel/cannonlake/Kconfig
index 7c317e90c60c..cad2e752b8ee 100644
--- a/src/soc/intel/cannonlake/Kconfig
+++ b/src/soc/intel/cannonlake/Kconfig
@@ -66,6 +66,7 @@ config CPU_SPECIFIC_OPTIONS
select GENERIC_GPIO_LIB
select HAVE_FSP_GOP
select HAVE_FSP_LOGO_SUPPORT
+ select HAVE_HYPERTHREADING
select HAVE_SMI_HANDLER
select IDT_IN_EVERY_STAGE
select INTEL_CAR_NEM_ENHANCED
diff --git a/src/soc/intel/cannonlake/romstage/fsp_params.c b/src/soc/intel/cannonlake/romstage/fsp_params.c
index 0b63bd52f98f..842c8fb7d076 100644
--- a/src/soc/intel/cannonlake/romstage/fsp_params.c
+++ b/src/soc/intel/cannonlake/romstage/fsp_params.c
@@ -8,6 +8,7 @@
#include <fsp/util.h>
#include <intelblocks/cpulib.h>
#include <intelblocks/pmclib.h>
+#include <option.h>
#include <soc/iomap.h>
#include <soc/msr.h>
#include <soc/pci_devs.h>
@@ -26,6 +27,8 @@ void platform_fsp_memory_init_params_cb(FSPM_UPD *mupd, uint32_t version)
unsigned int i;
uint32_t mask = 0;
+ m_cfg->HyperThreading = get_uint_option("hyper_threading", CONFIG(FSP_HYPERTHREADING));
+
/*
* Probe for no IGD and disable InternalGfx and panel power to prevent a
* crash in FSP-M.