From 305b06687d312159deeb162d3288d0e9e47c7a16 Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Wed, 4 Jan 2023 01:21:10 +0100 Subject: [PATCH] configs/asus_tinker_rk3288: fix boot by prepending tpl to spl+u-boot During the last U-boot version bump it's not been noted that the TPL was not prepended to SPL anymore preventing the board to boot, so let's copy TPL to the image folder, prepend it to u-boot-spl-dtb.bin and place it at offset 32KB, where RK3288 bootrom expects to find it. Let's also place u-boot-dtb separated from SPL at offset 8M, where the SPL expects it to find it. Signed-off-by: Giulio Benetti Signed-off-by: Thomas Petazzoni (cherry picked from commit e738d5b7251918a62922f3f3b6491b642f9ec182) Signed-off-by: Peter Korsgaard --- board/asus/tinker/genimage.cfg | 11 +++++++++-- board/asus/tinker/post-build.sh | 4 ++-- configs/asus_tinker_rk3288_defconfig | 3 +-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/board/asus/tinker/genimage.cfg b/board/asus/tinker/genimage.cfg index a4b1e8d608..fa7fd734f2 100644 --- a/board/asus/tinker/genimage.cfg +++ b/board/asus/tinker/genimage.cfg @@ -2,12 +2,19 @@ image sdcard.img { hdimage { } - partition u-boot-spl-dtb { + partition u-boot-tpl-spl-dtb { in-partition-table = "no" - image = "u-boot-spl-dtb.img" + image = "u-boot-tpl-spl-dtb.img" offset = 32K } + partition u-boot-dtb { + in-partition-table = "no" + image = "u-boot-dtb.img" + offset = 8M + size = 30M + } + partition rootfs { partition-type = 0x83 image = "rootfs.ext4" diff --git a/board/asus/tinker/post-build.sh b/board/asus/tinker/post-build.sh index 8108ed83ff..ffbbcdeb58 100755 --- a/board/asus/tinker/post-build.sh +++ b/board/asus/tinker/post-build.sh @@ -3,7 +3,7 @@ MKIMAGE=$HOST_DIR/bin/mkimage BOARD_DIR="$(dirname $0)" -$MKIMAGE -n rk3288 -T rksd -d $BINARIES_DIR/u-boot-spl-dtb.bin $BINARIES_DIR/u-boot-spl-dtb.img -cat $BINARIES_DIR/u-boot-dtb.bin >> $BINARIES_DIR/u-boot-spl-dtb.img +$MKIMAGE -n rk3288 -T rksd -d $BINARIES_DIR/u-boot-tpl.bin $BINARIES_DIR/u-boot-tpl.img +cat $BINARIES_DIR/u-boot-tpl.img $BINARIES_DIR/u-boot-spl-dtb.bin > $BINARIES_DIR/u-boot-tpl-spl-dtb.img install -m 0644 -D $BOARD_DIR/extlinux.conf $TARGET_DIR/boot/extlinux/extlinux.conf diff --git a/configs/asus_tinker_rk3288_defconfig b/configs/asus_tinker_rk3288_defconfig index 6963fa939f..02b340a7f1 100644 --- a/configs/asus_tinker_rk3288_defconfig +++ b/configs/asus_tinker_rk3288_defconfig @@ -17,9 +17,8 @@ BR2_TARGET_UBOOT_NEEDS_PYTHON3=y BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y BR2_TARGET_UBOOT_NEEDS_OPENSSL=y BR2_TARGET_UBOOT_FORMAT_DTB_IMG=y -BR2_TARGET_UBOOT_FORMAT_DTB_BIN=y BR2_TARGET_UBOOT_SPL=y -BR2_TARGET_UBOOT_SPL_NAME="spl/u-boot-spl-dtb.bin" +BR2_TARGET_UBOOT_SPL_NAME="spl/u-boot-spl-dtb.bin tpl/u-boot-tpl.bin" # Kernel BR2_LINUX_KERNEL=y