我正在尝试将对内核配置的一些更改应用于我的内核映像和设备树。在我的自定义图层中,我的树看起来像这样
meta-custom/
├── COPYING.MIT
├── README
├── classes
│ └── postprocess_image.bbclass
├── conf
│ └── layer.conf
├── recipes-core
│ └── images
│ └── custom-image.bb
├── recipes-example
│ └── example
│ └── example_0.1.bb
└── recipes-kernel
└── linux
├── linux-qoriq
│ └── ls1046ardb
│ ├── 0001-usb0-devicetree-dtsi.patch
│ └── defconfig
└── linux-qoriq_5.15.bbappend
这就是我的 linux-qoriq_5.15.bbappend 文件的内容:
SRC_URI += "file://defconfig"
SRC_URI += "file://0001-usb0-devicetree-dtsi.patch"
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
PACKAGE_ARCH = "${MACHINE_ARCH}"
当我在构建过程中运行 `bitbake custom-image` 时,.patch 文件被复制到 linux 内核源代码所在的文件夹 (`build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq`) devicetree补丁正确应用于.dtsi文件(`build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/5.15.32+gitAUTOINC+fa6c316859-r0/git/arch/arm64/boot/dts/freescale/fsl -ls1046a.dtsi`) 并且一切都按预期工作。但是我的 defconfig 文件没有被复制到 `build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/defconfig` 分别没有覆盖驻留在 `build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux 中的 defconfig 文件/linux-qoriq/` 文件夹,并且不影响内核构建期间使用的 `build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/build/.conf` 文件。