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 <leah@libreboot.org>
master
Leah Rowe 2024-11-21 18:24:50 +00:00 committed by Leah Rowe
parent c885a63dd5
commit b179ef63ed
1 changed files with 4 additions and 1 deletions

View File

@ -153,7 +153,7 @@ add_seabios()
cprom cprom
[ "$payload_uboot_amd64" = "y" ] && [ "$displaymode" != "txtmode" ] && \ [ "$payload_uboot_amd64" = "y" ] && [ "$displaymode" != "txtmode" ] && \
pname="seauboot" && cprom "seauboot" [ "$initmode" != "normal" ] && pname="seauboot" && cprom "seauboot"
[ "$payload_grub" = "y" ] && pname="seagrub" && mkseagrub; : [ "$payload_grub" = "y" ] && pname="seagrub" && mkseagrub; :
} }
@ -178,6 +178,9 @@ add_uboot()
if [ "$displaymode" = "txtmode" ]; then if [ "$displaymode" = "txtmode" ]; then
printf "cb/$target: Cannot use U-Boot in text mode\n" 1>&2 printf "cb/$target: Cannot use U-Boot in text mode\n" 1>&2
return 0 return 0
elif [ "$initmode" = "normal" ]; then
printf "cb/$target: Cannot use U-Boot in normal initmode\n" 1>&2
return 0
fi fi
# TODO: re-work to allow each coreboot target to say which ub tree # TODO: re-work to allow each coreboot target to say which ub tree