Change the bsp6.2 device tree in u-boot space

hello dear support
I am modifying the device tree in BSP6.2 and compiling it (using Device Tree Customization | Toradex Developer Center )
I prepared my DTC and local machine using (
it seems to be finished correctly and it has made .dtb file for me
but when i tried to load it into uboot (using Flashing Embedded Linux to iMX6 Modules) it showed me an error (Loading DeviceTree: imx6dl-colibri-eval-v4.dtb
Failed to load ‘imx6dl-colibri-eval-v4.dtb’
I have used fdt variable of u-boot so many times and it was completely successful in BSP2.8 but now it doesn’t work properly

now I am facing with 2 considerations:
1- how should I ensure that my .dtb file is correct?
2- how should I insert the device tree into u-boot if my process is wrong?

I am using :
Colibri imx6dl V1.1A
iris carrier board
linux BSP 6.2

appreciate your support

Hello @me_ahani98,

Thanks for reaching out to us!

First of all, I’d like to point out that the article that you are referencing to load the dtb file is a legacy way, and also it’s from our developer-archives website. Please follow the webpage for any updated information.

Secondly, the module that you are using supports device tree overlays. So the recommended and easiest way would be to build and deploy device tree overlays. You will find these steps at the end of this document
that you have already been following and also here. Also, here you will find more details regarding device tree overlays on Linux BSPs.

Please let me know if that helps.

hello again dear Rudhi
thanks a lot for your kind response
as you recommended to me I follow overlayers steps and compile it using “Build Device Tree Overlays from Source Code | Toradex Developer Center
everything seems to be done correctly and I deploy it using your guideline
im gonna change the device tree but I am not so expert in device tree modification so I need to ensure that my compile process is finished correctly before starting to modify my own dts file
how should I ensure that my colibri-imx6_custom.dtbo that is based on colibri-imx6_hdmi_overlay.dts is correct?

my compiling commands are :
“cpp -nostdinc -I …/…/linux-6.2.y/arch/arm/boot/dts -I …/…/linux-6.2.y/include/ -undef -x assembler-with-cpp colibri-imx6_custom.dts colibri-imx6_custom.dts.preprocessed”
" dtc -@ -Hepapr -I dts -O dtb -i …/…/linux-6.2.y/arch/arm/boot/dts/ -o colibri-imx6_custom.dtbo colibri-imx6_custom.dts.preprocessed"

thanks a lot dear friend…

Hi @me_ahani98 !

You can simply copy the output (.dtbo, as it is a device tree overlay) into the module, enable it, and test the modification you made. Depending on the modification you made, the test will be different.

As @rudhi.tx said before, you can deploy the .dtbo by following the article below:

Maybe you want to take a look at TorizonCore, which has some nice and easy-to-use tooling (like TorizonCore Builder) to customize your image:

Best regards,