diff options
author | Leah Rowe <leah@libreboot.org> | 2024-10-06 10:31:36 +0100 |
---|---|---|
committer | Leah Rowe <leah@libreboot.org> | 2024-10-06 10:31:36 +0100 |
commit | f4de640e451ce3bb7b0bb19705ba3847471079d0 (patch) | |
tree | 16620a32ee01d75336c284639717086801f02e43 | |
parent | c99dced5b1022fd2053fa8e47785ce83f4e05f90 (diff) |
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 <leah@libreboot.org>
-rw-r--r-- | config/coreboot/dell3050micro_fsp_16mb/target.cfg | 2 | ||||
-rw-r--r-- | 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##*/}"; : |