From 5a1f9a87cb2f6a3e0699f3d13db41c7da2963b88 Mon Sep 17 00:00:00 2001 From: Aaron Durbin Date: Thu, 7 Sep 2017 21:17:33 -0600 Subject: cpu/x86/mp_init: remove adjust_cpu_apic_entry() The original purpose of adjust_cpu_apic_entry() was to set up an APIC map. That map was effectively only used for mapping *default* APIC id to CPU number in the SMM handler. The normal AP startup path didn't need this mapping because it was whoever won the race got the next cpu number. Instead of statically calculating (and wrong) just initialize the default APIC id map when the APs come online. Once the APs are online the SMM handler is loaded and the mapping is utilized. Change-Id: Idff3b8cfc17aef0729d3193b4499116a013b7930 Signed-off-by: Aaron Durbin Reviewed-on: https://review.coreboot.org/21452 Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh Reviewed-by: Subrata Banik Reviewed-by: Marshall Dawson --- src/cpu/intel/haswell/haswell_init.c | 12 ------------ 1 file changed, 12 deletions(-) (limited to 'src/cpu/intel') diff --git a/src/cpu/intel/haswell/haswell_init.c b/src/cpu/intel/haswell/haswell_init.c index e850fd1ae6..aa7711bf5c 100644 --- a/src/cpu/intel/haswell/haswell_init.c +++ b/src/cpu/intel/haswell/haswell_init.c @@ -712,7 +712,6 @@ static void haswell_init(struct device *cpu) /* MP initialization support. */ static const void *microcode_patch; -static int ht_disabled; static void pre_mp_init(void) { @@ -740,8 +739,6 @@ static int get_cpu_count(void) printk(BIOS_DEBUG, "CPU has %u cores, %u threads enabled.\n", num_cores, num_threads); - ht_disabled = num_threads == num_cores; - return num_threads; } @@ -752,14 +749,6 @@ static void get_microcode_info(const void **microcode, int *parallel) *parallel = 1; } -static int adjust_apic_id(int index, int apic_id) -{ - if (ht_disabled) - return 2 * index; - else - return index; -} - static void per_cpu_smm_trigger(void) { /* Relocate the SMM handler. */ @@ -784,7 +773,6 @@ static const struct mp_ops mp_ops = { .get_cpu_count = get_cpu_count, .get_smm_info = smm_info, .get_microcode_info = get_microcode_info, - .adjust_cpu_apic_entry = adjust_apic_id, .pre_mp_smm_init = smm_initialize, .per_cpu_smm_trigger = per_cpu_smm_trigger, .relocation_handler = smm_relocation_handler, -- cgit v1.2.3