I updated a fully worked board firmware from rocko to thud. I just updated poky and all the official repos. The kernel and bootloader are still in the same version. On startup the bootloader (little kernel) will stop and print the error message that he can't find dtb files.
DTB offset is incorrect, kernel image does not have appended DTB
I think the problem is the kernel compiling it self. For some reasons the dtb files will not append to the kernel. When I check the size of the builded kernel the "thud" version is a little bit smaller.
I found this usefull tool: https://github.com/PabloCastellano/extract-dtb
If I check the rocko kernel image the tool found 12 dtbs. But if I check the thud kernel image the tool found 0.
For some reasons the dtb files will not append to the kernel.
...
But if I check the thud kernel image the tool found 0.
Apparently a build script to append a dtb file to the zImage file is missing.
According to Device Tree for Dummies, on page 8:
There is no built-in Makefile rule to produce such kernel, so one must manually do:
$ cat arch/arm/boot/zImage arch/arm/boot/dts/myboard.dtb > my-zImage $ mkimage ... -d my-zImage my-uImageI