From f4de640e451ce3bb7b0bb19705ba3847471079d0 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 6 Oct 2024 10:31:36 +0100 Subject: rom.sh: disable seabios-as-primary if grub is main on 3050micro, we disable seabios as a primary payload, making grub a pribary payload instead. the way it worked, the roms were still named seagrub and the seabios rom would be compiled, but with the wrong path, so seabios wouldn't be executed; seabios would hang anyway, on this board. instead, engineer it in such a way as to disable seabios_ images on this board. also, rename seagrub_ to grub_. i normally only permit seagrub, and not grub, but i make an exception for 3050micro because we know grub works, but seabios currently hangs on this board (which means no bsd). Signed-off-by: Leah Rowe --- config/coreboot/dell3050micro_fsp_16mb/target.cfg | 2 +- include/rom.sh | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/config/coreboot/dell3050micro_fsp_16mb/target.cfg b/config/coreboot/dell3050micro_fsp_16mb/target.cfg index 03ad3ecb..12448aa7 100644 --- a/config/coreboot/dell3050micro_fsp_16mb/target.cfg +++ b/config/coreboot/dell3050micro_fsp_16mb/target.cfg @@ -9,4 +9,4 @@ vcfg="3050micro" build_depend="seabios/default grub/xhci memtest86plus" IFD_platform="sklkbl" grubname="fallback/payload" # make GRUB the primary payload on this board -seabiosname="seabios.elf" # seabios is known to hang on this board +seabiosname="seabios.elf" # this actually disables the seabios payload diff --git a/include/rom.sh b/include/rom.sh index d4071169..e7745271 100644 --- a/include/rom.sh +++ b/include/rom.sh @@ -135,7 +135,8 @@ add_seabios() [ "$payload_grub" = "y" ] && add_grub - cprom && [ "$payload_grub" = "y" ] && pname="seagrub" && mkseagrub; : + [ "$seabiosname" = "fallback/payload" ] && cprom + [ "$payload_grub" = "y" ] && pname="seagrub" && mkseagrub; : } add_grub() @@ -149,6 +150,7 @@ add_grub() mkseagrub() { + [ "$grubname" = "fallback/payload" ] && pname="grub" cbfs "$tmprom" "$grubdata/bootorder" bootorder raw for keymap in config/data/grub/keymap/*.gkb; do [ -f "$keymap" ] && cprom "${keymap##*/}"; : -- cgit v1.2.1