drivers/fsp1_1/raminit: fix use of mrc_hob
Commit 509f469
[drivers/fsp1_1/raminit.c: Always check FSP HOBs]
inadvertently made use of the mrc_hob conditional on
CONFIG_DISPLAY_HOBS, when there is no relation between the two,
leading to MRC cache data being corrupted. On some devices this
caused RAM training to be redone, on others it resulted in a
bricked device.
Fix this by removing the condition on CONFIG_DISPLAY_HOBS.
Test: boot google/{cyan,edgar}, observe third boot and onward do not
brick device, properly use mrc_hob via cbmem console and timestamps.
Change-Id: I01f6d1d6dfd10297b30de638301c5e0b6545da9c
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34685
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
bccd2b6c49
commit
4183312cec
|
@ -259,7 +259,7 @@ void raminit(struct romstage_params *params)
|
||||||
|
|
||||||
/* Locate the memory configuration data to speed up the next reboot */
|
/* Locate the memory configuration data to speed up the next reboot */
|
||||||
mrc_hob = get_next_guid_hob(&mrc_guid, hob_list_ptr);
|
mrc_hob = get_next_guid_hob(&mrc_guid, hob_list_ptr);
|
||||||
if ((mrc_hob == NULL) && CONFIG(DISPLAY_HOBS))
|
if (mrc_hob == NULL)
|
||||||
printk(BIOS_DEBUG,
|
printk(BIOS_DEBUG,
|
||||||
"Memory Configuration Data Hob not present\n");
|
"Memory Configuration Data Hob not present\n");
|
||||||
else if (!vboot_recovery_mode_enabled()) {
|
else if (!vboot_recovery_mode_enabled()) {
|
||||||
|
|
Loading…
Reference in New Issue