ZynqMPのYoctoでu-boot-xlnxのコンパイルでエラーが発生する。
ソースコードのエラーではなくPMUのバイナリが存在しないためのエラーであり、下記のようにコンパイルログが残る。
Cannot read ../../../../../../pmutmp/deploy/images/zynqmp-pmu/pmu-firmware-zynqmp-pmu.bin
エラーの回避はmeta-xilinx-bsp/recipes-bsp/u-boot/u-boot-spl-zynq-init.incの次の行をコメントアウトする。
if providesbin and d.getVar("SOC_FAMILY") in ["zynqmp"]:
# determine the path relative to the source tree
relpath = os.path.relpath(d.expand("${PMU_FIRMWARE_DEPLOY_DIR}/${PMU_FIRMWARE_IMAGE_NAME}.bin"), d.getVar("S"))
# setup PMU Firmware path via MAKEFLAGS
d.appendVar("EXTRA_OEMAKE", " CONFIG_PMUFW_INIT_FILE=\"{0}\"".format(relpath))
基本的にu-bootやLinux Kernelをyoctoで生成するのは避けるべきである。