coreboot/src/cpu/intel
Evgeny Zinoviev 920d2b77f2 cpu/intel/206ax/acpi.c: Fix get_cores_per_package
Current implementation uses CPUID 0Bh function that returns the number
of logical cores of requested level. The problem with this approach is
that this value doesn't change when HyperThreading is disabled (it's in
the Intel docs), so it breaks generate_cpu_entries().

- Use MSR 0x35 instead, which returns the correct number of logical
  processors with and without HT.

- Rename the function to get_logical_cores_per_package, which is more
  accurate.

Tested on ThinkPad X220 with and without HT.

Related to CB:29669.

Change-Id: Ib32c2d40408cfa42ca43ab42ed661c168e579ada
Signed-off-by: Evgeny Zinoviev <me@ch1p.io>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/42413
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-09-28 09:24:11 +00:00
..
car cpu/intel/car/romstage.c: Remove unused <bootblock_common.h> 2020-07-26 21:38:22 +00:00
common cpu/intel/common: Use macro for access_size 2020-08-18 12:13:38 +00:00
fit arch/x86: Remove more romcc leftovers 2020-05-28 09:50:52 +00:00
haswell cpu/intel/haswell/smmrelocate.c: Spell CPU in uppercase 2020-09-27 22:46:31 +00:00
hyperthreading src/cpu: Drop unneeded empty lines 2020-09-21 16:20:30 +00:00
microcode treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
model_6bx arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_6ex arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_6fx arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_6xx arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_65x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_67x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_68x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_106cx arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_206ax cpu/intel/206ax/acpi.c: Fix get_cores_per_package 2020-09-28 09:24:11 +00:00
model_1067x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_2065x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_f2x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_f3x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
model_f4x arch/x86: Introduce ARCH_ALL_STAGES_X86_32 2020-09-26 11:42:28 +00:00
slot_1 src/cpu: Drop unneeded empty lines 2020-09-21 16:20:30 +00:00
smm src/cpu: Drop unneeded empty lines 2020-09-21 16:20:30 +00:00
socket_441 nb/intel/i945: Move to C_ENVIRONMENT_BOOTBLOCK 2019-11-15 16:45:48 +00:00
socket_BGA956 gm45 boards: Factor out MAX_CPUS 2020-06-15 22:55:54 +00:00
socket_FCBGA559 pineview boards: Factor out MAX_CPUS 2020-06-15 22:51:35 +00:00
socket_LGA775 Drop superfluous C_ENVIRONMENT_BOOTBLOCK checks 2019-11-25 09:17:14 +00:00
socket_m nb/intel/i945: Move to C_ENVIRONMENT_BOOTBLOCK 2019-11-15 16:45:48 +00:00
socket_mPGA604 Kconfig: Drop the C_ENVIRONMENT_BOOTBLOCK symbol 2019-11-25 09:17:38 +00:00
socket_p gm45 boards: Factor out MAX_CPUS 2020-06-15 22:55:54 +00:00
speedstep src/cpu: Drop unneeded empty lines 2020-09-21 16:20:30 +00:00
turbo treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
Kconfig Kconfig: comply to Linux 5.3's Kconfig language rules 2019-11-23 20:09:56 +00:00
Makefile.inc nb/intel/nehalem: Rename to ironlake 2020-03-15 13:04:20 +00:00