Why does buildroot reject my custom device tree directory?

59 views Asked by At

In order to use a custom device tree I made the below arrangements:

  1. To eliminate possible device tree syntax errors I just downloaded original dts file and changed it's name as custom-bananapro.dts . (If this comes nonsense to you I just wanted to be sure that I know all steps of the -howtocustomdevicetree- process)
  2. I saved custom-bananapro.dts into the /home/oleg/Documents/buildroot/my_oleg directory.
  3. And made following changes at buildroot's menuconfig
  4. In-tree Device Tree Source file names = custom-bananapro
  5. Out-of-tree Device Tree Source file path = /home/oleg/Documents/buildroot/my_oleg .

But buildroot build process resulted in the below error message :

cp -f /home/oleg/Documents/buildroot/my_oleg /home/oleg/Documents/buildroot/output/build/linux-5.4.7/arch/arm/boot/dts/
cp: -r not specified; omitting directory '/home/oleg/Documents/buildroot/my_oleg
make[1]: *** [package/pkg-generic.mk:283: /home/oleg/Documents/buildroot/output/build/linux-5.4.7/.stamp_built] Error 1 make: *** [Makefile:82: _all] Error 2

Then at my subsequent try in addition to above I also changed u-boot device tree configuration as:

BR2_TARGET_UBOOT_CUSTOM_DTS_PATH=/home/oleg/Documents/buildroot/my_oleg

Again buildroot build process resulted in a similar error message :

cp -f /home/oleg/Documents/buildroot/my_oleg /home/oleg/Documents/buildroot/output/build/uboot-2022.04/arch/arm/dts/
cp: -r not specified; omitting directory '/home/oleg/Documents/buildroot/my_oleg'
make[1]: *** [package/pkg-generic.mk:283: /home/oleg/Documents/buildroot/output/build/uboot-2022.04/.stamp_built] Error 1
make: *** [Makefile:82: _all] Error 2

1

There are 1 answers

2
Peter Korsgaard On

BR2_TARGET_UBOOT_CUSTOM_DTS_PATH takes a list of filenames to copy, E.G. you should set it to /home/oleg/Documents/buildroot/my_oleg/custom-bananapro.dts.

The help text tries to explain that:

Space-separated list of paths to device tree source files                                                              that will be copied to arch/ARCH/dts/ before starting the                                                                build.                                                                                                                 

To use this device tree source file, the U-Boot configuration                                                          file must refer to it.                                           

But maybe that isn't clear? Can you suggest another wording?