I'm trying to apply some changes to the kernel configuration to my kernel image and to the device tree. In my custom layer my tree looks like this
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
and thats the content of my linux-qoriq_5.15.bbappend file:
SRC_URI += "file://defconfig"
SRC_URI += "file://0001-usb0-devicetree-dtsi.patch"
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
PACKAGE_ARCH = "${MACHINE_ARCH}"
When I'm running `bitbake custom-image` during the build process .patch file is copied to the folder where the linux kernel sources reside (`build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq`) the devicetree patch get's applied correctly to the .dtsi file (`build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/5.15.32+gitAUTOINC+fa6c316859-r0/git/arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi`) and everything works as expected. But my defconfig file is not getting copied to `build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/defconfig` respectively not overwrites the defconfig file that resides in the `build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/` folder and is not affecting the `build_ls1046ardb/tmp/work/ls1046ardb-fsl-linux/linux-qoriq/build/.conf` file which is used during to kernel build. What am I doing wrong here?
Solved! Go to Solution.
Solved the Problem:
I'm now using a config fragment "fragement.cfg" instead of the whole defconfig file.
As described in this post https://community.nxp.com/t5/P-Series/qoriq-Linux-append-the-changes-in-kernel-configuration-not/m-p... I appended DELTA_KERNEL_DEFCONFIG += "fragment.cfg" to my linux-qoriq_5.15.bbappend file and it looks like this now:
SRC_URI += "file://fragment.cfg"
SRC_URI += "file://0001-usb0-devicetree-dtsi.patch"
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
DELTA_KERNEL_DEFCONFIG += "fragment.cfg"
PACKAGE_ARCH = "${MACHINE_ARCH}"
I have tried using a fragment.cfg file instead of the whole defconfig before but without adding the DELTA_KERNEL_DEFCONFIG += "fragment.cfg" line to my .bbappend file and it did not work.
Solved the Problem:
I'm now using a config fragment "fragement.cfg" instead of the whole defconfig file.
As described in this post https://community.nxp.com/t5/P-Series/qoriq-Linux-append-the-changes-in-kernel-configuration-not/m-p... I appended DELTA_KERNEL_DEFCONFIG += "fragment.cfg" to my linux-qoriq_5.15.bbappend file and it looks like this now:
SRC_URI += "file://fragment.cfg"
SRC_URI += "file://0001-usb0-devicetree-dtsi.patch"
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
DELTA_KERNEL_DEFCONFIG += "fragment.cfg"
PACKAGE_ARCH = "${MACHINE_ARCH}"
I have tried using a fragment.cfg file instead of the whole defconfig before but without adding the DELTA_KERNEL_DEFCONFIG += "fragment.cfg" line to my .bbappend file and it did not work.