diff options
241 files changed, 526 insertions, 6403 deletions
diff --git a/config/data/coreboot/mkhelper.cfg b/config/data/coreboot/mkhelper.cfg index 485be95d..3816b373 100644 --- a/config/data/coreboot/mkhelper.cfg +++ b/config/data/coreboot/mkhelper.cfg @@ -5,22 +5,19 @@ url="https://github.com/coreboot/coreboot.git" bkup_url="https://review.coreboot.org/coreboot" makeargs="UPDATED_SUBMODULES=1 CPUS=$XBMK_THREADS" -build_depend="seabios/build grub/default memtest86plus/default" +build_depend="seabios/build grub/default memtest86plus/default coreboot/edk2_mrchromebox" seavgabiosrom="elf/seabios/default/build/libgfxinit/vgabios.bin" payload_seabios="n" payload_memtest="n" payload_grub="n" -payload_grubsea="n" initmode="" ubootelf="" grub_scan_disk="" uboot_config="" grubtree="" -grubelf="" -pname="" displaymode="" tmprom="" newrom="" @@ -33,5 +30,7 @@ mkhelper="$if_not_dry_build coreboot_pad_one_byte" postmake="$if_not_dry_build mkcorebootbin" cook_config="$if_not_dry_build cook_coreboot_config" - +# if mk_coreboot_with succeeds, this is set to "y" +# and an error is shown if it's still n at the end. +rom_prepared="n" diff --git a/config/data/grub/bootorder b/config/data/grub/bootorder deleted file mode 100644 index b33e1295..00000000 --- a/config/data/grub/bootorder +++ /dev/null @@ -1 +0,0 @@ -/rom@img/grub2 diff --git a/config/data/grub/cfg/default.config b/config/data/grub/cfg/default.config index c454965c..9060ca08 100644 --- a/config/data/grub/cfg/default.config +++ b/config/data/grub/cfg/default.config @@ -55,7 +55,7 @@ if [ -f (cbfsdisk)/timeout.cfg ]; then else set timeout=8 fi -set grub_scan_disk="ahci ata" +set grub_scan_disk="nvme ahci ata" if [ -f (cbfsdisk)/scan.cfg ]; then source (cbfsdisk)/scan.cfg fi @@ -88,11 +88,17 @@ function search_grub { for part in 1 2 3 4 5 6 7 8 9 10 11 12; do if [ "${1}" != "nvme" ]; then try_user_config "(${1}${i},${part})" + else + # TODO: do we care about other namesapces + try_user_config "(nvme${i}n1,${part})" fi done if [ "${1}" != "nvme" ]; then # raw devices e.g. (ahci0) instead of (ahci0,1) try_user_config "(${1}${i})" + else + # TODO: do we care about other namesapces + try_user_config "(nvme${i}n1)" fi done echo # Insert newline @@ -118,11 +124,17 @@ function search_isolinux { for part in 1 2 3 4 5 6 7 8 9 10 11 12; do if [ "${1}" != "nvme" ]; then try_isolinux_config "(${1}${i},${part})" + else + # TODO: see above + try_isolinux_config "(nvme${i}n1,${part})" fi done if [ "${1}" != "nvme" ]; then # raw devices e.g. (usb0) instead of (usb0,1) try_isolinux_config "(${1}${i})" + else + # TODO: do we care about other namesapces + try_isolinux_config "(nvme${i}n1)" fi done echo # Insert newline @@ -213,6 +225,9 @@ menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on AHCI [a]' --hotkey='a' menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on ATA/IDE [d]' --hotkey='d' { search_bootcfg ata } +menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on NVMe [e]' --hotkey='e' { + search_bootcfg nvme +} if [ -f (cbfsdisk)/grub.cfg ]; then menuentry 'Load configuration (grub.cfg) in CBFS [t]' --hotkey='t' { set root='(cbfsdisk)' @@ -229,18 +244,6 @@ menuentry 'Load test configuration (grubtest.cfg) inside of CBFS [t]' --hotkey= fi } fi -if [ -f (cbfsdisk)/seabios.elf ]; then -menuentry 'Load SeaBIOS [b]' --hotkey='b' { - set root='cbfsdisk' - chainloader /seabios.elf -} -fi -if [ -f (cbfsdisk)/img/grub2 ]; then -menuentry 'Return to SeaBIOS [b]' --hotkey='b' { - set root='cbfsdisk' - chainloader /fallback/payload -} -fi menuentry 'Poweroff [p]' --hotkey='p' { halt } diff --git a/config/data/grub/cfg/nvme.config b/config/data/grub/cfg/nvme.config deleted file mode 100644 index 33ce3a9a..00000000 --- a/config/data/grub/cfg/nvme.config +++ /dev/null @@ -1,300 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later -# Copyright (C) 2014-2016,2020-2021,2023-2025 Leah Rowe <leah@libreboot.org> -# Copyright (C) 2015 Klemens Nanni <contact@autoboot.org> - -set prefix=(memdisk)/boot/grub - -insmod at_keyboard -insmod usb_keyboard -insmod nativedisk -insmod ehci -insmod ohci -insmod uhci -insmod usb -insmod usbms -insmod regexp - -terminal_input --append at_keyboard -terminal_input --append usb_keyboard -terminal_output --append cbmemc - -# User interface overrides wherever "keystatus" is supported -# Keep SHIFT key pressed before powering on to disable graphics -if keystatus --shift; then - terminal_output --append vga_text -else - gfxpayload=keep - terminal_output --append gfxterm - - for dt in cbfsdisk memdisk; do - for it in png jpg; do - if [ -f (${dt})/background.${it} ]; then - insmod ${it} - background_image (${dt})/background.${it} - fi - done - done -fi - -# Keep CTRL pressed to enable default serial terminal (COM1 or the like) -if keystatus --ctrl; then - serial - terminal_input --append serial - terminal_output --append serial -fi - -# Keep ALT pressed to enable spkmodem -if keystatus --alt; then - terminal_output --append spkmodem -fi - - -set default="0" -if [ -f (cbfsdisk)/timeout.cfg ]; then - source (cbfsdisk)/timeout.cfg -else - set timeout=8 -fi -set grub_scan_disk="nvme ahci ata" -if [ -f (cbfsdisk)/scan.cfg ]; then - source (cbfsdisk)/scan.cfg -fi - -if [ -f (cbfsdisk)/keymap.gkb ]; then - keymap (cbfsdisk)/keymap.gkb -fi - -function really_try_user_config { - set root="${1}" - - if [ -f /"${2}"/grub.cfg ]; then - unset superusers - configfile /"${2}"/grub.cfg - fi -} - -function try_user_config { - # The @/... entries are for cases where the BTRFS filesystem is being used - for dir in grub boot/grub @/grub @/boot/grub grub2 boot/grub2 @/grub2 @/boot/grub2 boot @/boot; do - really_try_user_config "${1}" "${dir}" - done - for dir in ubuntu debian redhat; do - really_try_user_config "${1}" "EFI/${dir}" - done -} -function search_grub { - echo -n "Attempting to load grub.cfg from '${1}' devices" - for i in 0 1 2 3 4 5 6 7 8; do - for part in 1 2 3 4 5 6 7 8 9 10 11 12; do - if [ "${1}" != "nvme" ]; then - try_user_config "(${1}${i},${part})" - else - # TODO: do we care about other namesapces - try_user_config "(nvme${i}n1,${part})" - fi - done - if [ "${1}" != "nvme" ]; then - # raw devices e.g. (ahci0) instead of (ahci0,1) - try_user_config "(${1}${i})" - else - # TODO: do we care about other namesapces - try_user_config "(nvme${i}n1)" - fi - done - echo # Insert newline -} - -function try_isolinux_config { - set root="${1}" - for dir in '' /boot /EFI /@ /@/boot; do - if [ -f "${dir}"/isolinux/isolinux.cfg ]; then - syslinux_configfile -i "${dir}"/isolinux/isolinux.cfg - elif [ -f "${dir}"/syslinux/syslinux.cfg ]; then - syslinux_configfile -s "${dir}"/syslinux/syslinux.cfg - elif [ -f "${dir}"/syslinux/extlinux.conf ]; then - syslinux_configfile -s "${dir}"/syslinux/extlinux.conf - elif [ -f "${dir}"/extlinux/extlinux.conf ]; then - syslinux_configfile -s "${dir}"/extlinux/extlinux.conf - fi - done -} -function search_isolinux { - echo "\nAttempting to parse iso/sys/extlinux config from '${1}' devices" - for i in 0 1 2 3 4 5 6 7 8; do - for part in 1 2 3 4 5 6 7 8 9 10 11 12; do - if [ "${1}" != "nvme" ]; then - try_isolinux_config "(${1}${i},${part})" - else - # TODO: see above - try_isolinux_config "(nvme${i}n1,${part})" - fi - done - if [ "${1}" != "nvme" ]; then - # raw devices e.g. (usb0) instead of (usb0,1) - try_isolinux_config "(${1}${i})" - else - # TODO: do we care about other namesapces - try_isolinux_config "(nvme${i}n1)" - fi - done - echo # Insert newline -} -function try_bootcfg { - try_user_config "${1}" - try_isolinux_config "${1}" -} -function search_bootcfg { - search_grub "${1}" - search_isolinux "${1}" -} -menuentry 'Load Operating System (incl. fully encrypted disks) [o]' --hotkey='o' { - - for grub_disk in ${grub_scan_disk}; do - search_bootcfg ${grub_disk} - done - - # grub device enumeration is very slow, so checks are hardcoded - - raidvol="md/0 md/1 md/2 md/3 md/4 md/5 md/6 md/7 md/8 md/9" - - # in practise, doing multiple redundant checks is perfectly fast - # TODO: optimize grub itself, and use */? here for everything - - for vol in ${raidvol} ; do - try_bootcfg "${vol}" - done - - unset bootdev - for grub_disk in ${grub_scan_disk}; do - for i in 0 1 2 3 4 5 6 7 8; do - for part in 1 2 3 4 5 6 7 8 9 10 11 12; do - if [ "${grub_disk}" = "ahci" ]; then - bootdev="${bootdev} (ahci${i},${part})" - elif [ "${grub_disk}" = "ata" ]; then - bootdev="${bootdev} (ata${i},${part})" - elif [ "${grub_disk}" = "nvme" ]; then - # TODO: do we care about other namesapces - bootdev="${bootdev} (nvme${i}n1,${part})" - fi - done - done - done - - set pager=0 - echo -n "Attempting to unlock encrypted volumes" - for dev in ${bootdev} ${raidvol}; do - if cryptomount "${dev}" ; then break ; fi - done - set pager=1 - echo - - search_bootcfg crypto - - lvmvol="" - - # after cryptomount, lvm volumes might be available - # using * is slow on some machines, but we use it here, - # just once. in so doing, we find every lvm volume - for vol in (*); do - if regexp ^\\(lvm/ $vol; then - lvmvol="${lvmvol} ${vol}" - try_bootcfg "${vol}" - fi - done - - # user might have put luks inside lvm - set pager=0 - echo "Attempting to unlock encrypted LVMs" - for vol in ${lvmvol}; do - cryptomount "$vol" - done - set pager=1 - echo - - search_bootcfg crypto - - true # Prevent pager requiring to accept each line instead of whole screen -} - -menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on USB [s]' --hotkey='s' { - search_bootcfg usb -} -menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on AHCI [a]' --hotkey='a' { - search_bootcfg ahci -} -menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on ATA/IDE [d]' --hotkey='d' { - search_bootcfg ata -} -menuentry 'Search for GRUB/SYSLINUX/EXTLINUX/ISOLINUX on NVMe [e]' --hotkey='e' { - search_bootcfg nvme -} -if [ -f (cbfsdisk)/grub.cfg ]; then -menuentry 'Load configuration (grub.cfg) in CBFS [t]' --hotkey='t' { - set root='(cbfsdisk)' - if [ -f /grub.cfg ]; then - configfile /grub.cfg - fi -} -fi -if [ -f (cbfsdisk)/grubtest.cfg ]; then -menuentry 'Load test configuration (grubtest.cfg) inside of CBFS [t]' --hotkey='t' { - set root='(cbfsdisk)' - if [ -f /grubtest.cfg ]; then - configfile /grubtest.cfg - fi -} -fi -if [ -f (cbfsdisk)/seabios.elf ]; then -menuentry 'Load SeaBIOS [b]' --hotkey='b' { - set root='cbfsdisk' - chainloader /seabios.elf -} -fi -if [ -f (cbfsdisk)/img/grub2 ]; then -menuentry 'Return to SeaBIOS [b]' --hotkey='b' { - set root='cbfsdisk' - chainloader /fallback/payload -} -fi -menuentry 'Poweroff [p]' --hotkey='p' { - halt -} -menuentry 'Reboot [r]' --hotkey='r' { - reboot -} -if [ -f (cbfsdisk)/img/memtest ]; then -menuentry 'Load MemTest86+ [m]' --hotkey='m' { - set root='cbfsdisk' - chainloader /img/memtest -} -fi - -submenu 'Other [z]' --hotkey='z' { - menuentry 'Enable default serial terminal [s]' --hotkey='s' { - serial - terminal_input --append serial - terminal_output --append serial - } - - menuentry 'Disable default serial terminal' { - terminal_input --remove serial - terminal_output --remove serial - } - - menuentry 'Enable gfxterm' { - terminal_output --append gfxterm - terminal_output --remove vga_text - } - menuentry 'Disable gfxterm [g]' --hotkey='g' { - terminal_output --remove gfxterm - terminal_output --append vga_text - } - - menuentry 'Enable spkmodem [a]' --hotkey='a' { - terminal_output --append spkmodem - } - - menuentry 'Disable spkmodem [z]' --hotkey='z' { - terminal_output --remove spkmodem - } -} diff --git a/config/data/grub/cfg/xhci_nvme.config b/config/data/grub/cfg/xhci.config index dbcae070..f5d150a7 100644 --- a/config/data/grub/cfg/xhci_nvme.config +++ b/config/data/grub/cfg/xhci.config @@ -245,18 +245,6 @@ menuentry 'Load test configuration (grubtest.cfg) in CBFS [t]' --hotkey='t' { fi } fi -if [ -f (cbfsdisk)/seabios.elf ]; then -menuentry 'Load SeaBIOS [b]' --hotkey='b' { - set root='cbfsdisk' - chainloader /seabios.elf -} -fi -if [ -f (cbfsdisk)/img/grub2 ]; then -menuentry 'Return to SeaBIOS [b]' --hotkey='b' { - set root='cbfsdisk' - chainloader /fallback/payload -} -fi menuentry 'Poweroff [p]' --hotkey='p' { halt } diff --git a/config/data/grub/mkhelper.cfg b/config/data/grub/mkhelper.cfg index 9e8dee58..dca4bf3d 100644 --- a/config/data/grub/mkhelper.cfg +++ b/config/data/grub/mkhelper.cfg @@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-3.0-or-later # can be overridden per-tree -url="git://git.savannah.gnu.org/grub.git" +url="https://gitlab.freedesktop.org/gnu-grub/grub.git" bkup_url="https://codeberg.org/libreboot/grub" bootstrapargs="--gnulib-srcdir=gnulib/ --no-git" diff --git a/config/data/grub/module/default b/config/data/grub/module/default index 39030e2a..78ee52fe 100755..100644 --- a/config/data/grub/module/default +++ b/config/data/grub/module/default @@ -33,8 +33,8 @@ configfile \ cpio \ cpio_be \ crc64 \ -crypto_cipher_mode_test \ crypto \ +crypto_cipher_mode_test \ cryptodisk \ diskfilter \ echo \ @@ -42,6 +42,7 @@ ehci \ eval \ exfat \ elf \ +extcmd \ ext2 \ fat \ functional_test \ @@ -60,6 +61,7 @@ gcry_kdf \ gcry_keccak \ gcry_md4 \ gcry_md5 \ +gcry_pubkey_dilithium \ gcry_rfc2268 \ gcry_rijndael \ gcry_rmd160 \ @@ -83,6 +85,7 @@ iorw \ iso9660 \ jpeg \ json \ +key_protector \ keylayouts \ keystatus \ linux \ @@ -102,23 +105,31 @@ mdraid09 \ mdraid09_be \ mdraid1x \ memdisk \ +memmove_bench \ memrw \ +mfa \ minicmd \ mmap \ +mpi \ +mldsa_test \ multiboot \ multiboot2 \ nativedisk \ +net \ normal \ ntfs \ +nvme \ ohci \ part_bsd \ part_dfly \ part_gpt \ part_msdos \ password \ +password_argon2 \ password_pbkdf2 \ pata \ pbkdf2 \ +pci \ pcidump \ pgp \ play \ @@ -154,6 +165,7 @@ ufs2 \ usb \ usb_keyboard \ usbms \ +virtionet \ xfs \ xzio \ zfs \ diff --git a/config/data/grub/module/nvme b/config/data/grub/module/nvme deleted file mode 100755 index 4b832983..00000000 --- a/config/data/grub/module/nvme +++ /dev/null @@ -1,164 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -# Install modules (installed, but not automatically loaded) -grub_install_modules=" \ -hexdump \ -newc \ -odc \ -usbserial_common \ -usbserial_ftdi \ -usbserial_pl2303 \ -usbserial_usbdebug \ -video_colors \ -" -# Modules (and always loaded) -grub_modules=" \ -acpi \ -ahci \ -at_keyboard \ -all_video \ -ata \ -bitmap \ -bitmap_scale \ -boot \ -bsd \ -btrfs \ -cat \ -cbfs \ -cbls \ -cbmemc \ -cbtime \ -chain \ -configfile \ -cpio \ -cpio_be \ -crc64 \ -crypto_cipher_mode_test \ -crypto \ -cryptodisk \ -diskfilter \ -echo \ -ehci \ -eval \ -exfat \ -elf \ -ext2 \ -fat \ -functional_test \ -f2fs \ -gcry_arcfour \ -gcry_blake2 \ -gcry_blowfish \ -gcry_camellia \ -gcry_cast5 \ -gcry_crc \ -gcry_des \ -gcry_dsa \ -gcry_hwfeatures \ -gcry_idea \ -gcry_kdf \ -gcry_keccak \ -gcry_md4 \ -gcry_md5 \ -gcry_rfc2268 \ -gcry_rijndael \ -gcry_rmd160 \ -gcry_rsa \ -gcry_seed \ -gcry_serpent \ -gcry_sha1 \ -gcry_sha256 \ -gcry_sha512 \ -gcry_tiger \ -gcry_twofish \ -gcry_whirlpool \ -geli \ -gfxmenu \ -gfxterm_background \ -gzio \ -hashsum \ -halt \ -help \ -iorw \ -iso9660 \ -jpeg \ -json \ -keylayouts \ -keystatus \ -linux \ -linux16 \ -loadenv \ -loopback \ -ls \ -lsacpi \ -lsmmap \ -lspci \ -luks \ -luks2 \ -argon2 \ -lvm \ -lzopio \ -mdraid09 \ -mdraid09_be \ -mdraid1x \ -memdisk \ -memrw \ -minicmd \ -mmap \ -multiboot \ -multiboot2 \ -nativedisk \ -normal \ -ntfs \ -nvme \ -ohci \ -part_bsd \ -part_dfly \ -part_gpt \ -part_msdos \ -password \ -password_pbkdf2 \ -pata \ -pbkdf2 \ -pcidump \ -pgp \ -play \ -png \ -procfs \ -pubkey \ -raid5rec \ -raid6rec \ -read \ -reboot \ -regexp \ -romfs \ -scsi \ -search \ -search_fs_file \ -search_fs_uuid \ -search_label \ -serial \ -syslinuxcfg \ -setjmp \ -setpci \ -spkmodem \ -squash4 \ -sleep \ -tar \ -test \ -true \ -uhci \ -udf \ -ufs1 \ -ufs1_be \ -ufs2 \ -usb \ -usb_keyboard \ -usbms \ -xfs \ -xzio \ -zfs \ -zfscrypt \ -zfsinfo \ -zstd \ -" diff --git a/config/data/grub/module/xhci_nvme b/config/data/grub/module/xhci index 616fca40..ef0991aa 100755 --- a/config/data/grub/module/xhci_nvme +++ b/config/data/grub/module/xhci @@ -34,8 +34,8 @@ configfile \ cpio \ cpio_be \ crc64 \ -crypto_cipher_mode_test \ crypto \ +crypto_cipher_mode_test \ cryptodisk \ diskfilter \ echo \ @@ -43,6 +43,7 @@ ehci \ eval \ exfat \ elf \ +extcmd \ ext2 \ fat \ functional_test \ @@ -61,6 +62,7 @@ gcry_kdf \ gcry_keccak \ gcry_md4 \ gcry_md5 \ +gcry_pubkey_dilithium \ gcry_rfc2268 \ gcry_rijndael \ gcry_rmd160 \ @@ -84,6 +86,7 @@ iorw \ iso9660 \ jpeg \ json \ +key_protector \ keylayouts \ keystatus \ linux \ @@ -103,12 +106,17 @@ mdraid09 \ mdraid09_be \ mdraid1x \ memdisk \ +memmove_bench \ memrw \ +mfa \ minicmd \ mmap \ +mpi \ +mldsa_test \ multiboot \ multiboot2 \ nativedisk \ +net \ normal \ ntfs \ nvme \ @@ -118,15 +126,17 @@ part_dfly \ part_gpt \ part_msdos \ password \ +password_argon2 \ password_pbkdf2 \ pata \ pbkdf2 \ +pci \ pcidump \ pgp \ play \ png \ -pubkey \ procfs \ +pubkey \ raid5rec \ raid6rec \ read \ @@ -156,6 +166,7 @@ ufs2 \ usb \ usb_keyboard \ usbms \ +virtionet \ xfs \ xzio \ zfs \ diff --git a/config/module/coreboot/d510mo_16mb/target.cfg b/config/module/coreboot/d510mo_16mb/target.cfg index cbb93fc1..579fa00b 100644 --- a/config/module/coreboot/d510mo_16mb/target.cfg +++ b/config/module/coreboot/d510mo_16mb/target.cfg @@ -6,3 +6,4 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" release="n" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/dell3040micro_vfsp_16mb/target.cfg b/config/module/coreboot/dell3040micro_vfsp_16mb/target.cfg index 43dc1005..ea6a16c6 100644 --- a/config/module/coreboot/dell3040micro_vfsp_16mb/target.cfg +++ b/config/module/coreboot/dell3040micro_vfsp_16mb/target.cfg @@ -6,10 +6,10 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="3040micro" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/dell3050micro_vfsp_16mb/target.cfg b/config/module/coreboot/dell3050micro_vfsp_16mb/target.cfg index fb975404..d02a8a52 100644 --- a/config/module/coreboot/dell3050micro_vfsp_16mb/target.cfg +++ b/config/module/coreboot/dell3050micro_vfsp_16mb/target.cfg @@ -6,10 +6,10 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="3050micro" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/dell3050microsecure_vfsp_16mb/config/libgfxinit_corebootfb b/config/module/coreboot/dell3050microsecure_vfsp_16mb/config/libgfxinit_corebootfb deleted file mode 100644 index 1e9d5c02..00000000 --- a/config/module/coreboot/dell3050microsecure_vfsp_16mb/config/libgfxinit_corebootfb +++ /dev/null @@ -1,844 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# coreboot configuration -# - -# -# General setup -# -CONFIG_LOCALVERSION="" -CONFIG_CBFS_PREFIX="fallback" -CONFIG_COMPILER_GCC=y -# CONFIG_COMPILER_LLVM_CLANG is not set -# CONFIG_ANY_TOOLCHAIN is not set -# CONFIG_CCACHE is not set -# CONFIG_LTO is not set -# CONFIG_IWYU is not set -# CONFIG_FMD_GENPARSER is not set -# CONFIG_UTIL_GENPARSER is not set -# CONFIG_OPTION_BACKEND_NONE is not set -CONFIG_USE_OPTION_TABLE=y -# CONFIG_USE_CBFS_FILE_OPTION_BACKEND is not set -CONFIG_STATIC_OPTION_TABLE=y -CONFIG_COMPRESS_RAMSTAGE_LZMA=y -# CONFIG_COMPRESS_RAMSTAGE_LZ4 is not set -# CONFIG_COMPRESS_RAMSTAGE_ZSTD is not set -CONFIG_SEPARATE_ROMSTAGE=y -CONFIG_INCLUDE_CONFIG_FILE=y -CONFIG_COLLECT_TIMESTAMPS=y -# CONFIG_TIMESTAMPS_ON_CONSOLE is not set -CONFIG_USE_BLOBS=y -# CONFIG_USE_AMD_BLOBS is not set -# CONFIG_USE_QC_BLOBS is not set -# CONFIG_COVERAGE is not set -# CONFIG_UBSAN is not set -CONFIG_HAVE_ASAN_IN_RAMSTAGE=y -# CONFIG_ASAN is not set -# CONFIG_NO_STAGE_CACHE is not set -CONFIG_TSEG_STAGE_CACHE=y -# CONFIG_UPDATE_IMAGE is not set -# CONFIG_BOOTSPLASH_IMAGE is not set - -# -# Software Bill Of Materials (SBOM) -# -# CONFIG_SBOM is not set -# end of Software Bill Of Materials (SBOM) -# end of General setup - -# -# Mainboard -# - -# -# Important: Run 'make distclean' before switching boards -# -# CONFIG_VENDOR_51NB is not set -# CONFIG_VENDOR_ACER is not set -# CONFIG_VENDOR_AMD is not set -# CONFIG_VENDOR_AOOSTAR is not set -# CONFIG_VENDOR_AOPEN is not set -# CONFIG_VENDOR_APPLE is not set -# CONFIG_VENDOR_ARM is not set -# CONFIG_VENDOR_ASROCK is not set -# CONFIG_VENDOR_ASUS is not set -# CONFIG_VENDOR_BIOSTAR is not set -# CONFIG_VENDOR_BOSTENTECH is not set -# CONFIG_VENDOR_BYTEDANCE is not set -# CONFIG_VENDOR_CAVIUM is not set -# CONFIG_VENDOR_CLEVO is not set -# CONFIG_VENDOR_COMPULAB is not set -# CONFIG_VENDOR_CWWK is not set -CONFIG_VENDOR_DELL=y -# CONFIG_VENDOR_EMULATION is not set -# CONFIG_VENDOR_ERYING is not set -# CONFIG_VENDOR_EXAMPLE is not set -# CONFIG_VENDOR_FACEBOOK is not set -# CONFIG_VENDOR_FOXCONN is not set -# CONFIG_VENDOR_FRAMEWORK is not set -# CONFIG_VENDOR_GETAC is not set -# CONFIG_VENDOR_GIGABYTE is not set -# CONFIG_VENDOR_GOOGLE is not set -# CONFIG_VENDOR_HARDKERNEL is not set -# CONFIG_VENDOR_HP is not set -# CONFIG_VENDOR_IBASE is not set -# CONFIG_VENDOR_IBM is not set -# CONFIG_VENDOR_INTEL is not set -# CONFIG_VENDOR_INVENTEC is not set -# CONFIG_VENDOR_KONTRON is not set -# CONFIG_VENDOR_LATTEPANDA is not set -# CONFIG_VENDOR_LENOVO is not set -# CONFIG_VENDOR_LIBRETREND is not set -# CONFIG_VENDOR_MITAC_COMPUTING is not set -# CONFIG_VENDOR_MSI is not set -# CONFIG_VENDOR_NOVACUSTOM is not set -# CONFIG_VENDOR_NVIDIA is not set -# CONFIG_VENDOR_OCP is not set -# CONFIG_VENDOR_OPENCELLULAR is not set -# CONFIG_VENDOR_PACKARDBELL is not set -# CONFIG_VENDOR_PCENGINES is not set -# CONFIG_VENDOR_PINE64 is not set -# CONFIG_VENDOR_PORTWELL is not set -# CONFIG_VENDOR_PRODRIVE is not set -# CONFIG_VENDOR_PROTECTLI is not set -# CONFIG_VENDOR_PURISM is not set -# CONFIG_VENDOR_QOTOM is not set -# CONFIG_VENDOR_RAPTOR_CS is not set -# CONFIG_VENDOR_RAZER is not set -# CONFIG_VENDOR_RODA is not set -# CONFIG_VENDOR_SAMSUNG is not set -# CONFIG_VENDOR_SAPPHIRE is not set -# CONFIG_VENDOR_SIEMENS is not set -# CONFIG_VENDOR_SIFIVE is not set -# CONFIG_VENDOR_STARLABS is not set -# CONFIG_VENDOR_SUPERMICRO is not set -# CONFIG_VENDOR_SYSTEM76 is not set -# CONFIG_VENDOR_TI is not set -# CONFIG_VENDOR_TOPTON is not set -# CONFIG_VENDOR_UP is not set -# CONFIG_VENDOR_VIA is not set -CONFIG_MAINBOARD_PART_NUMBER="OptiPlex 3050 Micro" -CONFIG_MAINBOARD_VERSION="1.0" -CONFIG_MAINBOARD_DIR="dell/sklkbl_desktops" -CONFIG_VGA_BIOS_ID="8086,0406" -CONFIG_DIMM_MAX=4 -CONFIG_DIMM_SPD_SIZE=512 -CONFIG_FMDFILE="" -# CONFIG_NO_POST is not set -CONFIG_MAINBOARD_VENDOR="Dell Inc." -CONFIG_CBFS_SIZE=0xEEE000 -# CONFIG_CONSOLE_SERIAL is not set -CONFIG_LINEAR_FRAMEBUFFER_MAX_HEIGHT=2160 -CONFIG_LINEAR_FRAMEBUFFER_MAX_WIDTH=3840 -CONFIG_MAX_CPUS=16 -CONFIG_ME_CLEANER_ARGS="-S --whitelist MFS" -# CONFIG_ONBOARD_VGA_IS_PRIMARY is not set -CONFIG_POST_DEVICE=y -CONFIG_POST_IO=y -CONFIG_VARIANT_DIR="optiplex_3050" -CONFIG_OVERRIDE_DEVICETREE="variants/$(CONFIG_VARIANT_DIR)/overridetree.cb" -CONFIG_INTEL_GMA_VBT_FILE="src/mainboard/$(MAINBOARDDIR)/variants/$(CONFIG_VARIANT_DIR)/data.vbt" -CONFIG_DEVICETREE="devicetree.cb" -# CONFIG_VBOOT is not set -# CONFIG_VGA_BIOS is not set -CONFIG_PCIEXP_ASPM=y -CONFIG_PCIEXP_L1_SUB_STATE=y -CONFIG_PCIEXP_CLK_PM=y -CONFIG_MAINBOARD_SMBIOS_MANUFACTURER="Dell Inc." -CONFIG_ECAM_MMCONF_BASE_ADDRESS=0xe0000000 -CONFIG_ECAM_MMCONF_BUS_NUMBER=256 -CONFIG_MEMLAYOUT_LD_FILE="src/arch/x86/memlayout.ld" -# CONFIG_FATAL_ASSERTS is not set -# CONFIG_DISABLE_HECI1_AT_PRE_BOOT is not set -CONFIG_PRERAM_CBMEM_CONSOLE_SIZE=0xc00 -CONFIG_MAINBOARD_SMBIOS_PRODUCT_NAME="OptiPlex 3050 Micro" -# CONFIG_CONSOLE_POST is not set -CONFIG_FSP_FD_PATH="3rdparty/fsp/KabylakeFspBinPkg/Fsp.fd" -CONFIG_MAX_SOCKET=1 -CONFIG_CMOS_DEFAULT_FILE="src/mainboard/$(MAINBOARDDIR)/cmos.default" -CONFIG_CMOS_LAYOUT_FILE="src/mainboard/$(MAINBOARDDIR)/cmos.layout" -CONFIG_USE_PM_ACPI_TIMER=y -CONFIG_BOOT_DEVICE_SPI_FLASH_BUS=0 -# CONFIG_BOARD_DELL_E4300 is not set -# CONFIG_BOARD_DELL_E6400 is not set -# CONFIG_BOARD_DELL_LATITUDE_E7240 is not set -# CONFIG_BOARD_DELL_OPTIPLEX_3040 is not set -# CONFIG_BOARD_DELL_OPTIPLEX_780_MT is not set -# CONFIG_BOARD_DELL_OPTIPLEX_780_USFF is not set -# CONFIG_BOARD_DELL_OPTIPLEX_9020_SFF is not set -# CONFIG_BOARD_DELL_OPTIPLEX_9020_MT is not set -CONFIG_BOARD_DELL_OPTIPLEX_3050=y -# CONFIG_BOARD_DELL_LATITUDE_E5420 is not set -# CONFIG_BOARD_DELL_LATITUDE_E5520 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6220 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6320 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6420 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6520 is not set -# CONFIG_BOARD_DELL_LATITUDE_E5530 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6230 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6330 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6430 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6530 is not set -# CONFIG_BOARD_DELL_OPTIPLEX_9010 is not set -# CONFIG_BOARD_DELL_PRECISION_T1650 is not set -# CONFIG_BOARD_DELL_XPS_8300 is not set -CONFIG_BOARD_DELL_SKLKBL_DESKTOPS_COMMON=y -CONFIG_DCACHE_RAM_BASE=0xfef00000 -CONFIG_DCACHE_RAM_SIZE=0x40000 -CONFIG_C_ENV_BOOTBLOCK_SIZE=0x40000 -CONFIG_DCACHE_BSP_STACK_SIZE=0x4000 -CONFIG_MAX_ACPI_TABLE_SIZE_KB=144 -CONFIG_HAVE_INTEL_FIRMWARE=y -CONFIG_MRC_SETTINGS_CACHE_SIZE=0x10000 -CONFIG_DRIVERS_INTEL_WIFI=y -CONFIG_IFD_BIN_PATH="../../../config/ifd/3050micro/ifd" -CONFIG_ME_BIN_PATH="../../../vendorfiles/3050micro/me.bin" -CONFIG_MAINBOARD_SUPPORTS_SKYLAKE_CPU=y -CONFIG_D3COLD_SUPPORT=y -CONFIG_RAMSTAGE_CBFS_CACHE_SIZE=0x4000 -CONFIG_MAINBOARD_SERIAL_NUMBER="123456789" -CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 -CONFIG_SYSTEM_SMBIOS_MANUFACTURER="Dell Inc." -# CONFIG_INTEL_OC_MAILBOX_ENABLE_UNDERVOLTING is not set -CONFIG_PLATFORM_POST_RENDER_DELAY_SEC=5 -CONFIG_CARDBUS_PLUGIN_SUPPORT=y -CONFIG_SPI_FLASH_DONT_INCLUDE_ALL_DRIVERS=y -CONFIG_USE_LEGACY_8254_TIMER=y -# CONFIG_DEBUG_SMI is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_SGX_ENABLE is not set -CONFIG_HAVE_IFD_BIN=y -CONFIG_PS2K_EISAID="PNP0303" -CONFIG_PS2M_EISAID="PNP0F13" -CONFIG_GFX_GMA_PANEL_1_PORT="eDP" -# CONFIG_SOC_INTEL_CSE_SEND_EOP_EARLY is not set -CONFIG_POWER_STATE_DEFAULT_ON_AFTER_FAILURE=y -CONFIG_GFX_GMA_PANEL_1_ON_EDP=y -CONFIG_DRIVERS_UART_8250IO=y -CONFIG_PC_CMOS_BASE_PORT_BANK1=0x72 -CONFIG_HEAP_SIZE=0x100000 -# CONFIG_BOOTMEDIA_SMM_BWP is not set -# CONFIG_BOOTMEDIA_SMM_BWP_RUNTIME_OPTION is not set -CONFIG_USE_PC_CMOS_ALTCENTURY=y -# CONFIG_DRIVERS_EFI_FW_INFO is not set -# CONFIG_TCG_OPAL_S3_UNLOCK is not set -CONFIG_BOARD_ROMSIZE_KB_16384=y -# CONFIG_COREBOOT_ROMSIZE_KB_256 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_512 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_1024 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_2048 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_4096 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_5120 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_6144 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_8192 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_10240 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_12288 is not set -CONFIG_COREBOOT_ROMSIZE_KB_16384=y -# CONFIG_COREBOOT_ROMSIZE_KB_24576 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_32768 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_65536 is not set -CONFIG_COREBOOT_ROMSIZE_KB=16384 -CONFIG_ROM_SIZE=0x01000000 -CONFIG_HAVE_POWER_STATE_AFTER_FAILURE=y -CONFIG_HAVE_POWER_STATE_PREVIOUS_AFTER_FAILURE=y -# CONFIG_POWER_STATE_OFF_AFTER_FAILURE is not set -CONFIG_POWER_STATE_ON_AFTER_FAILURE=y -# CONFIG_POWER_STATE_PREVIOUS_AFTER_FAILURE is not set -CONFIG_MAINBOARD_POWER_FAILURE_STATE=1 -# end of Mainboard - -# -# Chipset -# - -# -# SoC -# -CONFIG_CHIPSET_DEVICETREE="soc/intel/skylake/chipset.cb" -CONFIG_FSP_HEADER_PATH="3rdparty/fsp/KabylakeFspBinPkg/Include/" -CONFIG_FSP_M_FILE="../../../vendorfiles/kabylake/Fsp_M.fd" -CONFIG_FSP_S_FILE="../../../vendorfiles/kabylake/Fsp_S.fd" -CONFIG_CBFS_MCACHE_SIZE=0x4000 -CONFIG_ROMSTAGE_ADDR=0x2000000 -CONFIG_VERSTAGE_ADDR=0x2000000 -CONFIG_SMM_TSEG_SIZE=0x800000 -CONFIG_SMM_RESERVED_SIZE=0x200000 -CONFIG_SMM_MODULE_STACK_SIZE=0x800 -CONFIG_ACPI_BERT_SIZE=0x0 -CONFIG_DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ=120 -CONFIG_CPU_PT_ROM_MAP_GB=512 -CONFIG_PRERAM_CBFS_CACHE_SIZE=0x4000 -CONFIG_DOMAIN_RESOURCE_32BIT_LIMIT=0xe0000000 -CONFIG_ACPI_CPU_STRING="CP%02X" -CONFIG_STACK_SIZE=0x2000 -CONFIG_IFD_CHIPSET="sklkbl" -CONFIG_IED_REGION_SIZE=0x400000 -CONFIG_MAX_ROOT_PORTS=24 -CONFIG_PCR_BASE_ADDRESS=0xfd000000 -CONFIG_CPU_BCLK_MHZ=100 -CONFIG_SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ=120 -CONFIG_CPU_XTAL_HZ=24000000 -CONFIG_SOC_INTEL_COMMON_BLOCK_GSPI_MAX=2 -CONFIG_SOC_INTEL_I2C_DEV_MAX=6 -# CONFIG_ENABLE_SATA_TEST_MODE is not set -CONFIG_SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL=0x30 -CONFIG_SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL=0xc35 -CONFIG_SOC_INTEL_COMMON_DEBUG_CONSENT=0 -CONFIG_INTEL_GMA_BCLV_OFFSET=0xc8254 -CONFIG_INTEL_GMA_BCLV_WIDTH=16 -CONFIG_INTEL_GMA_BCLM_OFFSET=0xc8256 -CONFIG_INTEL_GMA_BCLM_WIDTH=16 -CONFIG_FSP_PUBLISH_MBP_HOB=y -CONFIG_FSP_STATUS_GLOBAL_RESET=0x40000003 -CONFIG_SOC_HAS_MSR_VR_CURRENT_CONFIG=y -CONFIG_MAX_HECI_DEVICES=5 -CONFIG_BOOTBLOCK_IN_CBFS=y -CONFIG_HAVE_PAM0_REGISTER=y -CONFIG_INTEL_TXT_BIOSACM_ALIGNMENT=0x40000 -CONFIG_CPU_INTEL_NUM_FIT_ENTRIES=10 -CONFIG_SOC_INTEL_GFX_FRAMEBUFFER_OFFSET=0x0 -CONFIG_PCIE_LTR_MAX_SNOOP_LATENCY=0x1003 -CONFIG_PCIE_LTR_MAX_NO_SNOOP_LATENCY=0x1003 -CONFIG_SOC_PHYSICAL_ADDRESS_WIDTH=0 -CONFIG_CBFS_CACHE_ALIGN=8 -CONFIG_SOC_INTEL_COMMON_SKYLAKE_BASE=y -CONFIG_SOC_INTEL_KABYLAKE=y -CONFIG_SKYLAKE_SOC_PCH_H=y -CONFIG_MAINBOARD_SUPPORTS_KABYLAKE_CPU=y -CONFIG_MAINBOARD_SUPPORTS_COFFEELAKE_CPU=y -# CONFIG_ALWAYS_ALLOW_ABOVE_4G_ALLOCATION is not set -CONFIG_FSP_T_LOCATION=0xfffe0000 -CONFIG_SOC_INTEL_COMMON_BLOCK_P2SB=y -CONFIG_FIXED_SMBUS_IO_BASE=0xefa0 -CONFIG_UART_BITBANG_TX_DELAY_MS=5 -CONFIG_SOC_INTEL_COMMON=y - -# -# Intel SoC Common Code for IP blocks -# -CONFIG_SOC_INTEL_COMMON_BLOCK=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_GPIO=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_LPIT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_PEP=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_CPPC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CPU=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CPU_MPINIT=y -CONFIG_USE_FSP_FEATURE_PROGRAM_ON_APS=y -# CONFIG_USE_COREBOOT_MP_INIT is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CAR=y -CONFIG_INTEL_CAR_NEM_ENHANCED=y -# CONFIG_USE_INTEL_FSP_MP_INIT is not set -CONFIG_CPU_SUPPORTS_PM_TIMER_EMULATION=y -CONFIG_HAVE_HYPERTHREADING=y -# CONFIG_FSP_HYPERTHREADING is not set -# CONFIG_INTEL_KEYLOCKER is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_MAX is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_256MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_128MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_64MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_32MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_16MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_8MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_4MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_2MB is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_0MB=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CSE=y -CONFIG_SOC_INTEL_COMMON_BLOCK_HECI1_DISABLE_USING_PCR=y -CONFIG_SOC_INTEL_CSE_FMAP_NAME="SI_ME" -CONFIG_SOC_INTEL_CSE_RW_CBFS_NAME="me_rw" -CONFIG_SOC_INTEL_CSE_RW_VERSION_CBFS_NAME="me_rw.version" -CONFIG_SOC_INTEL_CSE_RW_FILE="" -CONFIG_SOC_INTEL_CSE_RW_VERSION_FILE="" -CONFIG_SOC_INTEL_CSE_RW_VERSION="" -CONFIG_SOC_INTEL_CSE_IOM_CBFS_NAME="cse_iom" -CONFIG_SOC_INTEL_CSE_IOM_CBFS_FILE="" -CONFIG_SOC_INTEL_CSE_NPHY_CBFS_NAME="cse_nphy" -CONFIG_SOC_INTEL_CSE_NPHY_CBFS_FILE="" -CONFIG_CSE_RESET_CLEAR_EC_AP_IDLE_FLAG=y -CONFIG_SOC_INTEL_COMMON_BLOCK_DSP=y -CONFIG_SOC_INTEL_COMMON_BLOCK_FAST_SPI=y -CONFIG_FAST_SPI_DISABLE_WRITE_STATUS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO_ITSS_POL_CFG=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO_PADCFG_PADTOL=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPMR=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GRAPHICS=y -CONFIG_SOC_INTEL_GFX_HAVE_DDI_A_BIFURCATION=y -# CONFIG_SOC_INTEL_DISABLE_IGD is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_GSPI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_HDA=y -CONFIG_SOC_INTEL_COMMON_BLOCK_HDA_VERB=y -CONFIG_SOC_INTEL_COMMON_BLOCK_I2C=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ITSS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_LPC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_LPC_MIRROR_TO_GPMR=y -CONFIG_SOC_INTEL_COMMON_BLOCK_LPSS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_BASE_P2SB=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PCIE=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PCR=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PMC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PMC_DISCOVERABLE=y -CONFIG_PMC_GLOBAL_RESET_ENABLE_LOCK=y -CONFIG_SOC_INTEL_COMMON_BLOCK_POWER_LIMIT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_RTC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SATA=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SCS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SGX=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SGX_LOCK_MEMORY=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMBUS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_TCO=y -CONFIG_SOC_INTEL_COMMON_BLOCK_TCO_ENABLE_THROUGH_SMBUS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_HAS_WADT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP=y -# CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_TCO_ENABLE is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_S5_DELAY_MS=0 -CONFIG_SOC_INTEL_COMMON_BLOCK_SPI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SA=y -CONFIG_SA_ENABLE_DPR=y -CONFIG_HAVE_CAPID_A_REGISTER=y -CONFIG_HAVE_BDSM_BGSM_REGISTER=y -CONFIG_SOC_INTEL_COMMON_BLOCK_THERMAL=y -CONFIG_SOC_INTEL_COMMON_BLOCK_THERMAL_PCI_DEV=y -CONFIG_SOC_INTEL_COMMON_BLOCK_TIMER=y -CONFIG_SOC_INTEL_COMMON_BLOCK_UART=y -CONFIG_SOC_INTEL_COMMON_BLOCK_XDCI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_XHCI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_XHCI_ELOG=y - -# -# Intel SoC Common Code for features -# -CONFIG_SOC_INTEL_COMMON_FEATURE=y -CONFIG_SOC_INTEL_COMMON_FEATURE_GSPI_DEVFN=y -CONFIG_SOC_INTEL_COMMON_FEATURE_I2C_DEVFN=y -CONFIG_SOC_INTEL_COMMON_FEATURE_UART_DEVICES=y - -# -# Intel SoC Common PCH Code -# -CONFIG_SOC_INTEL_COMMON_PCH_CLIENT=y -CONFIG_SOC_INTEL_COMMON_PCH_BASE=y -CONFIG_SOC_INTEL_COMMON_PCH_LOCKDOWN=y -CONFIG_PCH_SPECIFIC_BASE_OPTIONS=y -CONFIG_PCH_SPECIFIC_DISCRETE_OPTIONS=y -CONFIG_PCH_SPECIFIC_CLIENT_OPTIONS=y - -# -# Intel SoC Common coreboot stages and non-IP blocks -# -CONFIG_SOC_INTEL_COMMON_BASECODE=y -CONFIG_SOC_INTEL_COMMON_RESET=y -CONFIG_SOC_INTEL_COMMON_ACPI_WAKE_SOURCE=y -CONFIG_PAVP=y -# CONFIG_MMA is not set -CONFIG_SOC_INTEL_COMMON_NHLT=y -# CONFIG_SOC_INTEL_DEBUG_CONSENT is not set - -# -# CPU -# -CONFIG_CPU_INTEL_FIRMWARE_INTERFACE_TABLE=y -CONFIG_CPU_INTEL_COMMON=y -CONFIG_ENABLE_VMX=y -CONFIG_SET_IA32_FC_LOCK_BIT=y -CONFIG_SET_MSR_AESNI_LOCK_BIT=y -CONFIG_CPU_INTEL_COMMON_SMM=y -CONFIG_PARALLEL_MP=y -CONFIG_PARALLEL_MP_AP_WORK=y -CONFIG_XAPIC_ONLY=y -# CONFIG_X2APIC_ONLY is not set -# CONFIG_X2APIC_RUNTIME is not set -# CONFIG_X2APIC_LATE_WORKAROUND is not set -CONFIG_UDELAY_TSC=y -CONFIG_TSC_MONOTONIC_TIMER=y -CONFIG_TSC_SYNC_MFENCE=y -CONFIG_HAVE_SMI_HANDLER=y -CONFIG_SMM_TSEG=y -CONFIG_SMM_OPAL_S3_STATE_SMRAM_SIZE=0x0 -CONFIG_SMM_PCI_RESOURCE_STORE_NUM_SLOTS=8 -CONFIG_AP_STACK_SIZE=0x800 -CONFIG_SMP=y -CONFIG_SSE=y -CONFIG_SSE2=y -CONFIG_SUPPORT_CPU_UCODE_IN_CBFS=y -CONFIG_USE_CPU_MICROCODE_CBFS_BINS=y -CONFIG_CPU_MICROCODE_CBFS_DEFAULT_BINS=y -# CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS is not set -# CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_HEADER is not set -# CONFIG_CPU_MICROCODE_CBFS_NONE is not set - -# -# Northbridge -# - -# -# Southbridge -# -# CONFIG_PCIEXP_HOTPLUG is not set -CONFIG_INTEL_DESCRIPTOR_MODE_REQUIRED=y -CONFIG_PCIEXP_COMMON_CLOCK=y -CONFIG_SOUTHBRIDGE_INTEL_COMMON_SMBUS=y -CONFIG_HAVE_INSMM_STS=y -CONFIG_INTEL_DESCRIPTOR_MODE_CAPABLE=y -# CONFIG_VALIDATE_INTEL_DESCRIPTOR is not set -CONFIG_FIXED_RCBA_MMIO_BASE=0xfed1c000 -CONFIG_RCBA_LENGTH=0x4000 - -# -# Super I/O -# -CONFIG_SUPERIO_SMSC_SCH555x=y - -# -# Embedded Controllers -# - -# -# Intel Firmware -# -CONFIG_HAVE_ME_BIN=y -# CONFIG_STITCH_ME_BIN is not set -# CONFIG_CHECK_ME is not set -# CONFIG_ME_REGION_ALLOW_CPU_READ_ACCESS is not set -# CONFIG_USE_ME_CLEANER is not set -# CONFIG_DO_NOT_TOUCH_DESCRIPTOR_REGION is not set -# CONFIG_LOCK_MANAGEMENT_ENGINE is not set -CONFIG_UNLOCK_FLASH_REGIONS=y -CONFIG_ACPI_FNKEY_GEN_SCANCODE=0 -CONFIG_UDK_BASE=y -CONFIG_UDK_2017_BINDING=y -CONFIG_UDK_2013_VERSION=2013 -CONFIG_UDK_2017_VERSION=2017 -CONFIG_UDK_202005_VERSION=202005 -CONFIG_UDK_202111_VERSION=202111 -CONFIG_UDK_202302_VERSION=202302 -CONFIG_UDK_202305_VERSION=202305 -CONFIG_UDK_VERSION=2017 -CONFIG_ARCH_X86=y -CONFIG_ARCH_BOOTBLOCK_X86_32=y -CONFIG_ARCH_VERSTAGE_X86_32=y -CONFIG_ARCH_ROMSTAGE_X86_32=y -CONFIG_ARCH_POSTCAR_X86_32=y -CONFIG_ARCH_RAMSTAGE_X86_32=y -CONFIG_ARCH_SMM_X86_32=y -CONFIG_ARCH_ALL_STAGES_X86_32=y -CONFIG_RESERVED_PHYSICAL_ADDRESS_BITS_SUPPORT=y -CONFIG_X86_TOP4G_BOOTMEDIA_MAP=y -CONFIG_POSTRAM_CBFS_CACHE_IN_BSS=y -CONFIG_PC80_SYSTEM=y -CONFIG_HAVE_CMOS_DEFAULT=y -CONFIG_POSTCAR_STAGE=y -CONFIG_BOOTBLOCK_SIMPLE=y -# CONFIG_BOOTBLOCK_NORMAL is not set -CONFIG_COLLECT_TIMESTAMPS_TSC=y -CONFIG_HAVE_CF9_RESET=y -CONFIG_DEBUG_HW_BREAKPOINTS=y -CONFIG_DEBUG_NULL_DEREF_BREAKPOINTS=y -# CONFIG_DUMP_SMBIOS_TYPE17 is not set -CONFIG_X86_BOOTBLOCK_EXTRA_PROGRAM_SZ=0 -CONFIG_DEFAULT_EBDA_LOWMEM=0x100000 -CONFIG_DEFAULT_EBDA_SEGMENT=0xF600 -CONFIG_DEFAULT_EBDA_SIZE=0x400 -CONFIG_IOAPIC=y -# CONFIG_ASYNC_FILE_LOADING_CACHE is not set -# end of Chipset - -# -# Devices -# -CONFIG_HAVE_VGA_TEXT_FRAMEBUFFER=y -CONFIG_HAVE_LINEAR_FRAMEBUFFER=y -CONFIG_HAVE_FSP_GOP=y -CONFIG_MAINBOARD_HAS_LIBGFXINIT=y -CONFIG_MAINBOARD_USE_LIBGFXINIT=y -# CONFIG_VGA_ROM_RUN is not set -# CONFIG_RUN_FSP_GOP is not set -# CONFIG_NO_GFX_INIT is not set -CONFIG_NO_EARLY_GFX_INIT=y -CONFIG_ON_DEVICE_ROM_LOAD=y - -# -# Display -# -# CONFIG_VGA_TEXT_FRAMEBUFFER is not set -CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y -CONFIG_LINEAR_FRAMEBUFFER=y -# CONFIG_BOOTSPLASH is not set -CONFIG_DEFAULT_SCREEN_ROTATION_NONE=y -# CONFIG_DEFAULT_SCREEN_ROTATION_90 is not set -# CONFIG_DEFAULT_SCREEN_ROTATION_180 is not set -# CONFIG_DEFAULT_SCREEN_ROTATION_270 is not set -CONFIG_DEFAULT_SCREEN_ROTATION_INT=0 -# end of Display - -CONFIG_PCI=y -CONFIG_ECAM_MMCONF_SUPPORT=y -CONFIG_PCIX_PLUGIN_SUPPORT=y -CONFIG_AZALIA_HDA_CODEC_SUPPORT=y -CONFIG_AZALIA_USE_LEGACY_VERB_TABLE=y -CONFIG_PCIEXP_PLUGIN_SUPPORT=y -CONFIG_ECAM_MMCONF_LENGTH=0x10000000 -CONFIG_PCI_ALLOW_BUS_MASTER=y -CONFIG_PCI_SET_BUS_MASTER_PCI_BRIDGES=y -CONFIG_PCI_ALLOW_BUS_MASTER_ANY_DEVICE=y -# CONFIG_PCIEXP_SUPPORT_RESIZABLE_BARS is not set -# CONFIG_PCIEXP_LANE_ERR_STAT_CLEAR is not set -# CONFIG_EARLY_PCI_BRIDGE is not set -CONFIG_SUBSYSTEM_VENDOR_ID=0x0000 -CONFIG_SUBSYSTEM_DEVICE_ID=0x0000 -CONFIG_INTEL_GMA_HAVE_VBT=y -CONFIG_INTEL_GMA_ADD_VBT=y -# CONFIG_SOFTWARE_I2C is not set -CONFIG_I2C_TRANSFER_TIMEOUT_US=500000 -CONFIG_RESOURCE_ALLOCATION_TOP_DOWN=y -CONFIG_DRAM_SUPPORT_DDR4=y -CONFIG_DRAM_SUPPORT_DDR3=y -# end of Devices - -# -# Generic Drivers -# -CONFIG_CRB_TPM_BASE_ADDRESS=0xfed40000 -# CONFIG_DRIVERS_EFI_VARIABLE_STORE is not set -# CONFIG_ELOG is not set -# CONFIG_DRIVERS_HWID_DMI is not set -CONFIG_CACHE_MRC_SETTINGS=y -CONFIG_MRC_SETTINGS_PROTECT=y -# CONFIG_DRIVERS_OPTION_CFR is not set -# CONFIG_SELF_TEST is not set -# CONFIG_SMMSTORE is not set -CONFIG_SPI_FLASH=y -CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP=y -CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY=y -# CONFIG_SPI_FLASH_NO_FAST_READ is not set -CONFIG_DRIVERS_UART=y -# CONFIG_DRIVERS_UART_OXPCIE is not set -# CONFIG_VPD is not set -# CONFIG_DRIVERS_EMULATION_QEMU_FW_CFG is not set -# CONFIG_DRIVERS_GENERIC_CBFS_SERIAL is not set -# CONFIG_DRIVERS_GENERIC_CBFS_UUID is not set -# CONFIG_DRIVERS_GENESYSLOGIC_GL9750 is not set -# CONFIG_DRIVERS_GENESYSLOGIC_GL9755 is not set -# CONFIG_DRIVERS_GENESYSLOGIC_GL9763E is not set -CONFIG_DRIVERS_I2C_DESIGNWARE=y -# CONFIG_DRIVERS_I2C_MAX98396 is not set -# CONFIG_FSP_USE_REPO is not set -# CONFIG_DISPLAY_HOBS is not set -# CONFIG_DISPLAY_UPD_DATA is not set -CONFIG_PLATFORM_USES_FSP2_0=y -CONFIG_PLATFORM_USES_FSP2_X86_32=y -CONFIG_HAVE_INTEL_FSP_REPO=y -CONFIG_ADD_FSP_BINARIES=y -CONFIG_FSP_S_CBFS="fsps.bin" -CONFIG_FSP_M_CBFS="fspm.bin" -# CONFIG_FSP_FULL_FD is not set -CONFIG_FSP_T_RESERVED_SIZE=0x0 -CONFIG_FSP_M_XIP=y -CONFIG_SOC_INTEL_COMMON_FSP_RESET=y -CONFIG_USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM=y -CONFIG_USE_FSP_NOTIFY_PHASE_READY_TO_BOOT=y -CONFIG_USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE=y -# CONFIG_DISPLAY_FSP_TIMESTAMPS is not set -# CONFIG_BUILDING_WITH_DEBUG_FSP is not set -CONFIG_FSP_VGA_MODE12_BPP=0x0 -CONFIG_INTEL_GMA_ACPI=y -CONFIG_VBT_CBFS_COMPRESSION_LZMA=y -# CONFIG_VBT_CBFS_COMPRESSION_LZ4 is not set -# CONFIG_VBT_CBFS_COMPRESSION_NONE is not set -CONFIG_VBT_CBFS_COMPRESSION_ALGORITHM="lzma" -CONFIG_GFX_GMA=y -CONFIG_GFX_GMA_DYN_CPU=y -CONFIG_GFX_GMA_GENERATION="Skylake" -CONFIG_GFX_GMA_PCH="Sunrise_Point" -CONFIG_GFX_GMA_PANEL_2_PORT="Disabled" -CONFIG_GFX_GMA_ANALOG_I2C_PORT="PCH_DAC" -CONFIG_DRIVERS_INTEL_OC_MAILBOX=y -# CONFIG_DRIVERS_NXP_UWB_SR1XX is not set -# CONFIG_DRIVERS_PS2_KEYBOARD is not set -CONFIG_DRIVERS_MC146818=y -CONFIG_PC_CMOS_BASE_PORT_BANK0=0x70 -# CONFIG_DRIVERS_SIL_3114 is not set -CONFIG_DRIVERS_USB_ACPI=y -CONFIG_DRIVERS_WIFI_GENERIC=y -CONFIG_DRIVERS_MTK_WIFI=y -# end of Generic Drivers - -# -# Security -# - -# -# CBFS verification -# -# CONFIG_CBFS_VERIFICATION is not set -# end of CBFS verification - -# -# Verified Boot (vboot) -# -# end of Verified Boot (vboot) - -# -# Trusted Platform Module -# -CONFIG_NO_TPM=y -CONFIG_PCR_BOOT_MODE=1 -CONFIG_PCR_HWID=1 -CONFIG_PCR_SRTM=2 -CONFIG_PCR_FW_VER=10 -CONFIG_PCR_RUNTIME_DATA=3 -# end of Trusted Platform Module - -# -# TCG storage -# -# end of TCG storage - -# -# Memory initialization -# -CONFIG_PLATFORM_HAS_DRAM_CLEAR=y -# CONFIG_SECURITY_CLEAR_DRAM_ON_REGULAR_BOOT is not set -# end of Memory initialization - -# CONFIG_STM is not set -# CONFIG_INTEL_CBNT_SUPPORT is not set -# CONFIG_BOOTMEDIA_LOCK_NONE is not set -CONFIG_BOOTMEDIA_LOCK_CONTROLLER=y -# CONFIG_BOOTMEDIA_LOCK_CHIP is not set -CONFIG_BOOTMEDIA_LOCK_WHOLE_RO=y -# CONFIG_BOOTMEDIA_LOCK_WHOLE_NO_ACCESS is not set -# end of Security - -CONFIG_ACPI_HAVE_PCAT_8259=y -CONFIG_ACPI_INTEL_HARDWARE_SLEEP_VALUES=y -CONFIG_ACPI_SOC_NVS=y -CONFIG_ACPI_CUSTOM_MADT=y -CONFIG_ACPI_NO_CUSTOM_MADT=y -CONFIG_ACPI_COMMON_MADT_LAPIC=y -CONFIG_ACPI_COMMON_MADT_IOAPIC=y -CONFIG_HAVE_ACPI_TABLES=y -CONFIG_ACPI_LPIT=y -CONFIG_BOOT_DEVICE_SPI_FLASH=y -CONFIG_BOOT_DEVICE_MEMORY_MAPPED=y -CONFIG_BOOT_DEVICE_SUPPORTS_WRITES=y -CONFIG_RTC=y - -# -# Console -# -CONFIG_BOOTBLOCK_CONSOLE=y -CONFIG_POSTCAR_CONSOLE=y -CONFIG_SQUELCH_EARLY_SMP=y -# CONFIG_SPKMODEM is not set -# CONFIG_CONSOLE_NE2K is not set -CONFIG_CONSOLE_CBMEM=y -# CONFIG_CONSOLE_CBMEM_DUMP_TO_UART is not set -# CONFIG_CONSOLE_SPI_FLASH is not set -# CONFIG_CONSOLE_I2C_SMBUS is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_8 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_7 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_6 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_5 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_4 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_3 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_2 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_1 is not set -CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y -CONFIG_DEFAULT_CONSOLE_LOGLEVEL=0 -CONFIG_CONSOLE_USE_LOGLEVEL_PREFIX=y -CONFIG_CONSOLE_USE_ANSI_ESCAPES=y -# CONFIG_CMOS_POST is not set -CONFIG_POST_DEVICE_NONE=y -# CONFIG_POST_DEVICE_LPC is not set -# CONFIG_POST_DEVICE_PCI_PCIE is not set -CONFIG_POST_IO_PORT=0x80 -CONFIG_HWBASE_DEBUG_NULL=y -# end of Console - -CONFIG_ACPI_S1_NOT_SUPPORTED=y -CONFIG_HAVE_ACPI_RESUME=y -CONFIG_RESUME_PATH_SAME_AS_BOOT=y -CONFIG_HAVE_MONOTONIC_TIMER=y -CONFIG_HAVE_OPTION_TABLE=y -CONFIG_ACPI_NHLT=y - -# -# System tables -# -CONFIG_GENERATE_SMBIOS_TABLES=y -CONFIG_BIOS_VENDOR="coreboot" -# end of System tables - -# -# Payload -# -CONFIG_PAYLOAD_NONE=y -# end of Payload - -# -# Debugging -# - -# -# CPU Debug Settings -# -# CONFIG_DISPLAY_MTRRS is not set - -# -# Vendorcode Debug Settings -# - -# -# BLOB Debug Settings -# -# CONFIG_DISPLAY_FSP_CALLS_AND_STATUS is not set -# CONFIG_DISPLAY_FSP_HEADER is not set -# CONFIG_VERIFY_HOBS is not set -# CONFIG_DISPLAY_FSP_VERSION_INFO is not set -CONFIG_HAVE_GPIO_SNAPSHOT_VERIFY_SUPPORT=y -# CONFIG_CHECK_GPIO_CONFIG_CHANGES is not set - -# -# General Debug Settings -# -# CONFIG_GDB_STUB is not set -CONFIG_HAVE_DEBUG_GPIO=y -# CONFIG_DEBUG_GPIO is not set -# CONFIG_DEBUG_CBFS is not set -CONFIG_HAVE_DEBUG_SMBUS=y -# CONFIG_DEBUG_SMBUS is not set -# CONFIG_DEBUG_CONSOLE_INIT is not set -# CONFIG_DEBUG_SPI_FLASH is not set -# CONFIG_DEBUG_BOOT_STATE is not set -# CONFIG_DEBUG_ADA_CODE is not set -CONFIG_HAVE_EM100_SUPPORT=y -# CONFIG_EM100 is not set -# CONFIG_DEBUG_ACPICA_COMPATIBLE is not set -# end of Debugging - -CONFIG_RAMSTAGE_ADA=y -CONFIG_RAMSTAGE_LIBHWBASE=y -CONFIG_HWBASE_DYNAMIC_MMIO=y -CONFIG_HWBASE_DEFAULT_MMCONF=0xe0000000 -CONFIG_HWBASE_DIRECT_PCIDEV=y -CONFIG_DECOMPRESS_OFAST=y - -# -# Boot Logo Configuration -# -# CONFIG_BMP_LOGO is not set -# CONFIG_PLATFORM_HAS_SECONDARY_BOOT_INDICATOR_LOGO is not set -# CONFIG_FRAMEBUFFER_SPLASH_TEXT is not set -# end of Boot Logo Configuration - -CONFIG_MAX_REBOOT_CNT=3 -CONFIG_RELOCATABLE_MODULES=y -CONFIG_GENERIC_GPIO_LIB=y -CONFIG_HAVE_BOOTBLOCK=y -CONFIG_HAVE_ROMSTAGE=y -CONFIG_HAVE_RAMSTAGE=y diff --git a/config/module/coreboot/dell3050microsecure_vfsp_16mb/config/libgfxinit_txtmode b/config/module/coreboot/dell3050microsecure_vfsp_16mb/config/libgfxinit_txtmode deleted file mode 100644 index 4c7a8a90..00000000 --- a/config/module/coreboot/dell3050microsecure_vfsp_16mb/config/libgfxinit_txtmode +++ /dev/null @@ -1,837 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# coreboot configuration -# - -# -# General setup -# -CONFIG_LOCALVERSION="" -CONFIG_CBFS_PREFIX="fallback" -CONFIG_COMPILER_GCC=y -# CONFIG_COMPILER_LLVM_CLANG is not set -# CONFIG_ANY_TOOLCHAIN is not set -# CONFIG_CCACHE is not set -# CONFIG_LTO is not set -# CONFIG_IWYU is not set -# CONFIG_FMD_GENPARSER is not set -# CONFIG_UTIL_GENPARSER is not set -# CONFIG_OPTION_BACKEND_NONE is not set -CONFIG_USE_OPTION_TABLE=y -# CONFIG_USE_CBFS_FILE_OPTION_BACKEND is not set -CONFIG_STATIC_OPTION_TABLE=y -CONFIG_COMPRESS_RAMSTAGE_LZMA=y -# CONFIG_COMPRESS_RAMSTAGE_LZ4 is not set -# CONFIG_COMPRESS_RAMSTAGE_ZSTD is not set -CONFIG_SEPARATE_ROMSTAGE=y -CONFIG_INCLUDE_CONFIG_FILE=y -CONFIG_COLLECT_TIMESTAMPS=y -# CONFIG_TIMESTAMPS_ON_CONSOLE is not set -CONFIG_USE_BLOBS=y -# CONFIG_USE_AMD_BLOBS is not set -# CONFIG_USE_QC_BLOBS is not set -# CONFIG_COVERAGE is not set -# CONFIG_UBSAN is not set -CONFIG_HAVE_ASAN_IN_RAMSTAGE=y -# CONFIG_ASAN is not set -# CONFIG_NO_STAGE_CACHE is not set -CONFIG_TSEG_STAGE_CACHE=y -# CONFIG_UPDATE_IMAGE is not set -# CONFIG_BOOTSPLASH_IMAGE is not set - -# -# Software Bill Of Materials (SBOM) -# -# CONFIG_SBOM is not set -# end of Software Bill Of Materials (SBOM) -# end of General setup - -# -# Mainboard -# - -# -# Important: Run 'make distclean' before switching boards -# -# CONFIG_VENDOR_51NB is not set -# CONFIG_VENDOR_ACER is not set -# CONFIG_VENDOR_AMD is not set -# CONFIG_VENDOR_AOOSTAR is not set -# CONFIG_VENDOR_AOPEN is not set -# CONFIG_VENDOR_APPLE is not set -# CONFIG_VENDOR_ARM is not set -# CONFIG_VENDOR_ASROCK is not set -# CONFIG_VENDOR_ASUS is not set -# CONFIG_VENDOR_BIOSTAR is not set -# CONFIG_VENDOR_BOSTENTECH is not set -# CONFIG_VENDOR_BYTEDANCE is not set -# CONFIG_VENDOR_CAVIUM is not set -# CONFIG_VENDOR_CLEVO is not set -# CONFIG_VENDOR_COMPULAB is not set -# CONFIG_VENDOR_CWWK is not set -CONFIG_VENDOR_DELL=y -# CONFIG_VENDOR_EMULATION is not set -# CONFIG_VENDOR_ERYING is not set -# CONFIG_VENDOR_EXAMPLE is not set -# CONFIG_VENDOR_FACEBOOK is not set -# CONFIG_VENDOR_FOXCONN is not set -# CONFIG_VENDOR_FRAMEWORK is not set -# CONFIG_VENDOR_GETAC is not set -# CONFIG_VENDOR_GIGABYTE is not set -# CONFIG_VENDOR_GOOGLE is not set -# CONFIG_VENDOR_HARDKERNEL is not set -# CONFIG_VENDOR_HP is not set -# CONFIG_VENDOR_IBASE is not set -# CONFIG_VENDOR_IBM is not set -# CONFIG_VENDOR_INTEL is not set -# CONFIG_VENDOR_INVENTEC is not set -# CONFIG_VENDOR_KONTRON is not set -# CONFIG_VENDOR_LATTEPANDA is not set -# CONFIG_VENDOR_LENOVO is not set -# CONFIG_VENDOR_LIBRETREND is not set -# CONFIG_VENDOR_MITAC_COMPUTING is not set -# CONFIG_VENDOR_MSI is not set -# CONFIG_VENDOR_NOVACUSTOM is not set -# CONFIG_VENDOR_NVIDIA is not set -# CONFIG_VENDOR_OCP is not set -# CONFIG_VENDOR_OPENCELLULAR is not set -# CONFIG_VENDOR_PACKARDBELL is not set -# CONFIG_VENDOR_PCENGINES is not set -# CONFIG_VENDOR_PINE64 is not set -# CONFIG_VENDOR_PORTWELL is not set -# CONFIG_VENDOR_PRODRIVE is not set -# CONFIG_VENDOR_PROTECTLI is not set -# CONFIG_VENDOR_PURISM is not set -# CONFIG_VENDOR_QOTOM is not set -# CONFIG_VENDOR_RAPTOR_CS is not set -# CONFIG_VENDOR_RAZER is not set -# CONFIG_VENDOR_RODA is not set -# CONFIG_VENDOR_SAMSUNG is not set -# CONFIG_VENDOR_SAPPHIRE is not set -# CONFIG_VENDOR_SIEMENS is not set -# CONFIG_VENDOR_SIFIVE is not set -# CONFIG_VENDOR_STARLABS is not set -# CONFIG_VENDOR_SUPERMICRO is not set -# CONFIG_VENDOR_SYSTEM76 is not set -# CONFIG_VENDOR_TI is not set -# CONFIG_VENDOR_TOPTON is not set -# CONFIG_VENDOR_UP is not set -# CONFIG_VENDOR_VIA is not set -CONFIG_MAINBOARD_PART_NUMBER="OptiPlex 3050 Micro" -CONFIG_MAINBOARD_VERSION="1.0" -CONFIG_MAINBOARD_DIR="dell/sklkbl_desktops" -CONFIG_VGA_BIOS_ID="8086,0406" -CONFIG_DIMM_MAX=4 -CONFIG_DIMM_SPD_SIZE=512 -CONFIG_FMDFILE="" -# CONFIG_NO_POST is not set -CONFIG_MAINBOARD_VENDOR="Dell Inc." -CONFIG_CBFS_SIZE=0xEEE000 -# CONFIG_CONSOLE_SERIAL is not set -CONFIG_MAX_CPUS=16 -CONFIG_ME_CLEANER_ARGS="-S --whitelist MFS" -# CONFIG_ONBOARD_VGA_IS_PRIMARY is not set -CONFIG_POST_DEVICE=y -CONFIG_POST_IO=y -CONFIG_VARIANT_DIR="optiplex_3050" -CONFIG_OVERRIDE_DEVICETREE="variants/$(CONFIG_VARIANT_DIR)/overridetree.cb" -CONFIG_INTEL_GMA_VBT_FILE="src/mainboard/$(MAINBOARDDIR)/variants/$(CONFIG_VARIANT_DIR)/data.vbt" -CONFIG_DEVICETREE="devicetree.cb" -# CONFIG_VBOOT is not set -# CONFIG_VGA_BIOS is not set -CONFIG_PCIEXP_ASPM=y -CONFIG_PCIEXP_L1_SUB_STATE=y -CONFIG_PCIEXP_CLK_PM=y -CONFIG_MAINBOARD_SMBIOS_MANUFACTURER="Dell Inc." -CONFIG_ECAM_MMCONF_BASE_ADDRESS=0xe0000000 -CONFIG_ECAM_MMCONF_BUS_NUMBER=256 -CONFIG_MEMLAYOUT_LD_FILE="src/arch/x86/memlayout.ld" -# CONFIG_FATAL_ASSERTS is not set -# CONFIG_DISABLE_HECI1_AT_PRE_BOOT is not set -CONFIG_PRERAM_CBMEM_CONSOLE_SIZE=0xc00 -CONFIG_MAINBOARD_SMBIOS_PRODUCT_NAME="OptiPlex 3050 Micro" -# CONFIG_CONSOLE_POST is not set -CONFIG_FSP_FD_PATH="3rdparty/fsp/KabylakeFspBinPkg/Fsp.fd" -CONFIG_MAX_SOCKET=1 -CONFIG_CMOS_DEFAULT_FILE="src/mainboard/$(MAINBOARDDIR)/cmos.default" -CONFIG_CMOS_LAYOUT_FILE="src/mainboard/$(MAINBOARDDIR)/cmos.layout" -CONFIG_USE_PM_ACPI_TIMER=y -CONFIG_BOOT_DEVICE_SPI_FLASH_BUS=0 -# CONFIG_BOARD_DELL_E4300 is not set -# CONFIG_BOARD_DELL_E6400 is not set -# CONFIG_BOARD_DELL_LATITUDE_E7240 is not set -# CONFIG_BOARD_DELL_OPTIPLEX_3040 is not set -# CONFIG_BOARD_DELL_OPTIPLEX_780_MT is not set -# CONFIG_BOARD_DELL_OPTIPLEX_780_USFF is not set -# CONFIG_BOARD_DELL_OPTIPLEX_9020_SFF is not set -# CONFIG_BOARD_DELL_OPTIPLEX_9020_MT is not set -CONFIG_BOARD_DELL_OPTIPLEX_3050=y -# CONFIG_BOARD_DELL_LATITUDE_E5420 is not set -# CONFIG_BOARD_DELL_LATITUDE_E5520 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6220 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6320 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6420 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6520 is not set -# CONFIG_BOARD_DELL_LATITUDE_E5530 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6230 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6330 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6430 is not set -# CONFIG_BOARD_DELL_LATITUDE_E6530 is not set -# CONFIG_BOARD_DELL_OPTIPLEX_9010 is not set -# CONFIG_BOARD_DELL_PRECISION_T1650 is not set -# CONFIG_BOARD_DELL_XPS_8300 is not set -CONFIG_BOARD_DELL_SKLKBL_DESKTOPS_COMMON=y -CONFIG_DCACHE_RAM_BASE=0xfef00000 -CONFIG_DCACHE_RAM_SIZE=0x40000 -CONFIG_C_ENV_BOOTBLOCK_SIZE=0x40000 -CONFIG_DCACHE_BSP_STACK_SIZE=0x4000 -CONFIG_MAX_ACPI_TABLE_SIZE_KB=144 -CONFIG_HAVE_INTEL_FIRMWARE=y -CONFIG_MRC_SETTINGS_CACHE_SIZE=0x10000 -CONFIG_DRIVERS_INTEL_WIFI=y -CONFIG_IFD_BIN_PATH="../../../config/ifd/3050micro/ifd" -CONFIG_ME_BIN_PATH="../../../vendorfiles/3050micro/me.bin" -CONFIG_MAINBOARD_SUPPORTS_SKYLAKE_CPU=y -CONFIG_D3COLD_SUPPORT=y -CONFIG_RAMSTAGE_CBFS_CACHE_SIZE=0x4000 -CONFIG_MAINBOARD_SERIAL_NUMBER="123456789" -CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x20000 -CONFIG_SYSTEM_SMBIOS_MANUFACTURER="Dell Inc." -# CONFIG_INTEL_OC_MAILBOX_ENABLE_UNDERVOLTING is not set -CONFIG_PLATFORM_POST_RENDER_DELAY_SEC=5 -CONFIG_CARDBUS_PLUGIN_SUPPORT=y -CONFIG_SPI_FLASH_DONT_INCLUDE_ALL_DRIVERS=y -CONFIG_USE_LEGACY_8254_TIMER=y -# CONFIG_DEBUG_SMI is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_SGX_ENABLE is not set -CONFIG_HAVE_IFD_BIN=y -CONFIG_PS2K_EISAID="PNP0303" -CONFIG_PS2M_EISAID="PNP0F13" -CONFIG_GFX_GMA_PANEL_1_PORT="eDP" -# CONFIG_SOC_INTEL_CSE_SEND_EOP_EARLY is not set -CONFIG_POWER_STATE_DEFAULT_ON_AFTER_FAILURE=y -CONFIG_GFX_GMA_PANEL_1_ON_EDP=y -CONFIG_DRIVERS_UART_8250IO=y -CONFIG_PC_CMOS_BASE_PORT_BANK1=0x72 -CONFIG_HEAP_SIZE=0x100000 -# CONFIG_BOOTMEDIA_SMM_BWP is not set -# CONFIG_BOOTMEDIA_SMM_BWP_RUNTIME_OPTION is not set -CONFIG_USE_PC_CMOS_ALTCENTURY=y -# CONFIG_DRIVERS_EFI_FW_INFO is not set -# CONFIG_TCG_OPAL_S3_UNLOCK is not set -CONFIG_BOARD_ROMSIZE_KB_16384=y -# CONFIG_COREBOOT_ROMSIZE_KB_256 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_512 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_1024 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_2048 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_4096 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_5120 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_6144 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_8192 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_10240 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_12288 is not set -CONFIG_COREBOOT_ROMSIZE_KB_16384=y -# CONFIG_COREBOOT_ROMSIZE_KB_24576 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_32768 is not set -# CONFIG_COREBOOT_ROMSIZE_KB_65536 is not set -CONFIG_COREBOOT_ROMSIZE_KB=16384 -CONFIG_ROM_SIZE=0x01000000 -CONFIG_HAVE_POWER_STATE_AFTER_FAILURE=y -CONFIG_HAVE_POWER_STATE_PREVIOUS_AFTER_FAILURE=y -# CONFIG_POWER_STATE_OFF_AFTER_FAILURE is not set -CONFIG_POWER_STATE_ON_AFTER_FAILURE=y -# CONFIG_POWER_STATE_PREVIOUS_AFTER_FAILURE is not set -CONFIG_MAINBOARD_POWER_FAILURE_STATE=1 -# end of Mainboard - -# -# Chipset -# - -# -# SoC -# -CONFIG_CHIPSET_DEVICETREE="soc/intel/skylake/chipset.cb" -CONFIG_FSP_HEADER_PATH="3rdparty/fsp/KabylakeFspBinPkg/Include/" -CONFIG_FSP_M_FILE="../../../vendorfiles/kabylake/Fsp_M.fd" -CONFIG_FSP_S_FILE="../../../vendorfiles/kabylake/Fsp_S.fd" -CONFIG_CBFS_MCACHE_SIZE=0x4000 -CONFIG_ROMSTAGE_ADDR=0x2000000 -CONFIG_VERSTAGE_ADDR=0x2000000 -CONFIG_SMM_TSEG_SIZE=0x800000 -CONFIG_SMM_RESERVED_SIZE=0x200000 -CONFIG_SMM_MODULE_STACK_SIZE=0x800 -CONFIG_ACPI_BERT_SIZE=0x0 -CONFIG_DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ=120 -CONFIG_CPU_PT_ROM_MAP_GB=512 -CONFIG_PRERAM_CBFS_CACHE_SIZE=0x4000 -CONFIG_DOMAIN_RESOURCE_32BIT_LIMIT=0xe0000000 -CONFIG_ACPI_CPU_STRING="CP%02X" -CONFIG_STACK_SIZE=0x2000 -CONFIG_IFD_CHIPSET="sklkbl" -CONFIG_IED_REGION_SIZE=0x400000 -CONFIG_MAX_ROOT_PORTS=24 -CONFIG_PCR_BASE_ADDRESS=0xfd000000 -CONFIG_CPU_BCLK_MHZ=100 -CONFIG_SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ=120 -CONFIG_CPU_XTAL_HZ=24000000 -CONFIG_SOC_INTEL_COMMON_BLOCK_GSPI_MAX=2 -CONFIG_SOC_INTEL_I2C_DEV_MAX=6 -# CONFIG_ENABLE_SATA_TEST_MODE is not set -CONFIG_SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL=0x30 -CONFIG_SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL=0xc35 -CONFIG_SOC_INTEL_COMMON_DEBUG_CONSENT=0 -CONFIG_INTEL_GMA_BCLV_OFFSET=0xc8254 -CONFIG_INTEL_GMA_BCLV_WIDTH=16 -CONFIG_INTEL_GMA_BCLM_OFFSET=0xc8256 -CONFIG_INTEL_GMA_BCLM_WIDTH=16 -CONFIG_FSP_PUBLISH_MBP_HOB=y -CONFIG_FSP_STATUS_GLOBAL_RESET=0x40000003 -CONFIG_SOC_HAS_MSR_VR_CURRENT_CONFIG=y -CONFIG_MAX_HECI_DEVICES=5 -CONFIG_BOOTBLOCK_IN_CBFS=y -CONFIG_HAVE_PAM0_REGISTER=y -CONFIG_INTEL_TXT_BIOSACM_ALIGNMENT=0x40000 -CONFIG_CPU_INTEL_NUM_FIT_ENTRIES=10 -CONFIG_SOC_INTEL_GFX_FRAMEBUFFER_OFFSET=0x0 -CONFIG_PCIE_LTR_MAX_SNOOP_LATENCY=0x1003 -CONFIG_PCIE_LTR_MAX_NO_SNOOP_LATENCY=0x1003 -CONFIG_SOC_PHYSICAL_ADDRESS_WIDTH=0 -CONFIG_CBFS_CACHE_ALIGN=8 -CONFIG_SOC_INTEL_COMMON_SKYLAKE_BASE=y -CONFIG_SOC_INTEL_KABYLAKE=y -CONFIG_SKYLAKE_SOC_PCH_H=y -CONFIG_MAINBOARD_SUPPORTS_KABYLAKE_CPU=y -CONFIG_MAINBOARD_SUPPORTS_COFFEELAKE_CPU=y -# CONFIG_ALWAYS_ALLOW_ABOVE_4G_ALLOCATION is not set -CONFIG_FSP_T_LOCATION=0xfffe0000 -CONFIG_SOC_INTEL_COMMON_BLOCK_P2SB=y -CONFIG_FIXED_SMBUS_IO_BASE=0xefa0 -CONFIG_UART_BITBANG_TX_DELAY_MS=5 -CONFIG_SOC_INTEL_COMMON=y - -# -# Intel SoC Common Code for IP blocks -# -CONFIG_SOC_INTEL_COMMON_BLOCK=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_GPIO=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_LPIT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_PEP=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_CPPC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CPU=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CPU_MPINIT=y -CONFIG_USE_FSP_FEATURE_PROGRAM_ON_APS=y -# CONFIG_USE_COREBOOT_MP_INIT is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CAR=y -CONFIG_INTEL_CAR_NEM_ENHANCED=y -# CONFIG_USE_INTEL_FSP_MP_INIT is not set -CONFIG_CPU_SUPPORTS_PM_TIMER_EMULATION=y -CONFIG_HAVE_HYPERTHREADING=y -# CONFIG_FSP_HYPERTHREADING is not set -# CONFIG_INTEL_KEYLOCKER is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_MAX is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_256MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_128MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_64MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_32MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_16MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_8MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_4MB is not set -# CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_2MB is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_PRMRR_SIZE_0MB=y -CONFIG_SOC_INTEL_COMMON_BLOCK_CSE=y -CONFIG_SOC_INTEL_COMMON_BLOCK_HECI1_DISABLE_USING_PCR=y -CONFIG_SOC_INTEL_CSE_FMAP_NAME="SI_ME" -CONFIG_SOC_INTEL_CSE_RW_CBFS_NAME="me_rw" -CONFIG_SOC_INTEL_CSE_RW_VERSION_CBFS_NAME="me_rw.version" -CONFIG_SOC_INTEL_CSE_RW_FILE="" -CONFIG_SOC_INTEL_CSE_RW_VERSION_FILE="" -CONFIG_SOC_INTEL_CSE_RW_VERSION="" -CONFIG_SOC_INTEL_CSE_IOM_CBFS_NAME="cse_iom" -CONFIG_SOC_INTEL_CSE_IOM_CBFS_FILE="" -CONFIG_SOC_INTEL_CSE_NPHY_CBFS_NAME="cse_nphy" -CONFIG_SOC_INTEL_CSE_NPHY_CBFS_FILE="" -CONFIG_CSE_RESET_CLEAR_EC_AP_IDLE_FLAG=y -CONFIG_SOC_INTEL_COMMON_BLOCK_DSP=y -CONFIG_SOC_INTEL_COMMON_BLOCK_FAST_SPI=y -CONFIG_FAST_SPI_DISABLE_WRITE_STATUS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO_ITSS_POL_CFG=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO_PADCFG_PADTOL=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GPMR=y -CONFIG_SOC_INTEL_COMMON_BLOCK_GRAPHICS=y -CONFIG_SOC_INTEL_GFX_HAVE_DDI_A_BIFURCATION=y -# CONFIG_SOC_INTEL_DISABLE_IGD is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_GSPI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_HDA=y -CONFIG_SOC_INTEL_COMMON_BLOCK_HDA_VERB=y -CONFIG_SOC_INTEL_COMMON_BLOCK_I2C=y -CONFIG_SOC_INTEL_COMMON_BLOCK_ITSS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_LPC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_LPC_MIRROR_TO_GPMR=y -CONFIG_SOC_INTEL_COMMON_BLOCK_LPSS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_BASE_P2SB=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PCIE=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PCR=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PMC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_PMC_DISCOVERABLE=y -CONFIG_PMC_GLOBAL_RESET_ENABLE_LOCK=y -CONFIG_SOC_INTEL_COMMON_BLOCK_POWER_LIMIT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_RTC=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SATA=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SCS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SGX=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SGX_LOCK_MEMORY=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMBUS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_TCO=y -CONFIG_SOC_INTEL_COMMON_BLOCK_TCO_ENABLE_THROUGH_SMBUS=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_HAS_WADT=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP=y -# CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_TCO_ENABLE is not set -CONFIG_SOC_INTEL_COMMON_BLOCK_SMM_S5_DELAY_MS=0 -CONFIG_SOC_INTEL_COMMON_BLOCK_SPI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_SA=y -CONFIG_SA_ENABLE_DPR=y -CONFIG_HAVE_CAPID_A_REGISTER=y -CONFIG_HAVE_BDSM_BGSM_REGISTER=y -CONFIG_SOC_INTEL_COMMON_BLOCK_THERMAL=y -CONFIG_SOC_INTEL_COMMON_BLOCK_THERMAL_PCI_DEV=y -CONFIG_SOC_INTEL_COMMON_BLOCK_TIMER=y -CONFIG_SOC_INTEL_COMMON_BLOCK_UART=y -CONFIG_SOC_INTEL_COMMON_BLOCK_XDCI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_XHCI=y -CONFIG_SOC_INTEL_COMMON_BLOCK_XHCI_ELOG=y - -# -# Intel SoC Common Code for features -# -CONFIG_SOC_INTEL_COMMON_FEATURE=y -CONFIG_SOC_INTEL_COMMON_FEATURE_GSPI_DEVFN=y -CONFIG_SOC_INTEL_COMMON_FEATURE_I2C_DEVFN=y -CONFIG_SOC_INTEL_COMMON_FEATURE_UART_DEVICES=y - -# -# Intel SoC Common PCH Code -# -CONFIG_SOC_INTEL_COMMON_PCH_CLIENT=y -CONFIG_SOC_INTEL_COMMON_PCH_BASE=y -CONFIG_SOC_INTEL_COMMON_PCH_LOCKDOWN=y -CONFIG_PCH_SPECIFIC_BASE_OPTIONS=y -CONFIG_PCH_SPECIFIC_DISCRETE_OPTIONS=y -CONFIG_PCH_SPECIFIC_CLIENT_OPTIONS=y - -# -# Intel SoC Common coreboot stages and non-IP blocks -# -CONFIG_SOC_INTEL_COMMON_BASECODE=y -CONFIG_SOC_INTEL_COMMON_RESET=y -CONFIG_SOC_INTEL_COMMON_ACPI_WAKE_SOURCE=y -CONFIG_PAVP=y -# CONFIG_MMA is not set -CONFIG_SOC_INTEL_COMMON_NHLT=y -# CONFIG_SOC_INTEL_DEBUG_CONSENT is not set - -# -# CPU -# -CONFIG_CPU_INTEL_FIRMWARE_INTERFACE_TABLE=y -CONFIG_CPU_INTEL_COMMON=y -CONFIG_ENABLE_VMX=y -CONFIG_SET_IA32_FC_LOCK_BIT=y -CONFIG_SET_MSR_AESNI_LOCK_BIT=y -CONFIG_CPU_INTEL_COMMON_SMM=y -CONFIG_PARALLEL_MP=y -CONFIG_PARALLEL_MP_AP_WORK=y -CONFIG_XAPIC_ONLY=y -# CONFIG_X2APIC_ONLY is not set -# CONFIG_X2APIC_RUNTIME is not set -# CONFIG_X2APIC_LATE_WORKAROUND is not set -CONFIG_UDELAY_TSC=y -CONFIG_TSC_MONOTONIC_TIMER=y -CONFIG_TSC_SYNC_MFENCE=y -CONFIG_HAVE_SMI_HANDLER=y -CONFIG_SMM_TSEG=y -CONFIG_SMM_OPAL_S3_STATE_SMRAM_SIZE=0x0 -CONFIG_SMM_PCI_RESOURCE_STORE_NUM_SLOTS=8 -CONFIG_AP_STACK_SIZE=0x800 -CONFIG_SMP=y -CONFIG_SSE=y -CONFIG_SSE2=y -CONFIG_SUPPORT_CPU_UCODE_IN_CBFS=y -CONFIG_USE_CPU_MICROCODE_CBFS_BINS=y -CONFIG_CPU_MICROCODE_CBFS_DEFAULT_BINS=y -# CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_BINS is not set -# CONFIG_CPU_MICROCODE_CBFS_EXTERNAL_HEADER is not set -# CONFIG_CPU_MICROCODE_CBFS_NONE is not set - -# -# Northbridge -# - -# -# Southbridge -# -# CONFIG_PCIEXP_HOTPLUG is not set -CONFIG_INTEL_DESCRIPTOR_MODE_REQUIRED=y -CONFIG_PCIEXP_COMMON_CLOCK=y -CONFIG_SOUTHBRIDGE_INTEL_COMMON_SMBUS=y -CONFIG_HAVE_INSMM_STS=y -CONFIG_INTEL_DESCRIPTOR_MODE_CAPABLE=y -# CONFIG_VALIDATE_INTEL_DESCRIPTOR is not set -CONFIG_FIXED_RCBA_MMIO_BASE=0xfed1c000 -CONFIG_RCBA_LENGTH=0x4000 - -# -# Super I/O -# -CONFIG_SUPERIO_SMSC_SCH555x=y - -# -# Embedded Controllers -# - -# -# Intel Firmware -# -CONFIG_HAVE_ME_BIN=y -# CONFIG_STITCH_ME_BIN is not set -# CONFIG_CHECK_ME is not set -# CONFIG_ME_REGION_ALLOW_CPU_READ_ACCESS is not set -# CONFIG_USE_ME_CLEANER is not set -# CONFIG_DO_NOT_TOUCH_DESCRIPTOR_REGION is not set -# CONFIG_LOCK_MANAGEMENT_ENGINE is not set -CONFIG_UNLOCK_FLASH_REGIONS=y -CONFIG_ACPI_FNKEY_GEN_SCANCODE=0 -CONFIG_UDK_BASE=y -CONFIG_UDK_2017_BINDING=y -CONFIG_UDK_2013_VERSION=2013 -CONFIG_UDK_2017_VERSION=2017 -CONFIG_UDK_202005_VERSION=202005 -CONFIG_UDK_202111_VERSION=202111 -CONFIG_UDK_202302_VERSION=202302 -CONFIG_UDK_202305_VERSION=202305 -CONFIG_UDK_VERSION=2017 -CONFIG_ARCH_X86=y -CONFIG_ARCH_BOOTBLOCK_X86_32=y -CONFIG_ARCH_VERSTAGE_X86_32=y -CONFIG_ARCH_ROMSTAGE_X86_32=y -CONFIG_ARCH_POSTCAR_X86_32=y -CONFIG_ARCH_RAMSTAGE_X86_32=y -CONFIG_ARCH_SMM_X86_32=y -CONFIG_ARCH_ALL_STAGES_X86_32=y -CONFIG_RESERVED_PHYSICAL_ADDRESS_BITS_SUPPORT=y -CONFIG_X86_TOP4G_BOOTMEDIA_MAP=y -CONFIG_POSTRAM_CBFS_CACHE_IN_BSS=y -CONFIG_PC80_SYSTEM=y -CONFIG_HAVE_CMOS_DEFAULT=y -CONFIG_POSTCAR_STAGE=y -CONFIG_BOOTBLOCK_SIMPLE=y -# CONFIG_BOOTBLOCK_NORMAL is not set -CONFIG_COLLECT_TIMESTAMPS_TSC=y -CONFIG_HAVE_CF9_RESET=y -CONFIG_DEBUG_HW_BREAKPOINTS=y -CONFIG_DEBUG_NULL_DEREF_BREAKPOINTS=y -# CONFIG_DUMP_SMBIOS_TYPE17 is not set -CONFIG_X86_BOOTBLOCK_EXTRA_PROGRAM_SZ=0 -CONFIG_DEFAULT_EBDA_LOWMEM=0x100000 -CONFIG_DEFAULT_EBDA_SEGMENT=0xF600 -CONFIG_DEFAULT_EBDA_SIZE=0x400 -CONFIG_IOAPIC=y -# CONFIG_ASYNC_FILE_LOADING_CACHE is not set -# end of Chipset - -# -# Devices -# -CONFIG_HAVE_VGA_TEXT_FRAMEBUFFER=y -CONFIG_HAVE_LINEAR_FRAMEBUFFER=y -CONFIG_HAVE_FSP_GOP=y -CONFIG_MAINBOARD_HAS_LIBGFXINIT=y -CONFIG_MAINBOARD_USE_LIBGFXINIT=y -# CONFIG_VGA_ROM_RUN is not set -# CONFIG_RUN_FSP_GOP is not set -# CONFIG_NO_GFX_INIT is not set -CONFIG_NO_EARLY_GFX_INIT=y -CONFIG_ON_DEVICE_ROM_LOAD=y - -# -# Display -# -CONFIG_VGA_TEXT_FRAMEBUFFER=y -# CONFIG_GENERIC_LINEAR_FRAMEBUFFER is not set -CONFIG_DEFAULT_SCREEN_ROTATION_INT=0 -# end of Display - -CONFIG_PCI=y -CONFIG_ECAM_MMCONF_SUPPORT=y -CONFIG_PCIX_PLUGIN_SUPPORT=y -CONFIG_AZALIA_HDA_CODEC_SUPPORT=y -CONFIG_AZALIA_USE_LEGACY_VERB_TABLE=y -CONFIG_PCIEXP_PLUGIN_SUPPORT=y -CONFIG_ECAM_MMCONF_LENGTH=0x10000000 -CONFIG_PCI_ALLOW_BUS_MASTER=y -CONFIG_PCI_SET_BUS_MASTER_PCI_BRIDGES=y -CONFIG_PCI_ALLOW_BUS_MASTER_ANY_DEVICE=y -# CONFIG_PCIEXP_SUPPORT_RESIZABLE_BARS is not set -# CONFIG_PCIEXP_LANE_ERR_STAT_CLEAR is not set -# CONFIG_EARLY_PCI_BRIDGE is not set -CONFIG_SUBSYSTEM_VENDOR_ID=0x0000 -CONFIG_SUBSYSTEM_DEVICE_ID=0x0000 -CONFIG_INTEL_GMA_HAVE_VBT=y -CONFIG_INTEL_GMA_ADD_VBT=y -# CONFIG_SOFTWARE_I2C is not set -CONFIG_I2C_TRANSFER_TIMEOUT_US=500000 -CONFIG_RESOURCE_ALLOCATION_TOP_DOWN=y -CONFIG_DRAM_SUPPORT_DDR4=y -CONFIG_DRAM_SUPPORT_DDR3=y -# end of Devices - -# -# Generic Drivers -# -CONFIG_CRB_TPM_BASE_ADDRESS=0xfed40000 -# CONFIG_DRIVERS_EFI_VARIABLE_STORE is not set -# CONFIG_ELOG is not set -# CONFIG_DRIVERS_HWID_DMI is not set -CONFIG_CACHE_MRC_SETTINGS=y -CONFIG_MRC_SETTINGS_PROTECT=y -# CONFIG_DRIVERS_OPTION_CFR is not set -# CONFIG_SELF_TEST is not set -# CONFIG_SMMSTORE is not set -CONFIG_SPI_FLASH=y -CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP=y -CONFIG_BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY=y -# CONFIG_SPI_FLASH_NO_FAST_READ is not set -CONFIG_DRIVERS_UART=y -# CONFIG_DRIVERS_UART_OXPCIE is not set -# CONFIG_VPD is not set -# CONFIG_DRIVERS_EMULATION_QEMU_FW_CFG is not set -# CONFIG_DRIVERS_GENERIC_CBFS_SERIAL is not set -# CONFIG_DRIVERS_GENERIC_CBFS_UUID is not set -# CONFIG_DRIVERS_GENESYSLOGIC_GL9750 is not set -# CONFIG_DRIVERS_GENESYSLOGIC_GL9755 is not set -# CONFIG_DRIVERS_GENESYSLOGIC_GL9763E is not set -CONFIG_DRIVERS_I2C_DESIGNWARE=y -# CONFIG_DRIVERS_I2C_MAX98396 is not set -# CONFIG_FSP_USE_REPO is not set -# CONFIG_DISPLAY_HOBS is not set -# CONFIG_DISPLAY_UPD_DATA is not set -CONFIG_PLATFORM_USES_FSP2_0=y -CONFIG_PLATFORM_USES_FSP2_X86_32=y -CONFIG_HAVE_INTEL_FSP_REPO=y -CONFIG_ADD_FSP_BINARIES=y -CONFIG_FSP_S_CBFS="fsps.bin" -CONFIG_FSP_M_CBFS="fspm.bin" -# CONFIG_FSP_FULL_FD is not set -CONFIG_FSP_T_RESERVED_SIZE=0x0 -CONFIG_FSP_M_XIP=y -CONFIG_SOC_INTEL_COMMON_FSP_RESET=y -CONFIG_USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM=y -CONFIG_USE_FSP_NOTIFY_PHASE_READY_TO_BOOT=y -CONFIG_USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE=y -# CONFIG_DISPLAY_FSP_TIMESTAMPS is not set -# CONFIG_BUILDING_WITH_DEBUG_FSP is not set -CONFIG_FSP_VGA_MODE12_BPP=0x0 -CONFIG_INTEL_GMA_ACPI=y -CONFIG_VBT_CBFS_COMPRESSION_LZMA=y -# CONFIG_VBT_CBFS_COMPRESSION_LZ4 is not set -# CONFIG_VBT_CBFS_COMPRESSION_NONE is not set -CONFIG_VBT_CBFS_COMPRESSION_ALGORITHM="lzma" -CONFIG_GFX_GMA=y -CONFIG_GFX_GMA_DYN_CPU=y -CONFIG_GFX_GMA_GENERATION="Skylake" -CONFIG_GFX_GMA_PCH="Sunrise_Point" -CONFIG_GFX_GMA_PANEL_2_PORT="Disabled" -CONFIG_GFX_GMA_ANALOG_I2C_PORT="PCH_DAC" -CONFIG_DRIVERS_INTEL_OC_MAILBOX=y -# CONFIG_DRIVERS_NXP_UWB_SR1XX is not set -# CONFIG_DRIVERS_PS2_KEYBOARD is not set -CONFIG_DRIVERS_MC146818=y -CONFIG_PC_CMOS_BASE_PORT_BANK0=0x70 -CONFIG_VGA=y -# CONFIG_DRIVERS_SIL_3114 is not set -CONFIG_DRIVERS_USB_ACPI=y -CONFIG_DRIVERS_WIFI_GENERIC=y -CONFIG_DRIVERS_MTK_WIFI=y -# end of Generic Drivers - -# -# Security -# - -# -# CBFS verification -# -# CONFIG_CBFS_VERIFICATION is not set -# end of CBFS verification - -# -# Verified Boot (vboot) -# -# end of Verified Boot (vboot) - -# -# Trusted Platform Module -# -CONFIG_NO_TPM=y -CONFIG_PCR_BOOT_MODE=1 -CONFIG_PCR_HWID=1 -CONFIG_PCR_SRTM=2 -CONFIG_PCR_FW_VER=10 -CONFIG_PCR_RUNTIME_DATA=3 -# end of Trusted Platform Module - -# -# TCG storage -# -# end of TCG storage - -# -# Memory initialization -# -CONFIG_PLATFORM_HAS_DRAM_CLEAR=y -# CONFIG_SECURITY_CLEAR_DRAM_ON_REGULAR_BOOT is not set -# end of Memory initialization - -# CONFIG_STM is not set -# CONFIG_INTEL_CBNT_SUPPORT is not set -# CONFIG_BOOTMEDIA_LOCK_NONE is not set -CONFIG_BOOTMEDIA_LOCK_CONTROLLER=y -# CONFIG_BOOTMEDIA_LOCK_CHIP is not set -CONFIG_BOOTMEDIA_LOCK_WHOLE_RO=y -# CONFIG_BOOTMEDIA_LOCK_WHOLE_NO_ACCESS is not set -# end of Security - -CONFIG_ACPI_HAVE_PCAT_8259=y -CONFIG_ACPI_INTEL_HARDWARE_SLEEP_VALUES=y -CONFIG_ACPI_SOC_NVS=y -CONFIG_ACPI_CUSTOM_MADT=y -CONFIG_ACPI_NO_CUSTOM_MADT=y -CONFIG_ACPI_COMMON_MADT_LAPIC=y -CONFIG_ACPI_COMMON_MADT_IOAPIC=y -CONFIG_HAVE_ACPI_TABLES=y -CONFIG_ACPI_LPIT=y -CONFIG_BOOT_DEVICE_SPI_FLASH=y -CONFIG_BOOT_DEVICE_MEMORY_MAPPED=y -CONFIG_BOOT_DEVICE_SUPPORTS_WRITES=y -CONFIG_RTC=y - -# -# Console -# -CONFIG_BOOTBLOCK_CONSOLE=y -CONFIG_POSTCAR_CONSOLE=y -CONFIG_SQUELCH_EARLY_SMP=y -# CONFIG_SPKMODEM is not set -# CONFIG_CONSOLE_NE2K is not set -CONFIG_CONSOLE_CBMEM=y -# CONFIG_CONSOLE_CBMEM_DUMP_TO_UART is not set -# CONFIG_CONSOLE_SPI_FLASH is not set -# CONFIG_CONSOLE_I2C_SMBUS is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_8 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_7 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_6 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_5 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_4 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_3 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_2 is not set -# CONFIG_DEFAULT_CONSOLE_LOGLEVEL_1 is not set -CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y -CONFIG_DEFAULT_CONSOLE_LOGLEVEL=0 -CONFIG_CONSOLE_USE_LOGLEVEL_PREFIX=y -CONFIG_CONSOLE_USE_ANSI_ESCAPES=y -# CONFIG_CMOS_POST is not set -CONFIG_POST_DEVICE_NONE=y -# CONFIG_POST_DEVICE_LPC is not set -# CONFIG_POST_DEVICE_PCI_PCIE is not set -CONFIG_POST_IO_PORT=0x80 -CONFIG_HWBASE_DEBUG_NULL=y -# end of Console - -CONFIG_ACPI_S1_NOT_SUPPORTED=y -CONFIG_HAVE_ACPI_RESUME=y -CONFIG_RESUME_PATH_SAME_AS_BOOT=y -CONFIG_HAVE_MONOTONIC_TIMER=y -CONFIG_HAVE_OPTION_TABLE=y -CONFIG_ACPI_NHLT=y - -# -# System tables -# -CONFIG_GENERATE_SMBIOS_TABLES=y -CONFIG_BIOS_VENDOR="coreboot" -# end of System tables - -# -# Payload -# -CONFIG_PAYLOAD_NONE=y -# end of Payload - -# -# Debugging -# - -# -# CPU Debug Settings -# -# CONFIG_DISPLAY_MTRRS is not set - -# -# Vendorcode Debug Settings -# - -# -# BLOB Debug Settings -# -# CONFIG_DISPLAY_FSP_CALLS_AND_STATUS is not set -# CONFIG_DISPLAY_FSP_HEADER is not set -# CONFIG_VERIFY_HOBS is not set -# CONFIG_DISPLAY_FSP_VERSION_INFO is not set -CONFIG_HAVE_GPIO_SNAPSHOT_VERIFY_SUPPORT=y -# CONFIG_CHECK_GPIO_CONFIG_CHANGES is not set - -# -# General Debug Settings -# -# CONFIG_GDB_STUB is not set -CONFIG_HAVE_DEBUG_GPIO=y -# CONFIG_DEBUG_GPIO is not set -# CONFIG_DEBUG_CBFS is not set -CONFIG_HAVE_DEBUG_SMBUS=y -# CONFIG_DEBUG_SMBUS is not set -# CONFIG_DEBUG_CONSOLE_INIT is not set -# CONFIG_DEBUG_SPI_FLASH is not set -# CONFIG_DEBUG_BOOT_STATE is not set -# CONFIG_DEBUG_ADA_CODE is not set -CONFIG_HAVE_EM100_SUPPORT=y -# CONFIG_EM100 is not set -# CONFIG_DEBUG_ACPICA_COMPATIBLE is not set -# end of Debugging - -CONFIG_RAMSTAGE_ADA=y -CONFIG_RAMSTAGE_LIBHWBASE=y -CONFIG_HWBASE_DYNAMIC_MMIO=y -CONFIG_HWBASE_DEFAULT_MMCONF=0xe0000000 -CONFIG_HWBASE_DIRECT_PCIDEV=y -CONFIG_DECOMPRESS_OFAST=y - -# -# Boot Logo Configuration -# -# CONFIG_BMP_LOGO is not set -# CONFIG_PLATFORM_HAS_SECONDARY_BOOT_INDICATOR_LOGO is not set -# CONFIG_FRAMEBUFFER_SPLASH_TEXT is not set -# end of Boot Logo Configuration - -CONFIG_MAX_REBOOT_CNT=3 -CONFIG_RELOCATABLE_MODULES=y -CONFIG_GENERIC_GPIO_LIB=y -CONFIG_HAVE_BOOTBLOCK=y -CONFIG_HAVE_ROMSTAGE=y -CONFIG_HAVE_RAMSTAGE=y diff --git a/config/module/coreboot/dell3050microsecure_vfsp_16mb/target.cfg b/config/module/coreboot/dell3050microsecure_vfsp_16mb/target.cfg deleted file mode 100644 index 83976dc2..00000000 --- a/config/module/coreboot/dell3050microsecure_vfsp_16mb/target.cfg +++ /dev/null @@ -1,16 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -tree="default" -xarch="i386-elf" -payload_seabios="y" -payload_grub="y" -payload_memtest="y" -grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" -vcfg="3050micro" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" -IFD_platform="sklkbl" - -payload_grubsea="y" -payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" diff --git a/config/module/coreboot/dell5050sff_vfsp_16mb/target.cfg b/config/module/coreboot/dell5050sff_vfsp_16mb/target.cfg index 6fd7f8d2..cc135e72 100644 --- a/config/module/coreboot/dell5050sff_vfsp_16mb/target.cfg +++ b/config/module/coreboot/dell5050sff_vfsp_16mb/target.cfg @@ -6,11 +6,11 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="5050sff" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/dell7010sff_12mb/target.cfg b/config/module/coreboot/dell7010sff_12mb/target.cfg index 9d31c1a3..2c68de13 100644 --- a/config/module/coreboot/dell7010sff_12mb/target.cfg +++ b/config/module/coreboot/dell7010sff_12mb/target.cfg @@ -6,9 +6,7 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" +grubtree="default" vcfg="t1650" -build_depend="seabios/build grub/nvme memtest86plus/default" - payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/dell780mt_8mb/target.cfg b/config/module/coreboot/dell780mt_8mb/target.cfg index 90fe2548..6e1daeca 100644 --- a/config/module/coreboot/dell780mt_8mb/target.cfg +++ b/config/module/coreboot/dell780mt_8mb/target.cfg @@ -6,6 +6,5 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci ata" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/dell780mt_truncate_8mb/target.cfg b/config/module/coreboot/dell780mt_truncate_8mb/target.cfg index 90fe2548..6e1daeca 100644 --- a/config/module/coreboot/dell780mt_truncate_8mb/target.cfg +++ b/config/module/coreboot/dell780mt_truncate_8mb/target.cfg @@ -6,6 +6,5 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci ata" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/dell780usff_8mb/target.cfg b/config/module/coreboot/dell780usff_8mb/target.cfg index 90fe2548..6e1daeca 100644 --- a/config/module/coreboot/dell780usff_8mb/target.cfg +++ b/config/module/coreboot/dell780usff_8mb/target.cfg @@ -6,6 +6,5 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci ata" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/dell780usff_truncate_8mb/target.cfg b/config/module/coreboot/dell780usff_truncate_8mb/target.cfg index 90fe2548..6e1daeca 100644 --- a/config/module/coreboot/dell780usff_truncate_8mb/target.cfg +++ b/config/module/coreboot/dell780usff_truncate_8mb/target.cfg @@ -6,6 +6,5 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci ata" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/dell9020mt_nri_12mb/target.cfg b/config/module/coreboot/dell9020mt_nri_12mb/target.cfg index 9981c28b..976fb103 100644 --- a/config/module/coreboot/dell9020mt_nri_12mb/target.cfg +++ b/config/module/coreboot/dell9020mt_nri_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="haswell" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/dell9020sff_nri_12mb/target.cfg b/config/module/coreboot/dell9020sff_nri_12mb/target.cfg index 6b3c912e..347547fc 100644 --- a/config/module/coreboot/dell9020sff_nri_12mb/target.cfg +++ b/config/module/coreboot/dell9020sff_nri_12mb/target.cfg @@ -6,10 +6,10 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="haswell" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e4300_4mb/target.cfg b/config/module/coreboot/e4300_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/e4300_4mb/target.cfg +++ b/config/module/coreboot/e4300_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/e5420_6mb/target.cfg b/config/module/coreboot/e5420_6mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/e5420_6mb/target.cfg +++ b/config/module/coreboot/e5420_6mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e5520_6mb/target.cfg b/config/module/coreboot/e5520_6mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/e5520_6mb/target.cfg +++ b/config/module/coreboot/e5520_6mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e5530_12mb/target.cfg b/config/module/coreboot/e5530_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/e5530_12mb/target.cfg +++ b/config/module/coreboot/e5530_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6220_10mb/target.cfg b/config/module/coreboot/e6220_10mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/e6220_10mb/target.cfg +++ b/config/module/coreboot/e6220_10mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6230_12mb/target.cfg b/config/module/coreboot/e6230_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/e6230_12mb/target.cfg +++ b/config/module/coreboot/e6230_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6320_10mb/target.cfg b/config/module/coreboot/e6320_10mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/e6320_10mb/target.cfg +++ b/config/module/coreboot/e6320_10mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6330_12mb/target.cfg b/config/module/coreboot/e6330_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/e6330_12mb/target.cfg +++ b/config/module/coreboot/e6330_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6400_4mb/target.cfg b/config/module/coreboot/e6400_4mb/target.cfg index fc70f66a..dec4c4d6 100644 --- a/config/module/coreboot/e6400_4mb/target.cfg +++ b/config/module/coreboot/e6400_4mb/target.cfg @@ -8,3 +8,4 @@ payload_memtest="y" grub_scan_disk="ahci" vcfg="e6400" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/e6400nvidia_4mb/target.cfg b/config/module/coreboot/e6400nvidia_4mb/target.cfg index e87c8f32..00b058f7 100644 --- a/config/module/coreboot/e6400nvidia_4mb/target.cfg +++ b/config/module/coreboot/e6400nvidia_4mb/target.cfg @@ -3,7 +3,7 @@ tree="default" xarch="i386-elf" payload_seabios="y" -payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" vcfg="e6400" +build_depend="seabios/build memtest86plus/default" diff --git a/config/module/coreboot/e6420_10mb/target.cfg b/config/module/coreboot/e6420_10mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/e6420_10mb/target.cfg +++ b/config/module/coreboot/e6420_10mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6430_12mb/target.cfg b/config/module/coreboot/e6430_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/e6430_12mb/target.cfg +++ b/config/module/coreboot/e6430_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6520_10mb/target.cfg b/config/module/coreboot/e6520_10mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/e6520_10mb/target.cfg +++ b/config/module/coreboot/e6520_10mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e6530_12mb/target.cfg b/config/module/coreboot/e6530_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/e6530_12mb/target.cfg +++ b/config/module/coreboot/e6530_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/e7240_12mb/target.cfg b/config/module/coreboot/e7240_12mb/target.cfg index e1d56b77..dfcbdefe 100644 --- a/config/module/coreboot/e7240_12mb/target.cfg +++ b/config/module/coreboot/e7240_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="e7240" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/edk2_mrchromebox/target.cfg b/config/module/coreboot/edk2_mrchromebox/target.cfg index 44324ba3..bc7bba5e 100644 --- a/config/module/coreboot/edk2_mrchromebox/target.cfg +++ b/config/module/coreboot/edk2_mrchromebox/target.cfg @@ -4,4 +4,11 @@ xarch="i386-elf" tree="default" +# default is the same as below, but with coreboot/edk2_mrchromebox at the +# end. we must exclude it in *edk2_mrchromebox* to prevent an infinite loop! +build_depend="" + +# note: build_depend can be empty here, since lbmk doesn't process payloads +# on this target. coreboot's build system grabs edk2 and builds it instead. + release="n" diff --git a/config/module/coreboot/g43t_am3/target.cfg b/config/module/coreboot/g43t_am3/target.cfg index 065b601f..a42e3468 100644 --- a/config/module/coreboot/g43t_am3/target.cfg +++ b/config/module/coreboot/g43t_am3/target.cfg @@ -4,6 +4,5 @@ tree="default" xarch="i386-elf" payload_seabios="y" payload_memtest="y" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/g43t_am3_16mb/target.cfg b/config/module/coreboot/g43t_am3_16mb/target.cfg index 168eecea..7302412a 100644 --- a/config/module/coreboot/g43t_am3_16mb/target.cfg +++ b/config/module/coreboot/g43t_am3_16mb/target.cfg @@ -5,6 +5,5 @@ xarch="i386-elf" payload_seabios="y" payload_memtest="y" release="n" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/ga_g41m_es2l/target.cfg b/config/module/coreboot/ga_g41m_es2l/target.cfg index 2488a3eb..a42e3468 100644 --- a/config/module/coreboot/ga_g41m_es2l/target.cfg +++ b/config/module/coreboot/ga_g41m_es2l/target.cfg @@ -4,5 +4,5 @@ tree="default" xarch="i386-elf" payload_seabios="y" payload_memtest="y" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/hp2170p_16mb/target.cfg b/config/module/coreboot/hp2170p_16mb/target.cfg index a7b89a96..2fd23cf7 100644 --- a/config/module/coreboot/hp2170p_16mb/target.cfg +++ b/config/module/coreboot/hp2170p_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="hp2170p" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp2560p_8mb/target.cfg b/config/module/coreboot/hp2560p_8mb/target.cfg index 2d3cb3e1..180f7f9a 100644 --- a/config/module/coreboot/hp2560p_8mb/target.cfg +++ b/config/module/coreboot/hp2560p_8mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="hp2560p" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp2570p_16mb/target.cfg b/config/module/coreboot/hp2570p_16mb/target.cfg index 6d295fc6..52561d49 100644 --- a/config/module/coreboot/hp2570p_16mb/target.cfg +++ b/config/module/coreboot/hp2570p_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="hp2570p" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8200sff_4mb/target.cfg b/config/module/coreboot/hp8200sff_4mb/target.cfg index cd2a6382..cac267f3 100644 --- a/config/module/coreboot/hp8200sff_4mb/target.cfg +++ b/config/module/coreboot/hp8200sff_4mb/target.cfg @@ -6,9 +6,7 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" +grubtree="default" vcfg="hp8200sff" -build_depend="seabios/build grub/nvme memtest86plus/default" - payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8200sff_8mb/target.cfg b/config/module/coreboot/hp8200sff_8mb/target.cfg index cd2a6382..cac267f3 100644 --- a/config/module/coreboot/hp8200sff_8mb/target.cfg +++ b/config/module/coreboot/hp8200sff_8mb/target.cfg @@ -6,9 +6,7 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" +grubtree="default" vcfg="hp8200sff" -build_depend="seabios/build grub/nvme memtest86plus/default" - payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp820g2_12mb/target.cfg b/config/module/coreboot/hp820g2_12mb/target.cfg index 0670747d..8dd683a8 100644 --- a/config/module/coreboot/hp820g2_12mb/target.cfg +++ b/config/module/coreboot/hp820g2_12mb/target.cfg @@ -6,8 +6,8 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="hp820g2" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8300cmt_16mb/target.cfg b/config/module/coreboot/hp8300cmt_16mb/target.cfg index 70943fba..fc74fb6c 100644 --- a/config/module/coreboot/hp8300cmt_16mb/target.cfg +++ b/config/module/coreboot/hp8300cmt_16mb/target.cfg @@ -6,9 +6,7 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" +grubtree="default" vcfg="ivybridge" -build_depend="seabios/build grub/nvme memtest86plus/default" - payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8300usdt_16mb/target.cfg b/config/module/coreboot/hp8300usdt_16mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/hp8300usdt_16mb/target.cfg +++ b/config/module/coreboot/hp8300usdt_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8460pintel_8mb/target.cfg b/config/module/coreboot/hp8460pintel_8mb/target.cfg index 0437e348..a5a31988 100644 --- a/config/module/coreboot/hp8460pintel_8mb/target.cfg +++ b/config/module/coreboot/hp8460pintel_8mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="hp8460pintel" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8470pintel_16mb/target.cfg b/config/module/coreboot/hp8470pintel_16mb/target.cfg index c9d46c24..ef2ab548 100644 --- a/config/module/coreboot/hp8470pintel_16mb/target.cfg +++ b/config/module/coreboot/hp8470pintel_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="hp8470pintel" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp8560w_8mb/target.cfg b/config/module/coreboot/hp8560w_8mb/target.cfg index d75f5113..28bca5bd 100644 --- a/config/module/coreboot/hp8560w_8mb/target.cfg +++ b/config/module/coreboot/hp8560w_8mb/target.cfg @@ -3,9 +3,8 @@ tree="default" xarch="i386-elf" payload_seabios="y" -payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" vcfg="hp8560w" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hp9470m_16mb/target.cfg b/config/module/coreboot/hp9470m_16mb/target.cfg index bd8a6886..cc7b322a 100644 --- a/config/module/coreboot/hp9470m_16mb/target.cfg +++ b/config/module/coreboot/hp9470m_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="hp9470m" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/hppro3500series_8mb/target.cfg b/config/module/coreboot/hppro3500series_8mb/target.cfg index 3351a1df..4bb2f1b2 100644 --- a/config/module/coreboot/hppro3500series_8mb/target.cfg +++ b/config/module/coreboot/hppro3500series_8mb/target.cfg @@ -6,9 +6,7 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" +grubtree="default" vcfg="hppro3500series" -build_depend="seabios/build grub/nvme memtest86plus/default" - payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/kcma_d8_16mb/target.cfg b/config/module/coreboot/kcma_d8_16mb/target.cfg index a9ab7e44..09f150cc 100644 --- a/config/module/coreboot/kcma_d8_16mb/target.cfg +++ b/config/module/coreboot/kcma_d8_16mb/target.cfg @@ -6,8 +6,6 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/kcma_d8_2mb/target.cfg b/config/module/coreboot/kcma_d8_2mb/target.cfg index e30b78d1..9d0f60bd 100644 --- a/config/module/coreboot/kcma_d8_2mb/target.cfg +++ b/config/module/coreboot/kcma_d8_2mb/target.cfg @@ -6,6 +6,5 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/kfsn4_dre_2mb/target.cfg b/config/module/coreboot/kfsn4_dre_2mb/target.cfg index cf92f09b..12fbdbdd 100644 --- a/config/module/coreboot/kfsn4_dre_2mb/target.cfg +++ b/config/module/coreboot/kfsn4_dre_2mb/target.cfg @@ -6,3 +6,4 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/kgpe_d16_16mb/target.cfg b/config/module/coreboot/kgpe_d16_16mb/target.cfg index a9ab7e44..09f150cc 100644 --- a/config/module/coreboot/kgpe_d16_16mb/target.cfg +++ b/config/module/coreboot/kgpe_d16_16mb/target.cfg @@ -6,8 +6,6 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/kgpe_d16_2mb/target.cfg b/config/module/coreboot/kgpe_d16_2mb/target.cfg index e30b78d1..9d0f60bd 100644 --- a/config/module/coreboot/kgpe_d16_2mb/target.cfg +++ b/config/module/coreboot/kgpe_d16_2mb/target.cfg @@ -6,6 +6,5 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/macbook21/target.cfg b/config/module/coreboot/macbook21/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/macbook21/target.cfg +++ b/config/module/coreboot/macbook21/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/macbook21_16mb/target.cfg b/config/module/coreboot/macbook21_16mb/target.cfg index a7ad9910..6b21fccf 100644 --- a/config/module/coreboot/macbook21_16mb/target.cfg +++ b/config/module/coreboot/macbook21_16mb/target.cfg @@ -6,4 +6,4 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" - +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/q45t_am/target.cfg b/config/module/coreboot/q45t_am/target.cfg index 065b601f..a42e3468 100644 --- a/config/module/coreboot/q45t_am/target.cfg +++ b/config/module/coreboot/q45t_am/target.cfg @@ -4,6 +4,5 @@ tree="default" xarch="i386-elf" payload_seabios="y" payload_memtest="y" -grubtree="nvme" -build_depend="seabios/build grub/nvme memtest86plus/default" - +grubtree="default" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/qemu_x86_12mb/target.cfg b/config/module/coreboot/qemu_x86_12mb/target.cfg index 6aef8f5d..784cc8c0 100644 --- a/config/module/coreboot/qemu_x86_12mb/target.cfg +++ b/config/module/coreboot/qemu_x86_12mb/target.cfg @@ -6,4 +6,3 @@ payload_grub="y" payload_seabios="y" payload_memtest="y" build_depend="seabios/build grub/default memtest86plus/default" - diff --git a/config/module/coreboot/qemu_x86_64_12mb/target.cfg b/config/module/coreboot/qemu_x86_64_12mb/target.cfg index a8e3e151..407224eb 100644 --- a/config/module/coreboot/qemu_x86_64_12mb/target.cfg +++ b/config/module/coreboot/qemu_x86_64_12mb/target.cfg @@ -5,4 +5,4 @@ xarch="i386-elf" payload_grub="y" payload_seabios="y" payload_memtest="y" - +payload_edk2="edk2_mrchromebox" diff --git a/config/module/coreboot/r400_16mb/target.cfg b/config/module/coreboot/r400_16mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/r400_16mb/target.cfg +++ b/config/module/coreboot/r400_16mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/r400_4mb/target.cfg b/config/module/coreboot/r400_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/r400_4mb/target.cfg +++ b/config/module/coreboot/r400_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/r400_8mb/target.cfg b/config/module/coreboot/r400_8mb/target.cfg index c559eb8b..a704ff96 100644 --- a/config/module/coreboot/r400_8mb/target.cfg +++ b/config/module/coreboot/r400_8mb/target.cfg @@ -6,3 +6,4 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/r500_4mb/target.cfg b/config/module/coreboot/r500_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/r500_4mb/target.cfg +++ b/config/module/coreboot/r500_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/supermicro_x11ssh_f_vfsp_16mb/target.cfg b/config/module/coreboot/supermicro_x11ssh_f_vfsp_16mb/target.cfg index e15fbeae..d07b19ff 100644 --- a/config/module/coreboot/supermicro_x11ssh_f_vfsp_16mb/target.cfg +++ b/config/module/coreboot/supermicro_x11ssh_f_vfsp_16mb/target.cfg @@ -6,10 +6,10 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="supermicro_x11_lga1151_series" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t1650_12mb/target.cfg b/config/module/coreboot/t1650_12mb/target.cfg index 9d31c1a3..2c68de13 100644 --- a/config/module/coreboot/t1650_12mb/target.cfg +++ b/config/module/coreboot/t1650_12mb/target.cfg @@ -6,9 +6,7 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="nvme" +grubtree="default" vcfg="t1650" -build_depend="seabios/build grub/nvme memtest86plus/default" - payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t1700mt_bmrc_12mb/target.cfg b/config/module/coreboot/t1700mt_bmrc_12mb/target.cfg index 1cab2d28..92d01ce1 100644 --- a/config/module/coreboot/t1700mt_bmrc_12mb/target.cfg +++ b/config/module/coreboot/t1700mt_bmrc_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="t1700" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t1700sff_bmrc_12mb/target.cfg b/config/module/coreboot/t1700sff_bmrc_12mb/target.cfg index 1cab2d28..92d01ce1 100644 --- a/config/module/coreboot/t1700sff_bmrc_12mb/target.cfg +++ b/config/module/coreboot/t1700sff_bmrc_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="t1700" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t400_16mb/target.cfg b/config/module/coreboot/t400_16mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/t400_16mb/target.cfg +++ b/config/module/coreboot/t400_16mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t400_4mb/target.cfg b/config/module/coreboot/t400_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/t400_4mb/target.cfg +++ b/config/module/coreboot/t400_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t400_8mb/target.cfg b/config/module/coreboot/t400_8mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/t400_8mb/target.cfg +++ b/config/module/coreboot/t400_8mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t420_8mb/target.cfg b/config/module/coreboot/t420_8mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/t420_8mb/target.cfg +++ b/config/module/coreboot/t420_8mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t420s_8mb/target.cfg b/config/module/coreboot/t420s_8mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/t420s_8mb/target.cfg +++ b/config/module/coreboot/t420s_8mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t430_12mb/target.cfg b/config/module/coreboot/t430_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/t430_12mb/target.cfg +++ b/config/module/coreboot/t430_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t440plibremrc_12mb/target.cfg b/config/module/coreboot/t440plibremrc_12mb/target.cfg index 9981c28b..976fb103 100644 --- a/config/module/coreboot/t440plibremrc_12mb/target.cfg +++ b/config/module/coreboot/t440plibremrc_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="haswell" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t440plibremrc_4mcbfs_12mb/target.cfg b/config/module/coreboot/t440plibremrc_4mcbfs_12mb/target.cfg index 9981c28b..976fb103 100644 --- a/config/module/coreboot/t440plibremrc_4mcbfs_12mb/target.cfg +++ b/config/module/coreboot/t440plibremrc_4mcbfs_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="haswell" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t480_vfsp_16mb/target.cfg b/config/module/coreboot/t480_vfsp_16mb/target.cfg index 7a0bf95e..8c82fd18 100644 --- a/config/module/coreboot/t480_vfsp_16mb/target.cfg +++ b/config/module/coreboot/t480_vfsp_16mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="t480" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t480s_vfsp_16mb/target.cfg b/config/module/coreboot/t480s_vfsp_16mb/target.cfg index d83adedf..ad3db064 100644 --- a/config/module/coreboot/t480s_vfsp_16mb/target.cfg +++ b/config/module/coreboot/t480s_vfsp_16mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="t480s" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t500_16mb/target.cfg b/config/module/coreboot/t500_16mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/t500_16mb/target.cfg +++ b/config/module/coreboot/t500_16mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t500_4mb/target.cfg b/config/module/coreboot/t500_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/t500_4mb/target.cfg +++ b/config/module/coreboot/t500_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t500_8mb/target.cfg b/config/module/coreboot/t500_8mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/t500_8mb/target.cfg +++ b/config/module/coreboot/t500_8mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t520_8mb/target.cfg b/config/module/coreboot/t520_8mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/t520_8mb/target.cfg +++ b/config/module/coreboot/t520_8mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t530_12mb/target.cfg b/config/module/coreboot/t530_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/t530_12mb/target.cfg +++ b/config/module/coreboot/t530_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t580_vfsp_16mb/target.cfg b/config/module/coreboot/t580_vfsp_16mb/target.cfg index 7dc6981a..ee7bd8fa 100644 --- a/config/module/coreboot/t580_vfsp_16mb/target.cfg +++ b/config/module/coreboot/t580_vfsp_16mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="t580" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/t60_16mb_intelgpu/target.cfg b/config/module/coreboot/t60_16mb_intelgpu/target.cfg index fde3711f..3498c4a4 100644 --- a/config/module/coreboot/t60_16mb_intelgpu/target.cfg +++ b/config/module/coreboot/t60_16mb_intelgpu/target.cfg @@ -5,5 +5,4 @@ xarch="i386-elf" payload_seabios="y" payload_grub="y" grub_scan_disk="ahci" -build_depend="seabios/build grub/default" - +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/t60_intelgpu/target.cfg b/config/module/coreboot/t60_intelgpu/target.cfg index fde3711f..3498c4a4 100644 --- a/config/module/coreboot/t60_intelgpu/target.cfg +++ b/config/module/coreboot/t60_intelgpu/target.cfg @@ -5,5 +5,4 @@ xarch="i386-elf" payload_seabios="y" payload_grub="y" grub_scan_disk="ahci" -build_depend="seabios/build grub/default" - +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/w500_16mb/target.cfg b/config/module/coreboot/w500_16mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/w500_16mb/target.cfg +++ b/config/module/coreboot/w500_16mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/w500_4mb/target.cfg b/config/module/coreboot/w500_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/w500_4mb/target.cfg +++ b/config/module/coreboot/w500_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/w500_8mb/target.cfg b/config/module/coreboot/w500_8mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/w500_8mb/target.cfg +++ b/config/module/coreboot/w500_8mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/w530_12mb/target.cfg b/config/module/coreboot/w530_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/w530_12mb/target.cfg +++ b/config/module/coreboot/w530_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/w541_12mb/target.cfg b/config/module/coreboot/w541_12mb/target.cfg index 9981c28b..976fb103 100644 --- a/config/module/coreboot/w541_12mb/target.cfg +++ b/config/module/coreboot/w541_12mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="haswell" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x200_16mb/target.cfg b/config/module/coreboot/x200_16mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/x200_16mb/target.cfg +++ b/config/module/coreboot/x200_16mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/x200_4mb/target.cfg b/config/module/coreboot/x200_4mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/x200_4mb/target.cfg +++ b/config/module/coreboot/x200_4mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/x200_8mb/target.cfg b/config/module/coreboot/x200_8mb/target.cfg index a7ad9910..040e806a 100644 --- a/config/module/coreboot/x200_8mb/target.cfg +++ b/config/module/coreboot/x200_8mb/target.cfg @@ -7,3 +7,4 @@ payload_grub="y" payload_memtest="y" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/x220_8mb/target.cfg b/config/module/coreboot/x220_8mb/target.cfg index 70d3f17d..081e4a72 100644 --- a/config/module/coreboot/x220_8mb/target.cfg +++ b/config/module/coreboot/x220_8mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="sandybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x230_12mb/target.cfg b/config/module/coreboot/x230_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/x230_12mb/target.cfg +++ b/config/module/coreboot/x230_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x230_16mb/target.cfg b/config/module/coreboot/x230_16mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/x230_16mb/target.cfg +++ b/config/module/coreboot/x230_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x230t_12mb/target.cfg b/config/module/coreboot/x230t_12mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/x230t_12mb/target.cfg +++ b/config/module/coreboot/x230t_12mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x230t_16mb/target.cfg b/config/module/coreboot/x230t_16mb/target.cfg index 85eef375..edec04de 100644 --- a/config/module/coreboot/x230t_16mb/target.cfg +++ b/config/module/coreboot/x230t_16mb/target.cfg @@ -9,4 +9,4 @@ grub_scan_disk="ahci" vcfg="ivybridge" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x270_vfsp_16mb/target.cfg b/config/module/coreboot/x270_vfsp_16mb/target.cfg index 701ef4c9..b3fdac75 100644 --- a/config/module/coreboot/x270_vfsp_16mb/target.cfg +++ b/config/module/coreboot/x270_vfsp_16mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="x270" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x280_vfsp_16mb/target.cfg b/config/module/coreboot/x280_vfsp_16mb/target.cfg index 5cdbcdfa..cda5c8b9 100644 --- a/config/module/coreboot/x280_vfsp_16mb/target.cfg +++ b/config/module/coreboot/x280_vfsp_16mb/target.cfg @@ -6,9 +6,9 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="x280" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="sklkbl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x2e_n150/target.cfg b/config/module/coreboot/x2e_n150/target.cfg index e920e033..618a00a1 100644 --- a/config/module/coreboot/x2e_n150/target.cfg +++ b/config/module/coreboot/x2e_n150/target.cfg @@ -6,10 +6,10 @@ payload_seabios="y" payload_grub="y" payload_memtest="y" grub_scan_disk="nvme ahci" -grubtree="xhci_nvme" +grubtree="xhci" vcfg="x2e_n150" -build_depend="seabios/build grub/xhci_nvme memtest86plus/default" +build_depend="seabios/build grub/xhci memtest86plus/default coreboot/edk2_mrchromebox" IFD_platform="adl" payload_edk2="edk2_mrchromebox" -build_depend="$build_depend coreboot/edk2_mrchromebox" + diff --git a/config/module/coreboot/x301_16mb/target.cfg b/config/module/coreboot/x301_16mb/target.cfg index 48039df7..7248a4e7 100644 --- a/config/module/coreboot/x301_16mb/target.cfg +++ b/config/module/coreboot/x301_16mb/target.cfg @@ -8,3 +8,4 @@ payload_memtest="y" release="n" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/x301_4mb/target.cfg b/config/module/coreboot/x301_4mb/target.cfg index 48039df7..7248a4e7 100644 --- a/config/module/coreboot/x301_4mb/target.cfg +++ b/config/module/coreboot/x301_4mb/target.cfg @@ -8,3 +8,4 @@ payload_memtest="y" release="n" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/coreboot/x301_8mb/target.cfg b/config/module/coreboot/x301_8mb/target.cfg index 48039df7..7248a4e7 100644 --- a/config/module/coreboot/x301_8mb/target.cfg +++ b/config/module/coreboot/x301_8mb/target.cfg @@ -8,3 +8,4 @@ payload_memtest="y" release="n" grub_scan_disk="ahci" +build_depend="seabios/build grub/default memtest86plus/default" diff --git a/config/module/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch b/config/module/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch index 7112b0aa..58368069 100644 --- a/config/module/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch +++ b/config/module/grub/default/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch @@ -1,7 +1,7 @@ -From 5a2c887181e7cdbd6b38d544e460d02623c902e6 Mon Sep 17 00:00:00 2001 +From e450282a82ea84279322cac9e77f9fc642138217 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 31 Oct 2021 03:47:05 +0000 -Subject: [PATCH 01/10] mitigate grub's missing characters for borders/arrow +Subject: [PATCH 01/11] mitigate grub's missing characters for borders/arrow characters This cleans up the display on the main screen in GRUB. diff --git a/config/module/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch b/config/module/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch index af139ffc..0ff98bf6 100644 --- a/config/module/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch +++ b/config/module/grub/default/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch @@ -1,14 +1,14 @@ -From 25d7d35e0af74361a5510c3e6313b8ce5e00cd6a Mon Sep 17 00:00:00 2001 +From 868c276214905e5be2af4e72279023225898e425 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sat, 19 Nov 2022 16:30:24 +0000 -Subject: [PATCH 02/10] say the name libreboot, in the grub menu +Subject: [PATCH 02/11] 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 +index de9a3f961..c7a172a8b 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/module/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/module/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch index bb07abd6..4ae351b8 100644 --- a/config/module/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch +++ b/config/module/grub/default/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch @@ -1,7 +1,7 @@ -From acff2df937bb4172f9bdb46d12e82edbbcad7996 Mon Sep 17 00:00:00 2001 +From 58726beb8168b43a0127a4dd005bfc7f28625fe8 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 30 Oct 2023 22:19:21 +0000 -Subject: [PATCH 03/10] at_keyboard coreboot: force scancodes2+translate +Subject: [PATCH 03/11] 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/module/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch b/config/module/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch index fbcbb2c3..9d6afe82 100644 --- a/config/module/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch +++ b/config/module/grub/default/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch @@ -1,7 +1,7 @@ -From 247133e1f9820bcb81f7d27fc1395d64dc7b0a89 Mon Sep 17 00:00:00 2001 +From 0e2a9035222fc308003132944884777dabf0f48c Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Tue, 31 Oct 2023 10:33:28 +0000 -Subject: [PATCH 04/10] keylayouts: don't print "Unknown key" message +Subject: [PATCH 04/11] 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/module/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/module/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch index 93b0c505..670833fa 100644 --- a/config/module/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch +++ b/config/module/grub/default/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch @@ -1,7 +1,7 @@ -From c5ad46b7ba93136764fd1eae1bd0c0c32ce1c5b2 Mon Sep 17 00:00:00 2001 +From 5035acd30d48e2e42b8ae0c4a559db762ab7e6cd Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 16:14:58 +0000 -Subject: [PATCH 05/10] don't print missing prefix errors on the screen +Subject: [PATCH 05/11] 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, @@ -45,10 +45,10 @@ index 166445849..699b39bfa 100644 } diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c -index 580c8d3b0..6806bff9c 100644 +index 9a94dee55..e7cd85d35 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)), +@@ -188,7 +188,7 @@ grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)), prefix = grub_env_get ("prefix"); if (! prefix) @@ -72,7 +72,7 @@ index e7037f4ed..e5d4dbff1 100644 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 +index 0fe4a30ed..8abcaec76 100644 --- a/grub-core/font/font.c +++ b/grub-core/font/font.c @@ -461,7 +461,7 @@ grub_font_load (const char *filename) diff --git a/config/module/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch b/config/module/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch index 2dbf6d87..cacad0bb 100644 --- a/config/module/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch +++ b/config/module/grub/default/patches/0006-don-t-print-error-if-module-not-found.patch @@ -1,7 +1,7 @@ -From 6522ceca8949105b2e1575ada2f05b3061bfe8f3 Mon Sep 17 00:00:00 2001 +From 978e472d4f4c0777dd3296d559712b7af6230afc Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 16:36:22 +0000 -Subject: [PATCH 06/10] don't print error if module not found +Subject: [PATCH 06/11] 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/module/grub/default/patches/0007-don-t-print-empty-error-messages.patch b/config/module/grub/default/patches/0007-don-t-print-empty-error-messages.patch index 67ae7d66..fe7f34ef 100644 --- a/config/module/grub/default/patches/0007-don-t-print-empty-error-messages.patch +++ b/config/module/grub/default/patches/0007-don-t-print-empty-error-messages.patch @@ -1,7 +1,7 @@ -From 557d3e583e6aaa887d7b3876c6980ba0e0e671a3 Mon Sep 17 00:00:00 2001 +From bae0d6479233726e1ebfd3da96dad6f706f63eca Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 17:25:20 +0000 -Subject: [PATCH 07/10] don't print empty error messages +Subject: [PATCH 07/11] don't print empty error messages this is part two of the quest to kill the prefix error message. after i disabled prefix-related @@ -13,10 +13,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 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 +index f4c1b42c5..12a28f072 100644 --- a/grub-core/kern/err.c +++ b/grub-core/kern/err.c -@@ -116,7 +116,8 @@ grub_print_error (void) +@@ -130,7 +130,8 @@ grub_print_error (void) { if (grub_errno != GRUB_ERR_NONE) { diff --git a/config/module/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch b/config/module/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch index 7ce1bf09..8bd29e24 100644 --- a/config/module/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch +++ b/config/module/grub/default/patches/0008-kern-coreboot-mmap-Map-to-reserved.patch @@ -1,7 +1,7 @@ -From 101ea5afcfbe459e624df27c422f59b4ded07000 Mon Sep 17 00:00:00 2001 +From 4299c50fcc34a520b567d4ee26f8356be1430d36 Mon Sep 17 00:00:00 2001 From: Paul Menzel <pmenzel@molgen.mpg.de> Date: Mon, 17 May 2021 10:24:36 +0200 -Subject: [PATCH 08/10] kern/coreboot/mmap: Map to reserved +Subject: [PATCH 08/11] kern/coreboot/mmap: Map to reserved https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 diff --git a/config/module/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch b/config/module/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch deleted file mode 100644 index 9bb2563d..00000000 --- a/config/module/grub/default/patches/0009-Revert-configure-Check-linker-for-image-base-support.patch +++ /dev/null @@ -1,70 +0,0 @@ -From a56ceedd60bd6515ad3c84ec6aa4c3d66a8bac87 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Wed, 24 Dec 2025 01:42:17 +0100 -Subject: [PATCH 09/10] 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/module/grub/default/patches/0010-Revert-configure-Print-a-more-helpful-error-if-autoc.patch b/config/module/grub/default/patches/0010-Revert-configure-Print-a-more-helpful-error-if-autoc.patch deleted file mode 100644 index 0c968993..00000000 --- a/config/module/grub/default/patches/0010-Revert-configure-Print-a-more-helpful-error-if-autoc.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 66028b6bc149a25894fe5ca395b22804f389a18e Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Mon, 19 Jan 2026 15:27:23 +0000 -Subject: [PATCH 10/10] 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/module/grub/nvme/patches/0012-bootstrap-Don-t-download-po-files.patch b/config/module/grub/default/patches/0010-bootstrap-Don-t-download-po-files.patch index cfb66047..d7917f4c 100644 --- a/config/module/grub/nvme/patches/0012-bootstrap-Don-t-download-po-files.patch +++ b/config/module/grub/default/patches/0010-bootstrap-Don-t-download-po-files.patch @@ -1,7 +1,7 @@ -From 5d18c96a22d98d137ea40bfc6aabadce933c2d45 Mon Sep 17 00:00:00 2001 +From 9db7a6d0d878a5a2791428d48a38ca3553b4bdbd Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 1 Feb 2026 20:30:55 +0100 -Subject: [PATCH 1/1] bootstrap: Don't download po files +Subject: [PATCH 10/11] bootstrap: Don't download po files GRUB doesn't verify checksums at all, and it pulls from this URL recursively: diff --git a/config/module/grub/default/patches/0011-bootstrap-Don-t-download-po-files.patch b/config/module/grub/default/patches/0011-bootstrap-Don-t-download-po-files.patch deleted file mode 100644 index cfb66047..00000000 --- a/config/module/grub/default/patches/0011-bootstrap-Don-t-download-po-files.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 5d18c96a22d98d137ea40bfc6aabadce933c2d45 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Sun, 1 Feb 2026 20:30:55 +0100 -Subject: [PATCH 1/1] bootstrap: Don't download po files - -GRUB doesn't verify checksums at all, and it pulls from -this URL recursively: - -https://translationproject.org/latest/grub/ - -These files can change at any time, and GRUB is just -downloading them trustingly. Even if the upstream is -totally benevolent, what if they got hacked? - -I downloaded them, hashed them and decided to mirror -them on my RSYNC mirror. In this way, Libreboot can now -use them in a deterministic fashion. - -Simply adding them to the GRUB source code would mean -patching GRUB, which would add 8MB to lbmk. I won't do -it. - -Signed-off-by: Leah Rowe <leah@libreboot.org> ---- - bootstrap | 31 +++++++++++++------------------ - 1 file changed, 13 insertions(+), 18 deletions(-) - -diff --git a/bootstrap b/bootstrap -index dc9fb4383..9fc5a5c36 100755 ---- a/bootstrap -+++ b/bootstrap -@@ -1,5 +1,16 @@ - #! /bin/sh --# DO NOT EDIT! GENERATED AUTOMATICALLY! -+# THIS FILE WAS EDITED BY LIBREBOOT TO REMOVE -+# HACKY GRUB BEHAVIOUR; po files now downloaded -+# by lbmk, via config/submodule/grub/ - so that -+# versioned files are possible, with proper checksum -+# verification, and mirrors are used. -+ -+# Yes. This file has been modified. I intend to -+# eventually remove this hacky script. Probably -+# replace the entire GRUB build system. -+ -+# Please do fix/edit or (when possible) remove -+# this file. Thank you. - - # Bootstrap this package from checked-out sources. - -@@ -145,13 +156,6 @@ bootstrap_post_import_hook() { :; } - # Override it via your own definition in bootstrap.conf. - bootstrap_epilogue() { :; } - --# The command to download all .po files for a specified domain into a --# specified directory. Fill in the first %s with the destination --# directory and the second with the domain name. --po_download_command_format=\ --"wget --mirror --level=1 -nd -nv -A.po -P '%s' \ -- https://translationproject.org/latest/%s/" -- - # When extracting the package name from an AC_INIT invocation, - # prefer a non-empty tarname (4th argument of AC_INIT if given), else - # fall back to the package name (1st argument with munging). -@@ -909,14 +913,6 @@ autopull() - - # ----------------------------- Get translations. ----------------------------- - --download_po_files() { -- subdir=$1 -- domain=$2 -- echo "$me: getting translations into $subdir for $domain..." -- cmd=$(printf "$po_download_command_format" "$subdir" "$domain") -- eval "$cmd" --} -- - # Mirror .po files to $po_dir/.reference and copy only the new - # or modified ones into $po_dir. Also update $po_dir/LINGUAS. - # Note po files that exist locally only are left in $po_dir but will -@@ -932,8 +928,7 @@ update_po_files() { - ref_po_dir="$po_dir/.reference" - - test -d $ref_po_dir || mkdir $ref_po_dir || return -- download_po_files $ref_po_dir $domain \ -- && ls "$ref_po_dir"/*.po 2>/dev/null | -+ ls "$ref_po_dir"/*.po 2>/dev/null | - sed 's|.*/||; s|\.po$||' > "$po_dir/LINGUAS" || return - - for po in x $(ls $ref_po_dir | sed -n 's/\.po$//p'); do --- -2.47.3 - diff --git a/config/module/grub/xhci_nvme/patches/0024-force-disable-werror.patch b/config/module/grub/default/patches/0011-force-disable-werror.patch index a4837f63..2c194fae 100644 --- a/config/module/grub/xhci_nvme/patches/0024-force-disable-werror.patch +++ b/config/module/grub/default/patches/0011-force-disable-werror.patch @@ -1,7 +1,7 @@ -From 2adf79420721b5f7e25d657ba1a6bb60aa221bce Mon Sep 17 00:00:00 2001 +From c6e1d70e259e7e551d1e392b63c93903cb24444a Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 21 Sep 2026 12:13:16 +0100 -Subject: [PATCH 1/1] force-disable werror +Subject: [PATCH 11/11] force-disable werror Signed-off-by: Leah Rowe <leah@libreboot.org> --- @@ -33,10 +33,10 @@ index 43635d5ff..0f7f55e83 100644 if COND_STARFIELD diff --git a/acinclude.m4 b/acinclude.m4 -index fa7840f09..d871737fd 100644 +index 478aab6d3..dd3b360f2 100644 --- a/acinclude.m4 +++ b/acinclude.m4 -@@ -368,7 +368,7 @@ AC_MSG_CHECKING([whether `$CC' accepts `-mstack-arg-probe']) +@@ -379,7 +379,7 @@ AC_MSG_CHECKING([whether `$CC' accepts `-mstack-arg-probe']) AC_LANG_CONFTEST([AC_LANG_SOURCE([[ void foo (void) { volatile char a[8]; a[3]; } ]])]) @@ -45,7 +45,7 @@ index fa7840f09..d871737fd 100644 AC_MSG_RESULT([yes]) [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? rm -f conftest.s -@@ -430,7 +430,7 @@ link_nopie_needed=no] +@@ -441,7 +441,7 @@ link_nopie_needed=no] AC_MSG_CHECKING([whether linker needs disabling of PIE to work]) AC_LANG_CONFTEST([AC_LANG_SOURCE([[]])]) @@ -54,7 +54,7 @@ index fa7840f09..d871737fd 100644 AC_MSG_RESULT([no]) [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? rm -f conftest.o -@@ -446,7 +446,7 @@ AC_DEFUN([grub_CHECK_NO_PIE], +@@ -457,7 +457,7 @@ AC_DEFUN([grub_CHECK_NO_PIE], [AC_MSG_CHECKING([whether linker accepts -no-pie]) AC_CACHE_VAL(grub_cv_cc_ld_no_pie, [save_LDFLAGS="$LDFLAGS" @@ -63,7 +63,7 @@ index fa7840f09..d871737fd 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_ld_no_pie=yes], [grub_cv_cc_ld_no_pie=no]) -@@ -463,7 +463,7 @@ AC_DEFUN([grub_CHECK_NO_PIE_ONEWORD], +@@ -474,7 +474,7 @@ AC_DEFUN([grub_CHECK_NO_PIE_ONEWORD], [AC_MSG_CHECKING([whether linker accepts -nopie]) AC_CACHE_VAL(grub_cv_cc_ld_no_pie_oneword, [save_LDFLAGS="$LDFLAGS" @@ -86,10 +86,10 @@ index 7ef171b2b..41772df6b 100644 CFLAGS_POSIX = -fno-builtin diff --git a/configure.ac b/configure.ac -index 209c0fb11..1b808ce7b 100644 +index 8d1f5870f..be42dde1e 100644 --- a/configure.ac +++ b/configure.ac -@@ -433,10 +433,10 @@ AC_CHECK_FUNCS(posix_memalign memalign getextmntent atexit) +@@ -460,10 +460,10 @@ AC_CHECK_FUNCS(posix_memalign memalign getextmntent atexit) AC_CHECK_HEADERS(sys/param.h sys/mount.h sys/mnttab.h limits.h) # glibc 2.25 still includes sys/sysmacros.h in sys/types.h but emits deprecation @@ -102,7 +102,7 @@ index 209c0fb11..1b808ce7b 100644 AC_HEADER_MAJOR CFLAGS="$SAVED_CFLAGS" -@@ -464,7 +464,7 @@ AC_SUBST([LIBUTIL]) +@@ -491,7 +491,7 @@ AC_SUBST([LIBUTIL]) AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_host_cc_wtrampolines], [ SAVED_CFLAGS="$CFLAGS" @@ -111,7 +111,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h> int va_arg_func (int fixed, va_list args);]], [[]])], [grub_cv_host_cc_wtrampolines=yes], -@@ -520,7 +520,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_cc_w_extra_flags], [ +@@ -547,7 +547,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_cc_w_extra_flags], [ SAVED_CFLAGS="$CFLAGS" grub_cv_cc_w_extra_flags= for x in $EXTRA_WARN_FLAGS; do @@ -120,7 +120,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) if test x$flag = x1 ; then grub_cv_cc_w_extra_flags="$grub_cv_cc_w_extra_flags $x" -@@ -614,7 +614,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_target_cc_w_extra_flags], [ +@@ -651,7 +651,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_target_cc_w_extra_flags], [ grub_cv_target_cc_w_extra_flags= for x in $EXTRA_WARN_FLAGS; do @@ -129,7 +129,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -649,7 +649,7 @@ if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then +@@ -686,7 +686,7 @@ if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then if test x"$grub_cv_target_cc_big_endian" != xno ; then break fi @@ -138,7 +138,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ != __BYTE_ORDER__) #error still little endian -@@ -684,7 +684,7 @@ elif test x$target_cpu = xmipsel; then +@@ -721,7 +721,7 @@ elif test x$target_cpu = xmipsel; then if test x"$grub_cv_target_cc_little_endian" != xno ; then break fi @@ -147,7 +147,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ == __BYTE_ORDER__) #error still big endian -@@ -722,7 +722,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then +@@ -759,7 +759,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then if test x"$grub_cv_target_cc_mips_o32_abi" != xno ; then break fi @@ -156,7 +156,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if !defined(_ABIO32) || !defined(_MIPS_SIM) || (_MIPS_SIM != _ABIO32) #error not o32 ABI -@@ -794,7 +794,7 @@ fi +@@ -831,7 +831,7 @@ fi # on mips redirect cache flushing function to non-existant one. if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then AC_CACHE_CHECK([whether -mflush-func=grub_red_herring works], [grub_cv_cc_mflush_func], [ @@ -165,7 +165,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mflush_func=yes], [grub_cv_cc_mflush_func=no]) -@@ -805,7 +805,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then +@@ -842,7 +842,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then fi AC_CACHE_CHECK([whether -mno-gpopt works], [grub_cv_cc_mno_gpopt], [ @@ -174,7 +174,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mno_gpopt=yes], [grub_cv_cc_mno_gpopt=no]) -@@ -822,7 +822,7 @@ if test "x$target_cpu" = xi386; then +@@ -859,7 +859,7 @@ if test "x$target_cpu" = xi386; then TARGET_CFLAGS="$TARGET_CFLAGS -falign-functions=1" AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [ @@ -183,7 +183,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_falign_loop=yes], [grub_cv_cc_falign_loop=no]) -@@ -833,7 +833,7 @@ if test "x$target_cpu" = xi386; then +@@ -870,7 +870,7 @@ if test "x$target_cpu" = xi386; then fi AC_CACHE_CHECK([whether -falign-jumps works], [grub_cv_cc_falign_jumps], [ @@ -192,7 +192,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_falign_jumps=yes], [grub_cv_cc_falign_jumps=no]) -@@ -845,7 +845,7 @@ if test "x$target_cpu" = xi386; then +@@ -882,7 +882,7 @@ if test "x$target_cpu" = xi386; then fi AC_CACHE_CHECK([whether -freg-struct-return works], [grub_cv_cc_freg_struct_return], [ @@ -201,7 +201,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_freg_struct_return=yes], [grub_cv_cc_freg_struct_return=no]) -@@ -863,7 +863,7 @@ fi +@@ -900,7 +900,7 @@ fi if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ); then AC_CACHE_CHECK([whether -Wa,-mx86-used-note works], [grub_cv_cc_mx86_used_note], [ @@ -210,7 +210,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mx86_used_note=yes], [grub_cv_cc_mx86_used_note=no]) -@@ -877,7 +877,7 @@ fi +@@ -914,7 +914,7 @@ fi if test "x$target_cpu" = xloongarch64; then AC_CACHE_CHECK([whether _mno_explicit_relocs works], [grub_cv_cc_mno_explicit_relocs], [ @@ -219,7 +219,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mno_explicit_relocs=yes], [grub_cv_cc_mno_explicit_relocs=no]) -@@ -893,7 +893,7 @@ if test "x$target_cpu" = xloongarch64; then +@@ -930,7 +930,7 @@ if test "x$target_cpu" = xloongarch64; then if test x"$grub_cv_target_cc_mno_relax" != xno ; then break fi @@ -228,7 +228,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -920,7 +920,7 @@ if test "x$target_cpu" = xriscv64 || test "x$target_cpu" = xriscv32; then +@@ -957,7 +957,7 @@ if test "x$target_cpu" = xriscv64 || test "x$target_cpu" = xriscv32; then if test x"$grub_cv_target_cc_mno_relax" != xno ; then break fi @@ -237,7 +237,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -946,35 +946,35 @@ if test x"$platform" != xemu ; then +@@ -983,35 +983,35 @@ if test x"$platform" != xemu ; then AC_CACHE_CHECK([for options to get soft-float], grub_cv_target_cc_soft_float, [ grub_cv_target_cc_soft_float=no if test "x$target_cpu" = xarm64; then @@ -280,7 +280,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_soft_float="-m4-nofpu"], []) fi -@@ -984,7 +984,7 @@ if test x"$platform" != xemu ; then +@@ -1021,7 +1021,7 @@ if test x"$platform" != xemu ; then if test x"$grub_cv_target_cc_soft_float" != xno ; then break fi @@ -289,7 +289,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_soft_float="$cand"], []) done -@@ -1015,7 +1015,7 @@ if test x"$target_cpu" = xsparc64 ; then +@@ -1052,7 +1052,7 @@ if test x"$target_cpu" = xsparc64 ; then if test x"$grub_cv_target_cc_mno_app_regs" != xno ; then break fi @@ -298,7 +298,7 @@ index 209c0fb11..1b808ce7b 100644 CPPFLAGS="$TARGET_CPPFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_mno_app_regs="$cand"], []) -@@ -1039,7 +1039,7 @@ if test x"$target_cpu" = xsparc64 ; then +@@ -1076,7 +1076,7 @@ if test x"$target_cpu" = xsparc64 ; then break fi LDFLAGS="$TARGET_LDFLAGS $cand -nostdlib -static" @@ -307,7 +307,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -1569,7 +1569,7 @@ if test "x$target_cpu" = xarm; then +@@ -1627,7 +1627,7 @@ if test "x$target_cpu" = xarm; then if test x"$grub_cv_target_cc_mno_movt" != xno ; then break fi @@ -316,7 +316,7 @@ index 209c0fb11..1b808ce7b 100644 CPPFLAGS="$TARGET_CPPFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_mno_movt="$cand"], []) -@@ -1581,7 +1581,7 @@ if test "x$target_cpu" = xarm; then +@@ -1639,7 +1639,7 @@ if test "x$target_cpu" = xarm; then TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_movt" fi AC_CACHE_CHECK([whether option -mthumb-interwork works], grub_cv_cc_mthumb_interwork, [ @@ -325,7 +325,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mthumb_interwork=yes], [grub_cv_cc_mthumb_interwork=no]) -@@ -1595,7 +1595,7 @@ if test "x$target_cpu" = xarm; then +@@ -1653,7 +1653,7 @@ if test "x$target_cpu" = xarm; then fi AC_CACHE_CHECK([whether option -Qn works], grub_cv_target_cc_qn, [ @@ -334,7 +334,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_qn=yes], [grub_cv_target_cc_qn=no])]) -@@ -1748,7 +1748,7 @@ if test "$target_cpu" = arm; then +@@ -1806,7 +1806,7 @@ if test "$target_cpu" = arm; then AC_CACHE_CHECK([for compile options to get strict alignment], [grub_cv_target_cc_strict_align], [ grub_cv_target_cc_strict_align= for arg in -mno-unaligned-access "-Xclang -mstrict-align" -mstrict-align; do @@ -343,7 +343,7 @@ index 209c0fb11..1b808ce7b 100644 LDFLAGS="$TARGET_LDFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) if test x"$flag" = x1; then -@@ -1834,7 +1834,7 @@ int va_arg_func (int fixed, va_list args);]], [[]])], +@@ -1903,7 +1903,7 @@ int va_arg_func (int fixed, va_list args);]], [[]])], fi AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_cc_wtrampolines], [ @@ -352,7 +352,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h> int va_arg_func (int fixed, va_list args);]], [[]])], [grub_cv_cc_wtrampolines=yes], -@@ -2362,16 +2362,11 @@ AC_SUBST(END_SYMBOL) +@@ -2433,16 +2433,11 @@ AC_SUBST(END_SYMBOL) AC_SUBST(PACKAGE) AC_SUBST(VERSION) @@ -375,10 +375,10 @@ index 209c0fb11..1b808ce7b 100644 TARGET_CPP="$TARGET_CC -E" diff --git a/grub-core/Makefile.am b/grub-core/Makefile.am -index 8577462d5..8a12861ba 100644 +index d9a664c3f..c7ee64b4b 100644 --- a/grub-core/Makefile.am +++ b/grub-core/Makefile.am -@@ -483,7 +483,7 @@ if COND_ENABLE_EFIEMU +@@ -485,7 +485,7 @@ if COND_ENABLE_EFIEMU efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) -rm -f $@ -rm -f $@.bin @@ -387,7 +387,7 @@ index 8577462d5..8a12861ba 100644 if test "x$(TARGET_APPLE_LINKER)" = x1; then \ $(TARGET_OBJCONV) -felf32 -nu -nd $@.bin $@ || exit 1; \ rm -f $@.bin ; \ -@@ -496,10 +496,10 @@ efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) +@@ -498,10 +498,10 @@ efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) # Link format -arch,x86_64 means Apple linker efiemu64_c.o: efiemu/runtime/efiemu.c @@ -542,7 +542,7 @@ index 4a7bee2fb..b3fb1db4f 100755 # diff --git a/grub-core/lib/libgcrypt/configure.ac b/grub-core/lib/libgcrypt/configure.ac -index 1d06ca3b1..0a4e0286a 100644 +index 4f4df34ac..f96dfb464 100644 --- a/grub-core/lib/libgcrypt/configure.ac +++ b/grub-core/lib/libgcrypt/configure.ac @@ -1007,7 +1007,7 @@ AC_CACHE_CHECK(whether the visibility attribute is supported, diff --git a/config/module/grub/default/patches/0012-don-t-use-image-base-in-configure-ac.patch b/config/module/grub/default/patches/0012-don-t-use-image-base-in-configure-ac.patch new file mode 100644 index 00000000..a86f11bd --- /dev/null +++ b/config/module/grub/default/patches/0012-don-t-use-image-base-in-configure-ac.patch @@ -0,0 +1,36 @@ +From 3e245b015f4503c68d6b66089b45bfaeaa6c2d8a Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Thu, 24 Sep 2026 11:34:04 +0100 +Subject: [PATCH 1/1] don't use --image-base in configure-ac + +fixes a build error: + +kernel.img' is miscompiled: its start address is 0x9074 instead of 0x9000: ld.gold bug? + +this isn't needed on newer linux e.g. archlinux which has +a newer linker. it does however fix building on my +debian 13 machine. + +Signed-off-by: Leah Rowe <leah@libreboot.org> +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c476756e9..94ce6da7b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1509,8 +1509,8 @@ else + TARGET_IMG_LDFLAGS='-Wl,-N' + TARGET_IMG_LDFLAGS_AC='-Wl,-N' + if test "x$target_cpu-$platform" != "xi386-pc"; then +- AX_CHECK_LINK_FLAG([-Wl,--image-base,0], +- [TARGET_IMG_BASE_LDOPT="-Wl,--image-base,0 -Wl,-Ttext"], ++ AX_CHECK_LINK_FLAG([-Wl,0], ++ [TARGET_IMG_BASE_LDOPT="-Wl,0 -Wl,-Ttext"], + [TARGET_IMG_BASE_LDOPT="-Wl,-Ttext"], + [], + [AC_LANG_SOURCE([ +-- +2.47.3 + diff --git a/config/module/grub/default/target.cfg b/config/module/grub/default/target.cfg index cfa2a287..a7b98909 100644 --- a/config/module/grub/default/target.cfg +++ b/config/module/grub/default/target.cfg @@ -1,5 +1,5 @@ # SPDX-License-Identifier: GPL-3.0-or-later -rev="eaa3b8f0f90605a82c6bfda4c5c4b73c58eb81ac" +rev="f10ad08fa2a02dce95774c1b5caee38254b30531" tree="default" diff --git a/config/module/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch b/config/module/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch deleted file mode 100644 index 41194e98..00000000 --- a/config/module/grub/nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch +++ /dev/null @@ -1,90 +0,0 @@ -From 2c953c9160cbed357437891cf1790aeb1c2bd0f5 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Sun, 31 Oct 2021 03:47:05 +0000 -Subject: [PATCH 01/10] 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/module/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch b/config/module/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch deleted file mode 100644 index 359f31f8..00000000 --- a/config/module/grub/nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 71623385f90580b2138110cf00ee66b7a05abcf6 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Sat, 19 Nov 2022 16:30:24 +0000 -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..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 Magnanimous Max (GRUB menu): https://libreboot.org/")); - if (!msg_formatted) - return; - --- -2.47.3 - diff --git a/config/module/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/module/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch deleted file mode 100644 index ab26c6b2..00000000 --- a/config/module/grub/nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch +++ /dev/null @@ -1,107 +0,0 @@ -From a21c5e997d6247d713717745b5f7bd380b98fce1 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Mon, 30 Oct 2023 22:19:21 +0000 -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. - -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 <leah@libreboot.org> ---- - 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/module/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch b/config/module/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch deleted file mode 100644 index 68dfb2f7..00000000 --- a/config/module/grub/nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 062379b1cd5a4f99324c625fb371c29eb00ad4a2 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Tue, 31 Oct 2023 10:33:28 +0000 -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. - -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 <leah@libreboot.org> ---- - 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/module/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/module/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch deleted file mode 100644 index 53dbdd87..00000000 --- a/config/module/grub/nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch +++ /dev/null @@ -1,102 +0,0 @@ -From e77ca67985c1bef8afd93587232da3d298a8dd51 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Sun, 5 Nov 2023 16:14:58 +0000 -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, -so the behaviour is otherwise identical, but it will -no longer print a warning message on the screen. - -Signed-off-by: Leah Rowe <leah@libreboot.org> ---- - 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/module/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch b/config/module/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch deleted file mode 100644 index 3851c7fe..00000000 --- a/config/module/grub/nvme/patches/0006-don-t-print-error-if-module-not-found.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 9412b6be27bce2d79f154761387d35f44184c069 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Sun, 5 Nov 2023 16:36:22 +0000 -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 -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 <leah@libreboot.org> ---- - 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/module/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch b/config/module/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch deleted file mode 100644 index aa42420f..00000000 --- a/config/module/grub/nvme/patches/0007-don-t-print-empty-error-messages.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 2ad50d482cae148df832ccd68f90b8111684ecde Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Sun, 5 Nov 2023 17:25:20 +0000 -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 -messages, it still printed "error: ." on screen. - -Signed-off-by: Leah Rowe <leah@libreboot.org> ---- - 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/module/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch b/config/module/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch deleted file mode 100644 index e0b40f2f..00000000 --- a/config/module/grub/nvme/patches/0008-Add-native-NVMe-driver-based-on-SeaBIOS.patch +++ /dev/null @@ -1,1074 +0,0 @@ -From 202e20bef3766480aee18e679b9306387be615dc Mon Sep 17 00:00:00 2001 -From: Mate Kukri <km@mkukri.xyz> -Date: Mon, 20 May 2024 11:43:35 +0100 -Subject: [PATCH 08/10] Add native NVMe driver based on SeaBIOS - -Tested to successfully boot Debian on QEMU and OptiPlex 3050. - -Signed-off-by: Mate Kukri <km@mkukri.xyz> ---- - Makefile.am | 2 +- - grub-core/Makefile.core.def | 6 + - grub-core/commands/nativedisk.c | 1 + - grub-core/disk/nvme-int.h | 208 +++++++++ - grub-core/disk/nvme.c | 781 ++++++++++++++++++++++++++++++++ - include/grub/disk.h | 1 + - 6 files changed, 998 insertions(+), 1 deletion(-) - create mode 100644 grub-core/disk/nvme-int.h - create mode 100644 grub-core/disk/nvme.c - -diff --git a/Makefile.am b/Makefile.am -index 43635d5ff..2c86dbbf6 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -434,7 +434,7 @@ if COND_i386_coreboot - FS_PAYLOAD_MODULES ?= $(shell cat grub-core/fs.lst) - default_payload.elf: grub-mkstandalone grub-mkimage FORCE - test -f $@ && rm $@ || true -- pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o $@ --modules='ahci pata ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu $(FS_PAYLOAD_MODULES) password_pbkdf2 $(EXTRA_PAYLOAD_MODULES)' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=$(srcdir)/coreboot.cfg -+ pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o $@ --modules='ahci pata nvme ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu $(FS_PAYLOAD_MODULES) password_pbkdf2 $(EXTRA_PAYLOAD_MODULES)' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=$(srcdir)/coreboot.cfg - endif - - endif -diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def -index 0cf155128..176d35364 100644 ---- a/grub-core/Makefile.core.def -+++ b/grub-core/Makefile.core.def -@@ -2773,3 +2773,9 @@ module = { - cflags = '-Wno-uninitialized'; - cppflags = '-I$(srcdir)/lib/libtasn1-grub -I$(srcdir)/tests/asn1/'; - }; -+ -+module = { -+ name = nvme; -+ common = disk/nvme.c; -+ enable = pci; -+}; -diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c -index 6806bff9c..fd68a513e 100644 ---- a/grub-core/commands/nativedisk.c -+++ b/grub-core/commands/nativedisk.c -@@ -78,6 +78,7 @@ get_uuid (const char *name, char **uuid, int getnative) - case GRUB_DISK_DEVICE_ATA_ID: - case GRUB_DISK_DEVICE_SCSI_ID: - case GRUB_DISK_DEVICE_XEN: -+ case GRUB_DISK_DEVICE_NVME_ID: - if (getnative) - break; - /* FALLTHROUGH */ -diff --git a/grub-core/disk/nvme-int.h b/grub-core/disk/nvme-int.h -new file mode 100644 -index 000000000..1295b58aa ---- /dev/null -+++ b/grub-core/disk/nvme-int.h -@@ -0,0 +1,208 @@ -+// NVMe datastructures and constants -+// -+// Copyright 2017 Amazon.com, Inc. or its affiliates. -+// -+// This file may be distributed under the terms of the GNU LGPLv3 license. -+ -+#ifndef __NVME_INT_H -+#define __NVME_INT_H -+ -+#include <grub/types.h> -+ -+/* Data structures */ -+ -+/* The register file of a NVMe host controller. This struct follows the naming -+ scheme in the NVMe specification. */ -+struct nvme_reg { -+ grub_uint64_t cap; /* controller capabilities */ -+ grub_uint32_t vs; /* version */ -+ grub_uint32_t intms; /* interrupt mask set */ -+ grub_uint32_t intmc; /* interrupt mask clear */ -+ grub_uint32_t cc; /* controller configuration */ -+ grub_uint32_t _res0; -+ grub_uint32_t csts; /* controller status */ -+ grub_uint32_t _res1; -+ grub_uint32_t aqa; /* admin queue attributes */ -+ grub_uint64_t asq; /* admin submission queue base address */ -+ grub_uint64_t acq; /* admin completion queue base address */ -+}; -+ -+/* Submission queue entry */ -+struct nvme_sqe { -+ union { -+ grub_uint32_t dword[16]; -+ struct { -+ grub_uint32_t cdw0; /* Command DWORD 0 */ -+ grub_uint32_t nsid; /* Namespace ID */ -+ grub_uint64_t _res0; -+ grub_uint64_t mptr; /* metadata ptr */ -+ -+ grub_uint64_t dptr_prp1; -+ grub_uint64_t dptr_prp2; -+ }; -+ }; -+}; -+ -+/* Completion queue entry */ -+struct nvme_cqe { -+ union { -+ grub_uint32_t dword[4]; -+ struct { -+ grub_uint32_t cdw0; -+ grub_uint32_t _res0; -+ grub_uint16_t sq_head; -+ grub_uint16_t sq_id; -+ grub_uint16_t cid; -+ grub_uint16_t status; -+ }; -+ }; -+}; -+ -+/* The common part of every submission or completion queue. */ -+struct nvme_queue { -+ grub_uint32_t *dbl; /* doorbell */ -+ grub_uint16_t mask; /* length - 1 */ -+}; -+ -+struct nvme_cq { -+ struct nvme_queue common; -+ struct nvme_cqe *cqe; -+ -+ /* We have read upto (but not including) this entry in the queue. */ -+ grub_uint16_t head; -+ -+ /* The current phase bit the controller uses to indicate that it has written -+ a new entry. This is inverted after each wrap. */ -+ unsigned phase : 1; -+}; -+ -+struct nvme_sq { -+ struct nvme_queue common; -+ struct nvme_sqe *sqe; -+ -+ /* Corresponding completion queue. We only support a single SQ per CQ. */ -+ struct nvme_cq *cq; -+ -+ /* The last entry the controller has fetched. */ -+ grub_uint16_t head; -+ -+ /* The last value we have written to the tail doorbell. */ -+ grub_uint16_t tail; -+}; -+ -+struct nvme_ctrl { -+ grub_pci_device_t pci; -+ struct nvme_reg volatile *reg; -+ -+ grub_uint32_t ctrlnum; -+ -+ grub_uint32_t doorbell_stride; /* in bytes */ -+ -+ struct nvme_sq admin_sq; -+ struct nvme_cq admin_cq; -+ -+ grub_uint32_t ns_count; -+ -+ struct nvme_sq io_sq; -+ struct nvme_cq io_cq; -+}; -+ -+struct nvme_namespace { -+ struct nvme_namespace *next; -+ struct nvme_namespace **prev; -+ -+ char *devname; -+ -+ grub_uint32_t nsnum; -+ -+ struct nvme_ctrl *ctrl; -+ -+ grub_uint32_t ns_id; -+ -+ grub_uint64_t lba_count; /* The total amount of sectors. */ -+ -+ grub_uint32_t block_size; -+ grub_uint32_t metadata_size; -+ grub_uint32_t max_req_size; -+}; -+ -+/* Data structures for NVMe admin identify commands */ -+ -+struct nvme_identify_ctrl { -+ grub_uint16_t vid; -+ grub_uint16_t ssvid; -+ char sn[20]; -+ char mn[40]; -+ char fr[8]; -+ -+ grub_uint8_t rab; -+ grub_uint8_t ieee[3]; -+ grub_uint8_t cmic; -+ grub_uint8_t mdts; -+ -+ char _boring[516 - 78]; -+ -+ grub_uint32_t nn; /* number of namespaces */ -+}; -+ -+struct nvme_identify_ns_list { -+ grub_uint32_t ns_id[1024]; -+}; -+ -+struct nvme_lba_format { -+ grub_uint16_t ms; -+ grub_uint8_t lbads; -+ grub_uint8_t rp; -+}; -+ -+struct nvme_identify_ns { -+ grub_uint64_t nsze; -+ grub_uint64_t ncap; -+ grub_uint64_t nuse; -+ grub_uint8_t nsfeat; -+ grub_uint8_t nlbaf; -+ grub_uint8_t flbas; -+ -+ char _boring[128 - 27]; -+ -+ struct nvme_lba_format lbaf[16]; -+}; -+ -+union nvme_identify { -+ struct nvme_identify_ns ns; -+ struct nvme_identify_ctrl ctrl; -+ struct nvme_identify_ns_list ns_list; -+}; -+ -+/* NVMe constants */ -+ -+#define NVME_CAP_CSS_NVME (1ULL << 37) -+ -+#define NVME_CSTS_FATAL (1U << 1) -+#define NVME_CSTS_RDY (1U << 0) -+ -+#define NVME_CC_EN (1U << 0) -+ -+#define NVME_SQE_OPC_ADMIN_CREATE_IO_SQ 1U -+#define NVME_SQE_OPC_ADMIN_CREATE_IO_CQ 5U -+#define NVME_SQE_OPC_ADMIN_IDENTIFY 6U -+ -+#define NVME_SQE_OPC_IO_WRITE 1U -+#define NVME_SQE_OPC_IO_READ 2U -+ -+#define NVME_ADMIN_IDENTIFY_CNS_ID_NS 0U -+#define NVME_ADMIN_IDENTIFY_CNS_ID_CTRL 1U -+#define NVME_ADMIN_IDENTIFY_CNS_GET_NS_LIST 2U -+ -+#define NVME_CQE_DW3_P (1U << 16) -+ -+#define NVME_PAGE_SIZE 4096 -+#define NVME_PAGE_MASK ~(NVME_PAGE_SIZE - 1) -+ -+/* Length for the queue entries. */ -+#define NVME_SQE_SIZE_LOG 6 -+#define NVME_CQE_SIZE_LOG 4 -+ -+#endif -+ -+/* EOF */ -diff --git a/grub-core/disk/nvme.c b/grub-core/disk/nvme.c -new file mode 100644 -index 000000000..093237c70 ---- /dev/null -+++ b/grub-core/disk/nvme.c -@@ -0,0 +1,781 @@ -+// Low level NVMe disk access -+// -+// Based on SeaBIOS NVMe driver - Copyright 2017 Amazon.com, Inc. or its affiliates. -+// Port to GRUB2 done by Mate Kukri -+// -+// This file may be distributed under the terms of the GNU LGPLv3 license. -+ -+#include <grub/disk.h> -+#include <grub/dl.h> -+#include <grub/pci.h> -+#include "nvme-int.h" -+ -+GRUB_MOD_LICENSE ("GPLv3"); /* LGPLv3 in reality but it is GPLv3 compatible */ -+ -+static grub_uint32_t grub_nvme_ctrlcnt; -+static grub_uint32_t grub_nvme_nscnt; -+ -+static struct nvme_namespace *grub_nvme_namespaces; -+ -+// Page aligned "dma bounce buffer" of size NVME_PAGE_SIZE -+static void *nvme_dma_buffer; -+ -+static void * -+zalloc_page_aligned(grub_uint32_t size) -+{ -+ void *res = grub_memalign(NVME_PAGE_SIZE, size); -+ if (res) grub_memset(res, 0, size); -+ return res; -+} -+ -+static void -+nvme_init_queue_common(struct nvme_ctrl *ctrl, struct nvme_queue *q, grub_uint16_t q_idx, -+ grub_uint16_t length) -+{ -+ grub_memset(q, 0, sizeof(*q)); -+ q->dbl = (grub_uint32_t *)((char *)ctrl->reg + 0x1000 + q_idx * ctrl->doorbell_stride); -+ grub_dprintf("nvme", " q %p q_idx %u dbl %p\n", q, q_idx, q->dbl); -+ q->mask = length - 1; -+} -+ -+static int -+nvme_init_sq(struct nvme_ctrl *ctrl, struct nvme_sq *sq, grub_uint16_t q_idx, grub_uint16_t length, -+ struct nvme_cq *cq) -+{ -+ nvme_init_queue_common(ctrl, &sq->common, q_idx, length); -+ sq->sqe = zalloc_page_aligned(sizeof(*sq->sqe) * length); -+ -+ if (!sq->sqe) { -+ return -1; -+ } -+ -+ grub_dprintf("nvme", "sq %p q_idx %u sqe %p\n", sq, q_idx, sq->sqe); -+ sq->cq = cq; -+ sq->head = 0; -+ sq->tail = 0; -+ -+ return 0; -+} -+ -+static int -+nvme_init_cq(struct nvme_ctrl *ctrl, struct nvme_cq *cq, grub_uint16_t q_idx, grub_uint16_t length) -+{ -+ nvme_init_queue_common(ctrl, &cq->common, q_idx, length); -+ cq->cqe = zalloc_page_aligned(sizeof(*cq->cqe) * length); -+ if (!cq->cqe) { -+ return -1; -+ } -+ -+ cq->head = 0; -+ -+ /* All CQE phase bits are initialized to zero. This means initially we wait -+ for the host controller to set these to 1. */ -+ cq->phase = 1; -+ -+ return 0; -+} -+ -+static int -+nvme_poll_cq(struct nvme_cq *cq) -+{ -+ grub_uint32_t dw3 = *(volatile grub_uint32_t *) &cq->cqe[cq->head].dword[3]; -+ return (!!(dw3 & NVME_CQE_DW3_P) == cq->phase); -+} -+ -+static int -+nvme_is_cqe_success(struct nvme_cqe const *cqe) -+{ -+ return ((cqe->status >> 1) & 0xFF) == 0; -+} -+ -+static struct nvme_cqe -+nvme_error_cqe(void) -+{ -+ struct nvme_cqe r; -+ -+ /* 0xFF is a vendor specific status code != success. Should be okay for -+ indicating failure. */ -+ grub_memset(&r, 0xFF, sizeof(r)); -+ return r; -+} -+ -+static struct nvme_cqe -+nvme_consume_cqe(struct nvme_sq *sq) -+{ -+ struct nvme_cq *cq = sq->cq; -+ -+ if (!nvme_poll_cq(cq)) { -+ /* Cannot consume a completion queue entry, if there is none ready. */ -+ return nvme_error_cqe(); -+ } -+ -+ struct nvme_cqe *cqe = &cq->cqe[cq->head]; -+ grub_uint16_t cq_next_head = (cq->head + 1) & cq->common.mask; -+ grub_dprintf("nvme", "cq %p head %u -> %u\n", cq, cq->head, cq_next_head); -+ if (cq_next_head < cq->head) { -+ grub_dprintf("nvme", "cq %p wrap\n", cq); -+ cq->phase = ~cq->phase; -+ } -+ cq->head = cq_next_head; -+ -+ /* Update the submission queue head. */ -+ if (cqe->sq_head != sq->head) { -+ sq->head = cqe->sq_head; -+ grub_dprintf("nvme", "sq %p advanced to %u\n", sq, cqe->sq_head); -+ } -+ -+ /* Tell the controller that we consumed the completion. */ -+ *(volatile grub_uint32_t *) cq->common.dbl = cq->head; -+ -+ return *cqe; -+} -+ -+static struct nvme_cqe -+nvme_wait(struct nvme_sq *sq) -+{ -+ // static const unsigned nvme_timeout = 5000 /* ms */; -+ // grub_uint32_t to = timer_calc(nvme_timeout); -+ while (!nvme_poll_cq(sq->cq)) { -+ /* FIXME -+ yield(); -+ -+ if (timer_check(to)) { -+ warn_timeout(); -+ return nvme_error_cqe(); -+ }*/ -+ } -+ -+ return nvme_consume_cqe(sq); -+} -+ -+/* Returns the next submission queue entry (or NULL if the queue is full). It -+ also fills out Command Dword 0 and clears the rest. */ -+static struct nvme_sqe * -+nvme_get_next_sqe(struct nvme_sq *sq, grub_uint8_t opc, void *metadata, void *data, void *data2) -+{ -+ if (((sq->head + 1) & sq->common.mask) == sq->tail) { -+ grub_dprintf("nvme", "submission queue is full\n"); -+ return NULL; -+ } -+ -+ struct nvme_sqe *sqe = &sq->sqe[sq->tail]; -+ grub_dprintf("nvme", "sq %p next_sqe %u\n", sq, sq->tail); -+ -+ grub_memset(sqe, 0, sizeof(*sqe)); -+ sqe->cdw0 = opc | (sq->tail << 16 /* CID */); -+ sqe->mptr = (grub_uint32_t)metadata; -+ sqe->dptr_prp1 = (grub_uint32_t)data; -+ sqe->dptr_prp2 = (grub_uint32_t)data2; -+ -+ return sqe; -+} -+ -+/* Call this after you've filled out an sqe that you've got from nvme_get_next_sqe. */ -+static void -+nvme_commit_sqe(struct nvme_sq *sq) -+{ -+ grub_dprintf("nvme", "sq %p commit_sqe %u\n", sq, sq->tail); -+ sq->tail = (sq->tail + 1) & sq->common.mask; -+ *(volatile grub_uint32_t *) sq->common.dbl = sq->tail; -+} -+ -+/* Perform an identify command on the admin queue and return the resulting -+ buffer. This may be a NULL pointer, if something failed. This function -+ cannot be used after initialization, because it uses buffers in tmp zone. */ -+static union nvme_identify * -+nvme_admin_identify(struct nvme_ctrl *ctrl, grub_uint8_t cns, grub_uint32_t nsid) -+{ -+ union nvme_identify *identify_buf = zalloc_page_aligned(4096); -+ if (!identify_buf) -+ return NULL; -+ -+ struct nvme_sqe *cmd_identify; -+ cmd_identify = nvme_get_next_sqe(&ctrl->admin_sq, -+ NVME_SQE_OPC_ADMIN_IDENTIFY, NULL, -+ identify_buf, NULL); -+ if (!cmd_identify) -+ goto error; -+ -+ cmd_identify->nsid = nsid; -+ cmd_identify->dword[10] = cns; -+ -+ nvme_commit_sqe(&ctrl->admin_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ctrl->admin_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ goto error; -+ } -+ -+ return identify_buf; -+ error: -+ grub_free(identify_buf); -+ return NULL; -+} -+ -+static struct nvme_identify_ctrl * -+nvme_admin_identify_ctrl(struct nvme_ctrl *ctrl) -+{ -+ return &nvme_admin_identify(ctrl, NVME_ADMIN_IDENTIFY_CNS_ID_CTRL, 0)->ctrl; -+} -+ -+static struct nvme_identify_ns * -+nvme_admin_identify_ns(struct nvme_ctrl *ctrl, grub_uint32_t ns_id) -+{ -+ return &nvme_admin_identify(ctrl, NVME_ADMIN_IDENTIFY_CNS_ID_NS, -+ ns_id)->ns; -+} -+ -+static void -+nvme_probe_ns(struct nvme_ctrl *ctrl, grub_uint32_t ns_idx, grub_uint8_t mdts) -+{ -+ grub_uint32_t ns_id = ns_idx + 1; -+ -+ struct nvme_identify_ns *id = nvme_admin_identify_ns(ctrl, ns_id); -+ if (!id) { -+ grub_dprintf("nvme", "NVMe couldn't identify namespace %u.\n", ns_id); -+ goto free_buffer; -+ } -+ -+ grub_uint8_t current_lba_format = id->flbas & 0xF; -+ if (current_lba_format > id->nlbaf) { -+ grub_dprintf("nvme", "NVMe NS %u: current LBA format %u is beyond what the " -+ " namespace supports (%u)?\n", -+ ns_id, current_lba_format, id->nlbaf + 1); -+ goto free_buffer; -+ } -+ -+ if (!id->nsze) { -+ grub_dprintf("nvme", "NVMe NS %u is inactive.\n", ns_id); -+ goto free_buffer; -+ } -+ -+ if (!nvme_dma_buffer) { -+ nvme_dma_buffer = zalloc_page_aligned(NVME_PAGE_SIZE); -+ if (!nvme_dma_buffer) { -+ goto free_buffer; -+ } -+ } -+ -+ struct nvme_namespace *ns = grub_malloc(sizeof(*ns)); -+ if (!ns) { -+ goto free_buffer; -+ } -+ grub_memset(ns, 0, sizeof(*ns)); -+ ns->ctrl = ctrl; -+ ns->ns_id = ns_id; -+ ns->lba_count = id->nsze; -+ -+ struct nvme_lba_format *fmt = &id->lbaf[current_lba_format]; -+ -+ ns->block_size = 1U << fmt->lbads; -+ ns->metadata_size = fmt->ms; -+ -+ if (ns->block_size > NVME_PAGE_SIZE) { -+ /* If we see devices that trigger this path, we need to increase our -+ buffer size. */ -+ grub_free(ns); -+ goto free_buffer; -+ } -+ -+ if (mdts) { -+ ns->max_req_size = ((1U << mdts) * NVME_PAGE_SIZE) / ns->block_size; -+ grub_dprintf("nvme", "NVME NS %u max request size: %d sectors\n", -+ ns_id, ns->max_req_size); -+ } else { -+ ns->max_req_size = -1U; -+ } -+ -+ ns->devname = grub_xasprintf("nvme%un%u", ctrl->ctrlnum, ns_id); -+ ns->nsnum = grub_nvme_nscnt++; -+ -+ grub_list_push (GRUB_AS_LIST_P (&grub_nvme_namespaces), GRUB_AS_LIST (ns)); -+ -+free_buffer: -+ grub_free(id); -+} -+ -+ -+/* Release memory allocated for a completion queue */ -+static void -+nvme_destroy_cq(struct nvme_cq *cq) -+{ -+ grub_free(cq->cqe); -+ cq->cqe = NULL; -+} -+ -+/* Release memory allocated for a submission queue */ -+static void -+nvme_destroy_sq(struct nvme_sq *sq) -+{ -+ grub_free(sq->sqe); -+ sq->sqe = NULL; -+} -+ -+/* Returns 0 on success. */ -+static int -+nvme_create_io_cq(struct nvme_ctrl *ctrl, struct nvme_cq *cq, grub_uint16_t q_idx) -+{ -+ int rc; -+ struct nvme_sqe *cmd_create_cq; -+ grub_uint32_t length = 1 + (ctrl->reg->cap & 0xffff); -+ if (length > NVME_PAGE_SIZE / sizeof(struct nvme_cqe)) -+ length = NVME_PAGE_SIZE / sizeof(struct nvme_cqe); -+ -+ rc = nvme_init_cq(ctrl, cq, q_idx, length); -+ if (rc) { -+ goto err; -+ } -+ -+ cmd_create_cq = nvme_get_next_sqe(&ctrl->admin_sq, -+ NVME_SQE_OPC_ADMIN_CREATE_IO_CQ, NULL, -+ cq->cqe, NULL); -+ if (!cmd_create_cq) { -+ goto err_destroy_cq; -+ } -+ -+ cmd_create_cq->dword[10] = (cq->common.mask << 16) | (q_idx >> 1); -+ cmd_create_cq->dword[11] = 1 /* physically contiguous */; -+ -+ nvme_commit_sqe(&ctrl->admin_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ctrl->admin_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ grub_dprintf("nvme", "create io cq failed: %08x %08x %08x %08x\n", -+ cqe.dword[0], cqe.dword[1], cqe.dword[2], cqe.dword[3]); -+ -+ goto err_destroy_cq; -+ } -+ -+ return 0; -+ -+err_destroy_cq: -+ nvme_destroy_cq(cq); -+err: -+ return -1; -+} -+ -+/* Returns 0 on success. */ -+static int -+nvme_create_io_sq(struct nvme_ctrl *ctrl, struct nvme_sq *sq, grub_uint16_t q_idx, struct nvme_cq *cq) -+{ -+ int rc; -+ struct nvme_sqe *cmd_create_sq; -+ grub_uint32_t length = 1 + (ctrl->reg->cap & 0xffff); -+ if (length > NVME_PAGE_SIZE / sizeof(struct nvme_cqe)) -+ length = NVME_PAGE_SIZE / sizeof(struct nvme_cqe); -+ -+ rc = nvme_init_sq(ctrl, sq, q_idx, length, cq); -+ if (rc) { -+ goto err; -+ } -+ -+ cmd_create_sq = nvme_get_next_sqe(&ctrl->admin_sq, -+ NVME_SQE_OPC_ADMIN_CREATE_IO_SQ, NULL, -+ sq->sqe, NULL); -+ if (!cmd_create_sq) { -+ goto err_destroy_sq; -+ } -+ -+ cmd_create_sq->dword[10] = (sq->common.mask << 16) | (q_idx >> 1); -+ cmd_create_sq->dword[11] = (q_idx >> 1) << 16 | 1 /* contiguous */; -+ grub_dprintf("nvme", "sq %p create dword10 %08x dword11 %08x\n", sq, -+ cmd_create_sq->dword[10], cmd_create_sq->dword[11]); -+ -+ nvme_commit_sqe(&ctrl->admin_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ctrl->admin_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ grub_dprintf("nvme", "create io sq failed: %08x %08x %08x %08x\n", -+ cqe.dword[0], cqe.dword[1], cqe.dword[2], cqe.dword[3]); -+ goto err_destroy_sq; -+ } -+ -+ return 0; -+ -+err_destroy_sq: -+ nvme_destroy_sq(sq); -+err: -+ return -1; -+} -+ -+/* Reads count sectors into buf. The buffer cannot cross page boundaries. */ -+static int -+nvme_io_xfer(struct nvme_namespace *ns, grub_uint64_t lba, void *prp1, void *prp2, -+ grub_uint16_t count, int write) -+{ -+ if (((grub_uint32_t)prp1 & 0x3) || ((grub_uint32_t)prp2 & 0x3)) { -+ /* Buffer is misaligned */ -+ return -1; -+ } -+ -+ struct nvme_sqe *io_read = nvme_get_next_sqe(&ns->ctrl->io_sq, -+ write ? NVME_SQE_OPC_IO_WRITE -+ : NVME_SQE_OPC_IO_READ, -+ NULL, prp1, prp2); -+ io_read->nsid = ns->ns_id; -+ io_read->dword[10] = (grub_uint32_t)lba; -+ io_read->dword[11] = (grub_uint32_t)(lba >> 32); -+ io_read->dword[12] = (1U << 31 /* limited retry */) | (count - 1); -+ -+ nvme_commit_sqe(&ns->ctrl->io_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ns->ctrl->io_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ grub_dprintf("nvme", "read io: %08x %08x %08x %08x\n", -+ cqe.dword[0], cqe.dword[1], cqe.dword[2], cqe.dword[3]); -+ -+ return -1; -+ } -+ -+ grub_dprintf("nvme", "ns %u %s lba %llu+%u\n", ns->ns_id, write ? "write" : "read", -+ lba, count); -+ return count; -+} -+ -+// Transfer up to one page of data using the internal dma bounce buffer -+static int -+nvme_bounce_xfer(struct nvme_namespace *ns, grub_uint64_t lba, void *buf, grub_uint16_t count, -+ int write) -+{ -+ grub_uint16_t const max_blocks = NVME_PAGE_SIZE / ns->block_size; -+ grub_uint16_t blocks = count < max_blocks ? count : max_blocks; -+ -+ if (write) -+ grub_memcpy(nvme_dma_buffer, buf, blocks * ns->block_size); -+ -+ int res = nvme_io_xfer(ns, lba, nvme_dma_buffer, NULL, blocks, write); -+ -+ if (!write && res >= 0) -+ grub_memcpy(buf, nvme_dma_buffer, res * ns->block_size); -+ -+ return res; -+} -+ -+#define NVME_MAX_PRPL_ENTRIES 15 /* Allows requests up to 64kb */ -+ -+// Transfer data using page list (if applicable) -+static int -+nvme_prpl_xfer(struct nvme_namespace *ns, grub_uint64_t lba, void *buf, grub_uint16_t count, -+ int write) -+{ -+ grub_uint32_t base = (long)buf; -+ grub_int32_t size; -+ -+ if (count > ns->max_req_size) -+ count = ns->max_req_size; -+ -+ size = count * ns->block_size; -+ /* Special case for transfers that fit into PRP1, but are unaligned */ -+ if (((size + (base & ~NVME_PAGE_MASK)) <= NVME_PAGE_SIZE)) -+ goto single; -+ -+ /* Every request has to be page aligned */ -+ if (base & ~NVME_PAGE_MASK) -+ goto bounce; -+ -+ /* Make sure a full block fits into the last chunk */ -+ if (size & (ns->block_size - 1ULL)) -+ goto bounce; -+ -+ /* Build PRP list if we need to describe more than 2 pages */ -+ if ((ns->block_size * count) > (NVME_PAGE_SIZE * 2)) { -+ grub_uint32_t prpl_len = 0; -+ grub_uint64_t *prpl = nvme_dma_buffer; -+ int first_page = 1; -+ for (; size > 0; base += NVME_PAGE_SIZE, size -= NVME_PAGE_SIZE) { -+ if (first_page) { -+ /* First page is special */ -+ first_page = 0; -+ continue; -+ } -+ if (prpl_len >= NVME_MAX_PRPL_ENTRIES) -+ goto bounce; -+ prpl[prpl_len++] = base; -+ } -+ return nvme_io_xfer(ns, lba, buf, prpl, count, write); -+ } -+ -+ /* Directly embed the 2nd page if we only need 2 pages */ -+ if ((ns->block_size * count) > NVME_PAGE_SIZE) -+ return nvme_io_xfer(ns, lba, buf, (char *) buf + NVME_PAGE_SIZE, count, write); -+ -+single: -+ /* One page is enough, don't expose anything else */ -+ return nvme_io_xfer(ns, lba, buf, NULL, count, write); -+ -+bounce: -+ /* Use bounce buffer to make transfer */ -+ return nvme_bounce_xfer(ns, lba, buf, count, write); -+} -+ -+static int -+nvme_create_io_queues(struct nvme_ctrl *ctrl) -+{ -+ if (nvme_create_io_cq(ctrl, &ctrl->io_cq, 3)) -+ goto err; -+ -+ if (nvme_create_io_sq(ctrl, &ctrl->io_sq, 2, &ctrl->io_cq)) -+ goto err_free_cq; -+ -+ return 0; -+ -+ err_free_cq: -+ nvme_destroy_cq(&ctrl->io_cq); -+ err: -+ return -1; -+} -+ -+/* Waits for CSTS.RDY to match rdy. Returns 0 on success. */ -+static int -+nvme_wait_csts_rdy(struct nvme_ctrl *ctrl, unsigned rdy) -+{ -+ // grub_uint32_t const max_to = 500 /* ms */ * ((ctrl->reg->cap >> 24) & 0xFFU); -+ // grub_uint32_t to = timer_calc(max_to); -+ grub_uint32_t csts; -+ -+ while (rdy != ((csts = ctrl->reg->csts) & NVME_CSTS_RDY)) { -+ // FIXME -+ //yield(); -+ -+ if (csts & NVME_CSTS_FATAL) { -+ grub_dprintf("nvme", "NVMe fatal error during controller shutdown\n"); -+ return -1; -+ } -+ -+ /* -+ if (timer_check(to)) { -+ warn_timeout(); -+ return -1; -+ }*/ -+ } -+ -+ return 0; -+} -+ -+/* Returns 0 on success. */ -+static int grub_nvme_controller_enable(struct nvme_ctrl *ctrl) -+{ -+ grub_pci_address_t addr; -+ int rc; -+ -+ addr = grub_pci_make_address (ctrl->pci, GRUB_PCI_REG_COMMAND); -+ grub_pci_write_word (addr, grub_pci_read_word (addr) | GRUB_PCI_COMMAND_BUS_MASTER); -+ -+ /* Turn the controller off. */ -+ ctrl->reg->cc = 0; -+ if (nvme_wait_csts_rdy(ctrl, 0)) { -+ grub_dprintf("nvme", "NVMe fatal error during controller shutdown\n"); -+ return -1; -+ } -+ -+ ctrl->doorbell_stride = 4U << ((ctrl->reg->cap >> 32) & 0xF); -+ -+ rc = nvme_init_cq(ctrl, &ctrl->admin_cq, 1, -+ NVME_PAGE_SIZE / sizeof(struct nvme_cqe)); -+ if (rc) { -+ return -1; -+ } -+ -+ rc = nvme_init_sq(ctrl, &ctrl->admin_sq, 0, -+ NVME_PAGE_SIZE / sizeof(struct nvme_sqe), &ctrl->admin_cq); -+ if (rc) { -+ goto err_destroy_admin_cq; -+ } -+ -+ ctrl->reg->aqa = ctrl->admin_cq.common.mask << 16 -+ | ctrl->admin_sq.common.mask; -+ -+ ctrl->reg->asq = (grub_uint32_t)ctrl->admin_sq.sqe; -+ ctrl->reg->acq = (grub_uint32_t)ctrl->admin_cq.cqe; -+ -+ grub_dprintf("nvme", " admin submission queue: %p\n", ctrl->admin_sq.sqe); -+ grub_dprintf("nvme", " admin completion queue: %p\n", ctrl->admin_cq.cqe); -+ -+ ctrl->reg->cc = NVME_CC_EN | (NVME_CQE_SIZE_LOG << 20) -+ | (NVME_SQE_SIZE_LOG << 16 /* IOSQES */); -+ -+ if (nvme_wait_csts_rdy(ctrl, 1)) { -+ grub_dprintf("nvme", "NVMe fatal error while enabling controller\n"); -+ goto err_destroy_admin_sq; -+ } -+ -+ /* The admin queue is set up and the controller is ready. Let's figure out -+ what namespaces we have. */ -+ -+ struct nvme_identify_ctrl *identify = nvme_admin_identify_ctrl(ctrl); -+ -+ if (!identify) { -+ grub_dprintf("nvme", "NVMe couldn't identify controller.\n"); -+ goto err_destroy_admin_sq; -+ } -+ -+ grub_dprintf("nvme", "NVMe has %u namespace%s.\n", -+ identify->nn, (identify->nn == 1) ? "" : "s"); -+ -+ ctrl->ns_count = identify->nn; -+ grub_uint8_t mdts = identify->mdts; -+ grub_free(identify); -+ -+ if ((ctrl->ns_count == 0) || nvme_create_io_queues(ctrl)) { -+ /* No point to continue, if the controller says it doesn't have -+ namespaces or we couldn't create I/O queues. */ -+ goto err_destroy_admin_sq; -+ } -+ -+ /* Give the controller a global number */ -+ ctrl->ctrlnum = grub_nvme_ctrlcnt++; -+ -+ /* Populate namespace IDs */ -+ for (grub_uint32_t ns_idx = 0; ns_idx < ctrl->ns_count; ns_idx++) { -+ nvme_probe_ns(ctrl, ns_idx, mdts); -+ } -+ -+ grub_dprintf("nvme", "NVMe initialization complete!\n"); -+ return 0; -+ -+ err_destroy_admin_sq: -+ nvme_destroy_sq(&ctrl->admin_sq); -+ err_destroy_admin_cq: -+ nvme_destroy_cq(&ctrl->admin_cq); -+ return -1; -+} -+ -+static int grub_nvme_pci_probe(grub_pci_device_t dev, grub_pci_id_t pciid __attribute__ ((unused)), void *data __attribute__ ((unused))) -+{ -+ grub_pci_address_t addr; -+ grub_uint32_t class, bar, version; -+ struct nvme_reg volatile *reg; -+ -+ class = grub_pci_read (grub_pci_make_address (dev, GRUB_PCI_REG_CLASS)); -+ if (class >> 16 != 0x0108) -+ return 0; -+ if ((class >> 8 & 0xff) != 2) { /* as of NVM 1.0e */ -+ grub_dprintf("nvme", "Found incompatble NVMe: prog-if=%02x\n", class >> 8 & 0xff); -+ return 0; -+ } -+ -+ bar = grub_pci_read (grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0)); -+ reg = grub_pci_device_map_range (dev, bar & GRUB_PCI_ADDR_MEM_MASK, sizeof (*reg)); -+ -+ addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); -+ grub_pci_write_word (addr, grub_pci_read_word (addr) | GRUB_PCI_COMMAND_MEM_ENABLED); -+ -+ version = reg->vs; -+ grub_dprintf("nvme", "Found NVMe controller with version %u.%u.%u.\n", version >> 16, (version >> 8) & 0xFF, version & 0xFF); -+ grub_dprintf("nvme", " Capabilities %016llx\n", reg->cap); -+ -+ if (~reg->cap & NVME_CAP_CSS_NVME) { -+ grub_dprintf("nvme", "Controller doesn't speak NVMe command set. Skipping.\n"); -+ goto err; -+ } -+ -+ struct nvme_ctrl *ctrl = grub_malloc(sizeof(*ctrl)); -+ if (!ctrl) -+ goto err; -+ -+ grub_memset(ctrl, 0, sizeof(*ctrl)); -+ -+ ctrl->reg = reg; -+ ctrl->pci = dev; -+ -+ if (grub_nvme_controller_enable(ctrl)) -+ goto err_free_ctrl; -+ -+ return 0; -+ -+ err_free_ctrl: -+ grub_free(ctrl); -+ err: -+ grub_dprintf("nvme", "Failed to enable NVMe controller.\n"); -+ return 0; -+} -+ -+static int -+grub_nvme_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, grub_disk_pull_t pull) -+{ -+ struct nvme_namespace *ns; -+ -+ if (pull != GRUB_DISK_PULL_NONE) -+ return 0; -+ -+ FOR_LIST_ELEMENTS(ns, grub_nvme_namespaces) -+ if (hook (ns->devname, hook_data)) -+ return 1; -+ -+ return 0; -+} -+ -+static grub_err_t -+grub_nvme_open (const char *name __attribute ((unused)), grub_disk_t disk __attribute ((unused))) -+{ -+ struct nvme_namespace *ns; -+ -+ FOR_LIST_ELEMENTS(ns, grub_nvme_namespaces) -+ if (grub_strcmp (ns->devname, name) == 0) -+ break; -+ -+ if (! ns) -+ return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device"); -+ -+ disk->total_sectors = ns->lba_count; -+ disk->max_agglomerate = ns->max_req_size; -+ -+ disk->id = ns->nsnum; /* global id of the namespace */ -+ -+ disk->data = ns; -+ -+ return 0; -+} -+ -+static grub_err_t -+nvme_readwrite(struct nvme_namespace *ns, grub_disk_addr_t sector, grub_size_t num_sectors, char *buf, int write) -+{ -+ for (int i = 0; i < num_sectors;) { -+ grub_uint16_t blocks_remaining = num_sectors - i; -+ char *op_buf = buf + i * ns->block_size; -+ int blocks = nvme_prpl_xfer(ns, sector + i, op_buf, blocks_remaining, write); -+ if (blocks < 0) -+ return GRUB_ERR_IO; -+ i += blocks; -+ } -+ return GRUB_ERR_NONE; -+} -+ -+static grub_err_t -+grub_nvme_read (grub_disk_t disk, grub_disk_addr_t sector, grub_size_t num_sectors, char *buf) -+{ -+ return nvme_readwrite((struct nvme_namespace *) disk->data, sector, num_sectors, buf, 0); -+} -+ -+static grub_err_t -+grub_nvme_write (grub_disk_t disk, grub_disk_addr_t sector, grub_size_t num_sectors, const char *buf) -+{ -+ return nvme_readwrite((struct nvme_namespace *) disk->data, sector, num_sectors, buf, 1); -+} -+ -+static struct grub_disk_dev grub_nvme_dev = -+ { -+ .name = "nvme", -+ .id = GRUB_DISK_DEVICE_NVME_ID, -+ .disk_iterate = grub_nvme_iterate, -+ .disk_open = grub_nvme_open, -+ .disk_read = grub_nvme_read, -+ .disk_write = grub_nvme_write, -+ .next = 0 -+ }; -+ -+GRUB_MOD_INIT(nvme) -+{ -+ grub_stop_disk_firmware (); -+ grub_pci_iterate (grub_nvme_pci_probe, NULL); -+ grub_disk_dev_register (&grub_nvme_dev); -+} -+ -+GRUB_MOD_FINI(nvme) -+{ -+ grub_disk_dev_unregister (&grub_nvme_dev); -+} -diff --git a/include/grub/disk.h b/include/grub/disk.h -index fbf23df7f..186e76f0b 100644 ---- a/include/grub/disk.h -+++ b/include/grub/disk.h -@@ -52,6 +52,7 @@ enum grub_disk_dev_id - GRUB_DISK_DEVICE_UBOOTDISK_ID, - GRUB_DISK_DEVICE_XEN, - GRUB_DISK_DEVICE_OBDISK_ID, -+ GRUB_DISK_DEVICE_NVME_ID - }; - - struct grub_disk; --- -2.47.3 - diff --git a/config/module/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch b/config/module/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch deleted file mode 100644 index 8e78e8b7..00000000 --- a/config/module/grub/nvme/patches/0010-Revert-configure-Check-linker-for-image-base-support.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 7b0d621389fc1857c918058f82093f9630ea7730 Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Wed, 24 Dec 2025 01:42:17 +0100 -Subject: [PATCH 10/10] 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/module/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch b/config/module/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch deleted file mode 100644 index c0a504ff..00000000 --- a/config/module/grub/nvme/patches/0011-Revert-configure-Print-a-more-helpful-error-if-autoc.patch +++ /dev/null @@ -1,30 +0,0 @@ -From abf2bf6e2973ccaa994f63ff851ba11cbd45f1eb Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -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/module/grub/nvme/patches/0013-force-disable-werror.patch b/config/module/grub/nvme/patches/0013-force-disable-werror.patch deleted file mode 100644 index a4837f63..00000000 --- a/config/module/grub/nvme/patches/0013-force-disable-werror.patch +++ /dev/null @@ -1,602 +0,0 @@ -From 2adf79420721b5f7e25d657ba1a6bb60aa221bce Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Mon, 21 Sep 2026 12:13:16 +0100 -Subject: [PATCH 1/1] force-disable werror - -Signed-off-by: Leah Rowe <leah@libreboot.org> ---- - Makefile.am | 4 +- - acinclude.m4 | 8 +-- - conf/Makefile.common | 2 +- - configure.ac | 79 +++++++++++++--------------- - grub-core/Makefile.am | 6 +-- - grub-core/lib/libgcrypt/configure | 36 ++++++------- - grub-core/lib/libgcrypt/configure.ac | 14 ++--- - 7 files changed, 72 insertions(+), 77 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index 43635d5ff..0f7f55e83 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -89,11 +89,11 @@ CLEANFILES += garbage-gen$(BUILD_EXEEXT) - EXTRA_DIST += util/garbage-gen.c - - build-grub-gen-asciih$(BUILD_EXEEXT): util/grub-gen-asciih.c -- $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall -Werror -+ $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall - CLEANFILES += build-grub-gen-asciih$(BUILD_EXEEXT) - - build-grub-gen-widthspec$(BUILD_EXEEXT): util/grub-gen-widthspec.c -- $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall -Werror -+ $(BUILD_CC) -o $@ -I$(top_srcdir)/include $(BUILD_CFLAGS) $(BUILD_CPPFLAGS) $(BUILD_LDFLAGS) -DGRUB_MKFONT=1 -DGRUB_BUILD=1 -DGRUB_UTIL=1 $^ $(BUILD_FREETYPE_CFLAGS) $(BUILD_FREETYPE_LIBS) -Wall - CLEANFILES += build-grub-gen-widthspec$(BUILD_EXEEXT) - - if COND_STARFIELD -diff --git a/acinclude.m4 b/acinclude.m4 -index fa7840f09..d871737fd 100644 ---- a/acinclude.m4 -+++ b/acinclude.m4 -@@ -368,7 +368,7 @@ AC_MSG_CHECKING([whether `$CC' accepts `-mstack-arg-probe']) - AC_LANG_CONFTEST([AC_LANG_SOURCE([[ - void foo (void) { volatile char a[8]; a[3]; } - ]])]) --[if eval "$ac_compile -S -mstack-arg-probe -Werror -o conftest.s" 2> /dev/null; then] -+[if eval "$ac_compile -S -mstack-arg-probe -o conftest.s" 2> /dev/null; then] - AC_MSG_RESULT([yes]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.s -@@ -430,7 +430,7 @@ link_nopie_needed=no] - AC_MSG_CHECKING([whether linker needs disabling of PIE to work]) - AC_LANG_CONFTEST([AC_LANG_SOURCE([[]])]) - --[if eval "$ac_compile -Wl,-r -nostdlib -Werror -o conftest.o" 2> /dev/null; then] -+[if eval "$ac_compile -Wl,-r -nostdlib -o conftest.o" 2> /dev/null; then] - AC_MSG_RESULT([no]) - [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? - rm -f conftest.o -@@ -446,7 +446,7 @@ AC_DEFUN([grub_CHECK_NO_PIE], - [AC_MSG_CHECKING([whether linker accepts -no-pie]) - AC_CACHE_VAL(grub_cv_cc_ld_no_pie, - [save_LDFLAGS="$LDFLAGS" --LDFLAGS="$LDFLAGS -no-pie -nostdlib -Werror" -+LDFLAGS="$LDFLAGS -no-pie -nostdlib" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_ld_no_pie=yes], - [grub_cv_cc_ld_no_pie=no]) -@@ -463,7 +463,7 @@ AC_DEFUN([grub_CHECK_NO_PIE_ONEWORD], - [AC_MSG_CHECKING([whether linker accepts -nopie]) - AC_CACHE_VAL(grub_cv_cc_ld_no_pie_oneword, - [save_LDFLAGS="$LDFLAGS" --LDFLAGS="$LDFLAGS -nopie -nostdlib -Werror" -+LDFLAGS="$LDFLAGS -nopie -nostdlib" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_ld_no_pie_oneword=yes], - [grub_cv_cc_ld_no_pie_oneword=no]) -diff --git a/conf/Makefile.common b/conf/Makefile.common -index 7ef171b2b..41772df6b 100644 ---- a/conf/Makefile.common -+++ b/conf/Makefile.common -@@ -77,7 +77,7 @@ grubconfdir = $(sysconfdir)/grub.d - platformdir = $(pkglibdir)/$(target_cpu)-$(platform) - starfielddir = $(pkgdatadir)/themes/starfield - --CFLAGS_GNULIB = -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -Wno-error=attributes -+CFLAGS_GNULIB = -Wno-undef -Wno-sign-compare -Wno-unused -Wno-unused-parameter -Wno-redundant-decls -Wno-unreachable-code -Wno-conversion -Wno-error - CPPFLAGS_GNULIB = -I$(top_builddir)/grub-core/lib/gnulib -I$(top_srcdir)/grub-core/lib/gnulib - - CFLAGS_POSIX = -fno-builtin -diff --git a/configure.ac b/configure.ac -index 209c0fb11..1b808ce7b 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -433,10 +433,10 @@ AC_CHECK_FUNCS(posix_memalign memalign getextmntent atexit) - AC_CHECK_HEADERS(sys/param.h sys/mount.h sys/mnttab.h limits.h) - - # glibc 2.25 still includes sys/sysmacros.h in sys/types.h but emits deprecation --# warning which causes compilation failure later with -Werror. So use -Werror here -+# warning which causes compilation failure later with. So use here - # as well to force proper sys/sysmacros.h detection. Used in include/grub/osdep/major.h. - SAVED_CFLAGS="$CFLAGS" --CFLAGS="$HOST_CFLAGS -Werror" -+CFLAGS="$HOST_CFLAGS" - AC_HEADER_MAJOR - CFLAGS="$SAVED_CFLAGS" - -@@ -464,7 +464,7 @@ AC_SUBST([LIBUTIL]) - - AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_host_cc_wtrampolines], [ - SAVED_CFLAGS="$CFLAGS" -- CFLAGS="$HOST_CFLAGS -Wtrampolines -Werror" -+ CFLAGS="$HOST_CFLAGS -Wtrampolines" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h> - int va_arg_func (int fixed, va_list args);]], [[]])], - [grub_cv_host_cc_wtrampolines=yes], -@@ -520,7 +520,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_cc_w_extra_flags], [ - SAVED_CFLAGS="$CFLAGS" - grub_cv_cc_w_extra_flags= - for x in $EXTRA_WARN_FLAGS; do -- CFLAGS="$HOST_CFLAGS $x -Werror" -+ CFLAGS="$HOST_CFLAGS $x" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) - if test x$flag = x1 ; then - grub_cv_cc_w_extra_flags="$grub_cv_cc_w_extra_flags $x" -@@ -614,7 +614,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_target_cc_w_extra_flags], [ - - grub_cv_target_cc_w_extra_flags= - for x in $EXTRA_WARN_FLAGS; do -- CFLAGS="$TARGET_CFLAGS $x -Werror" -+ CFLAGS="$TARGET_CFLAGS $x" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - void __main (void); -@@ -649,7 +649,7 @@ if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then - if test x"$grub_cv_target_cc_big_endian" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - #if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ != __BYTE_ORDER__) - #error still little endian -@@ -684,7 +684,7 @@ elif test x$target_cpu = xmipsel; then - if test x"$grub_cv_target_cc_little_endian" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - #if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ == __BYTE_ORDER__) - #error still big endian -@@ -722,7 +722,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - if test x"$grub_cv_target_cc_mips_o32_abi" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $arg -Werror" -+ CFLAGS="$TARGET_CFLAGS $arg" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - #if !defined(_ABIO32) || !defined(_MIPS_SIM) || (_MIPS_SIM != _ABIO32) - #error not o32 ABI -@@ -794,7 +794,7 @@ fi - # on mips redirect cache flushing function to non-existant one. - if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - AC_CACHE_CHECK([whether -mflush-func=grub_red_herring works], [grub_cv_cc_mflush_func], [ -- CFLAGS="$TARGET_CFLAGS -mflush-func=grub_red_herring -Werror" -+ CFLAGS="$TARGET_CFLAGS -mflush-func=grub_red_herring" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mflush_func=yes], - [grub_cv_cc_mflush_func=no]) -@@ -805,7 +805,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then - fi - - AC_CACHE_CHECK([whether -mno-gpopt works], [grub_cv_cc_mno_gpopt], [ -- CFLAGS="$TARGET_CFLAGS -mno-gpopt -Werror" -+ CFLAGS="$TARGET_CFLAGS -mno-gpopt" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mno_gpopt=yes], - [grub_cv_cc_mno_gpopt=no]) -@@ -822,7 +822,7 @@ if test "x$target_cpu" = xi386; then - TARGET_CFLAGS="$TARGET_CFLAGS -falign-functions=1" - - AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [ -- CFLAGS="$TARGET_CFLAGS -falign-loops=1 -Werror" -+ CFLAGS="$TARGET_CFLAGS -falign-loops=1" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_falign_loop=yes], - [grub_cv_cc_falign_loop=no]) -@@ -833,7 +833,7 @@ if test "x$target_cpu" = xi386; then - fi - - AC_CACHE_CHECK([whether -falign-jumps works], [grub_cv_cc_falign_jumps], [ -- CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -Werror" -+ CFLAGS="$TARGET_CFLAGS -falign-jumps=1" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_falign_jumps=yes], - [grub_cv_cc_falign_jumps=no]) -@@ -845,7 +845,7 @@ if test "x$target_cpu" = xi386; then - fi - - AC_CACHE_CHECK([whether -freg-struct-return works], [grub_cv_cc_freg_struct_return], [ -- CFLAGS="$TARGET_CFLAGS -freg-struct-return -Werror" -+ CFLAGS="$TARGET_CFLAGS -freg-struct-return" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_freg_struct_return=yes], - [grub_cv_cc_freg_struct_return=no]) -@@ -863,7 +863,7 @@ fi - - if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ); then - AC_CACHE_CHECK([whether -Wa,-mx86-used-note works], [grub_cv_cc_mx86_used_note], [ -- CFLAGS="$TARGET_CFLAGS -Wa,-mx86-used-note=no -Werror" -+ CFLAGS="$TARGET_CFLAGS -Wa,-mx86-used-note=no" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mx86_used_note=yes], - [grub_cv_cc_mx86_used_note=no]) -@@ -877,7 +877,7 @@ fi - - if test "x$target_cpu" = xloongarch64; then - AC_CACHE_CHECK([whether _mno_explicit_relocs works], [grub_cv_cc_mno_explicit_relocs], [ -- CFLAGS="$TARGET_CFLAGS -mno-explicit-relocs -Werror" -+ CFLAGS="$TARGET_CFLAGS -mno-explicit-relocs" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mno_explicit_relocs=yes], - [grub_cv_cc_mno_explicit_relocs=no]) -@@ -893,7 +893,7 @@ if test "x$target_cpu" = xloongarch64; then - if test x"$grub_cv_target_cc_mno_relax" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - void __main (void); -@@ -920,7 +920,7 @@ if test "x$target_cpu" = xriscv64 || test "x$target_cpu" = xriscv32; then - if test x"$grub_cv_target_cc_mno_relax" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - void __main (void); -@@ -946,35 +946,35 @@ if test x"$platform" != xemu ; then - AC_CACHE_CHECK([for options to get soft-float], grub_cv_target_cc_soft_float, [ - grub_cv_target_cc_soft_float=no - if test "x$target_cpu" = xarm64; then -- CFLAGS="$TARGET_CFLAGS -mgeneral-regs-only -Werror" -+ CFLAGS="$TARGET_CFLAGS -mgeneral-regs-only" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-mgeneral-regs-only"], []) - fi - if test "x$target_cpu" = xriscv32; then -- CFLAGS="$TARGET_CFLAGS -march=rv32imac -mabi=ilp32 -Werror" -+ CFLAGS="$TARGET_CFLAGS -march=rv32imac -mabi=ilp32" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-march=rv32imac -mabi=ilp32"], []) - # ISA spec version 20191213 factored out extensions Zicsr and Zifencei -- CFLAGS="$TARGET_CFLAGS -march=rv32imac_zicsr_zifencei -mabi=ilp32 -Werror" -+ CFLAGS="$TARGET_CFLAGS -march=rv32imac_zicsr_zifencei -mabi=ilp32" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-march=rv32imac_zicsr_zifencei -mabi=ilp32"], []) - fi - if test "x$target_cpu" = xriscv64; then -- CFLAGS="$TARGET_CFLAGS -march=rv64imac -mabi=lp64 -Werror" -+ CFLAGS="$TARGET_CFLAGS -march=rv64imac -mabi=lp64" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-march=rv64imac -mabi=lp64"], []) - # ISA spec version 20191213 factored out extensions Zicsr and Zifencei -- CFLAGS="$TARGET_CFLAGS -march=rv64imac_zicsr_zifencei -mabi=lp64 -Werror" -+ CFLAGS="$TARGET_CFLAGS -march=rv64imac_zicsr_zifencei -mabi=lp64" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-march=rv64imac_zicsr_zifencei -mabi=lp64"], []) - fi - if test "x$target_cpu" = xia64; then -- CFLAGS="$TARGET_CFLAGS -mno-inline-float-divide -mno-inline-sqrt -Werror" -+ CFLAGS="$TARGET_CFLAGS -mno-inline-float-divide -mno-inline-sqrt" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-mno-inline-float-divide -mno-inline-sqrt"], []) - fi - if test "x$target_cpu" = xsh4; then -- CFLAGS="$TARGET_CFLAGS -m4-nofpu -Werror" -+ CFLAGS="$TARGET_CFLAGS -m4-nofpu" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="-m4-nofpu"], []) - fi -@@ -984,7 +984,7 @@ if test x"$platform" != xemu ; then - if test x"$grub_cv_target_cc_soft_float" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_soft_float="$cand"], []) - done -@@ -1015,7 +1015,7 @@ if test x"$target_cpu" = xsparc64 ; then - if test x"$grub_cv_target_cc_mno_app_regs" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - CPPFLAGS="$TARGET_CPPFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_mno_app_regs="$cand"], []) -@@ -1039,7 +1039,7 @@ if test x"$target_cpu" = xsparc64 ; then - break - fi - LDFLAGS="$TARGET_LDFLAGS $cand -nostdlib -static" -- CFLAGS="$TARGET_CFLAGS -Werror" -+ CFLAGS="$TARGET_CFLAGS" - AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - asm (".globl start; start:"); - void __main (void); -@@ -1569,7 +1569,7 @@ if test "x$target_cpu" = xarm; then - if test x"$grub_cv_target_cc_mno_movt" != xno ; then - break - fi -- CFLAGS="$TARGET_CFLAGS $cand -Werror" -+ CFLAGS="$TARGET_CFLAGS $cand" - CPPFLAGS="$TARGET_CPPFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_mno_movt="$cand"], []) -@@ -1581,7 +1581,7 @@ if test "x$target_cpu" = xarm; then - TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_movt" - fi - AC_CACHE_CHECK([whether option -mthumb-interwork works], grub_cv_cc_mthumb_interwork, [ -- CFLAGS="$TARGET_CFLAGS -mthumb-interwork -Werror" -+ CFLAGS="$TARGET_CFLAGS -mthumb-interwork" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_cc_mthumb_interwork=yes], - [grub_cv_cc_mthumb_interwork=no]) -@@ -1595,7 +1595,7 @@ if test "x$target_cpu" = xarm; then - fi - - AC_CACHE_CHECK([whether option -Qn works], grub_cv_target_cc_qn, [ -- CFLAGS="$TARGET_CFLAGS -Qn -Qunused-arguments -Werror" -+ CFLAGS="$TARGET_CFLAGS -Qn -Qunused-arguments" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], - [grub_cv_target_cc_qn=yes], - [grub_cv_target_cc_qn=no])]) -@@ -1748,7 +1748,7 @@ if test "$target_cpu" = arm; then - AC_CACHE_CHECK([for compile options to get strict alignment], [grub_cv_target_cc_strict_align], [ - grub_cv_target_cc_strict_align= - for arg in -mno-unaligned-access "-Xclang -mstrict-align" -mstrict-align; do -- CFLAGS="$TARGET_CFLAGS $arg -Werror" -+ CFLAGS="$TARGET_CFLAGS $arg" - LDFLAGS="$TARGET_LDFLAGS" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) - if test x"$flag" = x1; then -@@ -1834,7 +1834,7 @@ int va_arg_func (int fixed, va_list args);]], [[]])], - fi - - AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_cc_wtrampolines], [ -- CFLAGS="$TARGET_CFLAGS -Wtrampolines -Werror" -+ CFLAGS="$TARGET_CFLAGS -Wtrampolines" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h> - int va_arg_func (int fixed, va_list args);]], [[]])], - [grub_cv_cc_wtrampolines=yes], -@@ -2362,16 +2362,11 @@ AC_SUBST(END_SYMBOL) - AC_SUBST(PACKAGE) - AC_SUBST(VERSION) - --AC_ARG_ENABLE([werror], -- [AS_HELP_STRING([--disable-werror], -- [do not use -Werror when building GRUB])]) --if test x"$enable_werror" != xno ; then -- TARGET_CFLAGS="$TARGET_CFLAGS -Werror" -- HOST_CFLAGS="$HOST_CFLAGS -Werror" -- if test "x$grub_cv_cc_target_clang" = xyes; then -- TARGET_CFLAGS="$TARGET_CFLAGS -Wno-error=vla" -- HOST_CFLAGS="$HOST_CFLAGS -Wno-error=vla" -- fi -+TARGET_CFLAGS="$TARGET_CFLAGS" -+HOST_CFLAGS="$HOST_CFLAGS" -+if test "x$grub_cv_cc_target_clang" = xyes; then -+ TARGET_CFLAGS="$TARGET_CFLAGS -Wno-error" -+ HOST_CFLAGS="$HOST_CFLAGS -Wno-error" - fi - - TARGET_CPP="$TARGET_CC -E" -diff --git a/grub-core/Makefile.am b/grub-core/Makefile.am -index 8577462d5..8a12861ba 100644 ---- a/grub-core/Makefile.am -+++ b/grub-core/Makefile.am -@@ -483,7 +483,7 @@ if COND_ENABLE_EFIEMU - efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) - -rm -f $@ - -rm -f $@.bin -- $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m32 -Wall -Werror -nostdlib -static -O2 -c -o $@.bin $< -+ $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m32 -Wall -nostdlib -static -O2 -c -o $@.bin $< - if test "x$(TARGET_APPLE_LINKER)" = x1; then \ - $(TARGET_OBJCONV) -felf32 -nu -nd $@.bin $@ || exit 1; \ - rm -f $@.bin ; \ -@@ -496,10 +496,10 @@ efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) - - # Link format -arch,x86_64 means Apple linker - efiemu64_c.o: efiemu/runtime/efiemu.c -- $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -nostdlib -Wall -Werror -O2 -mcmodel=large -mno-red-zone -c -o $@ $< -+ $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -nostdlib -Wall -O2 -mcmodel=large -mno-red-zone -c -o $@ $< - - efiemu64_s.o: efiemu/runtime/efiemu.S -- $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -Wall -Werror -nostdlib -O2 -mcmodel=large -mno-red-zone -c -o $@ $< -+ $(TARGET_CC) $(DEFS) $(INCLUDES) $(CPPFLAGS_EFIEMU) $(CPPFLAGS_DEFAULT) -m64 -Wall -nostdlib -O2 -mcmodel=large -mno-red-zone -c -o $@ $< - - efiemu64.o: efiemu64_c.o efiemu64_s.o $(TARGET_OBJ2ELEF) - -rm -f $@ -diff --git a/grub-core/lib/libgcrypt/configure b/grub-core/lib/libgcrypt/configure -index 4a7bee2fb..b3fb1db4f 100755 ---- a/grub-core/lib/libgcrypt/configure -+++ b/grub-core/lib/libgcrypt/configure -@@ -4705,8 +4705,8 @@ if test ${ac_cv_prog_cc_g+y} - then : - printf %s "(cached) " >&6 - else $as_nop -- ac_save_c_werror_flag=$ac_c_werror_flag -- ac_c_werror_flag=yes -+ ac_save_c_werror_flag=no -+ ac_c_werror_flag=no - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -4740,7 +4740,7 @@ if ac_fn_c_try_compile "$LINENO" - then : - - else $as_nop -- ac_c_werror_flag=$ac_save_c_werror_flag -+ ac_c_werror_flag=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ -@@ -4762,7 +4762,7 @@ fi - rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - fi - rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -- ac_c_werror_flag=$ac_save_c_werror_flag -+ ac_c_werror_flag=no - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 - printf "%s\n" "$ac_cv_prog_cc_g" >&6; } -@@ -5081,7 +5081,7 @@ else $as_nop - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings -- # or remarks (even with -Werror). So we grep stderr for any message -+ # or remarks (even with). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required -@@ -5857,8 +5857,8 @@ if test ${ac_cv_prog_cc_g+y} - then : - printf %s "(cached) " >&6 - else $as_nop -- ac_save_c_werror_flag=$ac_c_werror_flag -- ac_c_werror_flag=yes -+ ac_save_c_werror_flag=no -+ ac_c_werror_flag=no - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -@@ -5892,7 +5892,7 @@ if ac_fn_c_try_compile "$LINENO" - then : - - else $as_nop -- ac_c_werror_flag=$ac_save_c_werror_flag -+ ac_c_werror_flag=no - CFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ -@@ -5914,7 +5914,7 @@ fi - rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext - fi - rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext -- ac_c_werror_flag=$ac_save_c_werror_flag -+ ac_c_werror_flag=no - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 - printf "%s\n" "$ac_cv_prog_cc_g" >&6; } -@@ -6233,7 +6233,7 @@ else $as_nop - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings -- # or remarks (even with -Werror). So we grep stderr for any message -+ # or remarks (even with). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required -@@ -6500,7 +6500,7 @@ else $as_nop - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings -- # or remarks (even with -Werror). So we grep stderr for any message -+ # or remarks (even with). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required -@@ -17454,7 +17454,7 @@ int foo __attribute__ ((visibility ("hidden"))) = 1; - - _ACEOF - -- if ${CC-cc} -Werror -S conftest.c -o conftest.s \ -+ if ${CC-cc} -S conftest.c -o conftest.s \ - 1>&5 2>&5 ; then - if grep '\.hidden.*foo' conftest.s >/dev/null 2>&1 ; then - if grep '\.protected.*bar' conftest.s >/dev/null 2>&1; then -@@ -17483,7 +17483,7 @@ int foo (int x); - - _ACEOF - -- if ${CC-cc} -Werror -S conftest.c -o conftest.s \ -+ if ${CC-cc} -S conftest.c -o conftest.s \ - 1>&5 2>&5 ; then - if grep '\.hidden[ _]foo' conftest.s >/dev/null 2>&1; - then -@@ -17514,7 +17514,7 @@ extern int foo (int x) __asm ("xyzzy"); - - _ACEOF - -- if ${CC-cc} -Werror -S conftest.c -o conftest.s \ -+ if ${CC-cc} -S conftest.c -o conftest.s \ - 1>&5 2>&5 ; then - if grep 'xyzzy' conftest.s >/dev/null 2>&1 && \ - grep 'abccb' conftest.s >/dev/null 2>&1; then -@@ -17571,9 +17571,9 @@ fi - - - # Following attribute tests depend on warnings to cause compile to fail, --# so set -Werror temporarily. -+# so set temporarily. - _gcc_cflags_save=$CFLAGS --CFLAGS="$CFLAGS -Werror" -+CFLAGS="$CFLAGS" - - - # -@@ -18275,10 +18275,10 @@ fi - ############################################# - - --# Following tests depend on warnings to cause compile to fail, so set -Werror -+# Following tests depend on warnings to cause compile to fail, so set - # temporarily. - _gcc_cflags_save=$CFLAGS --CFLAGS="$CFLAGS -Werror" -+CFLAGS="$CFLAGS" - - - # -diff --git a/grub-core/lib/libgcrypt/configure.ac b/grub-core/lib/libgcrypt/configure.ac -index 1d06ca3b1..0a4e0286a 100644 ---- a/grub-core/lib/libgcrypt/configure.ac -+++ b/grub-core/lib/libgcrypt/configure.ac -@@ -1007,7 +1007,7 @@ AC_CACHE_CHECK(whether the visibility attribute is supported, - int bar __attribute__ ((visibility ("protected"))) = 1; - ]])]) - -- if ${CC-cc} -Werror -S conftest.c -o conftest.s \ -+ if ${CC-cc} -S conftest.c -o conftest.s \ - 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ; then - if grep '\.hidden.*foo' conftest.s >/dev/null 2>&1 ; then - if grep '\.protected.*bar' conftest.s >/dev/null 2>&1; then -@@ -1027,7 +1027,7 @@ if test "$gcry_cv_visibility_attribute" = "yes"; then - int bar (int x) { return x; } - ]])]) - -- if ${CC-cc} -Werror -S conftest.c -o conftest.s \ -+ if ${CC-cc} -S conftest.c -o conftest.s \ - 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ; then - if grep '\.hidden@<:@ _@:>@foo' conftest.s >/dev/null 2>&1; - then -@@ -1049,7 +1049,7 @@ if test "$gcry_cv_visibility_attribute" = "yes"; then - int dfoo = 1; - ]])]) - -- if ${CC-cc} -Werror -S conftest.c -o conftest.s \ -+ if ${CC-cc} -S conftest.c -o conftest.s \ - 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ; then - if grep 'xyzzy' conftest.s >/dev/null 2>&1 && \ - grep 'abccb' conftest.s >/dev/null 2>&1; then -@@ -1081,9 +1081,9 @@ fi - - - # Following attribute tests depend on warnings to cause compile to fail, --# so set -Werror temporarily. -+# so set temporarily. - _gcc_cflags_save=$CFLAGS --CFLAGS="$CFLAGS -Werror" -+CFLAGS="$CFLAGS" - - - # -@@ -1393,10 +1393,10 @@ fi - ############################################# - - --# Following tests depend on warnings to cause compile to fail, so set -Werror -+# Following tests depend on warnings to cause compile to fail, so set - # temporarily. - _gcc_cflags_save=$CFLAGS --CFLAGS="$CFLAGS -Werror" -+CFLAGS="$CFLAGS" - - - # --- -2.47.3 - diff --git a/config/module/grub/nvme/target.cfg b/config/module/grub/nvme/target.cfg deleted file mode 100644 index 15102b28..00000000 --- a/config/module/grub/nvme/target.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -rev="eaa3b8f0f90605a82c6bfda4c5c4b73c58eb81ac" - -tree="nvme" diff --git a/config/module/grub/xhci_nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch b/config/module/grub/xhci/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch index 7f489819..921f9d20 100644 --- a/config/module/grub/xhci_nvme/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch +++ b/config/module/grub/xhci/patches/0001-mitigate-grub-s-missing-characters-for-borders-arrow.patch @@ -1,4 +1,4 @@ -From 8ce8095abbbcc69b50466cb2b890a59be5a9baed Mon Sep 17 00:00:00 2001 +From ea5f5d7388f3a2e92faee4c1d0edfab4edc1a39b Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 31 Oct 2021 03:47:05 +0000 Subject: [PATCH 01/21] mitigate grub's missing characters for borders/arrow diff --git a/config/module/grub/xhci_nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch b/config/module/grub/xhci/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch index fdf97c16..44a1799e 100644 --- a/config/module/grub/xhci_nvme/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch +++ b/config/module/grub/xhci/patches/0002-say-the-name-libreboot-in-the-grub-menu.patch @@ -1,4 +1,4 @@ -From d073d6a6d3c63a2b37df754bb890f88482ef2a75 Mon Sep 17 00:00:00 2001 +From c7b6d14ea4364097261cee13989e049b04c09511 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sat, 19 Nov 2022 16:30:24 +0000 Subject: [PATCH 02/21] say the name libreboot, in the grub menu @@ -8,7 +8,7 @@ Subject: [PATCH 02/21] say the name libreboot, in the grub menu 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..c7a172a8b 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/module/grub/xhci_nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch b/config/module/grub/xhci/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch index 3e6d9203..0894210f 100644 --- a/config/module/grub/xhci_nvme/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch +++ b/config/module/grub/xhci/patches/0003-at_keyboard-coreboot-force-scancodes2-translate.patch @@ -1,4 +1,4 @@ -From befc0d1c61b4ba0c43981774eeff0f0f026f513d Mon Sep 17 00:00:00 2001 +From ab4470d30e64c0bf7b98f68998177c2ae11040bd Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 30 Oct 2023 22:19:21 +0000 Subject: [PATCH 03/21] at_keyboard coreboot: force scancodes2+translate diff --git a/config/module/grub/xhci_nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch b/config/module/grub/xhci/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch index 0fdcaac7..91183690 100644 --- a/config/module/grub/xhci_nvme/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch +++ b/config/module/grub/xhci/patches/0004-keylayouts-don-t-print-Unknown-key-message.patch @@ -1,4 +1,4 @@ -From abe0aa9a6edba181b0f964f3cf4bcd7155322ac1 Mon Sep 17 00:00:00 2001 +From c23796da67e5d50bf5ea62e708c42e8c08c30677 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Tue, 31 Oct 2023 10:33:28 +0000 Subject: [PATCH 04/21] keylayouts: don't print "Unknown key" message diff --git a/config/module/grub/xhci_nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch b/config/module/grub/xhci/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch index cec589e1..f6a1317d 100644 --- a/config/module/grub/xhci_nvme/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch +++ b/config/module/grub/xhci/patches/0005-don-t-print-missing-prefix-errors-on-the-screen.patch @@ -1,4 +1,4 @@ -From f8d8c00b9ff65bbaef029b087d6b2ad1091b39e4 Mon Sep 17 00:00:00 2001 +From 8094171e90dd37011005f48623f67d14a6c4bf40 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 16:14:58 +0000 Subject: [PATCH 05/21] don't print missing prefix errors on the screen @@ -45,10 +45,10 @@ index 166445849..699b39bfa 100644 } diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c -index 580c8d3b0..6806bff9c 100644 +index 9a94dee55..e7cd85d35 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)), +@@ -188,7 +188,7 @@ grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)), prefix = grub_env_get ("prefix"); if (! prefix) @@ -72,7 +72,7 @@ index e7037f4ed..e5d4dbff1 100644 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 +index 0fe4a30ed..8abcaec76 100644 --- a/grub-core/font/font.c +++ b/grub-core/font/font.c @@ -461,7 +461,7 @@ grub_font_load (const char *filename) diff --git a/config/module/grub/xhci_nvme/patches/0006-don-t-print-error-if-module-not-found.patch b/config/module/grub/xhci/patches/0006-don-t-print-error-if-module-not-found.patch index afffefca..d066fba2 100644 --- a/config/module/grub/xhci_nvme/patches/0006-don-t-print-error-if-module-not-found.patch +++ b/config/module/grub/xhci/patches/0006-don-t-print-error-if-module-not-found.patch @@ -1,4 +1,4 @@ -From 807a54732c3a9b056d33a0fdb0baedd44b581f0b Mon Sep 17 00:00:00 2001 +From 20239d129efc0665abdd8420f630407a8fdb1fde Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 16:36:22 +0000 Subject: [PATCH 06/21] don't print error if module not found diff --git a/config/module/grub/xhci_nvme/patches/0007-don-t-print-empty-error-messages.patch b/config/module/grub/xhci/patches/0007-don-t-print-empty-error-messages.patch index 44a9c432..23fff3e9 100644 --- a/config/module/grub/xhci_nvme/patches/0007-don-t-print-empty-error-messages.patch +++ b/config/module/grub/xhci/patches/0007-don-t-print-empty-error-messages.patch @@ -1,4 +1,4 @@ -From 53ae675a60c53792b0296828fb66d414b2d3f70e Mon Sep 17 00:00:00 2001 +From 62f241265ef4af3e0baefb7eb10d0efb6fe76ac4 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 5 Nov 2023 17:25:20 +0000 Subject: [PATCH 07/21] don't print empty error messages @@ -13,10 +13,10 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 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 +index f4c1b42c5..12a28f072 100644 --- a/grub-core/kern/err.c +++ b/grub-core/kern/err.c -@@ -116,7 +116,8 @@ grub_print_error (void) +@@ -130,7 +130,8 @@ grub_print_error (void) { if (grub_errno != GRUB_ERR_NONE) { diff --git a/config/module/grub/xhci_nvme/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch b/config/module/grub/xhci/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch index 95e9fb7b..0bb83881 100644 --- a/config/module/grub/xhci_nvme/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch +++ b/config/module/grub/xhci/patches/0008-grub-core-bus-usb-Parse-SuperSpeed-companion-descrip.patch @@ -1,4 +1,4 @@ -From 64769f3b285e8bf2c21a65fba81673a0a4f6dde3 Mon Sep 17 00:00:00 2001 +From d0293e5aab6a4a1d7c6047ca75124d2c5db937fa Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Sun, 15 Nov 2020 19:00:27 +0100 Subject: [PATCH 08/21] grub-core/bus/usb: Parse SuperSpeed companion @@ -174,10 +174,10 @@ index 3184ac9af..7d128449d 100644 grub_printf ("Endpoint #%d: %s, max packed size: %d, transfer type: %s, latency: %d\n", endp->endp_addr & 15, diff --git a/grub-core/disk/usbms.c b/grub-core/disk/usbms.c -index b81e3ad9d..b1512dc12 100644 +index 016413313..26e48714a 100644 --- a/grub-core/disk/usbms.c +++ b/grub-core/disk/usbms.c -@@ -184,7 +184,7 @@ grub_usbms_attach (grub_usb_device_t usbdev, int configno, int interfno) +@@ -186,7 +186,7 @@ grub_usbms_attach (grub_usb_device_t usbdev, int configno, int interfno) for (j = 0; j < interf->endpointcnt; j++) { struct grub_usb_desc_endp *endp; diff --git a/config/module/grub/xhci_nvme/patches/0009-usb-Add-enum-for-xHCI.patch b/config/module/grub/xhci/patches/0009-usb-Add-enum-for-xHCI.patch index 5b79d33c..71c17cd7 100644 --- a/config/module/grub/xhci_nvme/patches/0009-usb-Add-enum-for-xHCI.patch +++ b/config/module/grub/xhci/patches/0009-usb-Add-enum-for-xHCI.patch @@ -1,4 +1,4 @@ -From 43522cfb0ec375be1b6a226103e9a55d4b88ee1d Mon Sep 17 00:00:00 2001 +From 4003a6ce5ac80e924f2f0df98dd70ca273a74174 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Mon, 7 Dec 2020 08:41:22 +0100 Subject: [PATCH 09/21] usb: Add enum for xHCI diff --git a/config/module/grub/xhci_nvme/patches/0010-usbtrans-Set-default-maximum-packet-size.patch b/config/module/grub/xhci/patches/0010-usbtrans-Set-default-maximum-packet-size.patch index c6196f87..74b41230 100644 --- a/config/module/grub/xhci_nvme/patches/0010-usbtrans-Set-default-maximum-packet-size.patch +++ b/config/module/grub/xhci/patches/0010-usbtrans-Set-default-maximum-packet-size.patch @@ -1,4 +1,4 @@ -From 296f9b732393315bc3a91f8531f6ac9e7b9f43e0 Mon Sep 17 00:00:00 2001 +From 169bc1b6ff63b7240d95b360602255f3896cfa2d Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Mon, 7 Dec 2020 08:41:23 +0100 Subject: [PATCH 10/21] usbtrans: Set default maximum packet size diff --git a/config/module/grub/xhci_nvme/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch b/config/module/grub/xhci/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch index ac53118a..6ac83040 100644 --- a/config/module/grub/xhci_nvme/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch +++ b/config/module/grub/xhci/patches/0011-grub-core-bus-usb-Add-function-pointer-for-attach-de.patch @@ -1,4 +1,4 @@ -From de471d16aeaab3cf12956d783604f22944ea7ed0 Mon Sep 17 00:00:00 2001 +From bae26e91d9fe9046257690b2e5452cb4831bd364 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Sun, 15 Nov 2020 19:51:42 +0100 Subject: [PATCH 11/21] grub-core/bus/usb: Add function pointer for @@ -45,7 +45,7 @@ index 5363a61f6..7a3f3e154 100644 .max_bulk_tds = GRUB_OHCI_TDS * 3 / 4 }; diff --git a/grub-core/bus/usb/uhci.c b/grub-core/bus/usb/uhci.c -index 0fdea4c1e..03c4605b2 100644 +index a6782e7d2..8e67792d6 100644 --- a/grub-core/bus/usb/uhci.c +++ b/grub-core/bus/usb/uhci.c @@ -845,6 +845,8 @@ static struct grub_usb_controller_dev usb_controller = diff --git a/config/module/grub/xhci_nvme/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch b/config/module/grub/xhci/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch index fbedfc77..eba2ab84 100644 --- a/config/module/grub/xhci_nvme/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch +++ b/config/module/grub/xhci/patches/0012-grub-core-bus-usb-usbhub-Add-new-private-fields-for-.patch @@ -1,4 +1,4 @@ -From 8966fadb8c19fd5c30dd585a53f465767c1cd627 Mon Sep 17 00:00:00 2001 +From c9cfb55e3100f677e16c98f864fe2a20b1954ce9 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Mon, 7 Dec 2020 08:41:25 +0100 Subject: [PATCH 12/21] grub-core/bus/usb/usbhub: Add new private fields for diff --git a/config/module/grub/xhci_nvme/patches/0013-grub-core-bus-usb-Add-xhci-support.patch b/config/module/grub/xhci/patches/0013-grub-core-bus-usb-Add-xhci-support.patch index 1393092a..4189e2c1 100644 --- a/config/module/grub/xhci_nvme/patches/0013-grub-core-bus-usb-Add-xhci-support.patch +++ b/config/module/grub/xhci/patches/0013-grub-core-bus-usb-Add-xhci-support.patch @@ -1,4 +1,4 @@ -From 764e79efa273fadb8fc4b5ec286dd9e5688a58e8 Mon Sep 17 00:00:00 2001 +From 5f74f92abc0a04b14805c37402fd890d78dc4d06 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Mon, 7 Dec 2020 08:41:26 +0100 Subject: [PATCH 13/21] grub-core/bus/usb: Add xhci support @@ -67,10 +67,10 @@ index 43635d5ff..65016f856 100644 endif diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def -index 0cf155128..ec4c76ea8 100644 +index 85458a038..2c709390b 100644 --- a/grub-core/Makefile.core.def +++ b/grub-core/Makefile.core.def -@@ -675,6 +675,13 @@ module = { +@@ -689,6 +689,13 @@ module = { enable = arm_coreboot; }; diff --git a/config/module/grub/xhci_nvme/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch b/config/module/grub/xhci/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch index bb5c4fd8..e4e35b0a 100644 --- a/config/module/grub/xhci_nvme/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch +++ b/config/module/grub/xhci/patches/0014-grub-core-bus-usb-usbhub-Add-xHCI-non-root-hub-suppo.patch @@ -1,4 +1,4 @@ -From f289290da21c2eafdf52ae4859623971a3da07bb Mon Sep 17 00:00:00 2001 +From 42a0faf661cff68151da2bf09fb691b02797d9ef Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Mon, 7 Dec 2020 08:41:27 +0100 Subject: [PATCH 14/21] grub-core/bus/usb/usbhub: Add xHCI non root hub support diff --git a/config/module/grub/xhci_nvme/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch b/config/module/grub/xhci/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch index 9deb581d..660963c8 100644 --- a/config/module/grub/xhci_nvme/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch +++ b/config/module/grub/xhci/patches/0015-xHCI-also-accept-SBRN-0x31-and-0x32.patch @@ -1,4 +1,4 @@ -From e8bb5e7445dad3514c88d5286563781f27233e5e Mon Sep 17 00:00:00 2001 +From ec511d13a3f82274ef6072cfe2f5765859f132c7 Mon Sep 17 00:00:00 2001 From: Sven Anderson <sven@anderson.de> Date: Sat, 28 May 2022 21:39:23 +0200 Subject: [PATCH 15/21] xHCI: also accept SBRN 0x31 and 0x32 diff --git a/config/module/grub/xhci_nvme/patches/0016-xhci-fix-port-indexing.patch b/config/module/grub/xhci/patches/0016-xhci-fix-port-indexing.patch index b1cb368a..d712691f 100644 --- a/config/module/grub/xhci_nvme/patches/0016-xhci-fix-port-indexing.patch +++ b/config/module/grub/xhci/patches/0016-xhci-fix-port-indexing.patch @@ -1,4 +1,4 @@ -From 3db55ea63bc2c4fb41f7489a77a42c821256bbf5 Mon Sep 17 00:00:00 2001 +From 6347b84e4631889e39d0e26a9e1d8c639f0e3fb2 Mon Sep 17 00:00:00 2001 From: Sven Anderson <sven@anderson.de> Date: Mon, 13 Jan 2025 19:51:41 +0100 Subject: [PATCH 16/21] xhci: fix port indexing diff --git a/config/module/grub/xhci_nvme/patches/0017-xhci-configure-TT-for-non-root-hubs.patch b/config/module/grub/xhci/patches/0017-xhci-configure-TT-for-non-root-hubs.patch index fb8ed0b4..aa5079b1 100644 --- a/config/module/grub/xhci_nvme/patches/0017-xhci-configure-TT-for-non-root-hubs.patch +++ b/config/module/grub/xhci/patches/0017-xhci-configure-TT-for-non-root-hubs.patch @@ -1,4 +1,4 @@ -From a82ef95fffc0a869e90467ce4f7c28282c084518 Mon Sep 17 00:00:00 2001 +From 106d716184721337f7e4370db1c255bf62883f7d Mon Sep 17 00:00:00 2001 From: Sven Anderson <sven@anderson.de> Date: Mon, 13 Jan 2025 20:26:32 +0100 Subject: [PATCH 17/21] xhci: configure TT for non-root-hubs diff --git a/config/module/grub/xhci_nvme/patches/0018-Fix-compilation-on-x86_64.patch b/config/module/grub/xhci/patches/0018-Fix-compilation-on-x86_64.patch index 70a1a22c..f99801b6 100644 --- a/config/module/grub/xhci_nvme/patches/0018-Fix-compilation-on-x86_64.patch +++ b/config/module/grub/xhci/patches/0018-Fix-compilation-on-x86_64.patch @@ -1,4 +1,4 @@ -From cc671d76816c8370a85e289d5ac7bdf1f687ff3a Mon Sep 17 00:00:00 2001 +From 518f3f26c3d288965005f36d66bfa2bd0ae57525 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph <patrick.rudolph@9elements.com> Date: Wed, 24 Feb 2021 08:25:41 +0100 Subject: [PATCH 18/21] Fix compilation on x86_64 diff --git a/config/module/grub/nvme/patches/0009-kern-coreboot-mmap-Map-to-reserved.patch b/config/module/grub/xhci/patches/0019-kern-coreboot-mmap-Map-to-reserved.patch index 11b82429..98589569 100644 --- a/config/module/grub/nvme/patches/0009-kern-coreboot-mmap-Map-to-reserved.patch +++ b/config/module/grub/xhci/patches/0019-kern-coreboot-mmap-Map-to-reserved.patch @@ -1,7 +1,7 @@ -From 9ec8534a4d27db37cf4feebd44fd9f8973a89e59 Mon Sep 17 00:00:00 2001 +From d205c0592028d4202f2796d275ac73b9411b6ff0 Mon Sep 17 00:00:00 2001 From: Paul Menzel <pmenzel@molgen.mpg.de> Date: Mon, 17 May 2021 10:24:36 +0200 -Subject: [PATCH 09/10] kern/coreboot/mmap: Map to reserved +Subject: [PATCH 19/21] kern/coreboot/mmap: Map to reserved https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 diff --git a/config/module/grub/xhci_nvme/patches/0023-bootstrap-Don-t-download-po-files.patch b/config/module/grub/xhci/patches/0020-bootstrap-Don-t-download-po-files.patch index cfb66047..744e36ac 100644 --- a/config/module/grub/xhci_nvme/patches/0023-bootstrap-Don-t-download-po-files.patch +++ b/config/module/grub/xhci/patches/0020-bootstrap-Don-t-download-po-files.patch @@ -1,7 +1,7 @@ -From 5d18c96a22d98d137ea40bfc6aabadce933c2d45 Mon Sep 17 00:00:00 2001 +From 7e2ec472166142b1b77113aebe9071ed72492caa Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Sun, 1 Feb 2026 20:30:55 +0100 -Subject: [PATCH 1/1] bootstrap: Don't download po files +Subject: [PATCH 20/21] bootstrap: Don't download po files GRUB doesn't verify checksums at all, and it pulls from this URL recursively: diff --git a/config/module/grub/default/patches/0012-force-disable-werror.patch b/config/module/grub/xhci/patches/0021-force-disable-werror.patch index a4837f63..85907a58 100644 --- a/config/module/grub/default/patches/0012-force-disable-werror.patch +++ b/config/module/grub/xhci/patches/0021-force-disable-werror.patch @@ -1,7 +1,7 @@ -From 2adf79420721b5f7e25d657ba1a6bb60aa221bce Mon Sep 17 00:00:00 2001 +From 99193a5ead80a2fa0e9876dfd07693689c88bc75 Mon Sep 17 00:00:00 2001 From: Leah Rowe <leah@libreboot.org> Date: Mon, 21 Sep 2026 12:13:16 +0100 -Subject: [PATCH 1/1] force-disable werror +Subject: [PATCH 21/21] force-disable werror Signed-off-by: Leah Rowe <leah@libreboot.org> --- @@ -15,7 +15,7 @@ Signed-off-by: Leah Rowe <leah@libreboot.org> 7 files changed, 72 insertions(+), 77 deletions(-) diff --git a/Makefile.am b/Makefile.am -index 43635d5ff..0f7f55e83 100644 +index 65016f856..3bd20355f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -89,11 +89,11 @@ CLEANFILES += garbage-gen$(BUILD_EXEEXT) @@ -33,10 +33,10 @@ index 43635d5ff..0f7f55e83 100644 if COND_STARFIELD diff --git a/acinclude.m4 b/acinclude.m4 -index fa7840f09..d871737fd 100644 +index 478aab6d3..dd3b360f2 100644 --- a/acinclude.m4 +++ b/acinclude.m4 -@@ -368,7 +368,7 @@ AC_MSG_CHECKING([whether `$CC' accepts `-mstack-arg-probe']) +@@ -379,7 +379,7 @@ AC_MSG_CHECKING([whether `$CC' accepts `-mstack-arg-probe']) AC_LANG_CONFTEST([AC_LANG_SOURCE([[ void foo (void) { volatile char a[8]; a[3]; } ]])]) @@ -45,7 +45,7 @@ index fa7840f09..d871737fd 100644 AC_MSG_RESULT([yes]) [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? rm -f conftest.s -@@ -430,7 +430,7 @@ link_nopie_needed=no] +@@ -441,7 +441,7 @@ link_nopie_needed=no] AC_MSG_CHECKING([whether linker needs disabling of PIE to work]) AC_LANG_CONFTEST([AC_LANG_SOURCE([[]])]) @@ -54,7 +54,7 @@ index fa7840f09..d871737fd 100644 AC_MSG_RESULT([no]) [# Should we clear up other files as well, having called `AC_LANG_CONFTEST'? rm -f conftest.o -@@ -446,7 +446,7 @@ AC_DEFUN([grub_CHECK_NO_PIE], +@@ -457,7 +457,7 @@ AC_DEFUN([grub_CHECK_NO_PIE], [AC_MSG_CHECKING([whether linker accepts -no-pie]) AC_CACHE_VAL(grub_cv_cc_ld_no_pie, [save_LDFLAGS="$LDFLAGS" @@ -63,7 +63,7 @@ index fa7840f09..d871737fd 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_ld_no_pie=yes], [grub_cv_cc_ld_no_pie=no]) -@@ -463,7 +463,7 @@ AC_DEFUN([grub_CHECK_NO_PIE_ONEWORD], +@@ -474,7 +474,7 @@ AC_DEFUN([grub_CHECK_NO_PIE_ONEWORD], [AC_MSG_CHECKING([whether linker accepts -nopie]) AC_CACHE_VAL(grub_cv_cc_ld_no_pie_oneword, [save_LDFLAGS="$LDFLAGS" @@ -86,10 +86,10 @@ index 7ef171b2b..41772df6b 100644 CFLAGS_POSIX = -fno-builtin diff --git a/configure.ac b/configure.ac -index 209c0fb11..1b808ce7b 100644 +index 313c5ac6d..c476756e9 100644 --- a/configure.ac +++ b/configure.ac -@@ -433,10 +433,10 @@ AC_CHECK_FUNCS(posix_memalign memalign getextmntent atexit) +@@ -460,10 +460,10 @@ AC_CHECK_FUNCS(posix_memalign memalign getextmntent atexit) AC_CHECK_HEADERS(sys/param.h sys/mount.h sys/mnttab.h limits.h) # glibc 2.25 still includes sys/sysmacros.h in sys/types.h but emits deprecation @@ -102,7 +102,7 @@ index 209c0fb11..1b808ce7b 100644 AC_HEADER_MAJOR CFLAGS="$SAVED_CFLAGS" -@@ -464,7 +464,7 @@ AC_SUBST([LIBUTIL]) +@@ -491,7 +491,7 @@ AC_SUBST([LIBUTIL]) AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_host_cc_wtrampolines], [ SAVED_CFLAGS="$CFLAGS" @@ -111,7 +111,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h> int va_arg_func (int fixed, va_list args);]], [[]])], [grub_cv_host_cc_wtrampolines=yes], -@@ -520,7 +520,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_cc_w_extra_flags], [ +@@ -547,7 +547,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_cc_w_extra_flags], [ SAVED_CFLAGS="$CFLAGS" grub_cv_cc_w_extra_flags= for x in $EXTRA_WARN_FLAGS; do @@ -120,7 +120,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) if test x$flag = x1 ; then grub_cv_cc_w_extra_flags="$grub_cv_cc_w_extra_flags $x" -@@ -614,7 +614,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_target_cc_w_extra_flags], [ +@@ -651,7 +651,7 @@ AC_CACHE_CHECK([which extra warnings work], [grub_cv_target_cc_w_extra_flags], [ grub_cv_target_cc_w_extra_flags= for x in $EXTRA_WARN_FLAGS; do @@ -129,7 +129,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -649,7 +649,7 @@ if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then +@@ -686,7 +686,7 @@ if test x$target_cpu = xpowerpc -o x$target_cpu = xmips; then if test x"$grub_cv_target_cc_big_endian" != xno ; then break fi @@ -138,7 +138,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ != __BYTE_ORDER__) #error still little endian -@@ -684,7 +684,7 @@ elif test x$target_cpu = xmipsel; then +@@ -721,7 +721,7 @@ elif test x$target_cpu = xmipsel; then if test x"$grub_cv_target_cc_little_endian" != xno ; then break fi @@ -147,7 +147,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && (__ORDER_BIG_ENDIAN__ == __BYTE_ORDER__) #error still big endian -@@ -722,7 +722,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then +@@ -759,7 +759,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then if test x"$grub_cv_target_cc_mips_o32_abi" != xno ; then break fi @@ -156,7 +156,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ #if !defined(_ABIO32) || !defined(_MIPS_SIM) || (_MIPS_SIM != _ABIO32) #error not o32 ABI -@@ -794,7 +794,7 @@ fi +@@ -831,7 +831,7 @@ fi # on mips redirect cache flushing function to non-existant one. if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then AC_CACHE_CHECK([whether -mflush-func=grub_red_herring works], [grub_cv_cc_mflush_func], [ @@ -165,7 +165,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mflush_func=yes], [grub_cv_cc_mflush_func=no]) -@@ -805,7 +805,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then +@@ -842,7 +842,7 @@ if test "x$target_cpu" = xmips || test "x$target_cpu" = xmipsel ; then fi AC_CACHE_CHECK([whether -mno-gpopt works], [grub_cv_cc_mno_gpopt], [ @@ -174,7 +174,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mno_gpopt=yes], [grub_cv_cc_mno_gpopt=no]) -@@ -822,7 +822,7 @@ if test "x$target_cpu" = xi386; then +@@ -859,7 +859,7 @@ if test "x$target_cpu" = xi386; then TARGET_CFLAGS="$TARGET_CFLAGS -falign-functions=1" AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [ @@ -183,7 +183,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_falign_loop=yes], [grub_cv_cc_falign_loop=no]) -@@ -833,7 +833,7 @@ if test "x$target_cpu" = xi386; then +@@ -870,7 +870,7 @@ if test "x$target_cpu" = xi386; then fi AC_CACHE_CHECK([whether -falign-jumps works], [grub_cv_cc_falign_jumps], [ @@ -192,7 +192,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_falign_jumps=yes], [grub_cv_cc_falign_jumps=no]) -@@ -845,7 +845,7 @@ if test "x$target_cpu" = xi386; then +@@ -882,7 +882,7 @@ if test "x$target_cpu" = xi386; then fi AC_CACHE_CHECK([whether -freg-struct-return works], [grub_cv_cc_freg_struct_return], [ @@ -201,7 +201,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_freg_struct_return=yes], [grub_cv_cc_freg_struct_return=no]) -@@ -863,7 +863,7 @@ fi +@@ -900,7 +900,7 @@ fi if ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ); then AC_CACHE_CHECK([whether -Wa,-mx86-used-note works], [grub_cv_cc_mx86_used_note], [ @@ -210,7 +210,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mx86_used_note=yes], [grub_cv_cc_mx86_used_note=no]) -@@ -877,7 +877,7 @@ fi +@@ -914,7 +914,7 @@ fi if test "x$target_cpu" = xloongarch64; then AC_CACHE_CHECK([whether _mno_explicit_relocs works], [grub_cv_cc_mno_explicit_relocs], [ @@ -219,7 +219,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mno_explicit_relocs=yes], [grub_cv_cc_mno_explicit_relocs=no]) -@@ -893,7 +893,7 @@ if test "x$target_cpu" = xloongarch64; then +@@ -930,7 +930,7 @@ if test "x$target_cpu" = xloongarch64; then if test x"$grub_cv_target_cc_mno_relax" != xno ; then break fi @@ -228,7 +228,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -920,7 +920,7 @@ if test "x$target_cpu" = xriscv64 || test "x$target_cpu" = xriscv32; then +@@ -957,7 +957,7 @@ if test "x$target_cpu" = xriscv64 || test "x$target_cpu" = xriscv32; then if test x"$grub_cv_target_cc_mno_relax" != xno ; then break fi @@ -237,7 +237,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -946,35 +946,35 @@ if test x"$platform" != xemu ; then +@@ -983,35 +983,35 @@ if test x"$platform" != xemu ; then AC_CACHE_CHECK([for options to get soft-float], grub_cv_target_cc_soft_float, [ grub_cv_target_cc_soft_float=no if test "x$target_cpu" = xarm64; then @@ -280,7 +280,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_soft_float="-m4-nofpu"], []) fi -@@ -984,7 +984,7 @@ if test x"$platform" != xemu ; then +@@ -1021,7 +1021,7 @@ if test x"$platform" != xemu ; then if test x"$grub_cv_target_cc_soft_float" != xno ; then break fi @@ -289,7 +289,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_soft_float="$cand"], []) done -@@ -1015,7 +1015,7 @@ if test x"$target_cpu" = xsparc64 ; then +@@ -1052,7 +1052,7 @@ if test x"$target_cpu" = xsparc64 ; then if test x"$grub_cv_target_cc_mno_app_regs" != xno ; then break fi @@ -298,7 +298,7 @@ index 209c0fb11..1b808ce7b 100644 CPPFLAGS="$TARGET_CPPFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_mno_app_regs="$cand"], []) -@@ -1039,7 +1039,7 @@ if test x"$target_cpu" = xsparc64 ; then +@@ -1076,7 +1076,7 @@ if test x"$target_cpu" = xsparc64 ; then break fi LDFLAGS="$TARGET_LDFLAGS $cand -nostdlib -static" @@ -307,7 +307,7 @@ index 209c0fb11..1b808ce7b 100644 AC_LINK_IFELSE([AC_LANG_PROGRAM([[ asm (".globl start; start:"); void __main (void); -@@ -1569,7 +1569,7 @@ if test "x$target_cpu" = xarm; then +@@ -1628,7 +1628,7 @@ if test "x$target_cpu" = xarm; then if test x"$grub_cv_target_cc_mno_movt" != xno ; then break fi @@ -316,7 +316,7 @@ index 209c0fb11..1b808ce7b 100644 CPPFLAGS="$TARGET_CPPFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_mno_movt="$cand"], []) -@@ -1581,7 +1581,7 @@ if test "x$target_cpu" = xarm; then +@@ -1640,7 +1640,7 @@ if test "x$target_cpu" = xarm; then TARGET_CPPFLAGS="$TARGET_CPPFLAGS $grub_cv_target_cc_mno_movt" fi AC_CACHE_CHECK([whether option -mthumb-interwork works], grub_cv_cc_mthumb_interwork, [ @@ -325,7 +325,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_cc_mthumb_interwork=yes], [grub_cv_cc_mthumb_interwork=no]) -@@ -1595,7 +1595,7 @@ if test "x$target_cpu" = xarm; then +@@ -1654,7 +1654,7 @@ if test "x$target_cpu" = xarm; then fi AC_CACHE_CHECK([whether option -Qn works], grub_cv_target_cc_qn, [ @@ -334,7 +334,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [grub_cv_target_cc_qn=yes], [grub_cv_target_cc_qn=no])]) -@@ -1748,7 +1748,7 @@ if test "$target_cpu" = arm; then +@@ -1807,7 +1807,7 @@ if test "$target_cpu" = arm; then AC_CACHE_CHECK([for compile options to get strict alignment], [grub_cv_target_cc_strict_align], [ grub_cv_target_cc_strict_align= for arg in -mno-unaligned-access "-Xclang -mstrict-align" -mstrict-align; do @@ -343,7 +343,7 @@ index 209c0fb11..1b808ce7b 100644 LDFLAGS="$TARGET_LDFLAGS" AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], [flag=1], [flag=0]) if test x"$flag" = x1; then -@@ -1834,7 +1834,7 @@ int va_arg_func (int fixed, va_list args);]], [[]])], +@@ -1904,7 +1904,7 @@ int va_arg_func (int fixed, va_list args);]], [[]])], fi AC_CACHE_CHECK([whether -Wtrampolines work], [grub_cv_cc_wtrampolines], [ @@ -352,7 +352,7 @@ index 209c0fb11..1b808ce7b 100644 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdarg.h> int va_arg_func (int fixed, va_list args);]], [[]])], [grub_cv_cc_wtrampolines=yes], -@@ -2362,16 +2362,11 @@ AC_SUBST(END_SYMBOL) +@@ -2434,16 +2434,11 @@ AC_SUBST(END_SYMBOL) AC_SUBST(PACKAGE) AC_SUBST(VERSION) @@ -375,10 +375,10 @@ index 209c0fb11..1b808ce7b 100644 TARGET_CPP="$TARGET_CC -E" diff --git a/grub-core/Makefile.am b/grub-core/Makefile.am -index 8577462d5..8a12861ba 100644 +index d9a664c3f..c7ee64b4b 100644 --- a/grub-core/Makefile.am +++ b/grub-core/Makefile.am -@@ -483,7 +483,7 @@ if COND_ENABLE_EFIEMU +@@ -485,7 +485,7 @@ if COND_ENABLE_EFIEMU efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) -rm -f $@ -rm -f $@.bin @@ -387,7 +387,7 @@ index 8577462d5..8a12861ba 100644 if test "x$(TARGET_APPLE_LINKER)" = x1; then \ $(TARGET_OBJCONV) -felf32 -nu -nd $@.bin $@ || exit 1; \ rm -f $@.bin ; \ -@@ -496,10 +496,10 @@ efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) +@@ -498,10 +498,10 @@ efiemu32.o: efiemu/runtime/efiemu.c $(TARGET_OBJ2ELF) # Link format -arch,x86_64 means Apple linker efiemu64_c.o: efiemu/runtime/efiemu.c @@ -542,7 +542,7 @@ index 4a7bee2fb..b3fb1db4f 100755 # diff --git a/grub-core/lib/libgcrypt/configure.ac b/grub-core/lib/libgcrypt/configure.ac -index 1d06ca3b1..0a4e0286a 100644 +index 4f4df34ac..f96dfb464 100644 --- a/grub-core/lib/libgcrypt/configure.ac +++ b/grub-core/lib/libgcrypt/configure.ac @@ -1007,7 +1007,7 @@ AC_CACHE_CHECK(whether the visibility attribute is supported, diff --git a/config/module/grub/xhci/patches/0022-don-t-use-image-base-in-configure-ac.patch b/config/module/grub/xhci/patches/0022-don-t-use-image-base-in-configure-ac.patch new file mode 100644 index 00000000..a86f11bd --- /dev/null +++ b/config/module/grub/xhci/patches/0022-don-t-use-image-base-in-configure-ac.patch @@ -0,0 +1,36 @@ +From 3e245b015f4503c68d6b66089b45bfaeaa6c2d8a Mon Sep 17 00:00:00 2001 +From: Leah Rowe <leah@libreboot.org> +Date: Thu, 24 Sep 2026 11:34:04 +0100 +Subject: [PATCH 1/1] don't use --image-base in configure-ac + +fixes a build error: + +kernel.img' is miscompiled: its start address is 0x9074 instead of 0x9000: ld.gold bug? + +this isn't needed on newer linux e.g. archlinux which has +a newer linker. it does however fix building on my +debian 13 machine. + +Signed-off-by: Leah Rowe <leah@libreboot.org> +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c476756e9..94ce6da7b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1509,8 +1509,8 @@ else + TARGET_IMG_LDFLAGS='-Wl,-N' + TARGET_IMG_LDFLAGS_AC='-Wl,-N' + if test "x$target_cpu-$platform" != "xi386-pc"; then +- AX_CHECK_LINK_FLAG([-Wl,--image-base,0], +- [TARGET_IMG_BASE_LDOPT="-Wl,--image-base,0 -Wl,-Ttext"], ++ AX_CHECK_LINK_FLAG([-Wl,0], ++ [TARGET_IMG_BASE_LDOPT="-Wl,0 -Wl,-Ttext"], + [TARGET_IMG_BASE_LDOPT="-Wl,-Ttext"], + [], + [AC_LANG_SOURCE([ +-- +2.47.3 + diff --git a/config/module/grub/xhci/target.cfg b/config/module/grub/xhci/target.cfg new file mode 100644 index 00000000..e367c2bc --- /dev/null +++ b/config/module/grub/xhci/target.cfg @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-3.0-or-later + +rev="f10ad08fa2a02dce95774c1b5caee38254b30531" + +tree="xhci" diff --git a/config/module/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch b/config/module/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch deleted file mode 100644 index f09ae69d..00000000 --- a/config/module/grub/xhci_nvme/patches/0019-Add-native-NVMe-driver-based-on-SeaBIOS.patch +++ /dev/null @@ -1,1074 +0,0 @@ -From 467fe4c5a98c0cfc1b357ec8acc360a03b5f7038 Mon Sep 17 00:00:00 2001 -From: Mate Kukri <km@mkukri.xyz> -Date: Mon, 20 May 2024 11:43:35 +0100 -Subject: [PATCH 19/21] Add native NVMe driver based on SeaBIOS - -Tested to successfully boot Debian on QEMU and OptiPlex 3050. - -Signed-off-by: Mate Kukri <km@mkukri.xyz> ---- - Makefile.am | 2 +- - grub-core/Makefile.core.def | 6 + - grub-core/commands/nativedisk.c | 1 + - grub-core/disk/nvme-int.h | 208 +++++++++ - grub-core/disk/nvme.c | 781 ++++++++++++++++++++++++++++++++ - include/grub/disk.h | 1 + - 6 files changed, 998 insertions(+), 1 deletion(-) - create mode 100644 grub-core/disk/nvme-int.h - create mode 100644 grub-core/disk/nvme.c - -diff --git a/Makefile.am b/Makefile.am -index 65016f856..7bc0866ba 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -434,7 +434,7 @@ if COND_i386_coreboot - FS_PAYLOAD_MODULES ?= $(shell cat grub-core/fs.lst) - default_payload.elf: grub-mkstandalone grub-mkimage FORCE - test -f $@ && rm $@ || true -- pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o $@ --modules='ahci pata xhci ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu $(FS_PAYLOAD_MODULES) password_pbkdf2 $(EXTRA_PAYLOAD_MODULES)' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=$(srcdir)/coreboot.cfg -+ pkgdatadir=. ./grub-mkstandalone --grub-mkimage=./grub-mkimage -O i386-coreboot -o $@ --modules='ahci pata nvme xhci ehci uhci ohci usb_keyboard usbms part_msdos ext2 fat at_keyboard part_gpt usbserial_usbdebug cbfs' --install-modules='ls linux search configfile normal cbtime cbls memrw iorw minicmd lsmmap lspci halt reboot hexdump pcidump regexp setpci lsacpi chain test serial multiboot cbmemc linux16 gzio echo help syslinuxcfg xnu $(FS_PAYLOAD_MODULES) password_pbkdf2 $(EXTRA_PAYLOAD_MODULES)' --fonts= --themes= --locales= -d grub-core/ /boot/grub/grub.cfg=$(srcdir)/coreboot.cfg - endif - - endif -diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def -index ec4c76ea8..08b83ad06 100644 ---- a/grub-core/Makefile.core.def -+++ b/grub-core/Makefile.core.def -@@ -2780,3 +2780,9 @@ module = { - cflags = '-Wno-uninitialized'; - cppflags = '-I$(srcdir)/lib/libtasn1-grub -I$(srcdir)/tests/asn1/'; - }; -+ -+module = { -+ name = nvme; -+ common = disk/nvme.c; -+ enable = pci; -+}; -diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c -index 6806bff9c..fd68a513e 100644 ---- a/grub-core/commands/nativedisk.c -+++ b/grub-core/commands/nativedisk.c -@@ -78,6 +78,7 @@ get_uuid (const char *name, char **uuid, int getnative) - case GRUB_DISK_DEVICE_ATA_ID: - case GRUB_DISK_DEVICE_SCSI_ID: - case GRUB_DISK_DEVICE_XEN: -+ case GRUB_DISK_DEVICE_NVME_ID: - if (getnative) - break; - /* FALLTHROUGH */ -diff --git a/grub-core/disk/nvme-int.h b/grub-core/disk/nvme-int.h -new file mode 100644 -index 000000000..1295b58aa ---- /dev/null -+++ b/grub-core/disk/nvme-int.h -@@ -0,0 +1,208 @@ -+// NVMe datastructures and constants -+// -+// Copyright 2017 Amazon.com, Inc. or its affiliates. -+// -+// This file may be distributed under the terms of the GNU LGPLv3 license. -+ -+#ifndef __NVME_INT_H -+#define __NVME_INT_H -+ -+#include <grub/types.h> -+ -+/* Data structures */ -+ -+/* The register file of a NVMe host controller. This struct follows the naming -+ scheme in the NVMe specification. */ -+struct nvme_reg { -+ grub_uint64_t cap; /* controller capabilities */ -+ grub_uint32_t vs; /* version */ -+ grub_uint32_t intms; /* interrupt mask set */ -+ grub_uint32_t intmc; /* interrupt mask clear */ -+ grub_uint32_t cc; /* controller configuration */ -+ grub_uint32_t _res0; -+ grub_uint32_t csts; /* controller status */ -+ grub_uint32_t _res1; -+ grub_uint32_t aqa; /* admin queue attributes */ -+ grub_uint64_t asq; /* admin submission queue base address */ -+ grub_uint64_t acq; /* admin completion queue base address */ -+}; -+ -+/* Submission queue entry */ -+struct nvme_sqe { -+ union { -+ grub_uint32_t dword[16]; -+ struct { -+ grub_uint32_t cdw0; /* Command DWORD 0 */ -+ grub_uint32_t nsid; /* Namespace ID */ -+ grub_uint64_t _res0; -+ grub_uint64_t mptr; /* metadata ptr */ -+ -+ grub_uint64_t dptr_prp1; -+ grub_uint64_t dptr_prp2; -+ }; -+ }; -+}; -+ -+/* Completion queue entry */ -+struct nvme_cqe { -+ union { -+ grub_uint32_t dword[4]; -+ struct { -+ grub_uint32_t cdw0; -+ grub_uint32_t _res0; -+ grub_uint16_t sq_head; -+ grub_uint16_t sq_id; -+ grub_uint16_t cid; -+ grub_uint16_t status; -+ }; -+ }; -+}; -+ -+/* The common part of every submission or completion queue. */ -+struct nvme_queue { -+ grub_uint32_t *dbl; /* doorbell */ -+ grub_uint16_t mask; /* length - 1 */ -+}; -+ -+struct nvme_cq { -+ struct nvme_queue common; -+ struct nvme_cqe *cqe; -+ -+ /* We have read upto (but not including) this entry in the queue. */ -+ grub_uint16_t head; -+ -+ /* The current phase bit the controller uses to indicate that it has written -+ a new entry. This is inverted after each wrap. */ -+ unsigned phase : 1; -+}; -+ -+struct nvme_sq { -+ struct nvme_queue common; -+ struct nvme_sqe *sqe; -+ -+ /* Corresponding completion queue. We only support a single SQ per CQ. */ -+ struct nvme_cq *cq; -+ -+ /* The last entry the controller has fetched. */ -+ grub_uint16_t head; -+ -+ /* The last value we have written to the tail doorbell. */ -+ grub_uint16_t tail; -+}; -+ -+struct nvme_ctrl { -+ grub_pci_device_t pci; -+ struct nvme_reg volatile *reg; -+ -+ grub_uint32_t ctrlnum; -+ -+ grub_uint32_t doorbell_stride; /* in bytes */ -+ -+ struct nvme_sq admin_sq; -+ struct nvme_cq admin_cq; -+ -+ grub_uint32_t ns_count; -+ -+ struct nvme_sq io_sq; -+ struct nvme_cq io_cq; -+}; -+ -+struct nvme_namespace { -+ struct nvme_namespace *next; -+ struct nvme_namespace **prev; -+ -+ char *devname; -+ -+ grub_uint32_t nsnum; -+ -+ struct nvme_ctrl *ctrl; -+ -+ grub_uint32_t ns_id; -+ -+ grub_uint64_t lba_count; /* The total amount of sectors. */ -+ -+ grub_uint32_t block_size; -+ grub_uint32_t metadata_size; -+ grub_uint32_t max_req_size; -+}; -+ -+/* Data structures for NVMe admin identify commands */ -+ -+struct nvme_identify_ctrl { -+ grub_uint16_t vid; -+ grub_uint16_t ssvid; -+ char sn[20]; -+ char mn[40]; -+ char fr[8]; -+ -+ grub_uint8_t rab; -+ grub_uint8_t ieee[3]; -+ grub_uint8_t cmic; -+ grub_uint8_t mdts; -+ -+ char _boring[516 - 78]; -+ -+ grub_uint32_t nn; /* number of namespaces */ -+}; -+ -+struct nvme_identify_ns_list { -+ grub_uint32_t ns_id[1024]; -+}; -+ -+struct nvme_lba_format { -+ grub_uint16_t ms; -+ grub_uint8_t lbads; -+ grub_uint8_t rp; -+}; -+ -+struct nvme_identify_ns { -+ grub_uint64_t nsze; -+ grub_uint64_t ncap; -+ grub_uint64_t nuse; -+ grub_uint8_t nsfeat; -+ grub_uint8_t nlbaf; -+ grub_uint8_t flbas; -+ -+ char _boring[128 - 27]; -+ -+ struct nvme_lba_format lbaf[16]; -+}; -+ -+union nvme_identify { -+ struct nvme_identify_ns ns; -+ struct nvme_identify_ctrl ctrl; -+ struct nvme_identify_ns_list ns_list; -+}; -+ -+/* NVMe constants */ -+ -+#define NVME_CAP_CSS_NVME (1ULL << 37) -+ -+#define NVME_CSTS_FATAL (1U << 1) -+#define NVME_CSTS_RDY (1U << 0) -+ -+#define NVME_CC_EN (1U << 0) -+ -+#define NVME_SQE_OPC_ADMIN_CREATE_IO_SQ 1U -+#define NVME_SQE_OPC_ADMIN_CREATE_IO_CQ 5U -+#define NVME_SQE_OPC_ADMIN_IDENTIFY 6U -+ -+#define NVME_SQE_OPC_IO_WRITE 1U -+#define NVME_SQE_OPC_IO_READ 2U -+ -+#define NVME_ADMIN_IDENTIFY_CNS_ID_NS 0U -+#define NVME_ADMIN_IDENTIFY_CNS_ID_CTRL 1U -+#define NVME_ADMIN_IDENTIFY_CNS_GET_NS_LIST 2U -+ -+#define NVME_CQE_DW3_P (1U << 16) -+ -+#define NVME_PAGE_SIZE 4096 -+#define NVME_PAGE_MASK ~(NVME_PAGE_SIZE - 1) -+ -+/* Length for the queue entries. */ -+#define NVME_SQE_SIZE_LOG 6 -+#define NVME_CQE_SIZE_LOG 4 -+ -+#endif -+ -+/* EOF */ -diff --git a/grub-core/disk/nvme.c b/grub-core/disk/nvme.c -new file mode 100644 -index 000000000..093237c70 ---- /dev/null -+++ b/grub-core/disk/nvme.c -@@ -0,0 +1,781 @@ -+// Low level NVMe disk access -+// -+// Based on SeaBIOS NVMe driver - Copyright 2017 Amazon.com, Inc. or its affiliates. -+// Port to GRUB2 done by Mate Kukri -+// -+// This file may be distributed under the terms of the GNU LGPLv3 license. -+ -+#include <grub/disk.h> -+#include <grub/dl.h> -+#include <grub/pci.h> -+#include "nvme-int.h" -+ -+GRUB_MOD_LICENSE ("GPLv3"); /* LGPLv3 in reality but it is GPLv3 compatible */ -+ -+static grub_uint32_t grub_nvme_ctrlcnt; -+static grub_uint32_t grub_nvme_nscnt; -+ -+static struct nvme_namespace *grub_nvme_namespaces; -+ -+// Page aligned "dma bounce buffer" of size NVME_PAGE_SIZE -+static void *nvme_dma_buffer; -+ -+static void * -+zalloc_page_aligned(grub_uint32_t size) -+{ -+ void *res = grub_memalign(NVME_PAGE_SIZE, size); -+ if (res) grub_memset(res, 0, size); -+ return res; -+} -+ -+static void -+nvme_init_queue_common(struct nvme_ctrl *ctrl, struct nvme_queue *q, grub_uint16_t q_idx, -+ grub_uint16_t length) -+{ -+ grub_memset(q, 0, sizeof(*q)); -+ q->dbl = (grub_uint32_t *)((char *)ctrl->reg + 0x1000 + q_idx * ctrl->doorbell_stride); -+ grub_dprintf("nvme", " q %p q_idx %u dbl %p\n", q, q_idx, q->dbl); -+ q->mask = length - 1; -+} -+ -+static int -+nvme_init_sq(struct nvme_ctrl *ctrl, struct nvme_sq *sq, grub_uint16_t q_idx, grub_uint16_t length, -+ struct nvme_cq *cq) -+{ -+ nvme_init_queue_common(ctrl, &sq->common, q_idx, length); -+ sq->sqe = zalloc_page_aligned(sizeof(*sq->sqe) * length); -+ -+ if (!sq->sqe) { -+ return -1; -+ } -+ -+ grub_dprintf("nvme", "sq %p q_idx %u sqe %p\n", sq, q_idx, sq->sqe); -+ sq->cq = cq; -+ sq->head = 0; -+ sq->tail = 0; -+ -+ return 0; -+} -+ -+static int -+nvme_init_cq(struct nvme_ctrl *ctrl, struct nvme_cq *cq, grub_uint16_t q_idx, grub_uint16_t length) -+{ -+ nvme_init_queue_common(ctrl, &cq->common, q_idx, length); -+ cq->cqe = zalloc_page_aligned(sizeof(*cq->cqe) * length); -+ if (!cq->cqe) { -+ return -1; -+ } -+ -+ cq->head = 0; -+ -+ /* All CQE phase bits are initialized to zero. This means initially we wait -+ for the host controller to set these to 1. */ -+ cq->phase = 1; -+ -+ return 0; -+} -+ -+static int -+nvme_poll_cq(struct nvme_cq *cq) -+{ -+ grub_uint32_t dw3 = *(volatile grub_uint32_t *) &cq->cqe[cq->head].dword[3]; -+ return (!!(dw3 & NVME_CQE_DW3_P) == cq->phase); -+} -+ -+static int -+nvme_is_cqe_success(struct nvme_cqe const *cqe) -+{ -+ return ((cqe->status >> 1) & 0xFF) == 0; -+} -+ -+static struct nvme_cqe -+nvme_error_cqe(void) -+{ -+ struct nvme_cqe r; -+ -+ /* 0xFF is a vendor specific status code != success. Should be okay for -+ indicating failure. */ -+ grub_memset(&r, 0xFF, sizeof(r)); -+ return r; -+} -+ -+static struct nvme_cqe -+nvme_consume_cqe(struct nvme_sq *sq) -+{ -+ struct nvme_cq *cq = sq->cq; -+ -+ if (!nvme_poll_cq(cq)) { -+ /* Cannot consume a completion queue entry, if there is none ready. */ -+ return nvme_error_cqe(); -+ } -+ -+ struct nvme_cqe *cqe = &cq->cqe[cq->head]; -+ grub_uint16_t cq_next_head = (cq->head + 1) & cq->common.mask; -+ grub_dprintf("nvme", "cq %p head %u -> %u\n", cq, cq->head, cq_next_head); -+ if (cq_next_head < cq->head) { -+ grub_dprintf("nvme", "cq %p wrap\n", cq); -+ cq->phase = ~cq->phase; -+ } -+ cq->head = cq_next_head; -+ -+ /* Update the submission queue head. */ -+ if (cqe->sq_head != sq->head) { -+ sq->head = cqe->sq_head; -+ grub_dprintf("nvme", "sq %p advanced to %u\n", sq, cqe->sq_head); -+ } -+ -+ /* Tell the controller that we consumed the completion. */ -+ *(volatile grub_uint32_t *) cq->common.dbl = cq->head; -+ -+ return *cqe; -+} -+ -+static struct nvme_cqe -+nvme_wait(struct nvme_sq *sq) -+{ -+ // static const unsigned nvme_timeout = 5000 /* ms */; -+ // grub_uint32_t to = timer_calc(nvme_timeout); -+ while (!nvme_poll_cq(sq->cq)) { -+ /* FIXME -+ yield(); -+ -+ if (timer_check(to)) { -+ warn_timeout(); -+ return nvme_error_cqe(); -+ }*/ -+ } -+ -+ return nvme_consume_cqe(sq); -+} -+ -+/* Returns the next submission queue entry (or NULL if the queue is full). It -+ also fills out Command Dword 0 and clears the rest. */ -+static struct nvme_sqe * -+nvme_get_next_sqe(struct nvme_sq *sq, grub_uint8_t opc, void *metadata, void *data, void *data2) -+{ -+ if (((sq->head + 1) & sq->common.mask) == sq->tail) { -+ grub_dprintf("nvme", "submission queue is full\n"); -+ return NULL; -+ } -+ -+ struct nvme_sqe *sqe = &sq->sqe[sq->tail]; -+ grub_dprintf("nvme", "sq %p next_sqe %u\n", sq, sq->tail); -+ -+ grub_memset(sqe, 0, sizeof(*sqe)); -+ sqe->cdw0 = opc | (sq->tail << 16 /* CID */); -+ sqe->mptr = (grub_uint32_t)metadata; -+ sqe->dptr_prp1 = (grub_uint32_t)data; -+ sqe->dptr_prp2 = (grub_uint32_t)data2; -+ -+ return sqe; -+} -+ -+/* Call this after you've filled out an sqe that you've got from nvme_get_next_sqe. */ -+static void -+nvme_commit_sqe(struct nvme_sq *sq) -+{ -+ grub_dprintf("nvme", "sq %p commit_sqe %u\n", sq, sq->tail); -+ sq->tail = (sq->tail + 1) & sq->common.mask; -+ *(volatile grub_uint32_t *) sq->common.dbl = sq->tail; -+} -+ -+/* Perform an identify command on the admin queue and return the resulting -+ buffer. This may be a NULL pointer, if something failed. This function -+ cannot be used after initialization, because it uses buffers in tmp zone. */ -+static union nvme_identify * -+nvme_admin_identify(struct nvme_ctrl *ctrl, grub_uint8_t cns, grub_uint32_t nsid) -+{ -+ union nvme_identify *identify_buf = zalloc_page_aligned(4096); -+ if (!identify_buf) -+ return NULL; -+ -+ struct nvme_sqe *cmd_identify; -+ cmd_identify = nvme_get_next_sqe(&ctrl->admin_sq, -+ NVME_SQE_OPC_ADMIN_IDENTIFY, NULL, -+ identify_buf, NULL); -+ if (!cmd_identify) -+ goto error; -+ -+ cmd_identify->nsid = nsid; -+ cmd_identify->dword[10] = cns; -+ -+ nvme_commit_sqe(&ctrl->admin_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ctrl->admin_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ goto error; -+ } -+ -+ return identify_buf; -+ error: -+ grub_free(identify_buf); -+ return NULL; -+} -+ -+static struct nvme_identify_ctrl * -+nvme_admin_identify_ctrl(struct nvme_ctrl *ctrl) -+{ -+ return &nvme_admin_identify(ctrl, NVME_ADMIN_IDENTIFY_CNS_ID_CTRL, 0)->ctrl; -+} -+ -+static struct nvme_identify_ns * -+nvme_admin_identify_ns(struct nvme_ctrl *ctrl, grub_uint32_t ns_id) -+{ -+ return &nvme_admin_identify(ctrl, NVME_ADMIN_IDENTIFY_CNS_ID_NS, -+ ns_id)->ns; -+} -+ -+static void -+nvme_probe_ns(struct nvme_ctrl *ctrl, grub_uint32_t ns_idx, grub_uint8_t mdts) -+{ -+ grub_uint32_t ns_id = ns_idx + 1; -+ -+ struct nvme_identify_ns *id = nvme_admin_identify_ns(ctrl, ns_id); -+ if (!id) { -+ grub_dprintf("nvme", "NVMe couldn't identify namespace %u.\n", ns_id); -+ goto free_buffer; -+ } -+ -+ grub_uint8_t current_lba_format = id->flbas & 0xF; -+ if (current_lba_format > id->nlbaf) { -+ grub_dprintf("nvme", "NVMe NS %u: current LBA format %u is beyond what the " -+ " namespace supports (%u)?\n", -+ ns_id, current_lba_format, id->nlbaf + 1); -+ goto free_buffer; -+ } -+ -+ if (!id->nsze) { -+ grub_dprintf("nvme", "NVMe NS %u is inactive.\n", ns_id); -+ goto free_buffer; -+ } -+ -+ if (!nvme_dma_buffer) { -+ nvme_dma_buffer = zalloc_page_aligned(NVME_PAGE_SIZE); -+ if (!nvme_dma_buffer) { -+ goto free_buffer; -+ } -+ } -+ -+ struct nvme_namespace *ns = grub_malloc(sizeof(*ns)); -+ if (!ns) { -+ goto free_buffer; -+ } -+ grub_memset(ns, 0, sizeof(*ns)); -+ ns->ctrl = ctrl; -+ ns->ns_id = ns_id; -+ ns->lba_count = id->nsze; -+ -+ struct nvme_lba_format *fmt = &id->lbaf[current_lba_format]; -+ -+ ns->block_size = 1U << fmt->lbads; -+ ns->metadata_size = fmt->ms; -+ -+ if (ns->block_size > NVME_PAGE_SIZE) { -+ /* If we see devices that trigger this path, we need to increase our -+ buffer size. */ -+ grub_free(ns); -+ goto free_buffer; -+ } -+ -+ if (mdts) { -+ ns->max_req_size = ((1U << mdts) * NVME_PAGE_SIZE) / ns->block_size; -+ grub_dprintf("nvme", "NVME NS %u max request size: %d sectors\n", -+ ns_id, ns->max_req_size); -+ } else { -+ ns->max_req_size = -1U; -+ } -+ -+ ns->devname = grub_xasprintf("nvme%un%u", ctrl->ctrlnum, ns_id); -+ ns->nsnum = grub_nvme_nscnt++; -+ -+ grub_list_push (GRUB_AS_LIST_P (&grub_nvme_namespaces), GRUB_AS_LIST (ns)); -+ -+free_buffer: -+ grub_free(id); -+} -+ -+ -+/* Release memory allocated for a completion queue */ -+static void -+nvme_destroy_cq(struct nvme_cq *cq) -+{ -+ grub_free(cq->cqe); -+ cq->cqe = NULL; -+} -+ -+/* Release memory allocated for a submission queue */ -+static void -+nvme_destroy_sq(struct nvme_sq *sq) -+{ -+ grub_free(sq->sqe); -+ sq->sqe = NULL; -+} -+ -+/* Returns 0 on success. */ -+static int -+nvme_create_io_cq(struct nvme_ctrl *ctrl, struct nvme_cq *cq, grub_uint16_t q_idx) -+{ -+ int rc; -+ struct nvme_sqe *cmd_create_cq; -+ grub_uint32_t length = 1 + (ctrl->reg->cap & 0xffff); -+ if (length > NVME_PAGE_SIZE / sizeof(struct nvme_cqe)) -+ length = NVME_PAGE_SIZE / sizeof(struct nvme_cqe); -+ -+ rc = nvme_init_cq(ctrl, cq, q_idx, length); -+ if (rc) { -+ goto err; -+ } -+ -+ cmd_create_cq = nvme_get_next_sqe(&ctrl->admin_sq, -+ NVME_SQE_OPC_ADMIN_CREATE_IO_CQ, NULL, -+ cq->cqe, NULL); -+ if (!cmd_create_cq) { -+ goto err_destroy_cq; -+ } -+ -+ cmd_create_cq->dword[10] = (cq->common.mask << 16) | (q_idx >> 1); -+ cmd_create_cq->dword[11] = 1 /* physically contiguous */; -+ -+ nvme_commit_sqe(&ctrl->admin_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ctrl->admin_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ grub_dprintf("nvme", "create io cq failed: %08x %08x %08x %08x\n", -+ cqe.dword[0], cqe.dword[1], cqe.dword[2], cqe.dword[3]); -+ -+ goto err_destroy_cq; -+ } -+ -+ return 0; -+ -+err_destroy_cq: -+ nvme_destroy_cq(cq); -+err: -+ return -1; -+} -+ -+/* Returns 0 on success. */ -+static int -+nvme_create_io_sq(struct nvme_ctrl *ctrl, struct nvme_sq *sq, grub_uint16_t q_idx, struct nvme_cq *cq) -+{ -+ int rc; -+ struct nvme_sqe *cmd_create_sq; -+ grub_uint32_t length = 1 + (ctrl->reg->cap & 0xffff); -+ if (length > NVME_PAGE_SIZE / sizeof(struct nvme_cqe)) -+ length = NVME_PAGE_SIZE / sizeof(struct nvme_cqe); -+ -+ rc = nvme_init_sq(ctrl, sq, q_idx, length, cq); -+ if (rc) { -+ goto err; -+ } -+ -+ cmd_create_sq = nvme_get_next_sqe(&ctrl->admin_sq, -+ NVME_SQE_OPC_ADMIN_CREATE_IO_SQ, NULL, -+ sq->sqe, NULL); -+ if (!cmd_create_sq) { -+ goto err_destroy_sq; -+ } -+ -+ cmd_create_sq->dword[10] = (sq->common.mask << 16) | (q_idx >> 1); -+ cmd_create_sq->dword[11] = (q_idx >> 1) << 16 | 1 /* contiguous */; -+ grub_dprintf("nvme", "sq %p create dword10 %08x dword11 %08x\n", sq, -+ cmd_create_sq->dword[10], cmd_create_sq->dword[11]); -+ -+ nvme_commit_sqe(&ctrl->admin_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ctrl->admin_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ grub_dprintf("nvme", "create io sq failed: %08x %08x %08x %08x\n", -+ cqe.dword[0], cqe.dword[1], cqe.dword[2], cqe.dword[3]); -+ goto err_destroy_sq; -+ } -+ -+ return 0; -+ -+err_destroy_sq: -+ nvme_destroy_sq(sq); -+err: -+ return -1; -+} -+ -+/* Reads count sectors into buf. The buffer cannot cross page boundaries. */ -+static int -+nvme_io_xfer(struct nvme_namespace *ns, grub_uint64_t lba, void *prp1, void *prp2, -+ grub_uint16_t count, int write) -+{ -+ if (((grub_uint32_t)prp1 & 0x3) || ((grub_uint32_t)prp2 & 0x3)) { -+ /* Buffer is misaligned */ -+ return -1; -+ } -+ -+ struct nvme_sqe *io_read = nvme_get_next_sqe(&ns->ctrl->io_sq, -+ write ? NVME_SQE_OPC_IO_WRITE -+ : NVME_SQE_OPC_IO_READ, -+ NULL, prp1, prp2); -+ io_read->nsid = ns->ns_id; -+ io_read->dword[10] = (grub_uint32_t)lba; -+ io_read->dword[11] = (grub_uint32_t)(lba >> 32); -+ io_read->dword[12] = (1U << 31 /* limited retry */) | (count - 1); -+ -+ nvme_commit_sqe(&ns->ctrl->io_sq); -+ -+ struct nvme_cqe cqe = nvme_wait(&ns->ctrl->io_sq); -+ -+ if (!nvme_is_cqe_success(&cqe)) { -+ grub_dprintf("nvme", "read io: %08x %08x %08x %08x\n", -+ cqe.dword[0], cqe.dword[1], cqe.dword[2], cqe.dword[3]); -+ -+ return -1; -+ } -+ -+ grub_dprintf("nvme", "ns %u %s lba %llu+%u\n", ns->ns_id, write ? "write" : "read", -+ lba, count); -+ return count; -+} -+ -+// Transfer up to one page of data using the internal dma bounce buffer -+static int -+nvme_bounce_xfer(struct nvme_namespace *ns, grub_uint64_t lba, void *buf, grub_uint16_t count, -+ int write) -+{ -+ grub_uint16_t const max_blocks = NVME_PAGE_SIZE / ns->block_size; -+ grub_uint16_t blocks = count < max_blocks ? count : max_blocks; -+ -+ if (write) -+ grub_memcpy(nvme_dma_buffer, buf, blocks * ns->block_size); -+ -+ int res = nvme_io_xfer(ns, lba, nvme_dma_buffer, NULL, blocks, write); -+ -+ if (!write && res >= 0) -+ grub_memcpy(buf, nvme_dma_buffer, res * ns->block_size); -+ -+ return res; -+} -+ -+#define NVME_MAX_PRPL_ENTRIES 15 /* Allows requests up to 64kb */ -+ -+// Transfer data using page list (if applicable) -+static int -+nvme_prpl_xfer(struct nvme_namespace *ns, grub_uint64_t lba, void *buf, grub_uint16_t count, -+ int write) -+{ -+ grub_uint32_t base = (long)buf; -+ grub_int32_t size; -+ -+ if (count > ns->max_req_size) -+ count = ns->max_req_size; -+ -+ size = count * ns->block_size; -+ /* Special case for transfers that fit into PRP1, but are unaligned */ -+ if (((size + (base & ~NVME_PAGE_MASK)) <= NVME_PAGE_SIZE)) -+ goto single; -+ -+ /* Every request has to be page aligned */ -+ if (base & ~NVME_PAGE_MASK) -+ goto bounce; -+ -+ /* Make sure a full block fits into the last chunk */ -+ if (size & (ns->block_size - 1ULL)) -+ goto bounce; -+ -+ /* Build PRP list if we need to describe more than 2 pages */ -+ if ((ns->block_size * count) > (NVME_PAGE_SIZE * 2)) { -+ grub_uint32_t prpl_len = 0; -+ grub_uint64_t *prpl = nvme_dma_buffer; -+ int first_page = 1; -+ for (; size > 0; base += NVME_PAGE_SIZE, size -= NVME_PAGE_SIZE) { -+ if (first_page) { -+ /* First page is special */ -+ first_page = 0; -+ continue; -+ } -+ if (prpl_len >= NVME_MAX_PRPL_ENTRIES) -+ goto bounce; -+ prpl[prpl_len++] = base; -+ } -+ return nvme_io_xfer(ns, lba, buf, prpl, count, write); -+ } -+ -+ /* Directly embed the 2nd page if we only need 2 pages */ -+ if ((ns->block_size * count) > NVME_PAGE_SIZE) -+ return nvme_io_xfer(ns, lba, buf, (char *) buf + NVME_PAGE_SIZE, count, write); -+ -+single: -+ /* One page is enough, don't expose anything else */ -+ return nvme_io_xfer(ns, lba, buf, NULL, count, write); -+ -+bounce: -+ /* Use bounce buffer to make transfer */ -+ return nvme_bounce_xfer(ns, lba, buf, count, write); -+} -+ -+static int -+nvme_create_io_queues(struct nvme_ctrl *ctrl) -+{ -+ if (nvme_create_io_cq(ctrl, &ctrl->io_cq, 3)) -+ goto err; -+ -+ if (nvme_create_io_sq(ctrl, &ctrl->io_sq, 2, &ctrl->io_cq)) -+ goto err_free_cq; -+ -+ return 0; -+ -+ err_free_cq: -+ nvme_destroy_cq(&ctrl->io_cq); -+ err: -+ return -1; -+} -+ -+/* Waits for CSTS.RDY to match rdy. Returns 0 on success. */ -+static int -+nvme_wait_csts_rdy(struct nvme_ctrl *ctrl, unsigned rdy) -+{ -+ // grub_uint32_t const max_to = 500 /* ms */ * ((ctrl->reg->cap >> 24) & 0xFFU); -+ // grub_uint32_t to = timer_calc(max_to); -+ grub_uint32_t csts; -+ -+ while (rdy != ((csts = ctrl->reg->csts) & NVME_CSTS_RDY)) { -+ // FIXME -+ //yield(); -+ -+ if (csts & NVME_CSTS_FATAL) { -+ grub_dprintf("nvme", "NVMe fatal error during controller shutdown\n"); -+ return -1; -+ } -+ -+ /* -+ if (timer_check(to)) { -+ warn_timeout(); -+ return -1; -+ }*/ -+ } -+ -+ return 0; -+} -+ -+/* Returns 0 on success. */ -+static int grub_nvme_controller_enable(struct nvme_ctrl *ctrl) -+{ -+ grub_pci_address_t addr; -+ int rc; -+ -+ addr = grub_pci_make_address (ctrl->pci, GRUB_PCI_REG_COMMAND); -+ grub_pci_write_word (addr, grub_pci_read_word (addr) | GRUB_PCI_COMMAND_BUS_MASTER); -+ -+ /* Turn the controller off. */ -+ ctrl->reg->cc = 0; -+ if (nvme_wait_csts_rdy(ctrl, 0)) { -+ grub_dprintf("nvme", "NVMe fatal error during controller shutdown\n"); -+ return -1; -+ } -+ -+ ctrl->doorbell_stride = 4U << ((ctrl->reg->cap >> 32) & 0xF); -+ -+ rc = nvme_init_cq(ctrl, &ctrl->admin_cq, 1, -+ NVME_PAGE_SIZE / sizeof(struct nvme_cqe)); -+ if (rc) { -+ return -1; -+ } -+ -+ rc = nvme_init_sq(ctrl, &ctrl->admin_sq, 0, -+ NVME_PAGE_SIZE / sizeof(struct nvme_sqe), &ctrl->admin_cq); -+ if (rc) { -+ goto err_destroy_admin_cq; -+ } -+ -+ ctrl->reg->aqa = ctrl->admin_cq.common.mask << 16 -+ | ctrl->admin_sq.common.mask; -+ -+ ctrl->reg->asq = (grub_uint32_t)ctrl->admin_sq.sqe; -+ ctrl->reg->acq = (grub_uint32_t)ctrl->admin_cq.cqe; -+ -+ grub_dprintf("nvme", " admin submission queue: %p\n", ctrl->admin_sq.sqe); -+ grub_dprintf("nvme", " admin completion queue: %p\n", ctrl->admin_cq.cqe); -+ -+ ctrl->reg->cc = NVME_CC_EN | (NVME_CQE_SIZE_LOG << 20) -+ | (NVME_SQE_SIZE_LOG << 16 /* IOSQES */); -+ -+ if (nvme_wait_csts_rdy(ctrl, 1)) { -+ grub_dprintf("nvme", "NVMe fatal error while enabling controller\n"); -+ goto err_destroy_admin_sq; -+ } -+ -+ /* The admin queue is set up and the controller is ready. Let's figure out -+ what namespaces we have. */ -+ -+ struct nvme_identify_ctrl *identify = nvme_admin_identify_ctrl(ctrl); -+ -+ if (!identify) { -+ grub_dprintf("nvme", "NVMe couldn't identify controller.\n"); -+ goto err_destroy_admin_sq; -+ } -+ -+ grub_dprintf("nvme", "NVMe has %u namespace%s.\n", -+ identify->nn, (identify->nn == 1) ? "" : "s"); -+ -+ ctrl->ns_count = identify->nn; -+ grub_uint8_t mdts = identify->mdts; -+ grub_free(identify); -+ -+ if ((ctrl->ns_count == 0) || nvme_create_io_queues(ctrl)) { -+ /* No point to continue, if the controller says it doesn't have -+ namespaces or we couldn't create I/O queues. */ -+ goto err_destroy_admin_sq; -+ } -+ -+ /* Give the controller a global number */ -+ ctrl->ctrlnum = grub_nvme_ctrlcnt++; -+ -+ /* Populate namespace IDs */ -+ for (grub_uint32_t ns_idx = 0; ns_idx < ctrl->ns_count; ns_idx++) { -+ nvme_probe_ns(ctrl, ns_idx, mdts); -+ } -+ -+ grub_dprintf("nvme", "NVMe initialization complete!\n"); -+ return 0; -+ -+ err_destroy_admin_sq: -+ nvme_destroy_sq(&ctrl->admin_sq); -+ err_destroy_admin_cq: -+ nvme_destroy_cq(&ctrl->admin_cq); -+ return -1; -+} -+ -+static int grub_nvme_pci_probe(grub_pci_device_t dev, grub_pci_id_t pciid __attribute__ ((unused)), void *data __attribute__ ((unused))) -+{ -+ grub_pci_address_t addr; -+ grub_uint32_t class, bar, version; -+ struct nvme_reg volatile *reg; -+ -+ class = grub_pci_read (grub_pci_make_address (dev, GRUB_PCI_REG_CLASS)); -+ if (class >> 16 != 0x0108) -+ return 0; -+ if ((class >> 8 & 0xff) != 2) { /* as of NVM 1.0e */ -+ grub_dprintf("nvme", "Found incompatble NVMe: prog-if=%02x\n", class >> 8 & 0xff); -+ return 0; -+ } -+ -+ bar = grub_pci_read (grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0)); -+ reg = grub_pci_device_map_range (dev, bar & GRUB_PCI_ADDR_MEM_MASK, sizeof (*reg)); -+ -+ addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); -+ grub_pci_write_word (addr, grub_pci_read_word (addr) | GRUB_PCI_COMMAND_MEM_ENABLED); -+ -+ version = reg->vs; -+ grub_dprintf("nvme", "Found NVMe controller with version %u.%u.%u.\n", version >> 16, (version >> 8) & 0xFF, version & 0xFF); -+ grub_dprintf("nvme", " Capabilities %016llx\n", reg->cap); -+ -+ if (~reg->cap & NVME_CAP_CSS_NVME) { -+ grub_dprintf("nvme", "Controller doesn't speak NVMe command set. Skipping.\n"); -+ goto err; -+ } -+ -+ struct nvme_ctrl *ctrl = grub_malloc(sizeof(*ctrl)); -+ if (!ctrl) -+ goto err; -+ -+ grub_memset(ctrl, 0, sizeof(*ctrl)); -+ -+ ctrl->reg = reg; -+ ctrl->pci = dev; -+ -+ if (grub_nvme_controller_enable(ctrl)) -+ goto err_free_ctrl; -+ -+ return 0; -+ -+ err_free_ctrl: -+ grub_free(ctrl); -+ err: -+ grub_dprintf("nvme", "Failed to enable NVMe controller.\n"); -+ return 0; -+} -+ -+static int -+grub_nvme_iterate (grub_disk_dev_iterate_hook_t hook, void *hook_data, grub_disk_pull_t pull) -+{ -+ struct nvme_namespace *ns; -+ -+ if (pull != GRUB_DISK_PULL_NONE) -+ return 0; -+ -+ FOR_LIST_ELEMENTS(ns, grub_nvme_namespaces) -+ if (hook (ns->devname, hook_data)) -+ return 1; -+ -+ return 0; -+} -+ -+static grub_err_t -+grub_nvme_open (const char *name __attribute ((unused)), grub_disk_t disk __attribute ((unused))) -+{ -+ struct nvme_namespace *ns; -+ -+ FOR_LIST_ELEMENTS(ns, grub_nvme_namespaces) -+ if (grub_strcmp (ns->devname, name) == 0) -+ break; -+ -+ if (! ns) -+ return grub_error (GRUB_ERR_UNKNOWN_DEVICE, "can't open device"); -+ -+ disk->total_sectors = ns->lba_count; -+ disk->max_agglomerate = ns->max_req_size; -+ -+ disk->id = ns->nsnum; /* global id of the namespace */ -+ -+ disk->data = ns; -+ -+ return 0; -+} -+ -+static grub_err_t -+nvme_readwrite(struct nvme_namespace *ns, grub_disk_addr_t sector, grub_size_t num_sectors, char *buf, int write) -+{ -+ for (int i = 0; i < num_sectors;) { -+ grub_uint16_t blocks_remaining = num_sectors - i; -+ char *op_buf = buf + i * ns->block_size; -+ int blocks = nvme_prpl_xfer(ns, sector + i, op_buf, blocks_remaining, write); -+ if (blocks < 0) -+ return GRUB_ERR_IO; -+ i += blocks; -+ } -+ return GRUB_ERR_NONE; -+} -+ -+static grub_err_t -+grub_nvme_read (grub_disk_t disk, grub_disk_addr_t sector, grub_size_t num_sectors, char *buf) -+{ -+ return nvme_readwrite((struct nvme_namespace *) disk->data, sector, num_sectors, buf, 0); -+} -+ -+static grub_err_t -+grub_nvme_write (grub_disk_t disk, grub_disk_addr_t sector, grub_size_t num_sectors, const char *buf) -+{ -+ return nvme_readwrite((struct nvme_namespace *) disk->data, sector, num_sectors, buf, 1); -+} -+ -+static struct grub_disk_dev grub_nvme_dev = -+ { -+ .name = "nvme", -+ .id = GRUB_DISK_DEVICE_NVME_ID, -+ .disk_iterate = grub_nvme_iterate, -+ .disk_open = grub_nvme_open, -+ .disk_read = grub_nvme_read, -+ .disk_write = grub_nvme_write, -+ .next = 0 -+ }; -+ -+GRUB_MOD_INIT(nvme) -+{ -+ grub_stop_disk_firmware (); -+ grub_pci_iterate (grub_nvme_pci_probe, NULL); -+ grub_disk_dev_register (&grub_nvme_dev); -+} -+ -+GRUB_MOD_FINI(nvme) -+{ -+ grub_disk_dev_unregister (&grub_nvme_dev); -+} -diff --git a/include/grub/disk.h b/include/grub/disk.h -index fbf23df7f..186e76f0b 100644 ---- a/include/grub/disk.h -+++ b/include/grub/disk.h -@@ -52,6 +52,7 @@ enum grub_disk_dev_id - GRUB_DISK_DEVICE_UBOOTDISK_ID, - GRUB_DISK_DEVICE_XEN, - GRUB_DISK_DEVICE_OBDISK_ID, -+ GRUB_DISK_DEVICE_NVME_ID - }; - - struct grub_disk; --- -2.47.3 - diff --git a/config/module/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch b/config/module/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch deleted file mode 100644 index ffa01e7a..00000000 --- a/config/module/grub/xhci_nvme/patches/0020-kern-coreboot-mmap-Map-to-reserved.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 331af0cc985aa5ec57964c6e3ab69f65c23f6481 Mon Sep 17 00:00:00 2001 -From: Paul Menzel <pmenzel@molgen.mpg.de> -Date: Mon, 17 May 2021 10:24:36 +0200 -Subject: [PATCH 20/21] kern/coreboot/mmap: Map to reserved - -https://git.savannah.gnu.org/cgit/grub.git/commit/?id=6de9ee86bf9ae50967413e6a73b5dfd13e5ffb50 - -Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de> ---- - 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/module/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch b/config/module/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch deleted file mode 100644 index 0e563fd5..00000000 --- a/config/module/grub/xhci_nvme/patches/0021-Revert-configure-Check-linker-for-image-base-support.patch +++ /dev/null @@ -1,70 +0,0 @@ -From cf791012987ea90f7a88edd21a0f619fbc40986d Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -Date: Wed, 24 Dec 2025 01:42:17 +0100 -Subject: [PATCH 21/21] 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/module/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch b/config/module/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch deleted file mode 100644 index c0a504ff..00000000 --- a/config/module/grub/xhci_nvme/patches/0022-Revert-configure-Print-a-more-helpful-error-if-autoc.patch +++ /dev/null @@ -1,30 +0,0 @@ -From abf2bf6e2973ccaa994f63ff851ba11cbd45f1eb Mon Sep 17 00:00:00 2001 -From: Leah Rowe <leah@libreboot.org> -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/module/grub/xhci_nvme/target.cfg b/config/module/grub/xhci_nvme/target.cfg deleted file mode 100644 index 07d65c91..00000000 --- a/config/module/grub/xhci_nvme/target.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -rev="eaa3b8f0f90605a82c6bfda4c5c4b73c58eb81ac" - -tree="xhci_nvme" diff --git a/config/submodule/grub/nvme/ast.po/module.cfg b/config/submodule/grub/xhci/ast.po/module.cfg index 24f5340e..24f5340e 100644 --- a/config/submodule/grub/nvme/ast.po/module.cfg +++ b/config/submodule/grub/xhci/ast.po/module.cfg diff --git a/config/submodule/grub/nvme/ca.po/module.cfg b/config/submodule/grub/xhci/ca.po/module.cfg index b12c8631..b12c8631 100644 --- a/config/submodule/grub/nvme/ca.po/module.cfg +++ b/config/submodule/grub/xhci/ca.po/module.cfg diff --git a/config/submodule/grub/nvme/da.po/module.cfg b/config/submodule/grub/xhci/da.po/module.cfg index 3d9c17b5..3d9c17b5 100644 --- a/config/submodule/grub/nvme/da.po/module.cfg +++ b/config/submodule/grub/xhci/da.po/module.cfg diff --git a/config/submodule/grub/nvme/de.po/module.cfg b/config/submodule/grub/xhci/de.po/module.cfg index 6fa5860c..6fa5860c 100644 --- a/config/submodule/grub/nvme/de.po/module.cfg +++ b/config/submodule/grub/xhci/de.po/module.cfg diff --git a/config/submodule/grub/nvme/eo.po/module.cfg b/config/submodule/grub/xhci/eo.po/module.cfg index b3411b82..b3411b82 100644 --- a/config/submodule/grub/nvme/eo.po/module.cfg +++ b/config/submodule/grub/xhci/eo.po/module.cfg diff --git a/config/submodule/grub/nvme/es.po/module.cfg b/config/submodule/grub/xhci/es.po/module.cfg index c07d060d..c07d060d 100644 --- a/config/submodule/grub/nvme/es.po/module.cfg +++ b/config/submodule/grub/xhci/es.po/module.cfg diff --git a/config/submodule/grub/nvme/fi.po/module.cfg b/config/submodule/grub/xhci/fi.po/module.cfg index 1dee3f10..1dee3f10 100644 --- a/config/submodule/grub/nvme/fi.po/module.cfg +++ b/config/submodule/grub/xhci/fi.po/module.cfg diff --git a/config/submodule/grub/nvme/fr.po/module.cfg b/config/submodule/grub/xhci/fr.po/module.cfg index b57cbc35..b57cbc35 100644 --- a/config/submodule/grub/nvme/fr.po/module.cfg +++ b/config/submodule/grub/xhci/fr.po/module.cfg diff --git a/config/submodule/grub/nvme/gl.po/module.cfg b/config/submodule/grub/xhci/gl.po/module.cfg index ab6010e3..ab6010e3 100644 --- a/config/submodule/grub/nvme/gl.po/module.cfg +++ b/config/submodule/grub/xhci/gl.po/module.cfg diff --git a/config/submodule/grub/nvme/gnulib/module.cfg b/config/submodule/grub/xhci/gnulib/module.cfg index eb5aa2b6..eb5aa2b6 100644 --- a/config/submodule/grub/nvme/gnulib/module.cfg +++ b/config/submodule/grub/xhci/gnulib/module.cfg diff --git a/config/submodule/grub/nvme/he.po/module.cfg b/config/submodule/grub/xhci/he.po/module.cfg index d01485f5..d01485f5 100644 --- a/config/submodule/grub/nvme/he.po/module.cfg +++ b/config/submodule/grub/xhci/he.po/module.cfg diff --git a/config/submodule/grub/nvme/hr.po/module.cfg b/config/submodule/grub/xhci/hr.po/module.cfg index f6cb61c6..f6cb61c6 100644 --- a/config/submodule/grub/nvme/hr.po/module.cfg +++ b/config/submodule/grub/xhci/hr.po/module.cfg diff --git a/config/submodule/grub/nvme/hu.po/module.cfg b/config/submodule/grub/xhci/hu.po/module.cfg index 34ca727a..34ca727a 100644 --- a/config/submodule/grub/nvme/hu.po/module.cfg +++ b/config/submodule/grub/xhci/hu.po/module.cfg diff --git a/config/submodule/grub/nvme/id.po/module.cfg b/config/submodule/grub/xhci/id.po/module.cfg index e70cfd5d..e70cfd5d 100644 --- a/config/submodule/grub/nvme/id.po/module.cfg +++ b/config/submodule/grub/xhci/id.po/module.cfg diff --git a/config/submodule/grub/nvme/it.po/module.cfg b/config/submodule/grub/xhci/it.po/module.cfg index 7ed6dab2..7ed6dab2 100644 --- a/config/submodule/grub/nvme/it.po/module.cfg +++ b/config/submodule/grub/xhci/it.po/module.cfg diff --git a/config/submodule/grub/nvme/ja.po/module.cfg b/config/submodule/grub/xhci/ja.po/module.cfg index 245471f5..245471f5 100644 --- a/config/submodule/grub/nvme/ja.po/module.cfg +++ b/config/submodule/grub/xhci/ja.po/module.cfg diff --git a/config/submodule/grub/nvme/ka.po/module.cfg b/config/submodule/grub/xhci/ka.po/module.cfg index 2c22434c..2c22434c 100644 --- a/config/submodule/grub/nvme/ka.po/module.cfg +++ b/config/submodule/grub/xhci/ka.po/module.cfg diff --git a/config/submodule/grub/nvme/ko.po/module.cfg b/config/submodule/grub/xhci/ko.po/module.cfg index c3ea0d2a..c3ea0d2a 100644 --- a/config/submodule/grub/nvme/ko.po/module.cfg +++ b/config/submodule/grub/xhci/ko.po/module.cfg diff --git a/config/submodule/grub/nvme/lg.po/module.cfg b/config/submodule/grub/xhci/lg.po/module.cfg index 76006826..76006826 100644 --- a/config/submodule/grub/nvme/lg.po/module.cfg +++ b/config/submodule/grub/xhci/lg.po/module.cfg diff --git a/config/submodule/grub/nvme/lt.po/module.cfg b/config/submodule/grub/xhci/lt.po/module.cfg index 4531b6f4..4531b6f4 100644 --- a/config/submodule/grub/nvme/lt.po/module.cfg +++ b/config/submodule/grub/xhci/lt.po/module.cfg diff --git a/config/submodule/grub/nvme/module.list b/config/submodule/grub/xhci/module.list index d4f1e5e3..d4f1e5e3 100644 --- a/config/submodule/grub/nvme/module.list +++ b/config/submodule/grub/xhci/module.list diff --git a/config/submodule/grub/nvme/nb.po/module.cfg b/config/submodule/grub/xhci/nb.po/module.cfg index e8340f93..e8340f93 100644 --- a/config/submodule/grub/nvme/nb.po/module.cfg +++ b/config/submodule/grub/xhci/nb.po/module.cfg diff --git a/config/submodule/grub/nvme/nl.po/module.cfg b/config/submodule/grub/xhci/nl.po/module.cfg index 2f67d971..2f67d971 100644 --- a/config/submodule/grub/nvme/nl.po/module.cfg +++ b/config/submodule/grub/xhci/nl.po/module.cfg diff --git a/config/submodule/grub/nvme/pa.po/module.cfg b/config/submodule/grub/xhci/pa.po/module.cfg index a4b1aa62..a4b1aa62 100644 --- a/config/submodule/grub/nvme/pa.po/module.cfg +++ b/config/submodule/grub/xhci/pa.po/module.cfg diff --git a/config/submodule/grub/nvme/pl.po/module.cfg b/config/submodule/grub/xhci/pl.po/module.cfg index 5a8d17d1..5a8d17d1 100644 --- a/config/submodule/grub/nvme/pl.po/module.cfg +++ b/config/submodule/grub/xhci/pl.po/module.cfg diff --git a/config/submodule/grub/nvme/pt.po/module.cfg b/config/submodule/grub/xhci/pt.po/module.cfg index 826f8752..826f8752 100644 --- a/config/submodule/grub/nvme/pt.po/module.cfg +++ b/config/submodule/grub/xhci/pt.po/module.cfg diff --git a/config/submodule/grub/nvme/pt_BR.po/module.cfg b/config/submodule/grub/xhci/pt_BR.po/module.cfg index 8e0dcaaf..8e0dcaaf 100644 --- a/config/submodule/grub/nvme/pt_BR.po/module.cfg +++ b/config/submodule/grub/xhci/pt_BR.po/module.cfg diff --git a/config/submodule/grub/nvme/ro.po/module.cfg b/config/submodule/grub/xhci/ro.po/module.cfg index e95467cd..e95467cd 100644 --- a/config/submodule/grub/nvme/ro.po/module.cfg +++ b/config/submodule/grub/xhci/ro.po/module.cfg diff --git a/config/submodule/grub/nvme/ru.po/module.cfg b/config/submodule/grub/xhci/ru.po/module.cfg index 4d864e71..4d864e71 100644 --- a/config/submodule/grub/nvme/ru.po/module.cfg +++ b/config/submodule/grub/xhci/ru.po/module.cfg diff --git a/config/submodule/grub/nvme/sl.po/module.cfg b/config/submodule/grub/xhci/sl.po/module.cfg index bf2548aa..bf2548aa 100644 --- a/config/submodule/grub/nvme/sl.po/module.cfg +++ b/config/submodule/grub/xhci/sl.po/module.cfg diff --git a/config/submodule/grub/nvme/sr.po/module.cfg b/config/submodule/grub/xhci/sr.po/module.cfg index bf1352be..bf1352be 100644 --- a/config/submodule/grub/nvme/sr.po/module.cfg +++ b/config/submodule/grub/xhci/sr.po/module.cfg diff --git a/config/submodule/grub/nvme/sv.po/module.cfg b/config/submodule/grub/xhci/sv.po/module.cfg index ed2f74bd..ed2f74bd 100644 --- a/config/submodule/grub/nvme/sv.po/module.cfg +++ b/config/submodule/grub/xhci/sv.po/module.cfg diff --git a/config/submodule/grub/nvme/tr.po/module.cfg b/config/submodule/grub/xhci/tr.po/module.cfg index 83410286..83410286 100644 --- a/config/submodule/grub/nvme/tr.po/module.cfg +++ b/config/submodule/grub/xhci/tr.po/module.cfg diff --git a/config/submodule/grub/nvme/uk.po/module.cfg b/config/submodule/grub/xhci/uk.po/module.cfg index 678efae7..678efae7 100644 --- a/config/submodule/grub/nvme/uk.po/module.cfg +++ b/config/submodule/grub/xhci/uk.po/module.cfg diff --git a/config/submodule/grub/nvme/vi.po/module.cfg b/config/submodule/grub/xhci/vi.po/module.cfg index 61a7a058..61a7a058 100644 --- a/config/submodule/grub/nvme/vi.po/module.cfg +++ b/config/submodule/grub/xhci/vi.po/module.cfg diff --git a/config/submodule/grub/nvme/zh_CN.po/module.cfg b/config/submodule/grub/xhci/zh_CN.po/module.cfg index 0ba80be9..0ba80be9 100644 --- a/config/submodule/grub/nvme/zh_CN.po/module.cfg +++ b/config/submodule/grub/xhci/zh_CN.po/module.cfg diff --git a/config/submodule/grub/nvme/zh_TW.po/module.cfg b/config/submodule/grub/xhci/zh_TW.po/module.cfg index 4907e2f9..4907e2f9 100644 --- a/config/submodule/grub/nvme/zh_TW.po/module.cfg +++ b/config/submodule/grub/xhci/zh_TW.po/module.cfg diff --git a/config/submodule/grub/xhci_nvme/ast.po/module.cfg b/config/submodule/grub/xhci_nvme/ast.po/module.cfg deleted file mode 100644 index 24f5340e..00000000 --- a/config/submodule/grub/xhci_nvme/ast.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ast.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ast.po" -subhash="9960439950f0a6f89fcb3a014a0bdbf06e322f0cff699b9f4e8783dea9233cfde800cfa6b94811ddb42eec62bf1bfb9f0fd64805ac2d24b68f3a854f4e02b40b" diff --git a/config/submodule/grub/xhci_nvme/ca.po/module.cfg b/config/submodule/grub/xhci_nvme/ca.po/module.cfg deleted file mode 100644 index b12c8631..00000000 --- a/config/submodule/grub/xhci_nvme/ca.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ca.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ca.po" -subhash="c58c3c96a9beabe5fd6383c15e65681909ca93b433f22e3103b977200692edab9e36c2485484ec3e50c7627e7623ae5d3b7166e63044828ed67cc07c5bfe5581" diff --git a/config/submodule/grub/xhci_nvme/da.po/module.cfg b/config/submodule/grub/xhci_nvme/da.po/module.cfg deleted file mode 100644 index 3d9c17b5..00000000 --- a/config/submodule/grub/xhci_nvme/da.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/da.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/da.po" -subhash="d53dafc5e4c4a7a2943923c44fd7a6af8fb1b4b40297e639952c2f65baa068d9103414de69fd9030a926907d78d5d240244ac8e6e4ae94dac15330e228635e70" diff --git a/config/submodule/grub/xhci_nvme/de.po/module.cfg b/config/submodule/grub/xhci_nvme/de.po/module.cfg deleted file mode 100644 index 6fa5860c..00000000 --- a/config/submodule/grub/xhci_nvme/de.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/de.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/de.po" -subhash="0d58da2e7d3d18ffa6d45a0e22bd8841699704438b95abc6658935fcec4b0f7fa8f279b5ed08ba3881e5fed56d3beedfeaaab14686146bf8dd194c7a4179065a" diff --git a/config/submodule/grub/xhci_nvme/eo.po/module.cfg b/config/submodule/grub/xhci_nvme/eo.po/module.cfg deleted file mode 100644 index b3411b82..00000000 --- a/config/submodule/grub/xhci_nvme/eo.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/eo.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/eo.po" -subhash="14db316ab5b8599031019f5d7f0fc8f6c847478945170f1555f1bc0e427ad7133d3b5f40dc019f356ed86521255ac74f602ef7f081a4bc2c25dbaae7a0adc545" diff --git a/config/submodule/grub/xhci_nvme/es.po/module.cfg b/config/submodule/grub/xhci_nvme/es.po/module.cfg deleted file mode 100644 index c07d060d..00000000 --- a/config/submodule/grub/xhci_nvme/es.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/es.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/es.po" -subhash="9821774d0c2c9ae498688d170f0563a0b4bac013922de0769c49c30830ecde27c0ea7bd599a6f2e9a317629faac326dbb3f0c159e4e72bf943f30febe88c08b6" diff --git a/config/submodule/grub/xhci_nvme/fi.po/module.cfg b/config/submodule/grub/xhci_nvme/fi.po/module.cfg deleted file mode 100644 index 1dee3f10..00000000 --- a/config/submodule/grub/xhci_nvme/fi.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/fi.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/fi.po" -subhash="ec3cd99fd654c9008344148002310a4733b9edf9dbc8f0df952adac527230af936ae0dbd9acfab07b4b0cd7f0c01b2d17ba9e15fc7b527fc0dd974c9e42bf668" diff --git a/config/submodule/grub/xhci_nvme/fr.po/module.cfg b/config/submodule/grub/xhci_nvme/fr.po/module.cfg deleted file mode 100644 index b57cbc35..00000000 --- a/config/submodule/grub/xhci_nvme/fr.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/fr.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/fr.po" -subhash="7d863df1d733b57bde6a4e15e37d100523d740c9b0b7a95eaffd8bfffbb32fabc21d4d76f8d6f8c9d3b68a11f472157a3e3d385cd2e360284a02697772a17eff" diff --git a/config/submodule/grub/xhci_nvme/gl.po/module.cfg b/config/submodule/grub/xhci_nvme/gl.po/module.cfg deleted file mode 100644 index ab6010e3..00000000 --- a/config/submodule/grub/xhci_nvme/gl.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/gl.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/gl.po" -subhash="0e80f4a57e55c7b5c849f4283c830a6c4852a5d3e5a86fdaa00aeb02bc7ccbca72c6c4e2530bf1db6a6f83073c00c8f4df6f1e08a340ce58b58f5f09099cd616" diff --git a/config/submodule/grub/xhci_nvme/gnulib/module.cfg b/config/submodule/grub/xhci_nvme/gnulib/module.cfg deleted file mode 100644 index eb5aa2b6..00000000 --- a/config/submodule/grub/xhci_nvme/gnulib/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subgit="https://codeberg.org/libreboot/gnulib" -subgit_bkup="git://git.sv.gnu.org/gnulib" # ALWAYS slow. only use as backup! -subhash="9f48fb992a3d7e96610c4ce8be969cff2d61a01b" diff --git a/config/submodule/grub/xhci_nvme/he.po/module.cfg b/config/submodule/grub/xhci_nvme/he.po/module.cfg deleted file mode 100644 index d01485f5..00000000 --- a/config/submodule/grub/xhci_nvme/he.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/he.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/he.po" -subhash="02c9775c3738f2ead03c3fb912f0706ce2716dbea9230ab342631a7207dda56ef0a14f2fe1d31ad60804aa2ab853897dfa39480630db6686152262962ffd283e" diff --git a/config/submodule/grub/xhci_nvme/hr.po/module.cfg b/config/submodule/grub/xhci_nvme/hr.po/module.cfg deleted file mode 100644 index f6cb61c6..00000000 --- a/config/submodule/grub/xhci_nvme/hr.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/hr.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/hr.po" -subhash="baa819047d7ef709fdbd089c2ddee0d4ea0ec32cee7aff81ae087214fb0bf41fa0266750770f08b6f61d0831b7d4fc8358181e374b287ca7067a7832334c5047" diff --git a/config/submodule/grub/xhci_nvme/hu.po/module.cfg b/config/submodule/grub/xhci_nvme/hu.po/module.cfg deleted file mode 100644 index 34ca727a..00000000 --- a/config/submodule/grub/xhci_nvme/hu.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/hu.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/hu.po" -subhash="f397b572cfc1e1a57a6415cb0f674041fbe661393cbb8c6f2f70da4e830e7019ac4cb7d6408a2695e19493e555e8a391c16a1c5b0d44fc653c5be433d4f94030" diff --git a/config/submodule/grub/xhci_nvme/id.po/module.cfg b/config/submodule/grub/xhci_nvme/id.po/module.cfg deleted file mode 100644 index e70cfd5d..00000000 --- a/config/submodule/grub/xhci_nvme/id.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/id.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/id.po" -subhash="78154279f7c4495b3546318a9eb694ecf0e1ca5018085aa47a1bb4505cefbe8e44d4af56aadff75c598157a5f15a1168ac5ead0cefef98704852a3d5b9fe0158" diff --git a/config/submodule/grub/xhci_nvme/it.po/module.cfg b/config/submodule/grub/xhci_nvme/it.po/module.cfg deleted file mode 100644 index 7ed6dab2..00000000 --- a/config/submodule/grub/xhci_nvme/it.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/it.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/it.po" -subhash="dbf178c85306eecbdb269617f3f803f188615a0637aa65752b991fa6a8581ef819ccdcb1e62c407977f38254b1f45787e7c288285808ea4f7d11e601bc584942" diff --git a/config/submodule/grub/xhci_nvme/ja.po/module.cfg b/config/submodule/grub/xhci_nvme/ja.po/module.cfg deleted file mode 100644 index 245471f5..00000000 --- a/config/submodule/grub/xhci_nvme/ja.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ja.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ja.po" -subhash="df13d6e26079bd196c3f0bb3f0ea8f1d8279e0fc2706a5a1b3e0b388a667500efa64ca6d5c50d4a0bf7e5736d0af9bbf27e851883746ce8292ed5f91a6d025d7" diff --git a/config/submodule/grub/xhci_nvme/ka.po/module.cfg b/config/submodule/grub/xhci_nvme/ka.po/module.cfg deleted file mode 100644 index 2c22434c..00000000 --- a/config/submodule/grub/xhci_nvme/ka.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ka.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ka.po" -subhash="2b21ab9170e3c08165c64d16080666f263aea8d3b69f44d89e050ae5a7d83599618857f48234eb0078d88c193d70c1e03f9f77dd9186f67c24968bb01fa8a386" diff --git a/config/submodule/grub/xhci_nvme/ko.po/module.cfg b/config/submodule/grub/xhci_nvme/ko.po/module.cfg deleted file mode 100644 index c3ea0d2a..00000000 --- a/config/submodule/grub/xhci_nvme/ko.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ko.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ko.po" -subhash="988e67763e541a1ba6bd9db750088821608c81a9414b58b3759c6ac8d6ca7420e4a8a460b7cb03acc26132a59c12ca9c5549dbbe2ae062f3f007fb8a258e9785" diff --git a/config/submodule/grub/xhci_nvme/lg.po/module.cfg b/config/submodule/grub/xhci_nvme/lg.po/module.cfg deleted file mode 100644 index 76006826..00000000 --- a/config/submodule/grub/xhci_nvme/lg.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/lg.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/lg.po" -subhash="f64cb2add4ee65973bbb5e3509d9203ba8f136870c67795c21c0dde266514848a0b9d161a1e71c2b8732d1ef5200798d1b8be7ca4b0b44fae5acfe1810282f15" diff --git a/config/submodule/grub/xhci_nvme/lt.po/module.cfg b/config/submodule/grub/xhci_nvme/lt.po/module.cfg deleted file mode 100644 index 4531b6f4..00000000 --- a/config/submodule/grub/xhci_nvme/lt.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/lt.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/lt.po" -subhash="3770cf0624a892868df1c64100bccfcd41ca4707c96d92c1752570c2957c9d861065a5f9d5250bba307e520aedb00ebbcd4d09902a305421708a5da54b39cd56" diff --git a/config/submodule/grub/xhci_nvme/module.list b/config/submodule/grub/xhci_nvme/module.list deleted file mode 100644 index d4f1e5e3..00000000 --- a/config/submodule/grub/xhci_nvme/module.list +++ /dev/null @@ -1,36 +0,0 @@ -po/.reference/zh_TW.po -po/.reference/zh_CN.po -po/.reference/vi.po -po/.reference/uk.po -po/.reference/tr.po -po/.reference/sv.po -po/.reference/sr.po -po/.reference/sl.po -po/.reference/ru.po -po/.reference/ro.po -po/.reference/pt_BR.po -po/.reference/pt.po -po/.reference/pl.po -po/.reference/pa.po -po/.reference/nl.po -po/.reference/nb.po -po/.reference/lt.po -po/.reference/lg.po -po/.reference/ko.po -po/.reference/ka.po -po/.reference/ja.po -po/.reference/it.po -po/.reference/id.po -po/.reference/hu.po -po/.reference/hr.po -po/.reference/he.po -po/.reference/gl.po -po/.reference/fr.po -po/.reference/fi.po -po/.reference/es.po -po/.reference/eo.po -po/.reference/de.po -po/.reference/da.po -po/.reference/ca.po -po/.reference/ast.po -gnulib diff --git a/config/submodule/grub/xhci_nvme/nb.po/module.cfg b/config/submodule/grub/xhci_nvme/nb.po/module.cfg deleted file mode 100644 index e8340f93..00000000 --- a/config/submodule/grub/xhci_nvme/nb.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/nb.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/nb.po" -subhash="58671e04ed2ca88ece06ff5c6dc5e09fda1f1d7d0c510ece8f8777c090a39f0a1cf89e7783797219f343efb19aa0b75a7dcf3d8f7bc48589109ba0a18b14d122" diff --git a/config/submodule/grub/xhci_nvme/nl.po/module.cfg b/config/submodule/grub/xhci_nvme/nl.po/module.cfg deleted file mode 100644 index 2f67d971..00000000 --- a/config/submodule/grub/xhci_nvme/nl.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/nl.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/nl.po" -subhash="8ce36e055a9587967d853a15167888ffd218707978c7ee80e697ddae766889cef90b7c354ee31794c6354a46d1c3138724e0b26cd3db7e737fd0e65e034e7d61" diff --git a/config/submodule/grub/xhci_nvme/pa.po/module.cfg b/config/submodule/grub/xhci_nvme/pa.po/module.cfg deleted file mode 100644 index a4b1aa62..00000000 --- a/config/submodule/grub/xhci_nvme/pa.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/pa.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/pa.po" -subhash="00f2ea030d9f275cf4828e01cf7a9a0912f48ffeaad6b1085783bfb5772437e9a354cd4337b79fc6c0fc7827ebeeaa38b1422e105c00d4c58ea685824d8b28ea" diff --git a/config/submodule/grub/xhci_nvme/pl.po/module.cfg b/config/submodule/grub/xhci_nvme/pl.po/module.cfg deleted file mode 100644 index 5a8d17d1..00000000 --- a/config/submodule/grub/xhci_nvme/pl.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/pl.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/pl.po" -subhash="1de3545a3015986435c091b7ee3339c5bd9bddb3e8814b6cfb55acdb957829dc453e05812063b7438ae6aec0abc232065413be7456fb95ad0a5da8d36e7076ce" diff --git a/config/submodule/grub/xhci_nvme/pt.po/module.cfg b/config/submodule/grub/xhci_nvme/pt.po/module.cfg deleted file mode 100644 index 826f8752..00000000 --- a/config/submodule/grub/xhci_nvme/pt.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/pt.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/pt.po" -subhash="1bc2d024b1261b6f7a1fea00bc1ee45b29b860adfa98fcbb2022fbaf817ceefe12f961564bed01b129735fb838025e6d30e38020a9aeeb8aa5e14a2b22d07156" diff --git a/config/submodule/grub/xhci_nvme/pt_BR.po/module.cfg b/config/submodule/grub/xhci_nvme/pt_BR.po/module.cfg deleted file mode 100644 index 8e0dcaaf..00000000 --- a/config/submodule/grub/xhci_nvme/pt_BR.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/pt_BR.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/pt_BR.po" -subhash="009b11465e67f310d50f4dcc8a34a2e3ba19ba9c3bfcb382065f8deb1818b2a879c146c27e6f49085c73ed6f8c9924feaa9a068fec47f8138df822f685f896ca" diff --git a/config/submodule/grub/xhci_nvme/ro.po/module.cfg b/config/submodule/grub/xhci_nvme/ro.po/module.cfg deleted file mode 100644 index e95467cd..00000000 --- a/config/submodule/grub/xhci_nvme/ro.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ro.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ro.po" -subhash="f4c5f621ea217b06b07f6db29da921358de49ed9ebb655b0b1331fd48b0a68795c7c666f0b97833ad5f6e3fdbd0918b4e8f00bcc890e5f3673121c0b676ffda4" diff --git a/config/submodule/grub/xhci_nvme/ru.po/module.cfg b/config/submodule/grub/xhci_nvme/ru.po/module.cfg deleted file mode 100644 index 4d864e71..00000000 --- a/config/submodule/grub/xhci_nvme/ru.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/ru.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/ru.po" -subhash="8883d7786863679e16214e9a3b2f4e607de9f7d958ae28756bab4cfd4f86356ef26c403d105aed9cf1d0ecd498059481ecf2b3d2df694a759510f4c442431494" diff --git a/config/submodule/grub/xhci_nvme/sl.po/module.cfg b/config/submodule/grub/xhci_nvme/sl.po/module.cfg deleted file mode 100644 index bf2548aa..00000000 --- a/config/submodule/grub/xhci_nvme/sl.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/sl.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/sl.po" -subhash="3047e48665c0528eefdb201cff12c2ef5c937b10ee8cbca637ee6b5a9c8017604c7f849830ae0f5dcc4613efb490a41668f925d499e6083fa4587653327819cb" diff --git a/config/submodule/grub/xhci_nvme/sr.po/module.cfg b/config/submodule/grub/xhci_nvme/sr.po/module.cfg deleted file mode 100644 index bf1352be..00000000 --- a/config/submodule/grub/xhci_nvme/sr.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/sr.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/sr.po" -subhash="5e9a51dfb02fef0daa26c1df37e606952f2f922a6933e5ce0890eaabc039ec5e13de50a4fd927d9c9ab15385cca9b8b1f33b35bccde50384f45c75769a5f04ea" diff --git a/config/submodule/grub/xhci_nvme/sv.po/module.cfg b/config/submodule/grub/xhci_nvme/sv.po/module.cfg deleted file mode 100644 index ed2f74bd..00000000 --- a/config/submodule/grub/xhci_nvme/sv.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/sv.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/sv.po" -subhash="80b249091e2cfb369da1a4365fe76f7643ed6b34e46b4ee73359721ece6d87ef0c1f099a46f74b4c85416bea431c7dc36bf36ab16dce36e2d6c0c1b890b431dc" diff --git a/config/submodule/grub/xhci_nvme/tr.po/module.cfg b/config/submodule/grub/xhci_nvme/tr.po/module.cfg deleted file mode 100644 index 83410286..00000000 --- a/config/submodule/grub/xhci_nvme/tr.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/tr.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/tr.po" -subhash="a83ebdd25d5438ff6489d88a8cb0657e606c2fc2c1efbc7dd34193fda4e0d92e10f9a29185c12e665af151b995c12b8bce755418d9e6c9978dddc23ca4a10d2b" diff --git a/config/submodule/grub/xhci_nvme/uk.po/module.cfg b/config/submodule/grub/xhci_nvme/uk.po/module.cfg deleted file mode 100644 index 678efae7..00000000 --- a/config/submodule/grub/xhci_nvme/uk.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/uk.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/uk.po" -subhash="0545c90c2bc5df9ee813806cff9a5193d8fbef00aab80f85cef14f967c8d9fd650de3a0bd1063abb8fcc65b5c68e59a02832fda6827e7120fdf0a28fe58a3474" diff --git a/config/submodule/grub/xhci_nvme/vi.po/module.cfg b/config/submodule/grub/xhci_nvme/vi.po/module.cfg deleted file mode 100644 index 61a7a058..00000000 --- a/config/submodule/grub/xhci_nvme/vi.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/vi.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/vi.po" -subhash="995754563bb472b93dfb5dd13b27b2540cebcf819be5ff2718553444b5fe06ad50a2fa8a0fdfcb06ab1bce9c2b870c950257c28b29e90413f1bfb42ad2643e72" diff --git a/config/submodule/grub/xhci_nvme/zh_CN.po/module.cfg b/config/submodule/grub/xhci_nvme/zh_CN.po/module.cfg deleted file mode 100644 index 0ba80be9..00000000 --- a/config/submodule/grub/xhci_nvme/zh_CN.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/zh_CN.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/zh_CN.po" -subhash="8c77c78ae8e5c26107eec83a0a22465c6fc8399eb2e4f9a18f7c056f32a3e5392a313afd6520f72cc044efe6360fe0390f0a2f2edc825344d497e55ab83bfbb4" diff --git a/config/submodule/grub/xhci_nvme/zh_TW.po/module.cfg b/config/submodule/grub/xhci_nvme/zh_TW.po/module.cfg deleted file mode 100644 index 4907e2f9..00000000 --- a/config/submodule/grub/xhci_nvme/zh_TW.po/module.cfg +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: GPL-3.0-or-later - -subcurl="https://www.mirrorservice.org/sites/libreboot.org/release/misc/grub/zh_TW.po" -subcurl_bkup="https://mirror.math.princeton.edu/pub/libreboot/misc/grub/zh_TW.po" -subhash="ef25bc8a0d558868a3135f6fe1816cad9fa0510b8adb48e04938053b3a0e95cc2061611601b0d23ec03e8e7c837cf5e9712eed108ee35aef98991591878f4577" diff --git a/include/fw/rom.sh b/include/fw/rom.sh index b6258156..b5c79997 100644 --- a/include/fw/rom.sh +++ b/include/fw/rom.sh @@ -68,6 +68,8 @@ corebootpremake() printf "%s\n" "${version%%-*}" > "$srcdir/.coreboot-version" || \ err "!mk $srcdir .coreboot-version" "corebootpremake" "$@" + clean_edk2_src + [ "$target" != "$tree" ] && \ x_ "$mk" download "$target"; : } @@ -103,7 +105,8 @@ cook_coreboot_smmstore() CONFIG_USE_UEFI_VARIABLE_STORE=y" # replace option backend for ecfgval in $ecfg; do - printf "%s\n" "$ecfgval" >> "$srcdir/$cfgname" + printf "%s\n" "$ecfgval" >> "$srcdir/$cfgname" || \ + err "can't cook config '$srcdir/$cfgname'"; : done } @@ -148,6 +151,8 @@ mkcorebootbin() [ "$XBMK_RELEASE" = "y" ] && [ "$release" = "n" ] && \ return 0 + clean_edk2_src + for y in "$defscan"/*; do buildcfg="$y" $if_not_skip_build mkcorebootbin_real @@ -156,6 +161,21 @@ mkcorebootbin() $if_not_skip_build mkcoreboottar } +clean_edk2_src() +{ + # replicates coreboot's handling after edk2 build, + # which we patch out for copy. so now we clean it instead, + # after we successfully copied it out-of-tree. + # this enables clean re-building when modifying cb/edk2_mrchromebox + # + # so long as metadata in config/ doesn't change, and we + # have a build in elf/, then a re-build/re-download will + # not occur. this however means that we must set release=n + # for now. proper edk2 integration will come to lbmk soon(tm) + # + x_ rm -Rf "$srcdir/payloads/external/edk2/workspace" +} + mkcorebootbin_real() { [ "$target" = "$tree" ] && return 0 @@ -184,56 +204,42 @@ mkcorebootbin_real() err "'$target' defines bad u-boot type '$payload_uboot'" \ "mkcorebootbin_real" "$@" - [ -z "$uboot_config" ] && \ - uboot_config="default" - [ "$payload_grub" = "y" ] && \ - payload_seabios="y" - - [ -z "$grub_scan_disk" ] && \ - grub_scan_disk="nvme ahci ata" - [ -z "$grubtree" ] && \ - grubtree="default" - grubelf="elf/grub/$grubtree/$grubtree/noconfig/grub.elf" - [ "$payload_memtest" != "y" ] && \ payload_memtest="n" [ "$(uname -m)" != "x86_64" ] && \ payload_memtest="n" - [ "$payload_grubsea" = "y" ] && [ "$initmode" = "normal" ] && \ - payload_grubsea="n" - [ "$payload_grub" != "y" ] && \ - payload_grubsea="n" + $if_skip_build \ + return 0 - if [ "$initmode" != "libgfxinit" ] || \ - [ "$displaymode" != "corebootfb" ]; then - [ "$initmode" != "fspgop" ] && [ "$initmode" != "normal" ] && \ - payload_edk2="" # disable on txtmode + prep_tmprom + + if ! grep "CONFIG_PAYLOAD_NONE=y" "$buildcfg"; then + cprom custom + prep_tmprom + return 0 fi - $if_not_skip_build prep_tmprom + [ -n "$payload_edk2" ] && \ + mk_coreboot_with edk2 + [ "$payload_seabios" = "y" ] && \ + mk_coreboot_with seabios + [ "$payload_grub" = "y" ] && \ + mk_coreboot_with grub + [ "$payload_uboot" = "arm64" ] && \ + mk_coreboot_with uboot; : - if grep "CONFIG_PAYLOAD_NONE=y" "$buildcfg"; then - if [ -n "$payload_edk2" ]; then - pname="edk2" - $if_not_skip_build add_edk2 "fallback/payload" - $if_not_skip_build cprom # standalone edk2 + [ "$rom_prepared" = "n" ] && \ + printf "WARNING: no payloads configured for cb/%s\n" \ + "$target" 1>&2; : +} - $if_not_skip_build prep_tmprom - fi - if [ "$payload_seabios" = "y" ]; then - pname="seabios" - $if_not_skip_build add_seabios - fi - if [ "$payload_uboot" = "arm64" ]; then - pname="uboot" - $if_not_skip_build add_uboot "" fallback/payload \ - default "$target" u-boot.elf - fi - else - pname="custom" - $if_not_skip_build cprom - fi; : +mk_coreboot_with() +{ + add_$1 || return 0 + + prep_tmprom + rom_prepared="y" } prep_tmprom() @@ -264,10 +270,18 @@ add_cbfs_option() add_edk2() { + # allowed modes for edk2: libgfxinit_corebootfb, fspgop, normal + + # NOTE: "normal" removed from checks. in this setup, edk2 uses gop. + [ "$initmode" = "vgarom" ] && return 1 # vga rom incompatible. use gop. + [ "$initmode" = "libgfxinit" ] && [ "$displaymode" != "corebootfb" ] && \ + return 1 # text mode incompatible + edk2dir="elf/coreboot/default/$payload_edk2" edk2="$edk2dir/libgfxinit_corebootfb/UEFIPAYLOAD.fd" - cbfs "$tmprom" "$edk2" "$1" + cbfs "$tmprom" "$edk2" "fallback/payload" + cprom edk2 } # in our design, SeaBIOS is also responsible for starting either @@ -283,11 +297,7 @@ add_seabios() [ "$initmode" = "fspgop" ] && \ _seabioself="elf/seabios/default/build/libgfxinit/bios.bin.elf" - _seaname="fallback/payload" - [ "$payload_grubsea" = "y" ] && \ - _seaname="seabios.elf" - - cbfs "$tmprom" "$_seabioself" "$_seaname" + cbfs "$tmprom" "$_seabioself" "fallback/payload" x_ "$cbfstool" "$tmprom" add-int -i 3000 -n etc/ps2-keyboard-spinup @@ -301,34 +311,20 @@ add_seabios() cbfs "$tmprom" "$seavgabiosrom" vgaroms/seavgabios.bin raw fi - [ "$payload_memtest" = "y" ] && \ - cbfs "$tmprom" \ - "elf/memtest86plus/default/default/noconfig/memtest.bin" \ - img/memtest - - [ "$payload_grub" = "y" ] && \ - add_grub - - [ -n "$payload_edk2" ] && \ - add_edk2 "img/edk2" - - [ "$payload_grubsea" != "y" ] && \ - cprom # seabios, but don't load grub first + add_memtest86plus - if [ "$payload_grub" = "y" ]; then - pname="seagrub" - mkseagrub - fi + cprom seabios } add_grub() { - # path in CBFS for the GRUB payload - _grubname="img/grub2" - [ "$payload_grubsea" = "y" ] && \ - _grubname="fallback/payload" + [ "$initmode" = "normal" ] && \ + return 1 # no gfxinit required by grub ("normal" not allowed) - cbfs "$tmprom" "$grubelf" "$_grubname" + [ -z "$grub_scan_disk" ] && \ + grub_scan_disk="nvme ahci ata" + [ -z "$grubtree" ] && \ + grubtree="default" printf "set grub_scan_disk=\"%s\"\n" "$grub_scan_disk" \ > "$xbtmp/tmpcfg" || \ @@ -339,33 +335,48 @@ add_grub() [ "$initmode" != "normal" ] && [ "$displaymode" != "txtmode" ] && \ cbfs "$tmprom" "$grubdata/background/background1280x800.png" \ "background.png" raw; : + + cbfs "$tmprom" "elf/grub/$grubtree/$grubtree/noconfig/grub.elf" \ + "fallback/payload" + + add_memtest86plus + + fx_ "cprom_grub" x_ find "$grubdata/keymap" -type f -name "*.gkb" } -mkseagrub() +add_memtest86plus() { - if [ "$payload_grubsea" = "y" ]; then - pname="grub" - else - cbfs "$tmprom" "$grubdata/bootorder" bootorder raw - fi - - fx_ cprom x_ find "$grubdata/keymap" -type f -name "*.gkb" + [ "$payload_memtest" = "y" ] && \ + cbfs "$tmprom" \ + "elf/memtest86plus/default/default/noconfig/memtest.bin" \ + img/memtest; : } add_uboot() { - ubootelf="elf/u-boot/$3/$4/$uboot_config/$5" + [ -z "$uboot_config" ] && \ + uboot_config="default" + + ubootelf="elf/u-boot/default/$target/$uboot_config/u-boot.elf" [ ! -f "$ubootelf" ] && \ ubootelf="${ubootelf%.elf}" # hack (fix arm64 build) - cbfs "$tmprom" "$ubootelf" "$2" $1 - [ "$payload_seabios" != "y" ] && \ - cprom; : + cbfs "$tmprom" "$ubootelf" "fallback/payload" } # prepare the final image in bin/ for user installation: + +cprom_grub() +{ + cprom grub "$@" +} + cprom() { + pname="${1-}" + [ -z "$pname" ] && pname="undefined" + shift 1 2>/dev/null || : + cpcmd="cp" tmpnew="" @@ -84,12 +84,13 @@ if_make_config=":" if_build=":" # can be false even if make is true if_dry_build=":" eval "`newvar if_not_make_config if_not_build if_not_dry_build if_not_fetch`" +if_skip_build=":" # these variables will also be initialised in configure_target cfgvars="autogenargs cmakedir configureargs badhash badtghash bootstrapargs \ build_depend cleanargs fetch_depend makeargs mkhelper noconfig postmake \ premake release rev tree xarch xgcctree xlang cfgname defscan \ - if_not_skip_build cook_config" + if_not_skip_build cook_config seen" eval "`newvar buildcfg dest_dir elfdir flag forcepull listfile mdir \ mkhelpercfg mode project srcdir target target_dir _tcfg \ @@ -240,8 +241,10 @@ configure_target() # coreboot needs a .config or it will behave unpredictably. we will # use the do_build macro to disable builds in this situation. this # does not disable mkhelpers or dry builds. - [ ! -d "$target_dir/config" ] && [ "$noconfig" != "y" ] && \ + if [ ! -d "$target_dir/config" ] && [ "$noconfig" != "y" ]; then if_not_skip_build=":" # skip make on e.g. ./mk -b coreboot default + if_skip_build="" + fi [ "$XBMK_RELEASE" = "y" ] && [ "$release" = "n" ] && \ return 1 @@ -260,6 +263,17 @@ try_target_config() eval "`newvar rev tree`" . "$_tcfg" || err "Can't read '$_tcfg'" configure_target "$@" + + _tname="${_tcfg%/*}" + _tname="${_tname##*/}" + + for loopvar in $seen; do + [ "$loopvar" = "$_tname" ] && \ + err "$project/$target: infinite tree loop" + done + + seen="$seen $_tname" + if [ -n "$rev" ] && [ -z "$tree" ]; then # this makes setting tree= optional on configless projects tree="${_tcfg%/target.cfg}" @@ -280,7 +294,6 @@ try_target_config() # projects can specify which other projects # to build first, as declared dependencies: -# TODO: detect infinite loops mk_dependencies() { bdf="${1-}" |
