diff --git a/build/jam/ArchitectureRules b/build/jam/ArchitectureRules index 35b887f456..1ea26991d7 100644 --- a/build/jam/ArchitectureRules +++ b/build/jam/ArchitectureRules @@ -257,14 +257,13 @@ rule KernelArchitectureSetup architecture HAIKU_BOOT_LOADER_BASE ?= 0x1000000 ; # Modern u-boot fill in sane addresses for us. - # We only need to fill in the FDT dtb + # Leverage the built-in fdt dtb for this board, unless a custom dtb is specified in uEnv.txt HAIKU_MMC_UBOOT_SCRIPT = "\ test -e mmc 0 uEnv.txt && fatload mmc 0 ${scriptaddr} uEnv.txt && env import -t ${scriptaddr} ${filesize} \ fatload mmc 0 ${kernel_addr_r} haiku_loader.ub \ fatload mmc 0 ${ramdisk_addr_r} haiku_floppyboot.ub \ - fatload mmc 0 ${fdt_addr_r} ${dtb} \ - fdt addr ${fdt_addr_r} \ - bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r}" ; + env exists dtb && fatload mmc 0 ${fdt_addr_r} ${dtb} && fdt addr ${fdt_addr_r} && bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdt_addr_r} \ + fdt addr ${fdtcontroladdr} && bootm ${kernel_addr_r} ${ramdisk_addr_r} ${fdtcontroladdr}" ; case arm64 : HAIKU_KERNEL_PLATFORM ?= efi ;