I am working on:
Dahlia Carrier Board
Verdin iMX8M Mini
Branch kirkstone-6.x.y
Installing a reference image and then SSH into the target and manually changing fdt_overlays in overlays.txt works perfectly. However, I am trying to directly create an image with the 10 inch touch panel activated but I am probably missing something obvious.
I tried a few things and my last attempt was by following this: Custom meta layers, recipes and images in Yocto Project (hello-world examples) | Toradex Developer Center to add verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds-_overlay.dtbo to the overlays.txt file.
This is some of what my layer contains:
conf/layer.conf:
include conf/machine/verdin-imx8mm-extra.conf
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "meta-customer-demos"
BBFILE_PATTERN_meta-customer-demos = "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-customer-demos = "25"
LAYERDEPENDS_meta-customer-demos = " \
core \
yocto \
openembedded-layer networking-layer \
toradex-demos \
freescale-layer \
freescale-distro \
toradex-bsp-common-layer \
meta-flutter \
"
LAYERSERIES_COMPAT_meta-customer-demos = "kirkstone"
(if I change the position of include conf/machine/verdin-imx8mm-extra.conf to the end of layer.conf, I get an error during linux-toradex_%.bb:do_compile that says: make[1]: *** No rule to make target 'arch/arm64/boot/dts/verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds-copy_overlay.dtbo'. Stop.
)
conf/machine/verdin-imx8mm-extra.conf:
KERNEL_DEVICETREE:append = " verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds-copy_overlay.dtbo"
recipes-bsp/u-boot/u-boot-toradex_%.bbappend:
do_configure:append() {
sed -i 's/#define FDT_FILE.*/#define FDT_FILE "verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds-copy_overlay.dtbo"/' ${S}/include/configs/verdin-imx8mm.h
}
recipes-kernel/linux/linux-toradex_%.bbappend:
FILESEXTRAPATHS:prepend := "${THISDIR}/linux-toradex:"
CUSTOM_DEVICETREE = "verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds-copy_overlay.dts"
SRC_URI += "\
file://${CUSTOM_DEVICETREE} \
"
do_configure:append() {
cp ${WORKDIR}/${CUSTOM_DEVICETREE} ${S}/arch/arm64/boot/dts/freescale
}
And, in recipes-kernel/linux/linux-toradex/, I put copies of “verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dts”, “display-lt170410_sn65dsi84_overlay.dtsi” and “verdin-imx8_mipi-dsi-to-sn65dsi84.dtsi”. I just added “copy” to the name.
The image builds, but the overlays.txt still shows: “fdt_overlays=verdin-imx8mm_dsi-to-hdmi_overlay.dtbo verdin-imx8mm_spidev_overlay.dtbo”.
I am most certainly missing something easy but I cannot figure it out.
How to configure Yocto to make an image that has “fdt_overlays=verdin-imx8mm_dsi-to-lvds_panel-cap-touch-10inch-lvds_overlay.dtbo” ?
Thank you for your assistance.