lib/bootblock: Sanitize CMOS after bootblock_*_early_init()

CMOS isn't used that early, but the chipset initialization may be
required to access it.

In one instance, Intel Apollo Lake, the sanitize_cmos() function
seems to hang if called before bootblock_soc_early_init(). The
missing step is fast_spi_early_init(). But even without, one might
expect sanitize_cmos() to return eventually (it didn't within
about 20min).

Change-Id: I6e1a029e4be7e109be43a3dad944bd7e05ea1f02
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/31349
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Alex Thiessen <alex.thiessen.de+coreboot@gmail.com>
This commit is contained in:
Nico Huber 2019-01-28 18:14:13 +01:00 committed by Patrick Georgi
parent a5ea3a271b
commit e0b9aea7be
1 changed files with 3 additions and 3 deletions

View File

@ -42,12 +42,12 @@ asmlinkage void bootblock_main_with_timestamp(uint64_t base_timestamp,
timestamps[i].entry_stamp);
}
sanitize_cmos();
cmos_post_init();
bootblock_soc_early_init();
bootblock_mainboard_early_init();
sanitize_cmos();
cmos_post_init();
if (CONFIG(BOOTBLOCK_CONSOLE)) {
console_init();
exception_init();