| config BR2_TARGET_GRUB2_ARCH_SUPPORTS |
| bool |
| default y if BR2_i386 |
| default y if BR2_x86_64 |
| default y if BR2_arm |
| default y if BR2_aarch64 |
| default y if BR2_RISCV_64 |
| depends on BR2_USE_MMU |
| |
| config BR2_TARGET_GRUB2 |
| bool "grub2" |
| depends on BR2_TARGET_GRUB2_ARCH_SUPPORTS |
| depends on BR2_USE_WCHAR |
| select BR2_TARGET_GRUB2_I386_PC if \ |
| !BR2_TARGET_GRUB2_HAS_PTF && \ |
| (BR2_i386 || BR2_x86_64) |
| select BR2_TARGET_GRUB2_ARM_UBOOT if \ |
| !BR2_TARGET_GRUB2_HAS_PTF && \ |
| BR2_arm |
| select BR2_TARGET_GRUB2_ARM64_EFI if BR2_aarch64 |
| help |
| GNU GRUB is a Multiboot boot loader. It was derived from |
| GRUB, the GRand Unified Bootloader, which was originally |
| designed and implemented by Erich Stefan Boleyn. GRUB 2 has |
| replaced what was formerly known as GRUB (i.e. version |
| 0.9x), which has, in turn, become GRUB Legacy. |
| |
| Amongst others, GRUB2 offers EFI support, which GRUB Legacy |
| doesn't provide. |
| |
| The file boot/grub2/grub.cfg is used by default as the Grub |
| configuration file. It can be overridden using a rootfs |
| overlay or post-build script. |
| |
| For additional notes on using Grub 2 with Buildroot, see |
| boot/grub2/readme.txt |
| |
| http://www.gnu.org/software/grub/ |
| |
| if BR2_TARGET_GRUB2 |
| |
| config BR2_TARGET_GRUB2_HAS_LEGACY_BOOT |
| bool |
| |
| config BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| bool |
| |
| config BR2_TARGET_GRUB2_HAS_PTF |
| bool |
| |
| config BR2_TARGET_GRUB2_I386_PC |
| bool "i386-pc" |
| depends on BR2_i386 || BR2_x86_64 |
| select BR2_TARGET_GRUB2_HAS_LEGACY_BOOT |
| help |
| Select this option if the platform you're targeting is a |
| x86 or x86-64 legacy BIOS based platform. |
| |
| config BR2_TARGET_GRUB2_I386_EFI |
| bool "i386-efi" |
| depends on BR2_i386 || BR2_x86_64 |
| select BR2_TARGET_GRUB2_HAS_PTF |
| select BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| help |
| Select this option if the platform you're targeting has a |
| 32 bits EFI BIOS. Note that some x86-64 platforms use a 32 |
| bits EFI BIOS, and this option should be used in this case. |
| |
| config BR2_TARGET_GRUB2_X86_64_EFI |
| bool "x86-64-efi" |
| depends on BR2_x86_64 |
| select BR2_TARGET_GRUB2_HAS_PTF |
| select BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| help |
| Select this option if the platform you're targeting has a |
| 64 bits EFI BIOS. |
| |
| config BR2_TARGET_GRUB2_ARM_UBOOT |
| bool "arm-uboot" |
| depends on BR2_arm |
| select BR2_TARGET_GRUB2_HAS_LEGACY_BOOT |
| help |
| Select this option if the platform you're targeting is an |
| ARM u-boot platform, and you want to boot Grub 2 as an u-boot |
| compatible image. |
| |
| config BR2_TARGET_GRUB2_ARM_EFI |
| bool "arm-efi" |
| depends on BR2_arm |
| select BR2_TARGET_GRUB2_HAS_PTF |
| select BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| help |
| Select this option if the platform you're targeting is an |
| ARM platform and you want to boot Grub 2 as an EFI |
| application. |
| |
| config BR2_TARGET_GRUB2_ARM64_EFI |
| bool "arm64-efi" |
| depends on BR2_aarch64 |
| select BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| help |
| Select this option if the platform you're targeting is an |
| Aarch64 platform and you want to boot Grub 2 as an EFI |
| application. |
| |
| config BR2_TARGET_GRUB2_RISCV64_EFI |
| bool "riscv64-efi" |
| depends on BR2_RISCV_64 |
| select BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| help |
| Select this option if the platform you're targeting is a |
| 64bit RISC-V platform and you want to boot Grub 2 as an EFI |
| application. |
| |
| if BR2_TARGET_GRUB2_HAS_LEGACY_BOOT |
| |
| comment "Options for the x86 legacy BIOS or ARM U-Boot support" |
| |
| config BR2_TARGET_GRUB2_BOOT_PARTITION |
| string "boot partition" |
| default "hd0,msdos1" |
| help |
| Specify the partition where the /boot/grub/grub.cfg file is |
| located. Use 'hd0,msdos1' for the first partition of the |
| first disk if using a legacy partition table, or 'hd0,gpt1' |
| if using GPT partition table. |
| |
| config BR2_TARGET_GRUB2_BUILTIN_MODULES_PC |
| string "builtin modules" |
| default BR2_TARGET_GRUB2_BUILTIN_MODULES if BR2_TARGET_GRUB2_BUILTIN_MODULES != "" # legacy |
| default "boot linux ext2 fat squash4 part_msdos part_gpt normal biosdisk" if BR2_TARGET_GRUB2_I386_PC |
| default "linux ext2 fat part_msdos normal" if BR2_TARGET_GRUB2_ARM_UBOOT |
| |
| config BR2_TARGET_GRUB2_BUILTIN_CONFIG_PC |
| string "builtin config" |
| default BR2_TARGET_GRUB2_BUILTIN_CONFIG if BR2_TARGET_GRUB2_BUILTIN_CONFIG != "" # legacy |
| help |
| Path to a Grub 2 configuration file that will be embedded |
| into the Grub image itself. This allows to set the root |
| device and other configuration parameters, but however menu |
| entries cannot be described in this embedded configuration. |
| |
| endif # BR2_TARGET_GRUB2_HAS_LEGACY_BOOT |
| |
| if BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| |
| comment "Options for the EFI BIOS or ARM EFI support" |
| |
| config BR2_TARGET_GRUB2_BUILTIN_MODULES_EFI |
| string "builtin modules" |
| default BR2_TARGET_GRUB2_BUILTIN_MODULES if BR2_TARGET_GRUB2_BUILTIN_MODULES != "" # legacy |
| default "boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop" |
| |
| config BR2_TARGET_GRUB2_BUILTIN_CONFIG_EFI |
| string "builtin config" |
| default BR2_TARGET_GRUB2_BUILTIN_CONFIG if BR2_TARGET_GRUB2_BUILTIN_CONFIG != "" # legacy |
| help |
| Path to a Grub 2 configuration file that will be embedded |
| into the Grub image itself. This allows to set the root |
| device and other configuration parameters, but however menu |
| entries cannot be described in this embedded configuration. |
| |
| endif # BR2_TARGET_GRUB2_HAS_EFI_BOOT |
| |
| config BR2_TARGET_GRUB2_INSTALL_TOOLS |
| bool "install tools" |
| help |
| Install support tools to interact with GNU GRUB Multiboot |
| boot loader. |
| |
| This will also install the Grub 2 loadable modules to the |
| target. |
| |
| endif # BR2_TARGET_GRUB2 |
| |
| comment "grub2 needs a toolchain w/ wchar" |
| depends on BR2_TARGET_GRUB2_ARCH_SUPPORTS |
| depends on !BR2_USE_WCHAR |