From 9d3669b64786edae953e20b5681f6fd322fd3a30 Mon Sep 17 00:00:00 2001 From: Tobias Waldekranz Date: Tue, 3 Mar 2026 07:32:40 +0000 Subject: [PATCH] image-barebox-esp: EFI System Partition with Barebox --- board/common/Config.in | 3 ++ .../common/image/image-barebox-esp/Config.in | 6 +++ .../image/image-barebox-esp/generate.sh | 38 +++++++++++++++++++ .../image-barebox-esp/image-barebox-esp.mk | 7 ++++ 4 files changed, 54 insertions(+) create mode 100644 board/common/image/image-barebox-esp/Config.in create mode 100755 board/common/image/image-barebox-esp/generate.sh create mode 100644 board/common/image/image-barebox-esp/image-barebox-esp.mk diff --git a/board/common/Config.in b/board/common/Config.in index ed192024..abb65c7a 100644 --- a/board/common/Config.in +++ b/board/common/Config.in @@ -6,6 +6,9 @@ source "$BR2_EXTERNAL_INFIX_PATH/board/common/image/image-itb-qcow/Config.in" source "$BR2_EXTERNAL_INFIX_PATH/board/common/image/image-itb-gns3a/Config.in" source "$BR2_EXTERNAL_INFIX_PATH/board/common/image/image-itb-rauc/Config.in" source "$BR2_EXTERNAL_INFIX_PATH/board/common/image/image-itb-dl-release/Config.in" + +comment "General" +source "$BR2_EXTERNAL_INFIX_PATH/board/common/image/image-barebox-esp/Config.in" source "$BR2_EXTERNAL_INFIX_PATH/board/common/image/image-readme/Config.in" endmenu diff --git a/board/common/image/image-barebox-esp/Config.in b/board/common/image/image-barebox-esp/Config.in new file mode 100644 index 00000000..23e9d5dc --- /dev/null +++ b/board/common/image/image-barebox-esp/Config.in @@ -0,0 +1,6 @@ +config IMAGE_BAREBOX_ESP + bool "Barebox EFI System Partition" + depends on BR2_TARGET_BAREBOX + default y if IMAGE_DDI + help + An EFI System Partition (ESP) with Barebox installed. diff --git a/board/common/image/image-barebox-esp/generate.sh b/board/common/image/image-barebox-esp/generate.sh new file mode 100755 index 00000000..c7be7b2d --- /dev/null +++ b/board/common/image/image-barebox-esp/generate.sh @@ -0,0 +1,38 @@ +#!/bin/sh + +set -e + +case "$BR2_ARCH" in + x86_64) + BOOT_EFI=BOOTX64.EFI + ;; + *) + echo "Unknown EFI boot path for $BR2_ARCH" >&2 + exit 1 + ;; +esac + +mkdir -p "${WORKDIR}"/root +rm -rf "${WORKDIR}"/tmp +mkdir -p "${WORKDIR}"/tmp + +cat <"${WORKDIR}"/genimage.cfg +image barebox-esp.vfat { + size = "16M" + vfat { + file EFI/BOOT/$BOOT_EFI { + image = $BINARIES_DIR/barebox.efi + } + } +} + +# Silence genimage warnings +config {} +EOF + +genimage \ + --tmppath "${WORKDIR}"/tmp \ + --rootpath "${WORKDIR}"/root \ + --inputpath "${WORKDIR}" \ + --outputpath "${BINARIES_DIR}" \ + --config "${WORKDIR}"/genimage.cfg diff --git a/board/common/image/image-barebox-esp/image-barebox-esp.mk b/board/common/image/image-barebox-esp/image-barebox-esp.mk new file mode 100644 index 00000000..6cb2ec9e --- /dev/null +++ b/board/common/image/image-barebox-esp/image-barebox-esp.mk @@ -0,0 +1,7 @@ +################################################################################ +# +# image-barebox-esp +# +################################################################################ + +$(eval $(ix-image))