[coreboot-gerrit] New patch to review for coreboot: 6a0a1c0 intel/model_2065x: Fix APICID generation.
Vladimir Serbinenko (phcoder@gmail.com)
gerrit at coreboot.org
Wed Feb 19 22:22:07 CET 2014
Vladimir Serbinenko (phcoder at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5262
-gerrit
commit 6a0a1c0ae0cf1bcd7fd5fa46d6aef551c65949d7
Author: Vladimir Serbinenko <phcoder at gmail.com>
Date: Wed Feb 19 22:00:00 2014 +0100
intel/model_2065x: Fix APICID generation.
APIC IDs always step by 4 on 2065x independently of number of threads.
Change-Id: I5abd4005c8ce1740bb0862d952af66236b609aa8
Signed-off-by: Vladimir Serbinenko <phcoder at gmail.com>
---
src/cpu/intel/model_2065x/model_2065x_init.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/src/cpu/intel/model_2065x/model_2065x_init.c b/src/cpu/intel/model_2065x/model_2065x_init.c
index 2cbe906..e73e237 100644
--- a/src/cpu/intel/model_2065x/model_2065x_init.c
+++ b/src/cpu/intel/model_2065x/model_2065x_init.c
@@ -371,11 +371,8 @@ static void intel_cores_init(device_t cpu)
/* Build the cpu device path */
cpu_path.type = DEVICE_PATH_APIC;
cpu_path.apic.apic_id =
- cpu->path.apic.apic_id + (i & 1) + ((i & 2) << 1);
-
- /* Update APIC ID if no hyperthreading */
- if (threads_per_core == 1)
- cpu_path.apic.apic_id <<= 1;
+ cpu->path.apic.apic_id + (i % threads_per_core)
+ + ((i / threads_per_core) << 2);
/* Allocate the new cpu device structure */
new = alloc_dev(cpu->bus, &cpu_path);
More information about the coreboot-gerrit
mailing list