[meta-xilinx] meta-xilinx device-tree recipe on master / yocto pyro

Peter Smith salerio at gmail.com
Thu Oct 5 00:30:04 PDT 2017

I had the exact same problem yesterday. I have yet to look into it, but
what you are suggesting seems to be the case for me too.

Out of interest have you tried building the zcu102-zynqmp machine with just
the meta-xilinx (and poky) layers to see if that works as expected? In my

I have a layer on top of these two where I have a customised .dts file and
recipes-kernel/linux linux-xlnx_%.bbappend file. To get around the problem
I temporarily duplicated by device tree file.

Best Regards

On 4 October 2017 at 22:34, <Holden.Sandlar at ultra-fei.com> wrote:

> Hi all,
> I'm hoping this is a quick and easy issue someone already knows the answer
> to. I'm working with a ZCU102, using meta-petalinux, meta-xilinx,
> meta-xilinx-tools and bitbake/poky 1.34.0 -- both meta-xilinx and
> meta-xilinx-tools on the master branch and am having an issue with the
> meta-xilinx device-tree recipe. Just for quick and easy reference, the
> device-tree recipe is here: https://github.com/Xilinx/
> meta-xilinx/blob/master/recipes-bsp/device-tree/device-tree.bb
> The issue that I'm running into is that when I run "bitbake device-tree" I
> get an error that there are no dts files in the device-tree/1.0-r0
> directory. Full error shown below:
> ERROR: device-tree-1.0-r0 do_compile: Function failed: do_compile (log
> file is located at /work/MPSoC/yocto_2017.2/build/tmp/work/zcu102_zynqmp-
> xilinx-linux/device-tree/1.0-r0/temp/log.do_compile.15884)
> ERROR: Logfile of failure stored in: /work/MPSoC/yocto_2017.2/
> build/tmp/work/zcu102_zynqmp-xilinx-linux/device-tree/1.0-
> r0/temp/log.do_compile.15884
> Log data follows:
> | DEBUG: Executing shell function do_compile
> | /work/MPSoC/yocto_2017.2/build/tmp/work/zcu102_zynqmp-
> xilinx-linux/device-tree/1.0-r0
> | gcc: error: /work/MPSoC/yocto_2017.2/build/tmp/work/zcu102_zynqmp-
> xilinx-linux/device-tree/1.0-r0/*.dts: No such file or directory
> | gcc: warning: ‘-x assembler-with-cpp’ after last input file has no effect
> | gcc: fatal error: no input files
> | compilation terminated.
> | WARNING: /work/MPSoC/yocto_2017.2/build/tmp/work/zcu102_zynqmp-
> xilinx-linux/device-tree/1.0-r0/temp/run.do_compile.15884:1 exit 4 from
> 'gcc -E -nostdinc -Ulinux -x assembler-with-cpp -I/work/MPSoC/yocto_2017.2/
> build/tmp/work/zcu102_zynqmp-xilinx-linux/device-tree/1.0-r0
> -I/work/MPSoC/yocto_2017.2/build/tmp/work-shared/zcu102-
> zynqmp/kernel-source/arch/arm64/boot/dts -I/work/MPSoC/yocto_2017.2/
> build/tmp/work-shared/zcu102-zynqmp/kernel-source/arch/arm64/boot/dts/include
> -I/work/MPSoC/yocto_2017.2/build/tmp/work-shared/zcu102-
> zynqmp/kernel-source/arch/arm64/boot/dts/xilinx -o `basename
> ${DTS_FILE}`.pp ${DTS_FILE}'
> | ERROR: Function failed: do_compile (log file is located at
> /work/MPSoC/yocto_2017.2/build/tmp/work/zcu102_zynqmp-
> xilinx-linux/device-tree/1.0-r0/temp/log.do_compile.15884)
> ERROR: Task (/work/MPSoC/yocto_2017.2/sources/core/../meta-xilinx/
> recipes-bsp/device-tree/device-tree.bb:do_compile) failed with exit code
> '1'
> NOTE: Tasks Summary: Attempted 534 tasks of which 464 didn't need to be
> rerun and 1 failed.
> Summary: 1 task failed:
>   /work/MPSoC/yocto_2017.2/sources/core/../meta-xilinx/
> recipes-bsp/device-tree/device-tree.bb:do_compile
> Summary: There were 5 WARNING messages shown.
> Summary: There was 1 ERROR message shown, returning a non-zero exit code.
> After reviewing the history on this recipe, it appears the recipe was
> restructured months ago to "Improve, clean up and remove
> MACHINE_DEVICETREE". Based on this commit, it appears the intent was to use
> the dts/dtsi files within the kernel sources as a base for generating a
> device tree. There was a line added to ensure that
> "virtual/kernel:do_shared_workdir" is run prior to the device-tree
> recipe. My assumption is that the kernel recipe do_shared_workdir task is
> supposed to copy the selected machine's dts files into the shared workdir
> so they can be used by this device-tree recipe. However, this does not seem
> to happen in my case --
> /work/MPSoC/yocto_2017.2/build/tmp/work-shared/zcu102-zynqmp/kernel-source$
> ls
> arch   COPYING  Documentation  fs       ipc      kernel       Makefile
>  README          scripts   tools
> block  CREDITS  drivers        include  Kbuild   lib          mm
>  REPORTING-BUGS  security  usr
> certs  crypto   firmware       init     Kconfig  MAINTAINERS  net
> samples         sound     virt
> Additionally, the device-tree recipe loops over any *.dts files in the
> ${S} directory, which is mapped to ${WORKDIR} in this recipe (
> https://github.com/Xilinx/meta-xilinx/blob/master/recipes-bsp/device-tree/
> device-tree.bb#L51). This loop will effectively do an ls in the
> build/tmp/work/zcu102_zynqmp-xilinx-linux/device-tree/1.0-r0 directory to
> check for any *.dts files. This directory definitely does not contain any
> dts files.
> I'm guessing I'm missing something small/simple here. Can anyone provide
> any guidance?
> Thanks,
> Holden
> NOTICE: The contents of this document are proprietary to Ultra Electronics
> Flightline Systems and the noted recipient/s and shall not be disclosed,
> disseminated, copied, in whole or in part or used except for the purposes
> expressly authorized in writing by Ultra Electronics Flightline Systems.
> This document may contain technical data, which may be restricted for
> export under the International Traffic in Arms Regulations (ITAR) or the
> Export Administration Regulations (EAR). Violations of these export laws
> may be subject to fines and penalties under the Arms Export Control Act (22
> U.S.C. 2778)   ­­
> --
> _______________________________________________
> meta-xilinx mailing list
> meta-xilinx at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-xilinx
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20171005/51a34f8c/attachment.html>

More information about the meta-xilinx mailing list