coreboot/src/vendorcode
Keith Short 00dbf449c9 coreboot: Run mainboard specific code before Cr50 reset
When coreboot checks the TPM and key-ladder state it issues a reboot of
the Cr50 with a delay parameter.  Older Cr50 code doesn't support the
delay parameter and reboots immediately, which prevented coreboot from
running the mainboard specific code needed for the AP to come back up.

This change calls mainboard_prepare_cr50_reset() prior to sending the
VENDOR_CC_IMMEDIATE_RESET command.

This change also fixes a false error message from the coreboot log that
indicated "Unexpected Cr50 TPM mode 3" when the Cr50 key ladder is
disabled.

BUG=b:130830178
BRANCH=none
TEST=build coreboot on sarien and grunt platforms.
TEST=Load Cr50 v3.15, run 'gsctool -a -m disable; reboot'.  Verify
corebot send the
VENDOR_CC_IMMEDIATE_RESET command and that the AP boots normally.
Verify event log shows "cr50 Reset Required"
TEST=Force Cr50 automatic update.  Verify event log shows "cr50 Update
Reset".

Change-Id: Ib05c9cfde8e87daffd4233114263de5b30822872
Signed-off-by: Keith Short <keithshort@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/32365
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2019-04-23 10:21:24 +00:00
..
amd soc/amd/common: Remove AmdReadEventLog() 2019-04-23 10:10:45 +00:00
cavium vendorcode/cavium/bdk/libdram: Add missing comma 2019-03-25 10:59:30 +00:00
google coreboot: Run mainboard specific code before Cr50 reset 2019-04-23 10:21:24 +00:00
intel Make common macros double-evaluation safe 2019-04-04 19:38:31 +00:00
siemens device/mmio.h: Add include file for MMIO ops 2019-03-04 15:57:39 +00:00
Makefile.inc soc/cavium: Integrate BDK files into coreboot 2018-07-03 15:53:32 +00:00