vboot2: separate verstage from bootblock

Hardware / Coreboot - Daisuke Nojiri [chromium.org] - 24 March 2015 08:48 UTC

With CONFIG_RETURN_FROM_VERSTAGE false, the verstage loads the romstage over the bootblock, then exits to the romstage. this is necessary for some SOC (e.g. tegra124) which runs the bootblock on a different architecture.

With CONFIG_RETURN_FROM_VERSTAGE true, the verstage returns to the bootblock. Then, the bootblock loads the romstage over the verstage and exits to the romstage. this is probably necessary for some SOC (e.g. rockchip) which does not have SRAM big enough to fit the verstage and the romstage at the same time.

BUG=none TEST=Built Blaze with USE=+/-vboot2. Ran faft on Blaze. BRANCH=none

efddcfb vboot2: separate verstage from bootblock
Makefile.inc | 6 -
src/arch/arm/Makefile.inc | 5 +-
src/arch/arm/bootblock.ld | 1 -
src/arch/arm/verstage.ld | 67 ++++++
src/mainboard/google/nyan/romstage.c | 3 +-
src/mainboard/google/nyan_big/romstage.c | 3 +-
src/mainboard/google/nyan_blaze/Kconfig | 1 +
src/mainboard/google/nyan_blaze/Makefile.inc | 2 +-
src/mainboard/google/nyan_blaze/romstage.c | 21 +-
src/soc/nvidia/tegra124/Kconfig | 24 +-
src/soc/nvidia/tegra124/bootblock.c | 13 +-
src/soc/nvidia/tegra124/verstage.c | 58 ++++-
src/soc/nvidia/tegra124/verstage.h | 2 -
src/vendorcode/google/chromeos/Kconfig | 39 +++-
src/vendorcode/google/chromeos/Makefile.inc | 32 +--
src/vendorcode/google/chromeos/chromeos.c | 284 ++++++++++++++++++++++++
src/vendorcode/google/chromeos/chromeos.h | 61 ++++-
src/vendorcode/google/chromeos/vboot_context.h | 11 +-
src/vendorcode/google/chromeos/vboot_handoff.c | 77 +++++--
src/vendorcode/google/chromeos/vboot_handoff.h | 11 +-
src/vendorcode/google/chromeos/vboot_loader.c | 54 +----
src/vendorcode/google/chromeos/verstage.c | 250 ++++++---------------
src/vendorcode/google/chromeos/verstub.c | 93 ++++++++
23 files changed, 781 insertions(+), 337 deletions(-)

Upstream: review.coreboot.org


  • Share