[Buildroot] [PATCH v3 1/7] board, boot, package: remove usage of startup.nsh in EFI partition
Yann E. MORIN
yann.morin.1998 at free.fr
Thu Sep 23 20:06:40 UTC 2021
Köry, All,
+Dick, Erico, Gerome, Nicholas, Peter, Romain:
This patch touches boards for which you are registered in the DEVELOPERS
file. Could you verify that those boards still boot with this patch
applied, please?
Otherwise, I have no comment on the patch; good! :-)
Regards,
Yann E. MORIN.
On 2021-09-23 17:57 +0200, Kory Maincent spake thusly:
> The startup.nsh file is useless to boot EFI payloads. We just need to
> follow the naming detection specified in the UEFI spec.
> The EFI payload need to be placed in the boot/efi folder in the EFI partition
> and follow the architecture naming as described below:
> 32bit : bootia32.efi
> x64 : bootx64.efi
> aarch32 : bootarm.efi
> aarch64 : bootaa64.efi
>
> This naming is already right in the packages involved (systemd, grub2,
> gummiboot), therefore we just need to drop the generation of the
> startup.nsh file.
>
> The usage of the startup.nsh in genimage is also dropped to avoid errors in
> the image generation.
>
> Signed-off-by: Kory Maincent <kory.maincent at bootlin.com>
> ---
> board/aarch64-efi/genimage-efi.cfg | 3 ---
> board/intel/galileo/genimage.cfg | 3 ---
> board/minnowboard/genimage.cfg | 3 ---
> board/pc/genimage-efi.cfg | 3 ---
> board/pc/post-build.sh | 2 +-
> board/qemu/aarch64-sbsa/genimage.cfg | 3 ---
> boot/grub2/grub2.mk | 8 --------
> boot/gummiboot/gummiboot.mk | 2 --
> package/systemd/systemd.mk | 2 --
> 9 files changed, 1 insertion(+), 28 deletions(-)
>
> diff --git a/board/aarch64-efi/genimage-efi.cfg b/board/aarch64-efi/genimage-efi.cfg
> index 34cca1d64e..2daa70c361 100644
> --- a/board/aarch64-efi/genimage-efi.cfg
> +++ b/board/aarch64-efi/genimage-efi.cfg
> @@ -1,8 +1,5 @@
> image efi-part.vfat {
> vfat {
> - file startup.nsh {
> - image = "efi-part/startup.nsh"
> - }
> file EFI {
> image = "efi-part/EFI"
> }
> diff --git a/board/intel/galileo/genimage.cfg b/board/intel/galileo/genimage.cfg
> index 31add21e67..b930c0deb9 100644
> --- a/board/intel/galileo/genimage.cfg
> +++ b/board/intel/galileo/genimage.cfg
> @@ -1,9 +1,6 @@
> # Create an image of the efi partition
> image efi-part.vfat {
> vfat {
> - file startup.nsh {
> - image = "efi-part/startup.nsh"
> - }
> file EFI {
> image = "efi-part/EFI"
> }
> diff --git a/board/minnowboard/genimage.cfg b/board/minnowboard/genimage.cfg
> index c5b07179b4..521385aadd 100644
> --- a/board/minnowboard/genimage.cfg
> +++ b/board/minnowboard/genimage.cfg
> @@ -1,9 +1,6 @@
> # Create an image of the efi partition
> image efi-part.vfat {
> vfat {
> - file startup.nsh {
> - image = "efi-part/startup.nsh"
> - }
> file EFI {
> image = "efi-part/EFI"
> }
> diff --git a/board/pc/genimage-efi.cfg b/board/pc/genimage-efi.cfg
> index ec7e85b06c..34befb7d69 100644
> --- a/board/pc/genimage-efi.cfg
> +++ b/board/pc/genimage-efi.cfg
> @@ -1,8 +1,5 @@
> image efi-part.vfat {
> vfat {
> - file startup.nsh {
> - image = "efi-part/startup.nsh"
> - }
> file EFI {
> image = "efi-part/EFI"
> }
> diff --git a/board/pc/post-build.sh b/board/pc/post-build.sh
> index ed37b3b87e..db23795e27 100755
> --- a/board/pc/post-build.sh
> +++ b/board/pc/post-build.sh
> @@ -5,7 +5,7 @@ set -e
> BOARD_DIR=$(dirname "$0")
>
> # Detect boot strategy, EFI or BIOS
> -if [ -f "$BINARIES_DIR/efi-part/startup.nsh" ]; then
> +if [ -d "$BINARIES_DIR/efi-part/" ]; then
> cp -f "$BOARD_DIR/grub-efi.cfg" "$BINARIES_DIR/efi-part/EFI/BOOT/grub.cfg"
> else
> cp -f "$BOARD_DIR/grub-bios.cfg" "$TARGET_DIR/boot/grub/grub.cfg"
> diff --git a/board/qemu/aarch64-sbsa/genimage.cfg b/board/qemu/aarch64-sbsa/genimage.cfg
> index 285b308d90..c75d9fcca1 100644
> --- a/board/qemu/aarch64-sbsa/genimage.cfg
> +++ b/board/qemu/aarch64-sbsa/genimage.cfg
> @@ -1,8 +1,5 @@
> image efi-part.vfat {
> vfat {
> - file startup.nsh {
> - image = "efi-part/startup.nsh"
> - }
> file EFI {
> image = "efi-part/EFI"
> }
> diff --git a/boot/grub2/grub2.mk b/boot/grub2/grub2.mk
> index 52e9199ae9..ad2edf17aa 100644
> --- a/boot/grub2/grub2.mk
> +++ b/boot/grub2/grub2.mk
> @@ -168,13 +168,5 @@ define GRUB2_INSTALL_IMAGES_CMDS
> $(GRUB2_IMAGE_INSTALL_ELTORITO)
> endef
>
> -ifeq ($(GRUB2_PLATFORM),efi)
> -define GRUB2_EFI_STARTUP_NSH
> - echo $(notdir $(GRUB2_IMAGE)) > \
> - $(BINARIES_DIR)/efi-part/startup.nsh
> -endef
> -GRUB2_POST_INSTALL_IMAGES_HOOKS += GRUB2_EFI_STARTUP_NSH
> -endif
> -
> $(eval $(autotools-package))
> $(eval $(host-autotools-package))
> diff --git a/boot/gummiboot/gummiboot.mk b/boot/gummiboot/gummiboot.mk
> index 748e87030e..eb1f3da78c 100644
> --- a/boot/gummiboot/gummiboot.mk
> +++ b/boot/gummiboot/gummiboot.mk
> @@ -32,8 +32,6 @@ GUMMIBOOT_CONF_OPTS = \
> define GUMMIBOOT_INSTALL_IMAGES_CMDS
> $(INSTALL) -D -m 0644 $(@D)/gummiboot$(GUMMIBOOT_IMGARCH).efi \
> $(BINARIES_DIR)/efi-part/EFI/BOOT/boot$(GUMMIBOOT_IMGARCH).efi
> - echo "boot$(GUMMIBOOT_IMGARCH).efi" > \
> - $(BINARIES_DIR)/efi-part/startup.nsh
> $(INSTALL) -D -m 0644 boot/gummiboot/loader.conf \
> $(BINARIES_DIR)/efi-part/loader/loader.conf
> $(INSTALL) -D -m 0644 boot/gummiboot/buildroot.conf \
> diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
> index 5a76f2f246..c403896759 100644
> --- a/package/systemd/systemd.mk
> +++ b/package/systemd/systemd.mk
> @@ -514,8 +514,6 @@ SYSTEMD_BOOT_EFI_ARCH = $(call qstrip,$(BR2_PACKAGE_SYSTEMD_BOOT_EFI_ARCH))
> define SYSTEMD_INSTALL_BOOT_FILES
> $(INSTALL) -D -m 0644 $(@D)/build/src/boot/efi/systemd-boot$(SYSTEMD_BOOT_EFI_ARCH).efi \
> $(BINARIES_DIR)/efi-part/EFI/BOOT/boot$(SYSTEMD_BOOT_EFI_ARCH).efi
> - echo "boot$(SYSTEMD_BOOT_EFI_ARCH).efi" > \
> - $(BINARIES_DIR)/efi-part/startup.nsh
> $(INSTALL) -D -m 0644 $(SYSTEMD_PKGDIR)/boot-files/loader.conf \
> $(BINARIES_DIR)/efi-part/loader/loader.conf
> $(INSTALL) -D -m 0644 $(SYSTEMD_PKGDIR)/boot-files/buildroot.conf \
> --
> 2.25.1
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
More information about the buildroot
mailing list