From d22f7f9633991daada5406160f6ac3d6ce0ee60b Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 19 Jan 2026 15:31:10 +0000 Subject: update grub to 2.14 This brings these extra changes: * eaa3b8f0f Bump version to 2.15 * d38d6a1a9 Release 2.14 * 35bfd6c47 build: Add grub-core/tests/crypto_cipher_mode_vectors.h file to EXTRA_DIST * ac042f3f5 configure: Print a more helpful error if autoconf-archive is not installed * e37d02158 kern/ieee1275/openfw: Add a check for invalid partition number * f94eae0f8 grub-mkimage: Do not generate empty SBAT metadata * 1aa0dd0c0 configure: Defer check for -mcmodel=large until PIC/PIE checks are done * ff1edd975 util/grub-mkimagexx: Stop generating unaligned appended signatures * 51ebc6f67 tests: Add functional tests for ecb/cbc helpers * caaf50b9a osdep/aros/hostdisk: Fix use-after-free bug during MsgPort deletion * 18f08826f kern/efi/sb: Enable loading GRUB_FILE_TYPE_CRYPTODISK_ENCRYPTION_KEY and GRUB_FILE_TYPE_CRYPTODISK_DETACHED_HEADER NOTE: This patch was reversed: * ac042f3f5 configure: Print a more helpful error if autoconf-archive is not installed Because it quite unhelpfully broke the build. Signed-off-by: Leah Rowe --- config/data/grub/module/default | 2 + config/data/grub/module/nvme | 2 + config/data/grub/module/xhci_nvme | 2 + config/dependencies/debian | 2 +- ...ub-s-missing-characters-for-borders-arrow.patch | 90 ----------------- ...1-say-the-name-libreboot-in-the-grub-menu.patch | 25 +++++ ...board-coreboot-force-scancodes2-translate.patch | 107 +++++++++++++++++++++ ...2-say-the-name-libreboot-in-the-grub-menu.patch | 25 ----- ...board-coreboot-force-scancodes2-translate.patch | 107 --------------------- ...eylayouts-don-t-print-Unknown-key-message.patch | 38 ++++++++ ...print-missing-prefix-errors-on-the-screen.patch | 102 ++++++++++++++++++++ ...eylayouts-don-t-print-Unknown-key-message.patch | 38 -------- ...005-don-t-print-error-if-module-not-found.patch | 34 +++++++ ...print-missing-prefix-errors-on-the-screen.patch | 102 -------------------- .../0006-don-t-print-empty-error-messages.patch | 31 ++++++ ...006-don-t-print-error-if-module-not-found.patch | 34 ------- .../0007-don-t-print-empty-error-messages.patch | 31 ------ .../0007-kern-coreboot-mmap-Map-to-reserved.patch | 37 +++++++ ...igure-Check-linker-for-image-base-support.patch | 69 +++++++++++++ .../0008-kern-coreboot-mmap-Map-to-reserved.patch | 37 ------- ...igure-Check-linker-for-image-base-support.patch | 69 ------------- ...igure-Print-a-more-helpful-error-if-autoc.patch | 30 ++++++ config/grub/default/target.cfg | 2 +- ...ub-s-missing-characters-for-borders-arrow.patch | 4 +- ...2-say-the-name-libreboot-in-the-grub-menu.patch | 6 +- ...board-coreboot-force-scancodes2-translate.patch | 4 +- ...eylayouts-don-t-print-Unknown-key-message.patch | 4 +- ...print-missing-prefix-errors-on-the-screen.patch | 4 +- ...006-don-t-print-error-if-module-not-found.patch | 4 +- .../0007-don-t-print-empty-error-messages.patch | 4 +- ...8-Add-native-NVMe-driver-based-on-SeaBIOS.patch | 8 +- .../0009-kern-coreboot-mmap-Map-to-reserved.patch | 4 +- ...igure-Check-linker-for-image-base-support.patch | 13 +-- ...igure-Print-a-more-helpful-error-if-autoc.patch | 30 ++++++ config/grub/nvme/target.cfg | 2 +- ...ub-s-missing-characters-for-borders-arrow.patch | 4 +- ...2-say-the-name-libreboot-in-the-grub-menu.patch | 6 +- ...board-coreboot-force-scancodes2-translate.patch | 4 +- ...eylayouts-don-t-print-Unknown-key-message.patch | 4 +- ...print-missing-prefix-errors-on-the-screen.patch | 4 +- ...006-don-t-print-error-if-module-not-found.patch | 4 +- .../0007-don-t-print-empty-error-messages.patch | 4 +- ...us-usb-Parse-SuperSpeed-companion-descrip.patch | 4 +- .../patches/0009-usb-Add-enum-for-xHCI.patch | 4 +- ...-usbtrans-Set-default-maximum-packet-size.patch | 4 +- ...us-usb-Add-function-pointer-for-attach-de.patch | 4 +- ...us-usb-usbhub-Add-new-private-fields-for-.patch | 4 +- .../0013-grub-core-bus-usb-Add-xhci-support.patch | 6 +- ...us-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch | 4 +- .../0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch | 4 +- .../patches/0016-xhci-fix-port-indexing.patch | 4 +- .../0017-xhci-configure-TT-for-non-root-hubs.patch | 4 +- .../patches/0018-Fix-compilation-on-x86_64.patch | 4 +- ...9-Add-native-NVMe-driver-based-on-SeaBIOS.patch | 8 +- .../0020-kern-coreboot-mmap-Map-to-reserved.patch | 4 +- ...igure-Check-linker-for-image-base-support.patch | 13 +-- ...igure-Print-a-more-helpful-error-if-autoc.patch | 30 ++++++ config/grub/xhci_nvme/target.cfg | 2 +- 58 files changed, 622 insertions(+), 614 deletions(-) delete mode 100644 config/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch create mode 100644 config/grub/default/patches/0001-say-the-name-libreboot-in-the-grub-menu.patch create mode 100644 config/grub/default/patches/0002-at_keyboard-coreboot-force-scancodes2-translate.patch delete mode 100644 config/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch delete mode 100644 config/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch create mode 100644 config/grub/default/patches/0003-keylayouts-don-t-print-Unknown-key-message.patch create mode 100644 config/grub/default/patches/0004-don-t-print-missing-prefix-errors-on-the-screen.patch delete mode 100644 config/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch create mode 100644 config/grub/default/patches/0005-don-t-print-error-if-module-not-found.patch delete mode 100644 config/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch create mode 100644 config/grub/default/patches/0006-don-t-print-empty-error-messages.patch delete mode 100644 config/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch delete mode 100644 config/grub/default/patches/0007-don-t-print-empty-error-messages.patch create mode 100644 config/grub/default/patches/0007-kern-coreboot-mmap-Map-to-reserved.patch create mode 100644 config/grub/default/patches/0008-Revert-configure-Check-linker-for-image-base-support.patch delete mode 100644 config/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch delete mode 100644 config/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch create mode 100644 config/grub/default/patches/0009-Revert-configure-Print-a-more-helpful-error-if-autoc.patch create mode 100644 config/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch create mode 100644 config/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch (limited to 'config') diff --git a/config/data/grub/module/default b/config/data/grub/module/default index f17baae4..39030e2a 100755 --- a/config/data/grub/module/default +++ b/config/data/grub/module/default @@ -33,6 +33,7 @@ configfile \ cpio \ cpio_be \ crc64 \ +crypto_cipher_mode_test \ crypto \ cryptodisk \ diskfilter \ @@ -43,6 +44,7 @@ exfat \ elf \ ext2 \ fat \ +functional_test \ f2fs \ gcry_arcfour \ gcry_blake2 \ diff --git a/config/data/grub/module/nvme b/config/data/grub/module/nvme index fecc699b..4b832983 100755 --- a/config/data/grub/module/nvme +++ b/config/data/grub/module/nvme @@ -33,6 +33,7 @@ configfile \ cpio \ cpio_be \ crc64 \ +crypto_cipher_mode_test \ crypto \ cryptodisk \ diskfilter \ @@ -43,6 +44,7 @@ exfat \ elf \ ext2 \ fat \ +functional_test \ f2fs \ gcry_arcfour \ gcry_blake2 \ diff --git a/config/data/grub/module/xhci_nvme b/config/data/grub/module/xhci_nvme index 9c84c61f..616fca40 100755 --- a/config/data/grub/module/xhci_nvme +++ b/config/data/grub/module/xhci_nvme @@ -34,6 +34,7 @@ configfile \ cpio \ cpio_be \ crc64 \ +crypto_cipher_mode_test \ crypto \ cryptodisk \ diskfilter \ @@ -44,6 +45,7 @@ exfat \ elf \ ext2 \ fat \ +functional_test \ f2fs \ gcry_arcfour \ gcry_blake2 \ diff --git a/config/dependencies/debian b/config/dependencies/debian index c7de8be0..170bf21c 100644 --- a/config/dependencies/debian +++ b/config/dependencies/debian @@ -14,5 +14,5 @@ libusb-dev lz4 lzma lzma-alone m4 nasm openssl p7zip p7zip-full parted pciutils perl pkg-config python3 python3-distutils-extra python3-pkg-resources python3-pycryptodome \ python3-pyelftools python3-setuptools python-is-python3 sharutils swig unar \ unifont unifont-bin unzip uuid-dev wget xfonts-unifont zlib1g-dev ccache \ -g++-mipsel-linux-gnu make genisoimage mtools libx86-1 libx86-dev libstdc++-arm-none-eabi-newlib \ +g++-mipsel-linux-gnu make genisoimage mtools libx86-1 libx86-dev libstdc++-arm-none-eabi-newlib autoconf-archive \ " diff --git a/config/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch b/config/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch deleted file mode 100644 index f3ec1935..00000000 --- a/config/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 3334727192bca5c64e9e1321da23c4b1e745deb2 Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Sun, 31 Oct 2021 03:47:05 +0000 -Subject: [PATCH 1/8] mitigate grub's missing characters for borders/arrow - characters - -This cleans up the display on the main screen in GRUB. - -Just don't draw a border, at all. ---- - grub-core/normal/menu_text.c | 49 ++---------------------------------- - 1 file changed, 2 insertions(+), 47 deletions(-) - -diff --git a/grub-core/normal/menu_text.c b/grub-core/normal/menu_text.c -index 9c383e64a..8ec1dd1e8 100644 ---- a/grub-core/normal/menu_text.c -+++ b/grub-core/normal/menu_text.c -@@ -108,47 +108,6 @@ grub_print_message_indented (const char *msg, int margin_left, int margin_right, - grub_print_message_indented_real (msg, margin_left, margin_right, term, 0); - } - --static void --draw_border (struct grub_term_output *term, const struct grub_term_screen_geometry *geo) --{ -- int i; -- -- grub_term_setcolorstate (term, GRUB_TERM_COLOR_NORMAL); -- -- grub_term_gotoxy (term, (struct grub_term_coordinate) { geo->first_entry_x - 1, -- geo->first_entry_y - 1 }); -- grub_putcode (GRUB_UNICODE_CORNER_UL, term); -- for (i = 0; i < geo->entry_width + 1; i++) -- grub_putcode (GRUB_UNICODE_HLINE, term); -- grub_putcode (GRUB_UNICODE_CORNER_UR, term); -- -- for (i = 0; i < geo->num_entries; i++) -- { -- grub_term_gotoxy (term, (struct grub_term_coordinate) { geo->first_entry_x - 1, -- geo->first_entry_y + i }); -- grub_putcode (GRUB_UNICODE_VLINE, term); -- grub_term_gotoxy (term, -- (struct grub_term_coordinate) { geo->first_entry_x + geo->entry_width + 1, -- geo->first_entry_y + i }); -- grub_putcode (GRUB_UNICODE_VLINE, term); -- } -- -- grub_term_gotoxy (term, -- (struct grub_term_coordinate) { geo->first_entry_x - 1, -- geo->first_entry_y - 1 + geo->num_entries + 1 }); -- grub_putcode (GRUB_UNICODE_CORNER_LL, term); -- for (i = 0; i < geo->entry_width + 1; i++) -- grub_putcode (GRUB_UNICODE_HLINE, term); -- grub_putcode (GRUB_UNICODE_CORNER_LR, term); -- -- grub_term_setcolorstate (term, GRUB_TERM_COLOR_NORMAL); -- -- grub_term_gotoxy (term, -- (struct grub_term_coordinate) { geo->first_entry_x - 1, -- (geo->first_entry_y - 1 + geo->num_entries -- + GRUB_TERM_MARGIN + 1) }); --} -- - static int - print_message (int nested, int edit, struct grub_term_output *term, int dry_run) - { -@@ -167,10 +126,8 @@ command-line or ESC to discard edits and return to the GRUB menu."), - { - char *msg_translated; - -- msg_translated = grub_xasprintf (_("Use the %C and %C keys to select which " -- "entry is highlighted."), -- GRUB_UNICODE_UPARROW, -- GRUB_UNICODE_DOWNARROW); -+ msg_translated = grub_xasprintf (_("Use the arrow keys to select which " -+ "entry is highlighted.")); - if (!msg_translated) - return 0; - ret += grub_print_message_indented_real (msg_translated, STANDARD_MARGIN, -@@ -413,8 +370,6 @@ grub_menu_init_page (int nested, int edit, - - grub_term_normal_color = grub_color_menu_normal; - grub_term_highlight_color = grub_color_menu_highlight; -- if (geo->border) -- draw_border (term, geo); - grub_term_normal_color = old_color_normal; - grub_term_highlight_color = old_color_highlight; - geo->timeout_y = geo->first_entry_y + geo->num_entries --- -2.47.3 - diff --git a/config/grub/default/patches/0001-say-the-name-libreboot-in-the-grub-menu.patch b/config/grub/default/patches/0001-say-the-name-libreboot-in-the-grub-menu.patch new file mode 100644 index 00000000..3d818ea8 --- /dev/null +++ b/config/grub/default/patches/0001-say-the-name-libreboot-in-the-grub-menu.patch @@ -0,0 +1,25 @@ +From c6738750164712e2e1f42563bb54d3d14b82cf71 Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Sat, 19 Nov 2022 16:30:24 +0000 +Subject: [PATCH 1/8] say the name libreboot, in the grub menu + +--- + grub-core/normal/main.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c +index de9a3f961..bed502cde 100644 +--- a/grub-core/normal/main.c ++++ b/grub-core/normal/main.c +@@ -215,7 +215,7 @@ grub_normal_init_page (struct grub_term_output *term, + + grub_term_cls (term); + +- msg_formatted = grub_xasprintf (_("GNU GRUB version %s"), PACKAGE_VERSION); ++ msg_formatted = grub_xasprintf (_("Libreboot 26.01 RC1 Tenacious Tomato (GRUB menu): https://libreboot.org/")); + if (!msg_formatted) + return; + +-- +2.47.3 + diff --git a/config/grub/default/patches/0002-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/grub/default/patches/0002-at_keyboard-coreboot-force-scancodes2-translate.patch new file mode 100644 index 00000000..71a79651 --- /dev/null +++ b/config/grub/default/patches/0002-at_keyboard-coreboot-force-scancodes2-translate.patch @@ -0,0 +1,107 @@ +From fd3e7f0b0f27b22591c12d371e10e1399865c057 Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Mon, 30 Oct 2023 22:19:21 +0000 +Subject: [PATCH 2/8] at_keyboard coreboot: force scancodes2+translate + +Scan code set 2 with translation should be assumed in +every case, as the default starting position. + +However, GRUB is trying to detect and use other modes +such as set 2 without translation, or set 1 without +translation from set 2; it also detects no-mode and +assumes mode 1, on really old keyboards. + +The current behaviour has been retained, for everything +except GRUB_MACHINE_COREBOOT; for the latter, scan code +set 2 with translation is hardcoded, and forced in code. + +This is required to make keyboard initialisation work on +the MEC5035 EC used by the Dell Latitude E6400, when +running GRUB as a coreboot payload on that laptop. The +EC reports scancode set 2 with translation when probed, +but actually only outputs scancode set 1. + +Since GRUB is attempting to use it without translation, +and since the machine reports set 2 with translation, +but only ever outputs set 1 scancodes, this results in +wrong keypresses for every key. + +This fix fixed that, by forcing set 2 with translation, +treating it as set 1, but only on coreboot. This is the +same behaviour used in GNU+Linux systems and SeaBIOS. +With this change, GRUB keyboard initialisation now works +just fine on those machines. + +This has *also* been tested on other coreboot machines +running GRUB; several HP EliteBooks, ThinkPads and +Dell Precision T1650. All seems to work just fine. + +Signed-off-by: Leah Rowe +--- + grub-core/term/at_keyboard.c | 20 ++++++++++++++++++-- + 1 file changed, 18 insertions(+), 2 deletions(-) + +diff --git a/grub-core/term/at_keyboard.c b/grub-core/term/at_keyboard.c +index f8a129eb7..8207225c2 100644 +--- a/grub-core/term/at_keyboard.c ++++ b/grub-core/term/at_keyboard.c +@@ -138,6 +138,7 @@ write_mode (int mode) + return (i != GRUB_AT_TRIES); + } + ++#if !defined (GRUB_MACHINE_COREBOOT) + static int + query_mode (void) + { +@@ -161,10 +162,12 @@ query_mode (void) + return 3; + return 0; + } ++#endif + + static void + set_scancodes (void) + { ++#if !defined (GRUB_MACHINE_COREBOOT) + /* You must have visited computer museum. Keyboard without scancode set + knowledge. Assume XT. */ + if (!grub_keyboard_orig_set) +@@ -173,20 +176,33 @@ set_scancodes (void) + ps2_state.current_set = 1; + return; + } ++#endif + + #if !USE_SCANCODE_SET + ps2_state.current_set = 1; + return; +-#else ++#endif + ++#if defined (GRUB_MACHINE_COREBOOT) ++ /* enable translation */ ++ grub_keyboard_controller_write (grub_keyboard_controller_orig ++ & ~KEYBOARD_AT_DISABLE); ++#else ++ /* if not coreboot, disable translation and try mode 2 first, before 1 */ + grub_keyboard_controller_write (grub_keyboard_controller_orig + & ~KEYBOARD_AT_TRANSLATE + & ~KEYBOARD_AT_DISABLE); ++#endif + + keyboard_controller_wait_until_ready (); + grub_outb (KEYBOARD_COMMAND_ENABLE, KEYBOARD_REG_DATA); +- + write_mode (2); ++ ++#if defined (GRUB_MACHINE_COREBOOT) ++ /* mode 2 with translation, so make grub treat as set 1 */ ++ ps2_state.current_set = 1; ++#else ++ /* if not coreboot, translation isn't set; test 2 and fall back to 1 */ + ps2_state.current_set = query_mode (); + grub_dprintf ("atkeyb", "returned set %d\n", ps2_state.current_set); + if (ps2_state.current_set == 2) +-- +2.47.3 + diff --git a/config/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch b/config/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch deleted file mode 100644 index 90a58520..00000000 --- a/config/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch +++ /dev/null @@ -1,25 +0,0 @@ -From cc6d74da1a6a77935e094601f4f212cd410f5b53 Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Sat, 19 Nov 2022 16:30:24 +0000 -Subject: [PATCH 2/8] say the name libreboot, in the grub menu - ---- - grub-core/normal/main.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c -index de9a3f961..1fabb9c86 100644 ---- a/grub-core/normal/main.c -+++ b/grub-core/normal/main.c -@@ -215,7 +215,7 @@ grub_normal_init_page (struct grub_term_output *term, - - grub_term_cls (term); - -- msg_formatted = grub_xasprintf (_("GNU GRUB version %s"), PACKAGE_VERSION); -+ msg_formatted = grub_xasprintf (_("Libreboot 26.01 RC1 Tenacious Tomato (GRUB menu): https://libreboot.org/")); - if (!msg_formatted) - return; - --- -2.47.3 - diff --git a/config/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch deleted file mode 100644 index 6ba279b9..00000000 --- a/config/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch +++ /dev/null @@ -1,107 +0,0 @@ -From d5aead07155d6eeb36971c0a2e5ee1392a025f91 Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Mon, 30 Oct 2023 22:19:21 +0000 -Subject: [PATCH 3/8] at_keyboard coreboot: force scancodes2+translate - -Scan code set 2 with translation should be assumed in -every case, as the default starting position. - -However, GRUB is trying to detect and use other modes -such as set 2 without translation, or set 1 without -translation from set 2; it also detects no-mode and -assumes mode 1, on really old keyboards. - -The current behaviour has been retained, for everything -except GRUB_MACHINE_COREBOOT; for the latter, scan code -set 2 with translation is hardcoded, and forced in code. - -This is required to make keyboard initialisation work on -the MEC5035 EC used by the Dell Latitude E6400, when -running GRUB as a coreboot payload on that laptop. The -EC reports scancode set 2 with translation when probed, -but actually only outputs scancode set 1. - -Since GRUB is attempting to use it without translation, -and since the machine reports set 2 with translation, -but only ever outputs set 1 scancodes, this results in -wrong keypresses for every key. - -This fix fixed that, by forcing set 2 with translation, -treating it as set 1, but only on coreboot. This is the -same behaviour used in GNU+Linux systems and SeaBIOS. -With this change, GRUB keyboard initialisation now works -just fine on those machines. - -This has *also* been tested on other coreboot machines -running GRUB; several HP EliteBooks, ThinkPads and -Dell Precision T1650. All seems to work just fine. - -Signed-off-by: Leah Rowe ---- - grub-core/term/at_keyboard.c | 20 ++++++++++++++++++-- - 1 file changed, 18 insertions(+), 2 deletions(-) - -diff --git a/grub-core/term/at_keyboard.c b/grub-core/term/at_keyboard.c -index f8a129eb7..8207225c2 100644 ---- a/grub-core/term/at_keyboard.c -+++ b/grub-core/term/at_keyboard.c -@@ -138,6 +138,7 @@ write_mode (int mode) - return (i != GRUB_AT_TRIES); - } - -+#if !defined (GRUB_MACHINE_COREBOOT) - static int - query_mode (void) - { -@@ -161,10 +162,12 @@ query_mode (void) - return 3; - return 0; - } -+#endif - - static void - set_scancodes (void) - { -+#if !defined (GRUB_MACHINE_COREBOOT) - /* You must have visited computer museum. Keyboard without scancode set - knowledge. Assume XT. */ - if (!grub_keyboard_orig_set) -@@ -173,20 +176,33 @@ set_scancodes (void) - ps2_state.current_set = 1; - return; - } -+#endif - - #if !USE_SCANCODE_SET - ps2_state.current_set = 1; - return; --#else -+#endif - -+#if defined (GRUB_MACHINE_COREBOOT) -+ /* enable translation */ -+ grub_keyboard_controller_write (grub_keyboard_controller_orig -+ & ~KEYBOARD_AT_DISABLE); -+#else -+ /* if not coreboot, disable translation and try mode 2 first, before 1 */ - grub_keyboard_controller_write (grub_keyboard_controller_orig - & ~KEYBOARD_AT_TRANSLATE - & ~KEYBOARD_AT_DISABLE); -+#endif - - keyboard_controller_wait_until_ready (); - grub_outb (KEYBOARD_COMMAND_ENABLE, KEYBOARD_REG_DATA); -- - write_mode (2); -+ -+#if defined (GRUB_MACHINE_COREBOOT) -+ /* mode 2 with translation, so make grub treat as set 1 */ -+ ps2_state.current_set = 1; -+#else -+ /* if not coreboot, translation isn't set; test 2 and fall back to 1 */ - ps2_state.current_set = query_mode (); - grub_dprintf ("atkeyb", "returned set %d\n", ps2_state.current_set); - if (ps2_state.current_set == 2) --- -2.47.3 - diff --git a/config/grub/default/patches/0003-keylayouts-don-t-print-Unknown-key-message.patch b/config/grub/default/patches/0003-keylayouts-don-t-print-Unknown-key-message.patch new file mode 100644 index 00000000..0a79ae4f --- /dev/null +++ b/config/grub/default/patches/0003-keylayouts-don-t-print-Unknown-key-message.patch @@ -0,0 +1,38 @@ +From 3d3af1a80dc612ef19b9133552945356b221aa66 Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Tue, 31 Oct 2023 10:33:28 +0000 +Subject: [PATCH 3/8] keylayouts: don't print "Unknown key" message + +on keyboards with stuck keys, this results in GRUB just +spewing it repeatedly, preventing use of GRUB. + +in such cases, it's still possible to use the keyboard, +and we should let the user at least boot. + +it often appears when people plug in faulty usb keyboards, +but can appear for laptop keyboards too; one of my e6400 +has stuck keys. + +with this patch, grub should be a bit more reliable in +terms of user experience, when the keyboard is faulty. + +Signed-off-by: Leah Rowe +--- + grub-core/commands/keylayouts.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/grub-core/commands/keylayouts.c b/grub-core/commands/keylayouts.c +index aa3ba34f2..445fa0601 100644 +--- a/grub-core/commands/keylayouts.c ++++ b/grub-core/commands/keylayouts.c +@@ -174,7 +174,6 @@ grub_term_map_key (grub_keyboard_key_t code, int status) + key = map_key_core (code, status, &alt_gr_consumed); + + if (key == 0 || key == GRUB_TERM_SHIFT) { +- grub_printf ("Unknown key 0x%x detected\n", code); + return GRUB_TERM_NO_KEY; + } + +-- +2.47.3 + diff --git a/config/grub/default/patches/0004-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/grub/default/patches/0004-don-t-print-missing-prefix-errors-on-the-screen.patch new file mode 100644 index 00000000..0ebbc18e --- /dev/null +++ b/config/grub/default/patches/0004-don-t-print-missing-prefix-errors-on-the-screen.patch @@ -0,0 +1,102 @@ +From 98c460f2d63cf8d838ab1293e3845f22660cd055 Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Sun, 5 Nov 2023 16:14:58 +0000 +Subject: [PATCH 4/8] don't print missing prefix errors on the screen + +we do actually set the prefix. this patch modifies +grub to still set grub_errno and return accordingly, +so the behaviour is otherwise identical, but it will +no longer print a warning message on the screen. + +Signed-off-by: Leah Rowe +--- + grub-core/commands/keylayouts.c | 2 +- + grub-core/commands/loadenv.c | 2 +- + grub-core/commands/nativedisk.c | 2 +- + grub-core/efiemu/main.c | 3 +-- + grub-core/font/font.c | 2 +- + grub-core/kern/dl.c | 2 +- + 6 files changed, 6 insertions(+), 7 deletions(-) + +diff --git a/grub-core/commands/keylayouts.c b/grub-core/commands/keylayouts.c +index 445fa0601..00bcf7025 100644 +--- a/grub-core/commands/keylayouts.c ++++ b/grub-core/commands/keylayouts.c +@@ -211,7 +211,7 @@ grub_cmd_keymap (struct grub_command *cmd __attribute__ ((unused)), + { + const char *prefix = grub_env_get ("prefix"); + if (!prefix) +- return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("variable `%s' isn't set"), "prefix"); ++ return (grub_errno = GRUB_ERR_BAD_ARGUMENT); + filename = grub_xasprintf ("%s/layouts/%s.gkb", prefix, argv[0]); + if (!filename) + return grub_errno; +diff --git a/grub-core/commands/loadenv.c b/grub-core/commands/loadenv.c +index 166445849..699b39bfa 100644 +--- a/grub-core/commands/loadenv.c ++++ b/grub-core/commands/loadenv.c +@@ -58,7 +58,7 @@ open_envblk_file (char *filename, + prefix = grub_env_get ("prefix"); + if (! prefix) + { +- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); ++ grub_errno = GRUB_ERR_FILE_NOT_FOUND; + return 0; + } + +diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c +index 580c8d3b0..6806bff9c 100644 +--- a/grub-core/commands/nativedisk.c ++++ b/grub-core/commands/nativedisk.c +@@ -186,7 +186,7 @@ grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)), + prefix = grub_env_get ("prefix"); + + if (! prefix) +- return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); ++ return (grub_errno = GRUB_ERR_FILE_NOT_FOUND); + + if (prefix) + path_prefix = (prefix[0] == '(') ? grub_strchr (prefix, ')') : NULL; +diff --git a/grub-core/efiemu/main.c b/grub-core/efiemu/main.c +index e7037f4ed..e5d4dbff1 100644 +--- a/grub-core/efiemu/main.c ++++ b/grub-core/efiemu/main.c +@@ -231,8 +231,7 @@ grub_efiemu_autocore (void) + prefix = grub_env_get ("prefix"); + + if (! prefix) +- return grub_error (GRUB_ERR_FILE_NOT_FOUND, +- N_("variable `%s' isn't set"), "prefix"); ++ return (grub_errno = GRUB_ERR_FILE_NOT_FOUND); + + suffix = grub_efiemu_get_default_core_name (); + +diff --git a/grub-core/font/font.c b/grub-core/font/font.c +index 18de52562..2a0fea6c8 100644 +--- a/grub-core/font/font.c ++++ b/grub-core/font/font.c +@@ -461,7 +461,7 @@ grub_font_load (const char *filename) + + if (!prefix) + { +- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); ++ grub_errno = GRUB_ERR_FILE_NOT_FOUND; + goto fail; + } + file = try_open_from_prefix (prefix, filename); +diff --git a/grub-core/kern/dl.c b/grub-core/kern/dl.c +index de8c3aa8d..eac3ea48d 100644 +--- a/grub-core/kern/dl.c ++++ b/grub-core/kern/dl.c +@@ -880,7 +880,7 @@ grub_dl_load (const char *name) + return 0; + + if (! grub_dl_dir) { +- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); ++ grub_errno = GRUB_ERR_FILE_NOT_FOUND; + return 0; + } + +-- +2.47.3 + diff --git a/config/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch b/config/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch deleted file mode 100644 index b25fbd33..00000000 --- a/config/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 22a0e4608428f7f0131789b6bc0e0203b994163f Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Tue, 31 Oct 2023 10:33:28 +0000 -Subject: [PATCH 4/8] keylayouts: don't print "Unknown key" message - -on keyboards with stuck keys, this results in GRUB just -spewing it repeatedly, preventing use of GRUB. - -in such cases, it's still possible to use the keyboard, -and we should let the user at least boot. - -it often appears when people plug in faulty usb keyboards, -but can appear for laptop keyboards too; one of my e6400 -has stuck keys. - -with this patch, grub should be a bit more reliable in -terms of user experience, when the keyboard is faulty. - -Signed-off-by: Leah Rowe ---- - grub-core/commands/keylayouts.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/grub-core/commands/keylayouts.c b/grub-core/commands/keylayouts.c -index aa3ba34f2..445fa0601 100644 ---- a/grub-core/commands/keylayouts.c -+++ b/grub-core/commands/keylayouts.c -@@ -174,7 +174,6 @@ grub_term_map_key (grub_keyboard_key_t code, int status) - key = map_key_core (code, status, &alt_gr_consumed); - - if (key == 0 || key == GRUB_TERM_SHIFT) { -- grub_printf ("Unknown key 0x%x detected\n", code); - return GRUB_TERM_NO_KEY; - } - --- -2.47.3 - diff --git a/config/grub/default/patches/0005-don-t-print-error-if-module-not-found.patch b/config/grub/default/patches/0005-don-t-print-error-if-module-not-found.patch new file mode 100644 index 00000000..c711ea50 --- /dev/null +++ b/config/grub/default/patches/0005-don-t-print-error-if-module-not-found.patch @@ -0,0 +1,34 @@ +From 9a98532ffd75505a561ea4c6b4c17d6a468ace48 Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Sun, 5 Nov 2023 16:36:22 +0000 +Subject: [PATCH 5/8] don't print error if module not found + +still set grub_errno accordingly, and otherwise +behave the same. in libreboot, we remove a lot of +modules but then rely on loading a grub.cfg +provided by a distro; in almost all cases that works, +but also in almost all cases, that will try to load +a module we don't actually need, but then it prints +a message. this can annoy some users, so silence it. + +Signed-off-by: Leah Rowe +--- + grub-core/kern/dl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/grub-core/kern/dl.c b/grub-core/kern/dl.c +index eac3ea48d..6d67ba54f 100644 +--- a/grub-core/kern/dl.c ++++ b/grub-core/kern/dl.c +@@ -510,7 +510,7 @@ grub_dl_resolve_name (grub_dl_t mod, Elf_Ehdr *e) + + s = grub_dl_find_section (e, ".modname"); + if (!s) +- return grub_error (GRUB_ERR_BAD_MODULE, "no module name found"); ++ return (grub_errno = GRUB_ERR_BAD_MODULE); + + mod->name = grub_strdup ((char *) e + s->sh_offset); + if (! mod->name) +-- +2.47.3 + diff --git a/config/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch deleted file mode 100644 index 68191318..00000000 --- a/config/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch +++ /dev/null @@ -1,102 +0,0 @@ -From d04a862006aaf754af4d0ec8efee33e9a59c7d0c Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Sun, 5 Nov 2023 16:14:58 +0000 -Subject: [PATCH 5/8] don't print missing prefix errors on the screen - -we do actually set the prefix. this patch modifies -grub to still set grub_errno and return accordingly, -so the behaviour is otherwise identical, but it will -no longer print a warning message on the screen. - -Signed-off-by: Leah Rowe ---- - grub-core/commands/keylayouts.c | 2 +- - grub-core/commands/loadenv.c | 2 +- - grub-core/commands/nativedisk.c | 2 +- - grub-core/efiemu/main.c | 3 +-- - grub-core/font/font.c | 2 +- - grub-core/kern/dl.c | 2 +- - 6 files changed, 6 insertions(+), 7 deletions(-) - -diff --git a/grub-core/commands/keylayouts.c b/grub-core/commands/keylayouts.c -index 445fa0601..00bcf7025 100644 ---- a/grub-core/commands/keylayouts.c -+++ b/grub-core/commands/keylayouts.c -@@ -211,7 +211,7 @@ grub_cmd_keymap (struct grub_command *cmd __attribute__ ((unused)), - { - const char *prefix = grub_env_get ("prefix"); - if (!prefix) -- return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("variable `%s' isn't set"), "prefix"); -+ return (grub_errno = GRUB_ERR_BAD_ARGUMENT); - filename = grub_xasprintf ("%s/layouts/%s.gkb", prefix, argv[0]); - if (!filename) - return grub_errno; -diff --git a/grub-core/commands/loadenv.c b/grub-core/commands/loadenv.c -index 166445849..699b39bfa 100644 ---- a/grub-core/commands/loadenv.c -+++ b/grub-core/commands/loadenv.c -@@ -58,7 +58,7 @@ open_envblk_file (char *filename, - prefix = grub_env_get ("prefix"); - if (! prefix) - { -- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); -+ grub_errno = GRUB_ERR_FILE_NOT_FOUND; - return 0; - } - -diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c -index 580c8d3b0..6806bff9c 100644 ---- a/grub-core/commands/nativedisk.c -+++ b/grub-core/commands/nativedisk.c -@@ -186,7 +186,7 @@ grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)), - prefix = grub_env_get ("prefix"); - - if (! prefix) -- return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); -+ return (grub_errno = GRUB_ERR_FILE_NOT_FOUND); - - if (prefix) - path_prefix = (prefix[0] == '(') ? grub_strchr (prefix, ')') : NULL; -diff --git a/grub-core/efiemu/main.c b/grub-core/efiemu/main.c -index e7037f4ed..e5d4dbff1 100644 ---- a/grub-core/efiemu/main.c -+++ b/grub-core/efiemu/main.c -@@ -231,8 +231,7 @@ grub_efiemu_autocore (void) - prefix = grub_env_get ("prefix"); - - if (! prefix) -- return grub_error (GRUB_ERR_FILE_NOT_FOUND, -- N_("variable `%s' isn't set"), "prefix"); -+ return (grub_errno = GRUB_ERR_FILE_NOT_FOUND); - - suffix = grub_efiemu_get_default_core_name (); - -diff --git a/grub-core/font/font.c b/grub-core/font/font.c -index 18de52562..2a0fea6c8 100644 ---- a/grub-core/font/font.c -+++ b/grub-core/font/font.c -@@ -461,7 +461,7 @@ grub_font_load (const char *filename) - - if (!prefix) - { -- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); -+ grub_errno = GRUB_ERR_FILE_NOT_FOUND; - goto fail; - } - file = try_open_from_prefix (prefix, filename); -diff --git a/grub-core/kern/dl.c b/grub-core/kern/dl.c -index de8c3aa8d..eac3ea48d 100644 ---- a/grub-core/kern/dl.c -+++ b/grub-core/kern/dl.c -@@ -880,7 +880,7 @@ grub_dl_load (const char *name) - return 0; - - if (! grub_dl_dir) { -- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix"); -+ grub_errno = GRUB_ERR_FILE_NOT_FOUND; - return 0; - } - --- -2.47.3 - diff --git a/config/grub/default/patches/0006-don-t-print-empty-error-messages.patch b/config/grub/default/patches/0006-don-t-print-empty-error-messages.patch new file mode 100644 index 00000000..7ae22d63 --- /dev/null +++ b/config/grub/default/patches/0006-don-t-print-empty-error-messages.patch @@ -0,0 +1,31 @@ +From 1732706e61633b0ee4db18f1af2a5b93888a8af3 Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Sun, 5 Nov 2023 17:25:20 +0000 +Subject: [PATCH 6/8] don't print empty error messages + +this is part two of the quest to kill the prefix +error message. after i disabled prefix-related +messages, it still printed "error: ." on screen. + +Signed-off-by: Leah Rowe +--- + grub-core/kern/err.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/grub-core/kern/err.c b/grub-core/kern/err.c +index ba04b57fb..dab62646d 100644 +--- a/grub-core/kern/err.c ++++ b/grub-core/kern/err.c +@@ -116,7 +116,8 @@ grub_print_error (void) + { + if (grub_errno != GRUB_ERR_NONE) + { +- grub_err_printf (_("error: %s.\n"), grub_errmsg); ++ if (grub_strlen(grub_errmsg) > 0) ++ grub_err_printf (_("error: %s.\n"), grub_errmsg); + grub_err_printed_errors++; + } + } +-- +2.47.3 + diff --git a/config/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch b/config/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch deleted file mode 100644 index ef805b48..00000000 --- a/config/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 1d72be25322037c703c5fa95ee29b8ee7b7d7106 Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Sun, 5 Nov 2023 16:36:22 +0000 -Subject: [PATCH 6/8] don't print error if module not found - -still set grub_errno accordingly, and otherwise -behave the same. in libreboot, we remove a lot of -modules but then rely on loading a grub.cfg -provided by a distro; in almost all cases that works, -but also in almost all cases, that will try to load -a module we don't actually need, but then it prints -a message. this can annoy some users, so silence it. - -Signed-off-by: Leah Rowe ---- - grub-core/kern/dl.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/grub-core/kern/dl.c b/grub-core/kern/dl.c -index eac3ea48d..6d67ba54f 100644 ---- a/grub-core/kern/dl.c -+++ b/grub-core/kern/dl.c -@@ -510,7 +510,7 @@ grub_dl_resolve_name (grub_dl_t mod, Elf_Ehdr *e) - - s = grub_dl_find_section (e, ".modname"); - if (!s) -- return grub_error (GRUB_ERR_BAD_MODULE, "no module name found"); -+ return (grub_errno = GRUB_ERR_BAD_MODULE); - - mod->name = grub_strdup ((char *) e + s->sh_offset); - if (! mod->name) --- -2.47.3 - diff --git a/config/grub/default/patches/0007-don-t-print-empty-error-messages.patch b/config/grub/default/patches/0007-don-t-print-empty-error-messages.patch deleted file mode 100644 index 5dfdb676..00000000 --- a/config/grub/default/patches/0007-don-t-print-empty-error-messages.patch +++ /dev/null @@ -1,31 +0,0 @@ -From a0e49c6ae97114afa386286f6005dd9b3a896797 Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Sun, 5 Nov 2023 17:25:20 +0000 -Subject: [PATCH 7/8] don't print empty error messages - -this is part two of the quest to kill the prefix -error message. after i disabled prefix-related -messages, it still printed "error: ." on screen. - -Signed-off-by: Leah Rowe ---- - grub-core/kern/err.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/grub-core/kern/err.c b/grub-core/kern/err.c -index ba04b57fb..dab62646d 100644 ---- a/grub-core/kern/err.c -+++ b/grub-core/kern/err.c -@@ -116,7 +116,8 @@ grub_print_error (void) - { - if (grub_errno != GRUB_ERR_NONE) - { -- grub_err_printf (_("error: %s.\n"), grub_errmsg); -+ if (grub_strlen(grub_errmsg) > 0) -+ grub_err_printf (_("error: %s.\n"), grub_errmsg); - grub_err_printed_errors++; - } - } --- -2.47.3 - diff --git a/config/grub/default/patches/0007-kern-coreboot-mmap-Map-to-reserved.patch b/config/grub/default/patches/0007-kern-coreboot-mmap-Map-to-reserved.patch new file mode 100644 index 00000000..7baf9e8b --- /dev/null +++ b/config/grub/default/patches/0007-kern-coreboot-mmap-Map-to-reserved.patch @@ -0,0 +1,37 @@ +From 72420d66c5c5c933b6e249b7e1a0118670335ae1 Mon Sep 17 00:00:00 2001 +From: Paul Menzel +Date: Mon, 17 May 2021 10:24:36 +0200 +Subject: [PATCH 7/8] kern/coreboot/mmap: Map to reserved + +https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 + +Signed-off-by: Paul Menzel +--- + grub-core/kern/coreboot/mmap.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/grub-core/kern/coreboot/mmap.c b/grub-core/kern/coreboot/mmap.c +index caf8f7cef..2fc316e8d 100644 +--- a/grub-core/kern/coreboot/mmap.c ++++ b/grub-core/kern/coreboot/mmap.c +@@ -59,7 +59,7 @@ iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, void *data) + /* Multiboot mmaps match with the coreboot mmap + definition. Therefore, we can just pass type + through. */ +- mem_region->type, ++ (mem_region->type >= 13) ? 2 : mem_region->type, + ctx->hook_data)) + return 1; + if (start < 0xa0000) +@@ -81,7 +81,7 @@ iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, void *data) + /* Multiboot mmaps match with the coreboot mmap + definition. Therefore, we can just pass type + through. */ +- mem_region->type, ++ (mem_region->type >= 13) ? 2 : mem_region->type, + ctx->hook_data)) + return 1; + } +-- +2.47.3 + diff --git a/config/grub/default/patches/0008-Revert-configure-Check-linker-for-image-base-support.patch b/config/grub/default/patches/0008-Revert-configure-Check-linker-for-image-base-support.patch new file mode 100644 index 00000000..a29b2583 --- /dev/null +++ b/config/grub/default/patches/0008-Revert-configure-Check-linker-for-image-base-support.patch @@ -0,0 +1,69 @@ +From 52de4ac46b4d384a271d18c33238313334def5bc Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Wed, 24 Dec 2025 01:42:17 +0100 +Subject: [PATCH 8/8] Revert "configure: Check linker for --image-base support" + +This reverts commit 1a5417f39a0ccefcdd5440f2a67f84d2d2e26960. +--- + acinclude.m4 | 5 ----- + configure.ac | 14 ++------------ + 2 files changed, 2 insertions(+), 17 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index 70c1912f8..fa7840f09 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -79,11 +79,6 @@ AC_DEFUN([grub_PROG_OBJCOPY_ABSOLUTE], + [AC_MSG_CHECKING([whether ${TARGET_OBJCOPY} works for absolute addresses]) + AC_CACHE_VAL(grub_cv_prog_objcopy_absolute, + [cat > conftest.c <<\EOF +-asm ( +- ".globl start, _start, __start\n" +- ".ifdef cmain; .set start = _start = __start = cmain\n.endif\n" +- ".ifdef _cmain; .set start = _start = __start = _cmain\n.endif\n" +-); + void cmain (void); + void + cmain (void) +diff --git a/configure.ac b/configure.ac +index d8ca1b7c1..041cfbab4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1461,6 +1461,7 @@ elif test x$grub_cv_target_cc_link_format = x-mi386pe || test x$grub_cv_target_c + TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/conf/i386-cygwin-img-ld.sc" + TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT}" + TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/conf/i386-cygwin-img-ld.sc" ++ TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" + TARGET_IMG_CFLAGS= + else + TARGET_APPLE_LINKER=0 +@@ -1468,6 +1469,7 @@ else + TARGET_IMG_LDSCRIPT= + TARGET_IMG_LDFLAGS='-Wl,-N' + TARGET_IMG_LDFLAGS_AC='-Wl,-N' ++ TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" + TARGET_IMG_CFLAGS= + fi + +@@ -1798,18 +1800,6 @@ grub_PROG_TARGET_CC + m4_ifndef([AX_CHECK_LINK_FLAG], [m4_fatal([autoconf-archive is missing. You must install it to generate the configure script.])]) + + if test "x$TARGET_APPLE_LINKER" != x1 ; then +-AX_CHECK_LINK_FLAG([-Wl,--image-base,0x400000], +- [TARGET_IMG_BASE_LDOPT="-Wl,--image-base"], +- [TARGET_IMG_BASE_LDOPT="-Wl,-Ttext"], +- [], +- [AC_LANG_SOURCE([ +-asm (".globl start; start:"); +-asm (".globl _start; _start:"); +-asm (".globl __start; __start:"); +-void __main (void); +-void __main (void) {} +-int main (void); +- ])]) + grub_PROG_OBJCOPY_ABSOLUTE + fi + grub_PROG_LD_BUILD_ID_NONE +-- +2.47.3 + diff --git a/config/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch b/config/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch deleted file mode 100644 index a14e118b..00000000 --- a/config/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch +++ /dev/null @@ -1,37 +0,0 @@ -From b6f5e33972320c171d0fe44ac2afe4eac0b4b3eb Mon Sep 17 00:00:00 2001 -From: Paul Menzel -Date: Mon, 17 May 2021 10:24:36 +0200 -Subject: [PATCH 8/8] kern/coreboot/mmap: Map to reserved - -https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 - -Signed-off-by: Paul Menzel ---- - grub-core/kern/coreboot/mmap.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/grub-core/kern/coreboot/mmap.c b/grub-core/kern/coreboot/mmap.c -index caf8f7cef..2fc316e8d 100644 ---- a/grub-core/kern/coreboot/mmap.c -+++ b/grub-core/kern/coreboot/mmap.c -@@ -59,7 +59,7 @@ iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, void *data) - /* Multiboot mmaps match with the coreboot mmap - definition. Therefore, we can just pass type - through. */ -- mem_region->type, -+ (mem_region->type >= 13) ? 2 : mem_region->type, - ctx->hook_data)) - return 1; - if (start < 0xa0000) -@@ -81,7 +81,7 @@ iterate_linuxbios_table (grub_linuxbios_table_item_t table_item, void *data) - /* Multiboot mmaps match with the coreboot mmap - definition. Therefore, we can just pass type - through. */ -- mem_region->type, -+ (mem_region->type >= 13) ? 2 : mem_region->type, - ctx->hook_data)) - return 1; - } --- -2.47.3 - diff --git a/config/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch b/config/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch deleted file mode 100644 index 6ec818ff..00000000 --- a/config/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 70e4ffed2f1cd9b6871341260cae31a5e68c3081 Mon Sep 17 00:00:00 2001 -From: Leah Rowe -Date: Wed, 24 Dec 2025 01:42:17 +0100 -Subject: [PATCH 1/1] Revert "configure: Check linker for --image-base support" - -This reverts commit 1a5417f39a0ccefcdd5440f2a67f84d2d2e26960. ---- - acinclude.m4 | 5 ----- - configure.ac | 14 ++------------ - 2 files changed, 2 insertions(+), 17 deletions(-) - -diff --git a/acinclude.m4 b/acinclude.m4 -index 70c1912f8..fa7840f09 100644 ---- a/acinclude.m4 -+++ b/acinclude.m4 -@@ -79,11 +79,6 @@ AC_DEFUN([grub_PROG_OBJCOPY_ABSOLUTE], - [AC_MSG_CHECKING([whether ${TARGET_OBJCOPY} works for absolute addresses]) - AC_CACHE_VAL(grub_cv_prog_objcopy_absolute, - [cat > conftest.c <<\EOF --asm ( -- ".globl start, _start, __start\n" -- ".ifdef cmain; .set start = _start = __start = cmain\n.endif\n" -- ".ifdef _cmain; .set start = _start = __start = _cmain\n.endif\n" --); - void cmain (void); - void - cmain (void) -diff --git a/configure.ac b/configure.ac -index a282bf7bf..17937baf4 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1461,6 +1461,7 @@ elif test x$grub_cv_target_cc_link_format = x-mi386pe || test x$grub_cv_target_c - TARGET_IMG_LDSCRIPT='$(top_srcdir)'"/conf/i386-cygwin-img-ld.sc" - TARGET_IMG_LDFLAGS="-Wl,-T${TARGET_IMG_LDSCRIPT}" - TARGET_IMG_LDFLAGS_AC="-Wl,-T${srcdir}/conf/i386-cygwin-img-ld.sc" -+ TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" - TARGET_IMG_CFLAGS= - else - TARGET_APPLE_LINKER=0 -@@ -1468,6 +1469,7 @@ else - TARGET_IMG_LDSCRIPT= - TARGET_IMG_LDFLAGS='-Wl,-N' - TARGET_IMG_LDFLAGS_AC='-Wl,-N' -+ TARGET_IMG_BASE_LDOPT="-Wl,-Ttext" - TARGET_IMG_CFLAGS= - fi - -@@ -1793,18 +1795,6 @@ LIBS="" - grub_ASM_USCORE - grub_PROG_TARGET_CC - if test "x$TARGET_APPLE_LINKER" != x1 ; then --AX_CHECK_LINK_FLAG([-Wl,--image-base,0x400000], -- [TARGET_IMG_BASE_LDOPT="-Wl,--image-base"], -- [TARGET_IMG_BASE_LDOPT="-Wl,-Ttext"], -- [], -- [AC_LANG_SOURCE([ --asm (".globl start; start:"); --asm (".globl _start; _start:"); --asm (".globl __start; __start:"); --void __main (void); --void __main (void) {} --int main (void); -- ])]) - grub_PROG_OBJCOPY_ABSOLUTE - fi - grub_PROG_LD_BUILD_ID_NONE --- -2.47.3 - diff --git a/config/grub/default/patches/0009-Revert-configure-Print-a-more-helpful-error-if-autoc.patch b/config/grub/default/patches/0009-Revert-configure-Print-a-more-helpful-error-if-autoc.patch new file mode 100644 index 00000000..c0a504ff --- /dev/null +++ b/config/grub/default/patches/0009-Revert-configure-Print-a-more-helpful-error-if-autoc.patch @@ -0,0 +1,30 @@ +From abf2bf6e2973ccaa994f63ff851ba11cbd45f1eb Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Mon, 19 Jan 2026 15:27:23 +0000 +Subject: [PATCH 1/1] Revert "configure: Print a more helpful error if + autoconf-archive is not installed" + +This reverts commit ac042f3f58d33ce9cd5ff61750f06da1a1d7b0eb. +--- + configure.ac | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 041cfbab4..209c0fb11 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1794,11 +1794,6 @@ LIBS="" + # Defined in acinclude.m4. + grub_ASM_USCORE + grub_PROG_TARGET_CC +- +-# The error message produced by autoconf if autoconf-archive is not installed is +-# quite misleading and not very helpful. So, try point people in the right direction. +-m4_ifndef([AX_CHECK_LINK_FLAG], [m4_fatal([autoconf-archive is missing. You must install it to generate the configure script.])]) +- + if test "x$TARGET_APPLE_LINKER" != x1 ; then + grub_PROG_OBJCOPY_ABSOLUTE + fi +-- +2.47.3 + diff --git a/config/grub/default/target.cfg b/config/grub/default/target.cfg index 38ad2e60..2ce61fff 100644 --- a/config/grub/default/target.cfg +++ b/config/grub/default/target.cfg @@ -1,4 +1,4 @@ # SPDX-License-Identifier: GPL-3.0-or-later tree="default" -rev="25b7f6b9344a4bac18c26ce143a156ac2bcb3ec4" +rev="eaa3b8f0f90605a82c6bfda4c5c4b73c58eb81ac" diff --git a/config/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch b/config/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch index 3fd43739..41194e98 100644 --- a/config/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch +++ b/config/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch @@ -1,7 +1,7 @@ -From 248018d7623fa1dc0e1b4ef3a430eac04cbe51bf Mon Sep 17 00:00:00 2001 +From 2c953c9160cbed357437891cf1790aeb1c2bd0f5 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 31 Oct 2021 03:47:05 +0000 -Subject: [PATCH 1/9] mitigate grub's missing characters for borders/arrow +Subject: [PATCH 01/10] mitigate grub's missing characters for borders/arrow characters This cleans up the display on the main screen in GRUB. diff --git a/config/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch b/config/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch index d5b22c58..3ad54214 100644 --- a/config/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch +++ b/config/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch @@ -1,14 +1,14 @@ -From d029792781fe280b8dac1bed457ef78b2af84ee2 Mon Sep 17 00:00:00 2001 +From 71623385f90580b2138110cf00ee66b7a05abcf6 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sat, 19 Nov 2022 16:30:24 +0000 -Subject: [PATCH 2/9] say the name libreboot, in the grub menu +Subject: [PATCH 02/10] say the name libreboot, in the grub menu --- grub-core/normal/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c -index de9a3f961..1fabb9c86 100644 +index de9a3f961..bed502cde 100644 --- a/grub-core/normal/main.c +++ b/grub-core/normal/main.c @@ -215,7 +215,7 @@ grub_normal_init_page (struct grub_term_output *term, diff --git a/config/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch index 8397b689..ab26c6b2 100644 --- a/config/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch +++ b/config/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch @@ -1,7 +1,7 @@ -From b42452eca17efb562e1ffe809ff8d3bdbbda3728 Mon Sep 17 00:00:00 2001 +From a21c5e997d6247d713717745b5f7bd380b98fce1 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 30 Oct 2023 22:19:21 +0000 -Subject: [PATCH 3/9] at_keyboard coreboot: force scancodes2+translate +Subject: [PATCH 03/10] at_keyboard coreboot: force scancodes2+translate Scan code set 2 with translation should be assumed in every case, as the default starting position. diff --git a/config/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch b/config/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch index c6a9ee64..68dfb2f7 100644 --- a/config/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch +++ b/config/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch @@ -1,7 +1,7 @@ -From 831d6824c79032db08a68acbbea6ea374399dba4 Mon Sep 17 00:00:00 2001 +From 062379b1cd5a4f99324c625fb371c29eb00ad4a2 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Tue, 31 Oct 2023 10:33:28 +0000 -Subject: [PATCH 4/9] keylayouts: don't print "Unknown key" message +Subject: [PATCH 04/10] keylayouts: don't print "Unknown key" message on keyboards with stuck keys, this results in GRUB just spewing it repeatedly, preventing use of GRUB. diff --git a/config/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch index abdd93ff..53dbdd87 100644 --- a/config/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch +++ b/config/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch @@ -1,7 +1,7 @@ -From 095ecdc8ad06ac2581a06e4dacbf4091aba8ec6a Mon Sep 17 00:00:00 2001 +From e77ca67985c1bef8afd93587232da3d298a8dd51 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 5 Nov 2023 16:14:58 +0000 -Subject: [PATCH 5/9] don't print missing prefix errors on the screen +Subject: [PATCH 05/10] don't print missing prefix errors on the screen we do actually set the prefix. this patch modifies grub to still set grub_errno and return accordingly, diff --git a/config/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch b/config/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch index 339160d6..3851c7fe 100644 --- a/config/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch +++ b/config/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch @@ -1,7 +1,7 @@ -From 198cb517f44ada4eb561e3182e61b1598535c51b Mon Sep 17 00:00:00 2001 +From 9412b6be27bce2d79f154761387d35f44184c069 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 5 Nov 2023 16:36:22 +0000 -Subject: [PATCH 6/9] don't print error if module not found +Subject: [PATCH 06/10] don't print error if module not found still set grub_errno accordingly, and otherwise behave the same. in libreboot, we remove a lot of diff --git a/config/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch b/config/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch index 9bec9774..aa42420f 100644 --- a/config/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch +++ b/config/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch @@ -1,7 +1,7 @@ -From e344c1bb1bc0bc4df4cf9c049e1e4ba2daf8c2af Mon Sep 17 00:00:00 2001 +From 2ad50d482cae148df832ccd68f90b8111684ecde Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 5 Nov 2023 17:25:20 +0000 -Subject: [PATCH 7/9] don't print empty error messages +Subject: [PATCH 07/10] don't print empty error messages this is part two of the quest to kill the prefix error message. after i disabled prefix-related diff --git a/config/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch b/config/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch index e3007b05..e0b40f2f 100644 --- a/config/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch +++ b/config/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch @@ -1,7 +1,7 @@ -From e390ed303e135f6509889ff1ef3f5e3bcb28e89f Mon Sep 17 00:00:00 2001 +From 202e20bef3766480aee18e679b9306387be615dc Mon Sep 17 00:00:00 2001 From: Mate Kukri Date: Mon, 20 May 2024 11:43:35 +0100 -Subject: [PATCH 8/9] Add native NVMe driver based on SeaBIOS +Subject: [PATCH 08/10] Add native NVMe driver based on SeaBIOS Tested to successfully boot Debian on QEMU and OptiPlex 3050. @@ -31,10 +31,10 @@ index 43635d5ff..2c86dbbf6 100644 endif diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def -index fa4bc54aa..c608d0450 100644 +index 0cf155128..176d35364 100644 --- a/grub-core/Makefile.core.def +++ b/grub-core/Makefile.core.def -@@ -2768,3 +2768,9 @@ module = { +@@ -2773,3 +2773,9 @@ module = { cflags = '-Wno-uninitialized'; cppflags = '-I$(srcdir)/lib/libtasn1-grub -I$(srcdir)/tests/asn1/'; }; diff --git a/config/grub/nvme/patches/0009-kern-coreboot-mmap-Map-to-reserved.patch b/config/grub/nvme/patches/0009-kern-coreboot-mmap-Map-to-reserved.patch index f85bbb66..11b82429 100644 --- a/config/grub/nvme/patches/0009-kern-coreboot-mmap-Map-to-reserved.patch +++ b/config/grub/nvme/patches/0009-kern-coreboot-mmap-Map-to-reserved.patch @@ -1,7 +1,7 @@ -From 53e9097777bfc3830b9d986e9fd2ff00f40b2aa8 Mon Sep 17 00:00:00 2001 +From 9ec8534a4d27db37cf4feebd44fd9f8973a89e59 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 17 May 2021 10:24:36 +0200 -Subject: [PATCH 9/9] kern/coreboot/mmap: Map to reserved +Subject: [PATCH 09/10] kern/coreboot/mmap: Map to reserved https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 diff --git a/config/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch b/config/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch index 6ec818ff..8e78e8b7 100644 --- a/config/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch +++ b/config/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch @@ -1,7 +1,8 @@ -From 70e4ffed2f1cd9b6871341260cae31a5e68c3081 Mon Sep 17 00:00:00 2001 +From 7b0d621389fc1857c918058f82093f9630ea7730 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Wed, 24 Dec 2025 01:42:17 +0100 -Subject: [PATCH 1/1] Revert "configure: Check linker for --image-base support" +Subject: [PATCH 10/10] Revert "configure: Check linker for --image-base + support" This reverts commit 1a5417f39a0ccefcdd5440f2a67f84d2d2e26960. --- @@ -26,7 +27,7 @@ index 70c1912f8..fa7840f09 100644 void cmain (void) diff --git a/configure.ac b/configure.ac -index a282bf7bf..17937baf4 100644 +index d8ca1b7c1..041cfbab4 100644 --- a/configure.ac +++ b/configure.ac @@ -1461,6 +1461,7 @@ elif test x$grub_cv_target_cc_link_format = x-mi386pe || test x$grub_cv_target_c @@ -45,9 +46,9 @@ index a282bf7bf..17937baf4 100644 TARGET_IMG_CFLAGS= fi -@@ -1793,18 +1795,6 @@ LIBS="" - grub_ASM_USCORE - grub_PROG_TARGET_CC +@@ -1798,18 +1800,6 @@ grub_PROG_TARGET_CC + m4_ifndef([AX_CHECK_LINK_FLAG], [m4_fatal([autoconf-archive is missing. You must install it to generate the configure script.])]) + if test "x$TARGET_APPLE_LINKER" != x1 ; then -AX_CHECK_LINK_FLAG([-Wl,--image-base,0x400000], - [TARGET_IMG_BASE_LDOPT="-Wl,--image-base"], diff --git a/config/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch b/config/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch new file mode 100644 index 00000000..c0a504ff --- /dev/null +++ b/config/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch @@ -0,0 +1,30 @@ +From abf2bf6e2973ccaa994f63ff851ba11cbd45f1eb Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Mon, 19 Jan 2026 15:27:23 +0000 +Subject: [PATCH 1/1] Revert "configure: Print a more helpful error if + autoconf-archive is not installed" + +This reverts commit ac042f3f58d33ce9cd5ff61750f06da1a1d7b0eb. +--- + configure.ac | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 041cfbab4..209c0fb11 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1794,11 +1794,6 @@ LIBS="" + # Defined in acinclude.m4. + grub_ASM_USCORE + grub_PROG_TARGET_CC +- +-# The error message produced by autoconf if autoconf-archive is not installed is +-# quite misleading and not very helpful. So, try point people in the right direction. +-m4_ifndef([AX_CHECK_LINK_FLAG], [m4_fatal([autoconf-archive is missing. You must install it to generate the configure script.])]) +- + if test "x$TARGET_APPLE_LINKER" != x1 ; then + grub_PROG_OBJCOPY_ABSOLUTE + fi +-- +2.47.3 + diff --git a/config/grub/nvme/target.cfg b/config/grub/nvme/target.cfg index 1063406e..e2a67cc0 100644 --- a/config/grub/nvme/target.cfg +++ b/config/grub/nvme/target.cfg @@ -1,4 +1,4 @@ # SPDX-License-Identifier: GPL-3.0-or-later tree="nvme" -rev="25b7f6b9344a4bac18c26ce143a156ac2bcb3ec4" +rev="eaa3b8f0f90605a82c6bfda4c5c4b73c58eb81ac" diff --git a/config/grub/xhci_nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch b/config/grub/xhci_nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch index 46e5059f..7f489819 100644 --- a/config/grub/xhci_nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch +++ b/config/grub/xhci_nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch @@ -1,7 +1,7 @@ -From 5e70ef9fa3a6474ec827c15329d13c9c984f147a Mon Sep 17 00:00:00 2001 +From 8ce8095abbbcc69b50466cb2b890a59be5a9baed Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 31 Oct 2021 03:47:05 +0000 -Subject: [PATCH 01/20] mitigate grub's missing characters for borders/arrow +Subject: [PATCH 01/21] mitigate grub's missing characters for borders/arrow characters This cleans up the display on the main screen in GRUB. diff --git a/config/grub/xhci_nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch b/config/grub/xhci_nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch index b0d81978..042cd38c 100644 --- a/config/grub/xhci_nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch +++ b/config/grub/xhci_nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch @@ -1,7 +1,7 @@ -From f87a74e198cea4ee79051fc789a06ad3695ad1db Mon Sep 17 00:00:00 2001 +From d073d6a6d3c63a2b37df754bb890f88482ef2a75 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sat, 19 Nov 2022 16:30:24 +0000 -Subject: [PATCH 02/20] say the name libreboot, in the grub menu +Subject: [PATCH 02/21] say the name libreboot, in the grub menu --- grub-core/normal/main.c | 2 +- @@ -16,7 +16,7 @@ index de9a3f961..1fabb9c86 100644 grub_term_cls (term); - msg_formatted = grub_xasprintf (_("GNU GRUB version %s"), PACKAGE_VERSION); -+ msg_formatted = grub_xasprintf (_("Libreboot 26.01 RC1 Tenacious Tomato (GRUB menu): https://libreboot.org/")); ++ msg_formatted = grub_xasprintf (_("Libreboot 25.06 Luminous Lemon (GRUB menu): https://libreboot.org/")); if (!msg_formatted) return; diff --git a/config/grub/xhci_nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/grub/xhci_nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch index d3547d11..3e6d9203 100644 --- a/config/grub/xhci_nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch +++ b/config/grub/xhci_nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch @@ -1,7 +1,7 @@ -From e647f6b06788022a746e8f38ed2b092013d1d570 Mon Sep 17 00:00:00 2001 +From befc0d1c61b4ba0c43981774eeff0f0f026f513d Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Mon, 30 Oct 2023 22:19:21 +0000 -Subject: [PATCH 03/20] at_keyboard coreboot: force scancodes2+translate +Subject: [PATCH 03/21] at_keyboard coreboot: force scancodes2+translate Scan code set 2 with translation should be assumed in every case, as the default starting position. diff --git a/config/grub/xhci_nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch b/config/grub/xhci_nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch index b3fd8956..0fdcaac7 100644 --- a/config/grub/xhci_nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch +++ b/config/grub/xhci_nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch @@ -1,7 +1,7 @@ -From 1f0c3362178d1ad44998a98782bcb1e412af9d79 Mon Sep 17 00:00:00 2001 +From abe0aa9a6edba181b0f964f3cf4bcd7155322ac1 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Tue, 31 Oct 2023 10:33:28 +0000 -Subject: [PATCH 04/20] keylayouts: don't print "Unknown key" message +Subject: [PATCH 04/21] keylayouts: don't print "Unknown key" message on keyboards with stuck keys, this results in GRUB just spewing it repeatedly, preventing use of GRUB. diff --git a/config/grub/xhci_nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/grub/xhci_nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch index 0d49f993..cec589e1 100644 --- a/config/grub/xhci_nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch +++ b/config/grub/xhci_nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch @@ -1,7 +1,7 @@ -From b902f68dacba764fe4d4200cae000cf23385df8e Mon Sep 17 00:00:00 2001 +From f8d8c00b9ff65bbaef029b087d6b2ad1091b39e4 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 5 Nov 2023 16:14:58 +0000 -Subject: [PATCH 05/20] don't print missing prefix errors on the screen +Subject: [PATCH 05/21] don't print missing prefix errors on the screen we do actually set the prefix. this patch modifies grub to still set grub_errno and return accordingly, diff --git a/config/grub/xhci_nvme/patches/0006-don-t-print-error-if-module-not-found.patch b/config/grub/xhci_nvme/patches/0006-don-t-print-error-if-module-not-found.patch index 07c5713f..afffefca 100644 --- a/config/grub/xhci_nvme/patches/0006-don-t-print-error-if-module-not-found.patch +++ b/config/grub/xhci_nvme/patches/0006-don-t-print-error-if-module-not-found.patch @@ -1,7 +1,7 @@ -From 2da7fd383afee0a91c1eeb5120a46e165b9386c3 Mon Sep 17 00:00:00 2001 +From 807a54732c3a9b056d33a0fdb0baedd44b581f0b Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 5 Nov 2023 16:36:22 +0000 -Subject: [PATCH 06/20] don't print error if module not found +Subject: [PATCH 06/21] don't print error if module not found still set grub_errno accordingly, and otherwise behave the same. in libreboot, we remove a lot of diff --git a/config/grub/xhci_nvme/patches/0007-don-t-print-empty-error-messages.patch b/config/grub/xhci_nvme/patches/0007-don-t-print-empty-error-messages.patch index 108f4b5f..44a9c432 100644 --- a/config/grub/xhci_nvme/patches/0007-don-t-print-empty-error-messages.patch +++ b/config/grub/xhci_nvme/patches/0007-don-t-print-empty-error-messages.patch @@ -1,7 +1,7 @@ -From 5c26d4bb0cc69cb9f4b9e4f6de794f309d5210f4 Mon Sep 17 00:00:00 2001 +From 53ae675a60c53792b0296828fb66d414b2d3f70e Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 5 Nov 2023 17:25:20 +0000 -Subject: [PATCH 07/20] don't print empty error messages +Subject: [PATCH 07/21] don't print empty error messages this is part two of the quest to kill the prefix error message. after i disabled prefix-related diff --git a/config/grub/xhci_nvme/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch b/config/grub/xhci_nvme/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch index 6144f1e0..95e9fb7b 100644 --- a/config/grub/xhci_nvme/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch +++ b/config/grub/xhci_nvme/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch @@ -1,7 +1,7 @@ -From b47687966ebad85b16d58469237b048c10f86610 Mon Sep 17 00:00:00 2001 +From 64769f3b285e8bf2c21a65fba81673a0a4f6dde3 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Sun, 15 Nov 2020 19:00:27 +0100 -Subject: [PATCH 08/20] grub-core/bus/usb: Parse SuperSpeed companion +Subject: [PATCH 08/21] grub-core/bus/usb: Parse SuperSpeed companion descriptors Parse the SS_ENDPOINT_COMPANION descriptor, which is only present on USB 3.0 diff --git a/config/grub/xhci_nvme/patches/0009-usb-Add-enum-for-xHCI.patch b/config/grub/xhci_nvme/patches/0009-usb-Add-enum-for-xHCI.patch index 4f88de35..5b79d33c 100644 --- a/config/grub/xhci_nvme/patches/0009-usb-Add-enum-for-xHCI.patch +++ b/config/grub/xhci_nvme/patches/0009-usb-Add-enum-for-xHCI.patch @@ -1,7 +1,7 @@ -From 05b2607120d0ccfb826bc83d4f4d2741f4f0a6a1 Mon Sep 17 00:00:00 2001 +From 43522cfb0ec375be1b6a226103e9a55d4b88ee1d Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Mon, 7 Dec 2020 08:41:22 +0100 -Subject: [PATCH 09/20] usb: Add enum for xHCI +Subject: [PATCH 09/21] usb: Add enum for xHCI Will be used in future patches. diff --git a/config/grub/xhci_nvme/patches/0010-usbtrans-Set-default-maximum-packet-size.patch b/config/grub/xhci_nvme/patches/0010-usbtrans-Set-default-maximum-packet-size.patch index 938b2266..c6196f87 100644 --- a/config/grub/xhci_nvme/patches/0010-usbtrans-Set-default-maximum-packet-size.patch +++ b/config/grub/xhci_nvme/patches/0010-usbtrans-Set-default-maximum-packet-size.patch @@ -1,7 +1,7 @@ -From 8de1eafa067bfaae5d58ca0c5616e159356dc6c8 Mon Sep 17 00:00:00 2001 +From 296f9b732393315bc3a91f8531f6ac9e7b9f43e0 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Mon, 7 Dec 2020 08:41:23 +0100 -Subject: [PATCH 10/20] usbtrans: Set default maximum packet size +Subject: [PATCH 10/21] usbtrans: Set default maximum packet size Set the maximum packet size to 512 for SuperSpeed devices. diff --git a/config/grub/xhci_nvme/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch b/config/grub/xhci_nvme/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch index 41f5c1e3..ac53118a 100644 --- a/config/grub/xhci_nvme/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch +++ b/config/grub/xhci_nvme/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch @@ -1,7 +1,7 @@ -From 4cda4c986931067b1442c165d6d207d6948529b8 Mon Sep 17 00:00:00 2001 +From de471d16aeaab3cf12956d783604f22944ea7ed0 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Sun, 15 Nov 2020 19:51:42 +0100 -Subject: [PATCH 11/20] grub-core/bus/usb: Add function pointer for +Subject: [PATCH 11/21] grub-core/bus/usb: Add function pointer for attach/detach events The xHCI code needs to be called for attaching or detaching a device. diff --git a/config/grub/xhci_nvme/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch b/config/grub/xhci_nvme/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch index 9e947020..fbedfc77 100644 --- a/config/grub/xhci_nvme/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch +++ b/config/grub/xhci_nvme/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch @@ -1,7 +1,7 @@ -From e29dd6f6ccc73f2e4c04261c0367e1c6a0dbbce6 Mon Sep 17 00:00:00 2001 +From 8966fadb8c19fd5c30dd585a53f465767c1cd627 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Mon, 7 Dec 2020 08:41:25 +0100 -Subject: [PATCH 12/20] grub-core/bus/usb/usbhub: Add new private fields for +Subject: [PATCH 12/21] grub-core/bus/usb/usbhub: Add new private fields for xHCI controller Store the root port number, the route, consisting out of the port ID diff --git a/config/grub/xhci_nvme/patches/0013-grub-core-bus-usb-Add-xhci-support.patch b/config/grub/xhci_nvme/patches/0013-grub-core-bus-usb-Add-xhci-support.patch index 9661a425..1393092a 100644 --- a/config/grub/xhci_nvme/patches/0013-grub-core-bus-usb-Add-xhci-support.patch +++ b/config/grub/xhci_nvme/patches/0013-grub-core-bus-usb-Add-xhci-support.patch @@ -1,7 +1,7 @@ -From aa09b16597347353c561f55a32eb27f662b41053 Mon Sep 17 00:00:00 2001 +From 764e79efa273fadb8fc4b5ec286dd9e5688a58e8 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Mon, 7 Dec 2020 08:41:26 +0100 -Subject: [PATCH 13/20] grub-core/bus/usb: Add xhci support +Subject: [PATCH 13/21] grub-core/bus/usb: Add xhci support Add support for xHCI USB controllers. The code is based on seabios implementation, but has been heavily @@ -67,7 +67,7 @@ index 43635d5ff..65016f856 100644 endif diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def -index fa4bc54aa..208badbdf 100644 +index 0cf155128..ec4c76ea8 100644 --- a/grub-core/Makefile.core.def +++ b/grub-core/Makefile.core.def @@ -675,6 +675,13 @@ module = { diff --git a/config/grub/xhci_nvme/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch b/config/grub/xhci_nvme/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch index 98f38569..bb5c4fd8 100644 --- a/config/grub/xhci_nvme/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch +++ b/config/grub/xhci_nvme/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch @@ -1,7 +1,7 @@ -From 861b218be772b8abf090647fc24eb7c7ccc1d2db Mon Sep 17 00:00:00 2001 +From f289290da21c2eafdf52ae4859623971a3da07bb Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Mon, 7 Dec 2020 08:41:27 +0100 -Subject: [PATCH 14/20] grub-core/bus/usb/usbhub: Add xHCI non root hub support +Subject: [PATCH 14/21] grub-core/bus/usb/usbhub: Add xHCI non root hub support Tested on Intel PCH C246, the USB3 hub can be configured by grub. diff --git a/config/grub/xhci_nvme/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch b/config/grub/xhci_nvme/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch index 69d0e653..9deb581d 100644 --- a/config/grub/xhci_nvme/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch +++ b/config/grub/xhci_nvme/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch @@ -1,7 +1,7 @@ -From 0a1a2f3a2f4b3908f094133c86fda0e882dabda5 Mon Sep 17 00:00:00 2001 +From e8bb5e7445dad3514c88d5286563781f27233e5e Mon Sep 17 00:00:00 2001 From: Sven Anderson Date: Sat, 28 May 2022 21:39:23 +0200 -Subject: [PATCH 15/20] xHCI: also accept SBRN 0x31 and 0x32 +Subject: [PATCH 15/21] xHCI: also accept SBRN 0x31 and 0x32 Signed-off-by: Sven Anderson --- diff --git a/config/grub/xhci_nvme/patches/0016-xhci-fix-port-indexing.patch b/config/grub/xhci_nvme/patches/0016-xhci-fix-port-indexing.patch index bdbaf417..b1cb368a 100644 --- a/config/grub/xhci_nvme/patches/0016-xhci-fix-port-indexing.patch +++ b/config/grub/xhci_nvme/patches/0016-xhci-fix-port-indexing.patch @@ -1,7 +1,7 @@ -From 9343cdda106d47561f25ce1e39a86d62cb0bfd08 Mon Sep 17 00:00:00 2001 +From 3db55ea63bc2c4fb41f7489a77a42c821256bbf5 Mon Sep 17 00:00:00 2001 From: Sven Anderson Date: Mon, 13 Jan 2025 19:51:41 +0100 -Subject: [PATCH 16/20] xhci: fix port indexing +Subject: [PATCH 16/21] xhci: fix port indexing --- grub-core/bus/usb/xhci.c | 10 +++++----- diff --git a/config/grub/xhci_nvme/patches/0017-xhci-configure-TT-for-non-root-hubs.patch b/config/grub/xhci_nvme/patches/0017-xhci-configure-TT-for-non-root-hubs.patch index 83410e2e..fb8ed0b4 100644 --- a/config/grub/xhci_nvme/patches/0017-xhci-configure-TT-for-non-root-hubs.patch +++ b/config/grub/xhci_nvme/patches/0017-xhci-configure-TT-for-non-root-hubs.patch @@ -1,7 +1,7 @@ -From 41e966e3054862e1921e14bd2ecec3bfb20cba8f Mon Sep 17 00:00:00 2001 +From a82ef95fffc0a869e90467ce4f7c28282c084518 Mon Sep 17 00:00:00 2001 From: Sven Anderson Date: Mon, 13 Jan 2025 20:26:32 +0100 -Subject: [PATCH 17/20] xhci: configure TT for non-root-hubs +Subject: [PATCH 17/21] xhci: configure TT for non-root-hubs --- grub-core/bus/usb/usbhub.c | 6 +++++ diff --git a/config/grub/xhci_nvme/patches/0018-Fix-compilation-on-x86_64.patch b/config/grub/xhci_nvme/patches/0018-Fix-compilation-on-x86_64.patch index 405cfeb9..70a1a22c 100644 --- a/config/grub/xhci_nvme/patches/0018-Fix-compilation-on-x86_64.patch +++ b/config/grub/xhci_nvme/patches/0018-Fix-compilation-on-x86_64.patch @@ -1,7 +1,7 @@ -From 114346473d1e5d3660ea0dae4ed9f4c8ad98bbeb Mon Sep 17 00:00:00 2001 +From cc671d76816c8370a85e289d5ac7bdf1f687ff3a Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Wed, 24 Feb 2021 08:25:41 +0100 -Subject: [PATCH 18/20] Fix compilation on x86_64 +Subject: [PATCH 18/21] Fix compilation on x86_64 Signed-off-by: Patrick Rudolph --- diff --git a/config/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch b/config/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch index 57762843..f09ae69d 100644 --- a/config/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch +++ b/config/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch @@ -1,7 +1,7 @@ -From 2b255ee97a48f280a20acd807386bec52ea447c8 Mon Sep 17 00:00:00 2001 +From 467fe4c5a98c0cfc1b357ec8acc360a03b5f7038 Mon Sep 17 00:00:00 2001 From: Mate Kukri Date: Mon, 20 May 2024 11:43:35 +0100 -Subject: [PATCH 19/20] Add native NVMe driver based on SeaBIOS +Subject: [PATCH 19/21] Add native NVMe driver based on SeaBIOS Tested to successfully boot Debian on QEMU and OptiPlex 3050. @@ -31,10 +31,10 @@ index 65016f856..7bc0866ba 100644 endif diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def -index 208badbdf..219282524 100644 +index ec4c76ea8..08b83ad06 100644 --- a/grub-core/Makefile.core.def +++ b/grub-core/Makefile.core.def -@@ -2775,3 +2775,9 @@ module = { +@@ -2780,3 +2780,9 @@ module = { cflags = '-Wno-uninitialized'; cppflags = '-I$(srcdir)/lib/libtasn1-grub -I$(srcdir)/tests/asn1/'; }; diff --git a/config/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch b/config/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch index 9cf94a25..ffa01e7a 100644 --- a/config/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch +++ b/config/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch @@ -1,7 +1,7 @@ -From 4ece79a5e4708b96c2fd06a80b1aac0b6e232675 Mon Sep 17 00:00:00 2001 +From 331af0cc985aa5ec57964c6e3ab69f65c23f6481 Mon Sep 17 00:00:00 2001 From: Paul Menzel Date: Mon, 17 May 2021 10:24:36 +0200 -Subject: [PATCH 20/20] kern/coreboot/mmap: Map to reserved +Subject: [PATCH 20/21] kern/coreboot/mmap: Map to reserved https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 diff --git a/config/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch b/config/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch index 6ec818ff..0e563fd5 100644 --- a/config/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch +++ b/config/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch @@ -1,7 +1,8 @@ -From 70e4ffed2f1cd9b6871341260cae31a5e68c3081 Mon Sep 17 00:00:00 2001 +From cf791012987ea90f7a88edd21a0f619fbc40986d Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Wed, 24 Dec 2025 01:42:17 +0100 -Subject: [PATCH 1/1] Revert "configure: Check linker for --image-base support" +Subject: [PATCH 21/21] Revert "configure: Check linker for --image-base + support" This reverts commit 1a5417f39a0ccefcdd5440f2a67f84d2d2e26960. --- @@ -26,7 +27,7 @@ index 70c1912f8..fa7840f09 100644 void cmain (void) diff --git a/configure.ac b/configure.ac -index a282bf7bf..17937baf4 100644 +index d8ca1b7c1..041cfbab4 100644 --- a/configure.ac +++ b/configure.ac @@ -1461,6 +1461,7 @@ elif test x$grub_cv_target_cc_link_format = x-mi386pe || test x$grub_cv_target_c @@ -45,9 +46,9 @@ index a282bf7bf..17937baf4 100644 TARGET_IMG_CFLAGS= fi -@@ -1793,18 +1795,6 @@ LIBS="" - grub_ASM_USCORE - grub_PROG_TARGET_CC +@@ -1798,18 +1800,6 @@ grub_PROG_TARGET_CC + m4_ifndef([AX_CHECK_LINK_FLAG], [m4_fatal([autoconf-archive is missing. You must install it to generate the configure script.])]) + if test "x$TARGET_APPLE_LINKER" != x1 ; then -AX_CHECK_LINK_FLAG([-Wl,--image-base,0x400000], - [TARGET_IMG_BASE_LDOPT="-Wl,--image-base"], diff --git a/config/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch b/config/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch new file mode 100644 index 00000000..c0a504ff --- /dev/null +++ b/config/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch @@ -0,0 +1,30 @@ +From abf2bf6e2973ccaa994f63ff851ba11cbd45f1eb Mon Sep 17 00:00:00 2001 +From: Leah Rowe +Date: Mon, 19 Jan 2026 15:27:23 +0000 +Subject: [PATCH 1/1] Revert "configure: Print a more helpful error if + autoconf-archive is not installed" + +This reverts commit ac042f3f58d33ce9cd5ff61750f06da1a1d7b0eb. +--- + configure.ac | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 041cfbab4..209c0fb11 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1794,11 +1794,6 @@ LIBS="" + # Defined in acinclude.m4. + grub_ASM_USCORE + grub_PROG_TARGET_CC +- +-# The error message produced by autoconf if autoconf-archive is not installed is +-# quite misleading and not very helpful. So, try point people in the right direction. +-m4_ifndef([AX_CHECK_LINK_FLAG], [m4_fatal([autoconf-archive is missing. You must install it to generate the configure script.])]) +- + if test "x$TARGET_APPLE_LINKER" != x1 ; then + grub_PROG_OBJCOPY_ABSOLUTE + fi +-- +2.47.3 + diff --git a/config/grub/xhci_nvme/target.cfg b/config/grub/xhci_nvme/target.cfg index d2be2d30..15e3e00e 100644 --- a/config/grub/xhci_nvme/target.cfg +++ b/config/grub/xhci_nvme/target.cfg @@ -1,4 +1,4 @@ # SPDX-License-Identifier: GPL-3.0-or-later tree="xhci_nvme" -rev="25b7f6b9344a4bac18c26ce143a156ac2bcb3ec4" +rev="eaa3b8f0f90605a82c6bfda4c5c4b73c58eb81ac" -- cgit v1.2.1