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 <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/39160 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
This commit is contained in:
parent
c8b0f31ca1
commit
1ee3dbc63b
|
@ -20,6 +20,7 @@ config BOARD_SPECIFIC_OPTIONS
|
|||
select HAVE_ME_BIN
|
||||
select GFX_GMA_INTERNAL_IS_LVDS
|
||||
select MAINBOARD_HAS_LIBGFXINIT
|
||||
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
|
||||
|
||||
config VBOOT
|
||||
select VBOOT_VBNV_CMOS
|
||||
|
|
|
@ -21,6 +21,7 @@ config BOARD_SPECIFIC_OPTIONS
|
|||
# This board also feature sandy-bridge CPU's so must have LVDS
|
||||
select GFX_GMA_INTERNAL_IS_LVDS
|
||||
select MAINBOARD_HAS_LIBGFXINIT
|
||||
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
|
||||
|
||||
config VBOOT
|
||||
select VBOOT_VBNV_CMOS
|
||||
|
|
|
@ -19,6 +19,7 @@ config BOARD_SPECIFIC_OPTIONS
|
|||
select GFX_GMA_INTERNAL_IS_LVDS
|
||||
select HAVE_IFD_BIN
|
||||
select HAVE_ME_BIN
|
||||
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
|
||||
|
||||
config VBOOT
|
||||
select VBOOT_VBNV_CMOS
|
||||
|
|
|
@ -23,6 +23,7 @@ config BOARD_SPECIFIC_OPTIONS
|
|||
select SUPERIO_SMSC_LPC47N207
|
||||
select DRIVERS_GENERIC_IOAPIC
|
||||
select INTEL_INT15
|
||||
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
|
||||
|
||||
config VBOOT
|
||||
select VBOOT_VBNV_CMOS
|
||||
|
|
|
@ -19,6 +19,7 @@ config BOARD_SPECIFIC_OPTIONS
|
|||
# not on board, should be made selectable.
|
||||
select SUPERIO_SMSC_LPC47N207
|
||||
select INTEL_INT15
|
||||
select SANDYBRIDGE_VBOOT_IN_ROMSTAGE
|
||||
|
||||
config VBOOT
|
||||
select VBOOT_VBNV_CMOS
|
||||
|
|
|
@ -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"
|
||||
|
|
Loading…
Reference in New Issue