Search code examples
embedded-linuxu-bootfirmware

What is Control Flattened Device Tree of U-Boot?


According to this blog and Uboot docs, U-boot.bin contains a device tree called Control FDT(Flattened Device Tree). Where can I find this dtb or its source in U-boot source tree? Can you supply me an example or a doc about ctrl-FDT (FDT in the U-Boot) ?


Solution

  • A device tree is a description of the hardware of your system. This description is used to determine which drivers to load and how to configure them to work with your hardware. Both U-Boot and Linux use device trees. The device tree source (*.dts) is translated to a device tree binary (*.dtb) using the device tree compiler. The device tree sources for U-Boot are in

    arch/${ARCH}/dts
    

    Unfortunately not all drivers in U-Boot are converted to use this model yet. All new drivers should use it.

    https://elinux.org/Device_Tree_Usage may be a good initial reading.