coreboot/src/arch
Subrata Banik 809b7513a2 soc/intel/common/timer: Make TSC frequency calculation dynamically
tsc_freq_mhz() had a static table of Intel CPU families and crystal
clock, but it is possible to calculate the crystal clock speed dynamically,
and this is preferred over hardcoded table.

On SKL/KBL/CML CPUID.15h.ecx = nominal core crystal clock = 0 Hz
hence we had to use static table to calculate crystal clock.

Recommendation is to make use of CPUID.16h where crystal clock frequency
was not reported by CPUID.15h to calculate the crystal clock.

BUG=b:139798422, b:129839774
TEST=Able to build and boot KBL/CML/ICL.

Change-Id: If660a4b8d12e54b39252bce62bcc0ffcc967f5da
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/35148
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: V Sowmya <v.sowmya@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2019-09-02 20:08:20 +00:00
..
arm arch/arm: Make ARM stages select ARCH_ARM 2019-08-29 20:47:18 +00:00
arm64 arm64: Rename arm_tf.c/h to bl31.c/h 2019-08-30 10:37:17 +00:00
mips AUTHORS: Move src/arch/mips copyrights into AUTHORS file 2019-08-27 07:02:57 +00:00
ppc64 arch/ppc64: move misc.c to qemu-power8 as timer.c 2019-09-02 06:41:04 +00:00
riscv arch/non-x86: Use ENV_ROMSTAGE_OR_BEFORE 2019-08-26 21:04:42 +00:00
x86 soc/intel/common/timer: Make TSC frequency calculation dynamically 2019-09-02 20:08:20 +00:00