gnuboot-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v1 08/15] Remove images with the seabios_grubfirst main payload.


From: Denis 'GNUtoo' Carikli
Subject: [PATCH v1 08/15] Remove images with the seabios_grubfirst main payload.
Date: Mon, 23 Sep 2024 16:43:01 +0200

The seabios_grubfirst images provides the same functionality than the
GRUB images, but instead of having GRUB being loaded directly by
Coreboot, Coreboot loads SeaBIOS whichthen loads GRUB.

These image probably exists to enable end users to try it to workaround
potential compatibility issues between the OS and GRUB with the GRUB
image as we have a BIOS implementation being loaded.

While this looks useful, it also makes things more complicated:

- It increase the number of images to choose from, and it's
  complicated to explain the difference between grub and
  seabios_grubfirst to end users.

  For instance for the "x200_8mb", users need to choose between 2 GPU
  modes (corebootfb, or txtmode) and 12 keyboard layouts. So having to
  choose between 2 payloads instead of 3 with one difference that is
  hard to understand makes things easier.

- It makes testing more complicated as we have one more payload to
  test and we also need to make sure to always differenciate both
  images in bug reports, documentation, etc.

And if issues arise from this change in the future, we could work with
upstream to fix them and/or replace the grub images with
'seabios_grubfirst' while keeping the 'grub' name to avoid
complicating things by having two main payloads with identical
features.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
---
 resources/packages/release/test       |  2 --
 resources/packages/roms_helper/boot   | 11 +----------
 website/pages/docs/install/install.md |  9 ---------
 3 files changed, 1 insertion(+), 21 deletions(-)

diff --git a/resources/packages/release/test b/resources/packages/release/test
index cf84a2f..096a3be 100755
--- a/resources/packages/release/test
+++ b/resources/packages/release/test
@@ -73,8 +73,6 @@ test_qemu_rom_archive()
         archive_files="${archive_files} \
             ${target}/grub_${target}_${cbfb}_${kb}.rom \
             ${target}/grub_${target}_${txtmode}_${kb}.rom \
-            ${target}/seabios_grubfirst_${target}_${cbfb}_${kb}.rom \
-            ${target}/seabios_grubfirst_${target}_${txtmode}_${kb}.rom \
             ${target}/seabios_withgrub_${target}_${cbfb}_${kb}.rom \
             ${target}/seabios_withgrub_${target}_${txtmode}_${kb}.rom \
         "
diff --git a/resources/packages/roms_helper/boot 
b/resources/packages/roms_helper/boot
index db393e0..588810c 100755
--- a/resources/packages/roms_helper/boot
+++ b/resources/packages/roms_helper/boot
@@ -362,19 +362,12 @@ mkRomsWithGrub() {
        tmprompath="${1}"
        initmode="${2}"
        displaymode="${3}"
-       firstpayloadname="${4}" # allow values: grub, seabios, 
seabios_withgrub, seabios_grubfirst
+       firstpayloadname="${4}" # allow values: grub, seabios, seabios_withgrub
 
        if [ "${payload_grub_withseabios}" = "y" ] && [ "${firstpayloadname}" = 
"grub" ]; then
                mv "$(make_seabios_rom "${tmprompath}" "seabios.elf" 
"${seabios_opromloadonly}" "${initmode}" "${cbfstool}")" "${tmprompath}"
        elif [ "${payload_seabios_withgrub}" ] && [ "${firstpayloadname}" != 
"grub" ]; then
                mv "$(make_seabios_rom "${tmprompath}" "fallback/payload" 
"${seabios_opromloadonly}" "${initmode}" "${cbfstool}")" "${tmprompath}"
-               if [ "${firstpayloadname}" = "seabios_grubfirst" ]; then
-                       tmpbootorder=$(mktemp -t coreboot_rom.XXXXXXXXXX)
-                       printf "/rom@img/grub2\n" > "${tmpbootorder}"
-                       "${cbfstool}" "${tmprompath}" add -f "${tmpbootorder}" 
-n bootorder -t raw
-                       rm -f "${tmpbootorder}"
-                       "${cbfstool}" "${tmprompath}" add-int -i 0 -n 
etc/show-boot-menu
-               fi
        fi
 
        for keymapfile in resources/grub/keymap/*; do
@@ -435,8 +428,6 @@ mkRoms() {
                        tmprom=$(mktemp -t coreboot_rom.XXXXXXXXXX)
                        cp "${corebootrom}" "${tmprom}"
                        mkRomsWithGrub "${tmprom}" "${initmode}" 
"${displaymode}" "seabios_withgrub"
-                       cp "${corebootrom}" "${tmprom}"
-                       mkRomsWithGrub "${tmprom}" "${initmode}" 
"${displaymode}" "seabios_grubfirst"
                        rm -f "${tmprom}"
                fi
        fi
diff --git a/website/pages/docs/install/install.md 
b/website/pages/docs/install/install.md
index c23d1ad..d7c749e 100644
--- a/website/pages/docs/install/install.md
+++ b/website/pages/docs/install/install.md
@@ -160,15 +160,6 @@ an option in the boot menu.
 ROM images that have `seabios_withgrub` in the file name start with SeaBIOS
 first, but also have GNU GRUB available in the boot menu when you press ESC.
 
-### seabios\_grubfirst
-
-ROM images that have `seabios_grubfirst` in the file name start with SeaBIOS,
-but SeaBIOS is configured via special `bootorder` file in CBFS so as to ONLY
-load GNU GRUB. This setup would be most useful on desktops, where you wish to
-only have GNU GRUB available, but want to use an add-on GPU while also having
-the option to use libgfxinit, if a supported GPU/framebuffer chip is present
-on your board.
-
 Which systems are supported?
 ============================
 
-- 
2.46.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]