From a5d0e80d8753eb671afd0f4dfa51ad228e7c590e Mon Sep 17 00:00:00 2001 From: Mike Gilbert Date: Sun, 29 Mar 2026 14:03:31 -0400 Subject: [PATCH] sys-boot/grub: backport EFI video fix Signed-off-by: Mike Gilbert --- sys-boot/grub/files/grub-2.14-efi_uga.patch | 41 +++++++++++++++++++ ...rub-2.14-r3.ebuild => grub-2.14-r4.ebuild} | 1 + 2 files changed, 42 insertions(+) create mode 100644 sys-boot/grub/files/grub-2.14-efi_uga.patch rename sys-boot/grub/{grub-2.14-r3.ebuild => grub-2.14-r4.ebuild} (99%) diff --git a/sys-boot/grub/files/grub-2.14-efi_uga.patch b/sys-boot/grub/files/grub-2.14-efi_uga.patch new file mode 100644 index 0000000000000..51819d043184b --- /dev/null +++ b/sys-boot/grub/files/grub-2.14-efi_uga.patch @@ -0,0 +1,41 @@ +https://gitlab.freedesktop.org/gnu-grub/grub/-/merge_requests/10 + +From 129588e498647842c6f13f7809ef9ac583e2351b Mon Sep 17 00:00:00 2001 +From: Egor Ignatov +Date: Thu, 19 Mar 2026 17:22:11 +0500 +Subject: [PATCH] util/grub.d/00_header.in: Load efi_uga only on x86 EFI + platforms + +The efi_uga module is only built for i386-efi and x86_64-efi firmware), but +commit ea0b76dc4a ("Disable loading all_video for EFI") loads it unconditionally +on all EFI platforms. This causes a "file not found" error on aarch64-efi and +other non-x86 EFI targets. + +Guard the insmod with a $grub_cpu check so the module is only +loaded where it is actually available. + +Fixes: ea0b76dc4 ("util/grub.d/00_header.in: Disable loading all_video for EFI") + +Signed-off-by: Egor Ignatov +--- + util/grub.d/00_header.in | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in +index 77834cfaf..1afe41e67 100644 +--- a/util/grub.d/00_header.in ++++ b/util/grub.d/00_header.in +@@ -135,7 +135,9 @@ else # GRUB_FORCE_EFI_ALL_VIDEO is not set true + cat <