coreboot/src/soc/intel/common
Subrata Banik 0a9be33a8a soc/intel/common/timer: Calculate TSC frequency based on CPUID 0x15
This patch ensures to follow Intel SDM Vol 3B Sec 18.7.3 to
calculate nominal TSC frequency.

As per SDM recommendation:
For any processor in which CPUID.15H is enumerated and
MSR_PLATFORM_INFO[15:8] (which gives the scalable bus frequency) is
available, a more accurate frequency can be obtained by using CPUID.15H

This patch also adds header file to capture Intel  processor model number.

BUG=b:129839774
TEST=Boot ICL platform and calculate TSC frequency using below methods
1. TSC freq calculated based on MSR 0xCE
tsc: Detected 1600.000 MHz processor

2. TSC freq calculated based on CPUID 0x15
tsc: Detected 1612.800 MHz TSC

Method 2 actually reduce ~25ms of boot performance time.

Note: Method 2 is recommended from gen 6 processor onwards.

Change-Id: I9ff4b9159a94e61b7e634bd6095f7cc6d7df87c7
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/32283
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
2019-04-17 15:05:08 +00:00
..
acpi coreboot: Replace all IS_ENABLED(CONFIG_XXX) with CONFIG(XXX) 2019-03-08 08:33:24 +00:00
basecode soc/intel/common: Make infrastructure ready for Intel common stage files 2018-06-21 15:54:48 +00:00
block soc/intel/common/timer: Calculate TSC frequency based on CPUID 0x15 2019-04-17 15:05:08 +00:00
pch src: Use 'include <string.h>' when appropriate 2019-03-20 20:27:51 +00:00
acpi.h soc/intel/common/block: Common ACPI 2017-09-08 19:01:04 +00:00
acpi_wake_source.c Move compiler.h to commonlib 2018-10-08 16:57:27 +00:00
hda_verb.c device/mmio.h: Add include file for MMIO ops 2019-03-04 15:57:39 +00:00
hda_verb.h
Kconfig soc/intel/common: Bring DISPLAY_MTRRS into the light 2018-11-23 08:34:16 +00:00
Makefile.inc soc/intel/common: Bring DISPLAY_MTRRS into the light 2018-11-23 08:34:16 +00:00
mma.c src: Use 'include <string.h>' when appropriate 2019-03-20 20:27:51 +00:00
mma.h
nhlt.c
reset.c intel: Use CF9 reset (part 2) 2018-10-22 08:35:32 +00:00
reset.h intel: Use CF9 reset (part 2) 2018-10-22 08:35:32 +00:00
smbios.c soc/intel: Add mem_rank info in SMBIOS 2019-02-18 20:25:42 +00:00
smbios.h soc/intel: Add mem_rank info in SMBIOS 2019-02-18 20:25:42 +00:00
tpm_tis.c security/tpm: Change TPM naming for different layers. 2018-01-18 01:45:35 +00:00
vbt.c coreboot: Replace all IS_ENABLED(CONFIG_XXX) with CONFIG(XXX) 2019-03-08 08:33:24 +00:00
vbt.h drivers/intel/gma, soc/intel/common: improve cooperation 2018-05-09 13:48:07 +00:00