x86: Ensure the CPU identity exists for timer init

When bootstage is used the timer can be inited before the CPU identity
is set up, resulting in the checks for the vendor not working.

Add a special call to work around this.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2024-08-27 19:44:25 -06:00
parent 6ab545ba21
commit 3b2e4f542e
4 changed files with 24 additions and 0 deletions

View File

@@ -403,6 +403,10 @@ static void tsc_timer_ensure_setup(bool early)
if (!gd->arch.clock_rate) {
unsigned long fast_calibrate;
/* deal with this being called before x86_cpu_init_f() */
if (!gd->arch.x86_vendor)
x86_get_identity_for_timer();
/**
* There is no obvious way to obtain this information from EFI
* boot services. This value was measured on a Framework Laptop