我是 Yocto 项目的新手,我正在尝试为基于 i.MX6QP/Q/DL SABRE Automotive 的自定义板构建一个简单的核心图像最小图像。现在我只使用元飞思卡尔层。
我有一些我想要构建并包含在 Linux 内核的 fitImage 中的自定义 DTS 文件。
这是我到目前为止所做的:
我已经使用自定义机器创建了一个自定义层,并在conf/machine.conf文件中指定了要使用的 DTB:
KERNEL_DEVICETREE = " \ imx6qp-g25-protoc-1280x480.dtb \ ... "
- 我在/yocto/poky/meta-custom/recipes-kernel/linux/中创建了一个linux-fslc-imx_%.bbappend文件,该文件引用了一个包含 git diff的.patch文件,就像在此处完成的一样。在 .patch 文件中,我包含了所需的arch/arm/boot/dts/Makefile修改和 DTS 文件。
不幸的是,在尝试构建 core-image-minimal 时,DTB 构建失败并显示以下消息:
make[3]: * 没有规则来制作目标“arch/arm/boot/dts/imx6qp-g25-protoc-1280x480.dtb”。停止。arch/arm/Makefile:322: 目标“imx6qp-g25-protoc-1280x480.dtb”的配方失败 make[2]:[imx6qp-g25-protoc-1280x480.dtb] 错误 2 生成文件:146:目标“子生成”的配方失败生成 [1]:[sub-make] Error 2 Makefile:24: recipe for target '__sub-make' failed make: * [__sub-make] Error 2 ERROR: oe_runmake failed WARNING: exit code 1 from a shell command。
实际上,我通过查看源文件夹linux-fslc-imx/4.1-2.0.x+gitAUTOINC+6c1ad49339-r0/build/source/arch/arm/boot/dts来检查是否应用了补丁,Makefile正确且DTS文件存在。