diff --git a/layers/meta-balena-raspberrypi/recipes-core/images/balena-image.bbappend b/layers/meta-balena-raspberrypi/recipes-core/images/balena-image.bbappend index 26b6e947e..11488a03c 100644 --- a/layers/meta-balena-raspberrypi/recipes-core/images/balena-image.bbappend +++ b/layers/meta-balena-raspberrypi/recipes-core/images/balena-image.bbappend @@ -25,6 +25,16 @@ BALENA_BOOT_PARTITION_FILES:rpi = " \ bootfiles:/ \ " +BALENA_BOOT_PARTITION_FILES:remove:raspberrypi5-64 = " \ + u-boot.bin:/${SDIMG_KERNELIMAGE} \ + boot.scr:/boot.scr \ + " + +BALENA_BOOT_PARTITION_FILES:append:raspberrypi5-64 = " \ + balena-bootloader/${KERNEL_IMAGETYPE}-initramfs-${MACHINE}.bin:/${SDIMG_KERNELIMAGE} \ + balena-bootloader/bootenv:/bootenv \ + " + BALENA_BOOT_PARTITION_FILES:append:revpi-core-3 = " revpi-core-dt-blob-overlay.dtb:/dt-blob.bin" BALENA_BOOT_PARTITION_FILES:append:revpi-connect = " revpi-connect-dt-blob-overlay.dtb:/dt-blob.bin" @@ -58,6 +68,11 @@ python overlay_dtbs_handler () { do_resin_boot_dirgen_and_deploy[prefuncs] += "overlay_dtbs_handler" IMAGE_INSTALL:append:rpi = " u-boot" +IMAGE_INSTALL:remove:raspberrypi5-64 = " u-boot" +IMAGE_INSTALL:append:raspberrypi5-64 = " grub-editenv" + +do_rootfs[depends] += "${@oe.utils.conditional('MACHINE','raspberrypi5-64',' virtual/balena-bootloader:do_deploy','',d)}" +do_image_balenaos_img[depends] += "${@oe.utils.conditional('MACHINE','raspberrypi5-64',' virtual/balena-bootloader:do_deploy','',d)}" do_resin_boot_dirgen_and_deploy[depends] += "virtual/kernel:do_install" diff --git a/layers/meta-balena-raspberrypi/recipes-kernel/linux/linux-balena-bootloader_6.1.bb b/layers/meta-balena-raspberrypi/recipes-kernel/linux/linux-balena-bootloader_6.1.bb index 8dfc03158..a99ad6299 100644 --- a/layers/meta-balena-raspberrypi/recipes-kernel/linux/linux-balena-bootloader_6.1.bb +++ b/layers/meta-balena-raspberrypi/recipes-kernel/linux/linux-balena-bootloader_6.1.bb @@ -16,6 +16,16 @@ SRC_URI:remove = "file://initramfs-image-bundle.cfg" require recipes-kernel/linux/linux-raspberrypi.inc +do_deploy:append () { + BOOTENV_FILE="${DEPLOYDIR}/${KERNEL_PACKAGE_NAME}/bootenv" + grub-editenv "${BOOTENV_FILE}" create + grub-editenv "${BOOTENV_FILE}" set "resin_root_part=A" + grub-editenv "${BOOTENV_FILE}" set "bootcount=0" + grub-editenv "${BOOTENV_FILE}" set "upgrade_available=0" +} + +do_deploy[depends] += " grub-native:do_populate_sysroot" + KERNEL_DTC_FLAGS += "-@ -H epapr" INITRAMFS_IMAGE = "balena-image-bootloader-initramfs" diff --git a/layers/meta-balena-raspberrypi/recipes-support/hostapp-update-hooks/hostapp-update-hooks.bbappend b/layers/meta-balena-raspberrypi/recipes-support/hostapp-update-hooks/hostapp-update-hooks.bbappend index d30c267bc..4fc883b7b 100644 --- a/layers/meta-balena-raspberrypi/recipes-support/hostapp-update-hooks/hostapp-update-hooks.bbappend +++ b/layers/meta-balena-raspberrypi/recipes-support/hostapp-update-hooks/hostapp-update-hooks.bbappend @@ -2,3 +2,6 @@ FILESEXTRAPATHS:append := ":${THISDIR}/files" HOSTAPP_HOOKS += " 99-resin-uboot 999-resin-boot-cleaner" HOSTAPP_HOOKS:append:revpi-core-3 = " 9999-bootfiles" + +HOSTAPP_HOOKS:remove:raspberrypi5-64 = "99-resin-uboot 999-resin-boot-cleaner" +HOSTAPP_HOOKS:append:raspberrypi5-64 = " 99-balena-bootloader"