From 1ee3dbc63b3514b93927b40add395a31b4f1915e Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Fri, 28 Feb 2020 13:11:13 +0100 Subject: nb/intel/sandybridge: Fix VBOOT The VBOOT code can be compiled but it asserts with: ASSERTION ERROR: file 'src/security/vboot/common.c', line 40 Start VBOOT in bootblock to fix the assertion. Tested on Lenovo X220: The assertion is gone, the platform boots again. Change-Id: I48365e911b4f43aecba3b1f950178b7ceed5b2e9 Signed-off-by: Patrick Rudolph Reviewed-on: https://review.coreboot.org/c/coreboot/+/39160 Tested-by: build bot (Jenkins) Reviewed-by: Arthur Heymans --- src/northbridge/intel/sandybridge/Kconfig | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'src/northbridge/intel') diff --git a/src/northbridge/intel/sandybridge/Kconfig b/src/northbridge/intel/sandybridge/Kconfig index 7a27d098c5..06fdc4a0a9 100644 --- a/src/northbridge/intel/sandybridge/Kconfig +++ b/src/northbridge/intel/sandybridge/Kconfig @@ -23,8 +23,32 @@ config NORTHBRIDGE_INTEL_SANDYBRIDGE if NORTHBRIDGE_INTEL_SANDYBRIDGE +config SANDYBRIDGE_VBOOT_IN_ROMSTAGE + bool + default n + help + Selected by boards to force VBOOT_STARTS_IN_ROMSTAGE. + +config SANDYBRIDGE_VBOOT_IN_BOOTBLOCK + depends on VBOOT + depends on !SANDYBRIDGE_VBOOT_IN_ROMSTAGE + bool "Start verstage in bootblock" + default y + select VBOOT_STARTS_IN_BOOTBLOCK + select VBOOT_SEPARATE_VERSTAGE + help + Sandy Bridge can either start verstage in a separate stage + right after the bootblock has run or it can start it + after romstage for compatibility reasons. + Sandy Bridge however uses a mrc.bin to initialize memory which + needs to be located at a fixed offset. Therefore even with + a separate verstage starting after the bootblock that same + binary is used meaning a jump is made from RW to the RO region + and back to the RW region after the binary is done. + config VBOOT - select VBOOT_STARTS_IN_ROMSTAGE + select VBOOT_MUST_REQUEST_DISPLAY + select VBOOT_STARTS_IN_ROMSTAGE if !SANDYBRIDGE_VBOOT_IN_BOOTBLOCK config USE_NATIVE_RAMINIT bool "Use native raminit" -- cgit v1.2.3