Configure Buildroot for Custom Device Tree with FMCOMMS4 on ZedBoard

Hello, I’m working on configuring Buildroot to build a Linux image that interfaces the FMCOMMS4 SDR module with the ZedBoard, an FPGA development board. I need to customize the device tree to support the specific hardware configurations and interfaces. Despite following the general guidelines for adding a custom device tree in Buildroot, I’m encountering issues getting the configuration to work properly.

Steps Taken:

Cloning Buildroot: Cloned the latest version of Buildroot.
Device Tree Setup: Used a device tree provided by Analog Devices named “devicetree.dts”.
Buildroot Configuration: Updated zynq_zed_defconfig with the necessary configurations for the kernel and U-Boot, specifying the custom device tree name.
Post-Build and Post-Image Scripts: Modified the and scripts to ensure the custom device tree files are correctly placed and linked.
Here are snippets of my configuration and scripts:

zynq_zed_defconfig (extract):



cp “{BOARD_DIR}/dts/devicetree.dts" "{BUILD_DIR}/linux-xlnx/arch/arm/boot/dts/”
cp “{BOARD_DIR}/dts/devicetree.dts" "{BUILD_DIR}/u-boot-xlnx/arch/arm/dts/”

then I run: make DEVICE_TREE=devicetree

I get :

Device Tree Source (arch/arm/dts/devicetree.dtb) is not correctly specified.


or build with ‘DEVICE_TREE=<device_tree>’ argument

make[3]: *** [dts/Makefile:34: arch/arm/dts/devicetree.dtb] Error 1

make[2]: *** [Makefile:1132: dts/dt.dtb] Error 2

make[1]: *** [package/ /home/fahym/workspace/buildroot/output/build/uboot-custom/.stamp_built] Error 2

make: *** [Makefile:82: _all] Error 2