diff options
| author | Leah Rowe <leah@libreboot.org> | 2024-11-20 01:19:27 +0000 | 
|---|---|---|
| committer | Leah Rowe <leah@libreboot.org> | 2024-11-20 01:19:27 +0000 | 
| commit | eb14a176bc8e2b943ab0e36159fd86b4a556708e (patch) | |
| tree | 18ce50db3ffb9690a1a04f19678c223a8099c24c /config/grub | |
| parent | 279e69172f724eab326b52f0aa2c64003c4e1f7f (diff) | |
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 <leah@libreboot.org>
Diffstat (limited to 'config/grub')
| -rw-r--r-- | config/grub/default/config/payload | 22 | ||||
| -rw-r--r-- | config/grub/nvme/config/payload | 22 | ||||
| -rw-r--r-- | config/grub/xhci/config/payload | 22 | 
3 files changed, 54 insertions, 12 deletions
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  } diff --git a/config/grub/nvme/config/payload b/config/grub/nvme/config/payload index 1d7c06d4..52b8dfd9 100644 --- a/config/grub/nvme/config/payload +++ b/config/grub/nvme/config/payload @@ -234,24 +234,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  } diff --git a/config/grub/xhci/config/payload b/config/grub/xhci/config/payload index dea4cdce..6a0fc250 100644 --- a/config/grub/xhci/config/payload +++ b/config/grub/xhci/config/payload @@ -235,24 +235,38 @@ menuentry 'Load test configuration (grubtest.cfg) in CBFS  [t]' --hotkey='t' {  	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  }  | 
