From eb14a176bc8e2b943ab0e36159fd86b4a556708e Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Wed, 20 Nov 2024 01:19:27 +0000 Subject: Only boot 32-bit u-boot from grub, 64 from seabios For some reason, 32-bit U-Boot only works when executed from GRUB, but not SeaBIOS; 64-bit U-Boot only works from SeaBIOS! This will have to be investigated. Standalone U-Boot, where U-Boot is the primary payload, has not yet been tested in Libreboot, and will not be provided for some time due to stability concerns. More testing is needed! Signed-off-by: Leah Rowe --- config/grub/default/config/payload | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'config/grub/default') diff --git a/config/grub/default/config/payload b/config/grub/default/config/payload index c2036c72..05e64bbd 100644 --- a/config/grub/default/config/payload +++ b/config/grub/default/config/payload @@ -216,24 +216,38 @@ menuentry 'Load test configuration (grubtest.cfg) inside of CBFS [t]' --hotkey= fi } fi -if [ -f (cbfsdisk)/img/u-boot ]; then -menuentry 'Experimental U-Boot UEFI payload (try from SeaBIOS ESC menu if GRUB fails) [u]' --hotkey='u' { +if [ -f (cbfsdisk)/u-boot ]; then +menuentry 'U-Boot i386 payload (experimental) [u]' --hotkey='u' { set root='cbfsdisk' - chainloader /img/u-boot + chainloader /u-boot } fi if [ -f (cbfsdisk)/seabios.elf ]; then -menuentry 'Load SeaBIOS (payload) [b]' --hotkey='b' { +if [ -f (cbfsdisk)/img/u-boot ]; then +menuentry 'Load SeaBIOS (U-Boot UEFI available in the ESC menu) [b]' --hotkey='b' { set root='cbfsdisk' chainloader /seabios.elf } +else +menuentry 'Load SeaBIOS [b]' --hotkey='b' { + set root='cbfsdisk' + chainloader /seabios.elf +} +fi fi if [ -f (cbfsdisk)/img/grub2 ]; then +if [ -f (cbfsdisk)/img/u-boot ]; then +menuentry 'Return to SeaBIOS (U-Boot UEFI available in the ESC menu) [b]' --hotkey='b' { + set root='cbfsdisk' + chainloader /fallback/payload +} +else menuentry 'Return to SeaBIOS [b]' --hotkey='b' { set root='cbfsdisk' chainloader /fallback/payload } fi +fi menuentry 'Poweroff [p]' --hotkey='p' { halt } -- cgit v1.2.1