Support U-Boot + grub-efi boot flow
I've recently succeeded in converting an existing Debian Trixie RPi image to boot using GRUB on the RPi 4B and extensively documented how to do that. I also posted about this on the debian-arm mailing list, and filed an wishlist issue against raspi-firmware for making this kind of setup easier to implement in the future.
Booting in this way has several substantial advantages over the current Raspberry Pi boot process:
- The kernel command line can be modified via /etc/default/grub and files under /etc/default/grub.d. Some software requires or benefits from such modifications and leverages this mechanism in GRUB to make non-invasive changes to the command line. With direct kernel boot, these changes are silently ignored, while with U-Boot + GRUB, they are correctly applied.
- In the event of a bad kernel update, users can easily boot into older kernels as they would on a typical desktop system.
- Recovering from a broken boot without a secondary system becomes much easier, as users can use the GRUB and U-Boot consoles to debug and manually boot the system.
- Multiboot installations on the Pi become possible.
Is this a feature for which you would welcome a merge request here, either as an option or even as the default?
Obviously, at this point, RPi GRUB support could only be added to Forky and later.
(I've also recently submitted a pull request to grml-debootstrap
implementing basic RPi support.)