From 38a3af6a8d0fb18ec8a9654b9fc6f0e164ab03f4 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sun, 15 Jul 2018 21:40:28 +0200 Subject: [PATCH] Fix prevent device tree on rpi (#107) * Fix prevent device tree * Update uboot-boot.sh * Update rauc-hook * Update rauc-hook --- buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh | 6 ++++-- buildroot-external/board/raspberrypi/uboot-boot.sh | 6 ++++-- buildroot-external/misc/rauc-hook | 5 +++++ 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh b/buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh index 6b04956e3..a04666cc6 100644 --- a/buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh +++ b/buildroot-external/board/raspberrypi/rpi3-64/uboot-boot.sh @@ -11,7 +11,8 @@ setenv bootargs_b "root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype # Preserve origin bootargs setenv bootargs_rpi -fdt addr ${fdt_addr} +setenv fdt_org ${fdt_addr} +fdt addr ${fdt_org} fdt get value bootargs_rpi /chosen bootargs setenv bootargs @@ -35,6 +36,7 @@ for BOOT_SLOT in "${BOOT_ORDER}"; do fi done +setenv fdt_addr if test -n "${bootargs}"; then saveenv else @@ -48,7 +50,7 @@ fi echo "Loading kernel" run load_kernel echo " Starting kernel" -booti ${kernel_addr_r} - ${fdt_addr} +booti ${kernel_addr_r} - ${fdt_org} echo "Fails on boot" reset diff --git a/buildroot-external/board/raspberrypi/uboot-boot.sh b/buildroot-external/board/raspberrypi/uboot-boot.sh index d4f4e8fa9..7355334ce 100644 --- a/buildroot-external/board/raspberrypi/uboot-boot.sh +++ b/buildroot-external/board/raspberrypi/uboot-boot.sh @@ -11,7 +11,8 @@ setenv bootargs_b "root=PARTUUID=a3ec664e-32ce-4665-95ea-7ae90ce9aa20 rootfstype # Preserve origin bootargs setenv bootargs_rpi -fdt addr ${fdt_addr} +setenv fdt_org ${fdt_addr} +fdt addr ${fdt_org} fdt get value bootargs_rpi /chosen bootargs setenv bootargs @@ -35,6 +36,7 @@ for BOOT_SLOT in "${BOOT_ORDER}"; do fi done +setenv fdt_addr if test -n "${bootargs}"; then saveenv else @@ -48,7 +50,7 @@ fi echo "Loading kernel" run load_kernel echo " Starting kernel" -bootz ${kernel_addr_r} - ${fdt_addr} +bootz ${kernel_addr_r} - ${fdt_org} echo "Fails on boot" reset diff --git a/buildroot-external/misc/rauc-hook b/buildroot-external/misc/rauc-hook index c041a7960..0abdcf50f 100755 --- a/buildroot-external/misc/rauc-hook +++ b/buildroot-external/misc/rauc-hook @@ -20,4 +20,9 @@ if [ -L /var/lib/systemd/timesync ]; then rm -f /var/lib/systemd/timesync fi +# u-boot first stage device tree +if [ -e /usr/sbin/fw_setenv ]; then + fw_setenv fdt_addr +fi + exit 0