From f312e6026f926450a3d2fff29803c78099e8c3f8 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Thu, 21 Nov 2024 18:24:50 +0000 Subject: rom.sh: Don't build U-Boot on normal initmode The "normal" mode in lbmk is where no built-in GPU exists, or no libgfxinit is used, and SeaBIOS is the first payload, and SeaBIOS executes VGA ROMs (can't know if it'll start in VESA or text mode). U-Boot needs a VESA framebuffer or native coreboot framebuffer to work correctly. Signed-off-by: Leah Rowe --- include/rom.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/include/rom.sh b/include/rom.sh index 6ffbb228..c6cb2f5a 100644 --- a/include/rom.sh +++ b/include/rom.sh @@ -155,7 +155,7 @@ add_seabios() cprom [ "$payload_uboot_amd64" = "y" ] && [ "$displaymode" != "txtmode" ] && \ - pname="seauboot" && cprom "seauboot" + [ "$initmode" != "normal" ] && pname="seauboot" && cprom "seauboot" [ "$payload_grub" = "y" ] && pname="seagrub" && mkseagrub; : } @@ -180,6 +180,9 @@ add_uboot() if [ "$displaymode" = "txtmode" ]; then printf "cb/$target: Cannot use U-Boot in text mode\n" 1>&2 return 0 + elif [ "$initmode" = "normal" ]; then + printf "cb/$target: Cannot use U-Boot in normal initmode\n" 1>&2 + return 0 fi # TODO: re-work to allow each coreboot target to say which ub tree -- cgit v1.2.1