How to update device tree file (DTB, FTD) in the linux kernel partition

On ConnectCore 6 there is one FAT partition containing the kernel uImage file as well as the device tree file .dtb configuring the kernel drivers and needed to boot the kernel. Both are loaded during boot from U-Boot into RAM before the kernel is started.

If you modified the device tree on your development host and you want to update the .dtb file in the kernel partition,
you might want to use U-Boot fatwrite command which requires also some addresses to be passed and correct file length.
Also upfront you need to load the file from somewhere (e.g. tftp) into RAM.

Its easier to use the "updatefile" command, which does both together: loading via tftp into RAM and storing it in the appropriate partition.
  • for Linux:     updatefile linux tftp uImage-imx6q-ccimx6sbc.dtb
  • for Android: updatefile android tftp uImage-imx6q-ccimx6sbc.dtb
You may also use the ftd_file environment variable, presumed it is matching the filename of your .dtb file.
See also: Converting CC6 SBC Android kit to Yocto
Last updated: Jun 24, 2019

Recently Viewed

No recently viewed articles

Did you find this article helpful?