From b179ef63edad3f0f1812bef20ea2183610e97db2 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Thu, 21 Nov 2024 18:24:50 +0000 Subject: [PATCH] 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 fe5904c..77e177a 100644 --- a/include/rom.sh +++ b/include/rom.sh @@ -153,7 +153,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; : } @@ -178,6 +178,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