[PATCH] meta-freescale: convert to new override syntax in honister


Thomas Perrot
 

Signed-off-by: Thomas Perrot <thomas.perrot@...>
---
classes/fsl-eula-unpack.bbclass | 4 +-
classes/fsl-u-boot-localversion.bbclass | 2 +-
.../fsl-vivante-kernel-driver-handler.bbclass | 2 +-
classes/image_types_fsl.bbclass | 2 +-
classes/imx-boot-container.bbclass | 4 +-
classes/kernel-imximage.bbclass | 4 +-
classes/kernel-itbimage.bbclass | 2 +-
classes/mfgtool-initramfs-image.bbclass | 2 +-
classes/qoriq_build_64bit_kernel.bbclass | 4 +-
classes/use-imx-headers.bbclass | 6 +-
...e-imx-security-controller-firmware.bbclass | 6 +-
conf/layer.conf | 2 +-
conf/machine/imx6qdlsabreauto.conf | 18 +-
conf/machine/imx6qdlsabresd.conf | 18 +-
conf/machine/imx6slevk.conf | 2 +-
conf/machine/imx6sllevk.conf | 2 +-
conf/machine/imx6sxsabreauto.conf | 4 +-
conf/machine/imx6sxsabresd.conf | 4 +-
conf/machine/imx6ulevk.conf | 12 +-
conf/machine/imx6ullevk.conf | 2 +-
conf/machine/imx6ulz-14x14-evk.conf | 2 +-
conf/machine/imx7dsabresd.conf | 2 +-
conf/machine/imx7ulpevk.conf | 4 +-
conf/machine/imx8dxl-lpddr4-evk.conf | 2 +-
conf/machine/imx8mm-ddr4-evk.conf | 2 +-
conf/machine/imx8mm-lpddr4-evk.conf | 2 +-
conf/machine/imx8mn-ddr4-evk.conf | 2 +-
conf/machine/imx8mn-lpddr4-evk.conf | 2 +-
conf/machine/imx8mp-ddr4-evk.conf | 2 +-
conf/machine/imx8mp-lpddr4-evk.conf | 2 +-
conf/machine/imx8mq-evk.conf | 12 +-
conf/machine/imx8qm-mek.conf | 8 +-
conf/machine/imx8qxp-mek.conf | 2 +-
conf/machine/include/imx-base.inc | 360 +++++++++---------
conf/machine/include/imx8dxl-evk.inc | 4 +-
conf/machine/include/imx8mm-evk.inc | 26 +-
conf/machine/include/imx8mn-evk.inc | 26 +-
conf/machine/include/imx8mp-evk.inc | 24 +-
conf/machine/include/imx8x-mek.inc | 6 +-
conf/machine/include/qoriq-base.inc | 8 +-
conf/machine/include/utilities.inc | 2 +-
conf/machine/ls1028ardb.conf | 2 +-
conf/machine/ls1043ardb.conf | 2 +-
conf/machine/ls1046afrwy.conf | 2 +-
conf/machine/ls1046ardb.conf | 2 +-
.../wayland/weston-init.bbappend | 2 +-
.../recipes-browser/chromium/chromium-imx.inc | 4 +-
.../clutter/clutter-1.0_%.bbappend | 2 +-
.../recipes-graphics/cogl/cogl-1.0_%.bbappend | 2 +-
.../wayland/weston-init.bbappend | 2 +-
.../glmark2/glmark2_%.bbappend | 8 +-
.../recipes-devtools/luajit/luajit_%.bbappend | 4 +-
.../recipes-dpaa/fmc/fmc_git.bb | 18 +-
.../xserver-common/xserver-common_%.bbappend | 6 +-
.../recipes-qt4/qt4/qt4-imx-support.inc | 12 +-
.../recipes-qt/qt5/qtbase_%.bbappend | 26 +-
.../recipes-qt/qt5/qtwayland_%.bbappend | 8 +-
.../libvirt/libvirt_%.bbappend | 6 +-
recipes-bsp/alsa-state/alsa-state.bbappend | 16 +-
recipes-bsp/atf/qoriq-atf_1.5.bb | 18 +-
recipes-bsp/atf/qoriq-atf_2.3.bb | 2 +-
.../firmware-imx/firmware-imx-8_8.12.bb | 4 +-
recipes-bsp/firmware-imx/firmware-imx_8.12.bb | 2 +-
recipes-bsp/firmware-qca/qca-tools_3.0.2.bb | 4 +-
recipes-bsp/formfactor/formfactor_%.bbappend | 2 +-
recipes-bsp/imx-atf/imx-atf_2.4.bb | 2 +-
recipes-bsp/imx-lib/imx-lib_git.bb | 18 +-
recipes-bsp/imx-mkimage/imx-boot_1.0.bb | 32 +-
recipes-bsp/imx-mkimage/imx-mkimage_git.bb | 6 +-
.../imx-sc-firmware/imx-sc-firmware_1.9.0.bb | 8 +-
recipes-bsp/imx-test/imx-test_git.bb | 28 +-
.../imx-vpu-hantro-daemon_1.0.0.bb | 8 +-
.../imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb | 6 +-
recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb | 2 +-
.../libimxdmabuffer/libimxdmabuffer_1.0.1.bb | 14 +-
recipes-bsp/mc-utils/mc-utils_git.bb | 10 +-
recipes-bsp/rcw/rcw_git.bb | 6 +-
recipes-bsp/u-boot/libubootenv_%.bbappend | 4 +-
.../u-boot/u-boot-fslc-mfgtool_2021.07.bb | 2 +-
recipes-bsp/u-boot/u-boot-fslc_2021.07.bb | 4 +-
.../u-boot/u-boot-imx-mfgtool_2021.04.bb | 2 +-
recipes-bsp/u-boot/u-boot-imx_2021.04.bb | 2 +-
recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb | 18 +-
.../iproute2/iproute2_%.bbappend | 2 +-
.../openssl/openssl_%.bbappend | 6 +-
.../init-ifupdown/init-ifupdown_%.bbappend | 2 +-
recipes-core/udev/udev-rules-qoriq.bb | 6 +-
recipes-devtools/qemu/qemu-qoriq_4.1.0.bb | 8 +-
recipes-devtools/qemu/qemu.inc | 12 +-
recipes-dpaa/fm-ucode/fm-ucode_git.bb | 14 +-
recipes-dpaa2/aiopsl/aiopsl_git.bb | 4 +-
.../management-complex_10.14.1.bb | 8 +-
.../management-complex_10.20.4.bb | 8 +-
.../management-complex_10.24.0.bb | 10 +-
recipes-extended/dpdk/dpdk.inc | 18 +-
recipes-extended/dpdk/dpdk_19.11-20.12.bb | 2 +-
recipes-extended/jailhouse/jailhouse_0.12.bb | 6 +-
recipes-extended/odp/odp-counters_git.bb | 2 +-
recipes-extended/odp/odp-module_git.bb | 2 +-
recipes-extended/odp/odp.inc | 2 +-
recipes-extended/odp/odp_git.bb | 18 +-
recipes-extended/procps/procps_%.bbappend | 2 +-
recipes-extended/testfloat/testfloat_2a.bb | 2 +-
recipes-extended/tsntool/tsntool_git.bb | 2 +-
.../packagegroups/packagegroup-fsl-isp.bb | 2 +-
.../packagegroups/packagegroup-fsl-qca6174.bb | 2 +-
.../packagegroups/packagegroup-fsl-qca9377.bb | 2 +-
recipes-graphics/cairo/cairo_%.bbappend | 4 +-
recipes-graphics/drm/libdrm_2.4.102.imx.bb | 6 +-
recipes-graphics/gtk+/gtk+3_%.bbappend | 4 +-
.../images/core-image-weston.bbappend | 2 +-
.../imx-gpu-apitrace_9.0.0.bb | 8 +-
.../imx-gpu-viv/imx-gpu-viv-6.inc | 44 +--
.../libepoxy/libepoxy_1.5.%.bbappend | 2 +-
recipes-graphics/libsdl2/libsdl2_%.bbappend | 4 +-
recipes-graphics/mesa/mesa-demos_%.bbappend | 16 +-
recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb | 2 +-
recipes-graphics/mesa/mesa-gl_%.bbappend | 2 +-
recipes-graphics/mesa/mesa_%.bbappend | 22 +-
.../vulkan/vulkan-loader_%.bbappend | 2 +-
recipes-graphics/waffle/waffle_%.bbappend | 10 +-
recipes-graphics/wayland/weston-init.bbappend | 26 +-
recipes-graphics/wayland/weston_9.0.0.imx.bb | 26 +-
.../pointercal-xinput_%.bbappend | 2 +-
.../xf86-video-imx-vivante_6.4.0.p0.0.bb | 2 +-
.../xserver-xf86-config_%.bbappend | 2 +-
.../xorg-xserver/xserver-xorg_%.bbappend | 14 +-
recipes-graphics/xwayland/xwayland_%.bbappend | 6 +-
recipes-kernel/ceetm/ceetm_git.bb | 2 +-
.../kernel-modules/kernel-module-ar_git.bb | 2 +-
.../kernel-modules/kernel-module-ipc.inc | 2 +-
.../kernel-module-qcacld-lea.inc | 2 +-
.../linux/linux-fslc-lts-mfgtool_5.10.bb | 2 +-
.../linux/linux-fslc-mfgtool_5.12.bb | 2 +-
.../linux/linux-imx-headers_5.10.bb | 2 +-
.../linux/linux-imx-mfgtool_5.10.bb | 2 +-
recipes-kernel/linux/linux-qoriq.inc | 16 +-
recipes-multimedia/alsa/alsa-lib_%.bbappend | 6 +-
.../gstreamer/gstreamer1.0-libav_1.16.0.bb | 8 +-
.../gstreamer1.0-plugins-bad_1.16.3.imx.bb | 16 +-
.../gstreamer1.0-plugins-base_1.16.%.bbappend | 6 +-
.../gstreamer1.0-plugins-base_1.16.2.imx.bb | 2 +-
.../gstreamer1.0-plugins-good_1.16.%.bbappend | 6 +-
.../gstreamer1.0-plugins-imx_2.0.0.bb | 16 +-
.../gstreamer/imx-gst1.0-plugin_4.5.7.bb | 24 +-
.../imx-codec/imx-codec_4.5.7.bb | 6 +-
.../imx-vpuwrap/imx-vpuwrap_4.5.7.bb | 4 +-
.../libimxvpuapi/libimxvpuapi2_2.2.0.bb | 8 +-
.../pulseaudio/pulseaudio_%.bbappend | 18 +-
.../optee-imx/optee-client_3.10.0.imx.bb | 4 +-
.../optee-imx/optee-os_3.10.0.imx.bb | 30 +-
.../optee-imx/optee-test_3.10.0.imx.bb | 6 +-
.../optee/optee-os-qoriq_3.8.0.bb | 12 +-
.../0001-Use-Os-to-compile-tinyxml2.cpp.patch | 6 +-
recipes-support/opencv/opencv_4.5.2.imx.bb | 36 +-
155 files changed, 762 insertions(+), 762 deletions(-)

diff --git a/classes/fsl-eula-unpack.bbclass b/classes/fsl-eula-unpack.bbclass
index 498d7826d9cf..5690898c5a43 100644
--- a/classes/fsl-eula-unpack.bbclass
+++ b/classes/fsl-eula-unpack.bbclass
@@ -79,11 +79,11 @@ FSL_EULA_FILE_MD5SUM ?= \

LIC_FILES_CHKSUM_LAYER ?= "file://${FSL_EULA_FILE};md5=${FSL_EULA_FILE_MD5SUM}"
LIC_FILES_CHKSUM_LAYER[vardepsexclude] += "FSL_EULA_FILE"
-LIC_FILES_CHKSUM_append = " ${LIC_FILES_CHKSUM_LAYER}"
+LIC_FILES_CHKSUM:append = " ${LIC_FILES_CHKSUM_LAYER}"

LIC_FILES_CHKSUM[vardepsexclude] += "FSL_EULA_FILE"

-do_fetch_prepend() {
+do_fetch:prepend() {
if "Proprietary" not in d.getVar("LICENSE"):
bb.fatal("The recipe LICENSE should include Proprietary but is " + d.getVar("LICENSE") + ".")
}
diff --git a/classes/fsl-u-boot-localversion.bbclass b/classes/fsl-u-boot-localversion.bbclass
index 617aae1de215..ebde8ea718f2 100644
--- a/classes/fsl-u-boot-localversion.bbclass
+++ b/classes/fsl-u-boot-localversion.bbclass
@@ -14,7 +14,7 @@ LOCALVERSION ??= "+fslc"

UBOOT_LOCALVERSION = "${LOCALVERSION}"

-do_compile_prepend() {
+do_compile:prepend() {
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
head=`cd ${S} ; git rev-parse --verify --short HEAD 2> /dev/null`
diff --git a/classes/fsl-vivante-kernel-driver-handler.bbclass b/classes/fsl-vivante-kernel-driver-handler.bbclass
index 8ac8a33445d2..7ba597f1963e 100644
--- a/classes/fsl-vivante-kernel-driver-handler.bbclass
+++ b/classes/fsl-vivante-kernel-driver-handler.bbclass
@@ -49,7 +49,7 @@ python fsl_vivante_kernel_driver_handler () {
addhandler fsl_vivante_kernel_driver_handler
fsl_vivante_kernel_driver_handler[eventmask] = "bb.event.RecipePreFinalise"

-do_configure_append () {
+do_configure:append () {
if [ "${MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT}" = "1" ]; then
config="${B}/.config"

diff --git a/classes/image_types_fsl.bbclass b/classes/image_types_fsl.bbclass
index c49c51b7a348..d6d8da95fd3b 100644
--- a/classes/image_types_fsl.bbclass
+++ b/classes/image_types_fsl.bbclass
@@ -37,7 +37,7 @@ do_image_wic[depends] += " \
"

# We need to apply a fixup inside of the partition table
-IMAGE_CMD_wic_append_mxs() {
+IMAGE_CMD_wic:append:mxs() {
# Change partition type for mxs processor family
bbnote "Setting partition type to 0x53 as required for mxs' SoC family."
echo -n S | dd of=$out${IMAGE_NAME_SUFFIX}.wic bs=1 count=1 seek=450 conv=notrunc
diff --git a/classes/imx-boot-container.bbclass b/classes/imx-boot-container.bbclass
index 41fe9cca739a..33de45c52b28 100644
--- a/classes/imx-boot-container.bbclass
+++ b/classes/imx-boot-container.bbclass
@@ -23,7 +23,7 @@

# Define ATF binary file to be deployed to the U-Boot build folder
ATF_MACHINE_NAME = "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"

# This package aggregates output deployed by other packages, so set the
# appropriate dependencies for populate binaries task
@@ -76,7 +76,7 @@ addtask do_resolve_and_populate_binaries before do_compile after do_configure
# This effectively would allow the usage of the same WKS file for those
# derivatives that are using the boot container from U-Boot and those
# that are not yet have support for it enabled.
-do_deploy_append() {
+do_deploy:append() {
# Deploy the resulted flash.bin for WIC to pick it up
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
diff --git a/classes/kernel-imximage.bbclass b/classes/kernel-imximage.bbclass
index 234cc00d3059..ccf7ec53bf45 100644
--- a/classes/kernel-imximage.bbclass
+++ b/classes/kernel-imximage.bbclass
@@ -17,7 +17,7 @@
#
# Copyright 2017 (C) O.S. Systems Software LTDA.

-DEPENDS_append = ' u-boot-mkimage-native'
+DEPENDS:append = ' u-boot-mkimage-native'

IMXIMAGE_ENTRYPOINT ?= "${UBOOT_ENTRYPOINT}"

@@ -55,6 +55,6 @@ gen_imximage() {
done
}

-do_deploy_append() {
+do_deploy:append() {
gen_imximage
}
diff --git a/classes/kernel-itbimage.bbclass b/classes/kernel-itbimage.bbclass
index 84262879c09b..51a87319ce94 100644
--- a/classes/kernel-itbimage.bbclass
+++ b/classes/kernel-itbimage.bbclass
@@ -459,7 +459,7 @@ addtask assemble_fitimage_initramfs before do_deploy after do_install


kernel_do_deploy[vardepsexclude] = "DATETIME"
-kernel_do_deploy_append() {
+kernel_do_deploy:append() {
# Update deploy directory
if echo ${KERNEL_IMAGETYPES} | grep -wq "itbImage"; then
cd ${B}
diff --git a/classes/mfgtool-initramfs-image.bbclass b/classes/mfgtool-initramfs-image.bbclass
index 65028b8faa88..1d4c55131d67 100644
--- a/classes/mfgtool-initramfs-image.bbclass
+++ b/classes/mfgtool-initramfs-image.bbclass
@@ -13,7 +13,7 @@ FEATURE_PACKAGES_extfs = "packagegroup-fsl-mfgtool-extfs"
FEATURE_PACKAGES_f2fs = "packagegroup-fsl-mfgtool-f2fs"

IMAGE_FSTYPES = "cpio.gz.u-boot"
-IMAGE_FSTYPES_mxs = "cpio.gz.u-boot"
+IMAGE_FSTYPES:mxs = "cpio.gz.u-boot"
IMAGE_ROOTFS_SIZE ?= "8192"

# Filesystems enabled by default
diff --git a/classes/qoriq_build_64bit_kernel.bbclass b/classes/qoriq_build_64bit_kernel.bbclass
index 93b4d412ff3c..7014be91cc1f 100644
--- a/classes/qoriq_build_64bit_kernel.bbclass
+++ b/classes/qoriq_build_64bit_kernel.bbclass
@@ -6,8 +6,8 @@ python () {
if promote_kernel == "1":
sys_multilib = 'powerpc64' + d.getVar('TARGET_VENDOR', False) + 'mllib64-' + d.getVar('HOST_OS', False)
tc_options = d.getVar('TOOLCHAIN_OPTIONS', False) + '/../lib64-' + d.getVar("MACHINE", False)
- d.setVar('DEPENDS_append', ' lib64-gcc-cross-powerpc64 lib64-libgcc')
- d.setVar('PATH_append', ':' + d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib64-gcc-cross-powerpc64 lib64-libgcc')
+ d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
d.setVar('KERNEL_CC', d.getVar('CCACHE', False) + sys_multilib + '-' + 'gcc' + d.getVar('HOST_CC_KERNEL_ARCH', False) + tc_options)
d.setVar('KERNEL_LD', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ld.bfd' + d.getVar('HOST_LD_KERNEL_ARCH', False) + tc_options)
d.setVar('KERNEL_AR', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ar' + d.getVar('HOST_AR_KERNEL_ARCH', False))
diff --git a/classes/use-imx-headers.bbclass b/classes/use-imx-headers.bbclass
index fcec68c8b3e0..b03d37413504 100644
--- a/classes/use-imx-headers.bbclass
+++ b/classes/use-imx-headers.bbclass
@@ -13,14 +13,14 @@
#
# Copyright 2018 (C) O.S. Systems Software LTDA.

-DEPENDS_append_imx = " linux-imx-headers"
+DEPENDS:append:imx = " linux-imx-headers"

# Set runtime dependency of -dev for package inheriting this class to
# linux-imx-headers-dev package. This is required in order to propagate
# headers into the SDK
RDEPENDS_${PN}-dev += "linux-imx-headers-dev"

-PACKAGE_ARCH_imx ?= "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx ?= "${MACHINE_SOCARCH}"

STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"

@@ -34,4 +34,4 @@ STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"
# Typical example here would be imx-vpu-hantro recipe, which requires NXP
# BSP and is not compatible with mainline.
COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/classes/use-imx-security-controller-firmware.bbclass b/classes/use-imx-security-controller-firmware.bbclass
index 7c79fc62bbd5..9650059b5066 100644
--- a/classes/use-imx-security-controller-firmware.bbclass
+++ b/classes/use-imx-security-controller-firmware.bbclass
@@ -18,11 +18,11 @@

SECO_FIRMWARE_NAME ?= ""

-SECO_FIRMWARE_NAME_mx8qm = "mx8qmb0-ahab-container.img"
-SECO_FIRMWARE_NAME_mx8qxp = \
+SECO_FIRMWARE_NAME:mx8qm = "mx8qmb0-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8qxp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', 'mx8qxb0-ahab-container.img', \
'mx8qxc0-ahab-container.img', d)}"
-SECO_FIRMWARE_NAME_mx8dxl = "mx8dxla1-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8dxl = "mx8dxla1-ahab-container.img"

python () {
if "mx8m" in d.getVar('MACHINEOVERRIDES').split(":"):
diff --git a/conf/layer.conf b/conf/layer.conf
index e07b65ab77f4..4487de9cc445 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "freescale-layer"
BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_freescale-layer = "5"
-LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott honister"

# Add the Freescale-specific licenses into the metadata
LICENSE_PATH += "${LAYERDIR}/custom-licenses"
diff --git a/conf/machine/imx6qdlsabreauto.conf b/conf/machine/imx6qdlsabreauto.conf
index b7aec8c257ee..0b5274cb8149 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE = " \
imx6dl-sabreauto.dtb imx6dl-sabreauto-gpmi-weim.dtb imx6dl-sabreauto-ecspi.dtb \
imx6dl-sabreauto-flexcan1.dtb imx6dl-sabreauto-enetirq.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
imx6qp-sabreauto.dtb \
imx6q-sabreauto.dtb \
imx6dl-sabreauto.dtb \
@@ -34,18 +34,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx = "mx6qsabreauto_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx = "mx6qsabreauto_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -54,6 +54,6 @@ WKS_FILE = " \

SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6qdlsabresd.conf b/conf/machine/imx6qdlsabresd.conf
index b3d09e9397cb..27a2e9d7fa7f 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -35,7 +35,7 @@ KERNEL_DEVICETREE = " \
imx6dl-sabresd-hdcp.dtb \
imx6dl-sabresd-ldo.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
imx6qp-sabresd.dtb \
imx6q-sabresd.dtb \
imx6dl-sabresd.dtb \
@@ -43,18 +43,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -63,6 +63,6 @@ WKS_FILE = " \

SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6slevk.conf b/conf/machine/imx6slevk.conf
index 1e8c403b7cde..8bef21b680b4 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -10,7 +10,7 @@ include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa9.inc

KERNEL_DEVICETREE = "imx6sl-evk.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6sl-evk-btwifi.dtb \
imx6sl-evk-csi.dtb \
imx6sl-evk-ldo.dtb \
diff --git a/conf/machine/imx6sllevk.conf b/conf/machine/imx6sllevk.conf
index 30b537f18666..6282533aa4f1 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -23,7 +23,7 @@ UBOOT_CONFIG[sd-optee] = "mx6sllevk_optee_config,sdcard"
UBOOT_CONFIG[epdc] = "mx6sllevk_epdc_config"
UBOOT_CONFIG[mfgtool] = "mx6sllevk_config"

-OPTEE_BIN_EXT_imx6sllevk = "6sllevk"
+OPTEE_BIN_EXT:imx6sllevk = "6sllevk"

SERIAL_CONSOLES = "115200;ttymxc0"

diff --git a/conf/machine/imx6sxsabreauto.conf b/conf/machine/imx6sxsabreauto.conf
index f7031ccb1134..2354635e2b33 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -10,7 +10,7 @@ require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa9.inc

KERNEL_DEVICETREE = "imx6sx-sabreauto.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sabreauto.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6sx-sabreauto.dtb"

UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_SUFFIX = "imx"
@@ -29,6 +29,6 @@ OPTEE_BIN_EXT = "6sxauto"

SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6sxsabresd.conf b/conf/machine/imx6sxsabresd.conf
index ff7d6ae62d03..fcfcbd5f41c7 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -14,7 +14,7 @@ KERNEL_DEVICETREE = " \
imx6sx-sdb-reva.dtb \
imx6sx-sdb-sai.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6sx-sdb-btwifi.dtb \
imx6sx-sdb-emmc.dtb \
imx6sx-sdb-lcdif1.dtb \
@@ -43,6 +43,6 @@ OPTEE_BIN_EXT = "6sxsdb"

SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
diff --git a/conf/machine/imx6ulevk.conf b/conf/machine/imx6ulevk.conf
index f7c5d8ae52df..6fd14456fb29 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -21,19 +21,19 @@ KERNEL_DEVICETREE = " \
imx6ul-14x14-evk-emmc.dtb \
imx6ul-14x14-evk-gpmi-weim.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6ul-14x14-evk.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6ul-14x14-evk.dtb"

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide SPL support
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
diff --git a/conf/machine/imx6ullevk.conf b/conf/machine/imx6ullevk.conf
index bd592a20bf43..f5b7309fbe6b 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -15,7 +15,7 @@ KERNEL_DEVICETREE = " \
imx6ull-14x14-evk.dtb \
"

-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ull-14x14-evk-btwifi.dtb \
imx6ull-14x14-evk-btwifi-oob.dtb \
imx6ull-14x14-evk-emmc.dtb \
diff --git a/conf/machine/imx6ulz-14x14-evk.conf b/conf/machine/imx6ulz-14x14-evk.conf
index 7b794e7ccb13..a27f1ef11277 100644
--- a/conf/machine/imx6ulz-14x14-evk.conf
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -14,7 +14,7 @@ MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
KERNEL_DEVICETREE = " \
imx6ulz-14x14-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ulz-14x14-evk-btwifi.dtb \
imx6ulz-14x14-evk-emmc.dtb \
imx6ulz-14x14-evk-gpmi-weim.dtb \
diff --git a/conf/machine/imx7dsabresd.conf b/conf/machine/imx7dsabresd.conf
index e848f294395f..860c8007f711 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -12,7 +12,7 @@ require conf/machine/include/tune-cortexa7.inc
MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"

KERNEL_DEVICETREE = "imx7d-sdb.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx7d-sdb-epdc.dtb \
imx7d-sdb-gpmi-weim.dtb \
imx7d-sdb-m4.dtb \
diff --git a/conf/machine/imx7ulpevk.conf b/conf/machine/imx7ulpevk.conf
index a587f44b388c..d685a90caca2 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -14,10 +14,10 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
KERNEL_DEVICETREE = " \
imx7ulp-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-mainline-bsp = " \
+KERNEL_DEVICETREE:append:use-mainline-bsp = " \
imx7ulp-com.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx7ulp-evk-ft5416.dtb \
imx7ulp-evk-mipi.dtb \
imx7ulp-evkb.dtb \
diff --git a/conf/machine/imx8dxl-lpddr4-evk.conf b/conf/machine/imx8dxl-lpddr4-evk.conf
index 1ea5260bb2c9..d44a4732128a 100644
--- a/conf/machine/imx8dxl-lpddr4-evk.conf
+++ b/conf/machine/imx8dxl-lpddr4-evk.conf
@@ -5,7 +5,7 @@

require conf/machine/include/imx8dxl-evk.inc
KERNEL_DEVICETREE_BASENAME = "imx8dxl-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0-tja1100.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-ddr4-evk.conf
index 3901bb92c3a0..f21cc38148b9 100644
--- a/conf/machine/imx8mm-ddr4-evk.conf
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -7,7 +7,7 @@
require include/imx8mm-evk.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
"
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf b/conf/machine/imx8mm-lpddr4-evk.conf
index 6007c5404fc1..0a85ed20ac81 100644
--- a/conf/machine/imx8mm-lpddr4-evk.conf
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mm-evk.inc

# The device tree name is implicit for LPDDR4, so can't use MACHINE here
KERNEL_DEVICETREE_BASENAME = "imx8mm-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
diff --git a/conf/machine/imx8mn-ddr4-evk.conf b/conf/machine/imx8mn-ddr4-evk.conf
index 442afdbd0547..d004d2aecb3b 100644
--- a/conf/machine/imx8mn-ddr4-evk.conf
+++ b/conf/machine/imx8mn-ddr4-evk.conf
@@ -7,7 +7,7 @@
require include/imx8mn-evk.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_ddr4_evk"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf b/conf/machine/imx8mn-lpddr4-evk.conf
index 7c58bc19f8a2..2e5e6be9aa21 100644
--- a/conf/machine/imx8mn-lpddr4-evk.conf
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mn-evk.inc

# The device tree name is implicit for LPDDR4, so can't use MACHINE here
KERNEL_DEVICETREE_BASENAME = "imx8mn-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_evk"
diff --git a/conf/machine/imx8mp-ddr4-evk.conf b/conf/machine/imx8mp-ddr4-evk.conf
index 09517769f00b..78e0c1608152 100644
--- a/conf/machine/imx8mp-ddr4-evk.conf
+++ b/conf/machine/imx8mp-ddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mp-evk.inc

# FIXME: This machine is not yet supported by u-boot-fslc, so for now
# use u-boot-imx for mainline.
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-imx"

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"

diff --git a/conf/machine/imx8mp-lpddr4-evk.conf b/conf/machine/imx8mp-lpddr4-evk.conf
index cf926c08d0a1..76a1f44990fe 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -11,7 +11,7 @@ KERNEL_DEVICETREE_BASENAME = "imx8mp-evk"

# NXP kernel has additional DTB files for various board configuration and
# derivates. Include them here for NXP BSP only
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mp-ab2.dtb \
freescale/imx8mp-evk-basler.dtb \
freescale/imx8mp-evk-basler-ov2775.dtb \
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-evk.conf
index 9907ef4b26c2..b6dcd89026bb 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -12,14 +12,14 @@ require conf/machine/include/tune-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci wifi bluetooth optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

-MACHINE_SOCARCH_FILTER_append_mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"
+MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"

KERNEL_DEVICETREE = " \
freescale/imx8mq-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mq-evk-ak4497.dtb \
freescale/imx8mq-evk-audio-tdm.dtb \
freescale/imx8mq-evk-dcss-adv7535.dtb \
@@ -40,8 +40,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
freescale/imx8mq-evk-usdhc2-m2.dtb \
"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -77,7 +77,7 @@ IMX_BOOT_SEEK = "33"
OPTEE_BIN_EXT = "8mq"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"

# Use gstreamer 1.16 from meta-freescale
PREFERRED_VERSION_gstreamer1.0 ?= "1.16.imx"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
index 5ceb6b8bb2f7..655c453f6262 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -11,7 +11,7 @@ require conf/machine/include/tune-cortexa72-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -55,8 +55,8 @@ UBOOT_MAKE_TARGET = \
SPL_BINARY = \
"${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'spl/u-boot-spl.bin', \
'', d)}"
-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -86,4 +86,4 @@ IMX_BOOT_SOC_TARGET = "iMX8QM"
BOARD_TYPE = "mek"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-mek.conf
index 5b29138fc3fd..29412cc35bc9 100644
--- a/conf/machine/imx8qxp-mek.conf
+++ b/conf/machine/imx8qxp-mek.conf
@@ -8,7 +8,7 @@ MACHINEOVERRIDES =. "mx8qxp:"
require include/imx8x-mek.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dom0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index f92a08af1c00..78f815d1310d 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -13,8 +13,8 @@ require conf/machine/include/utilities.inc
IMX_DEFAULT_BSP ?= "mainline"

# Those are SoC families we'd like to force the use of mainline BSP.
-IMX_DEFAULT_BSP_mxs ?= "mainline"
-IMX_DEFAULT_BSP_mx5 ?= "mainline"
+IMX_DEFAULT_BSP:mxs ?= "mainline"
+IMX_DEFAULT_BSP:mx5 ?= "mainline"

MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"

@@ -32,16 +32,16 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# ,----[ imx6qdlsabresd.conf ]
# | ### u-boot-fslc settings ###
# |
-# | SPL_BINARY_pn-u-boot-fslc = "SPL"
-# | UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+# | SPL_BINARY:pn-u-boot-fslc = "SPL"
+# | UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-fslc = "img"
# |
# | ### u-boot-imx settings ###
# |
# | # The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# | # variants. Change the defconfig to the targeted SoC variant.
-# | UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+# | UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-imx = "imx"
# `----
#
# As result, the 'UBOOT_SUFFIX' is dynamically set based on the preferred U-Boot
@@ -61,7 +61,7 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# | UBOOT_MACHINE = "mx53loco_config"
# `----
IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
-UBOOT_SUFFIX ?= "${UBOOT_SUFFIX_pn-${IMX_DEFAULT_BOOTLOADER}}"
+UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}"

# We need to export the original variable to allow it to be used when generating
# wic based images.
@@ -75,33 +75,33 @@ PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"

PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"

-UBOOT_ENTRYPOINT_mxs = "0x40008000"
-UBOOT_ENTRYPOINT_mx51 = "0x90008000"
-UBOOT_ENTRYPOINT_mx53 = "0x70008000"
-UBOOT_ENTRYPOINT_mx6 = "0x10008000"
-UBOOT_ENTRYPOINT_mx6sl = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sll = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ul = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ull = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ulz = "0x80008000"
-UBOOT_ENTRYPOINT_mx7 = "0x80008000"
-UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
-UBOOT_ENTRYPOINT_mx8m = "0x40480000"
-UBOOT_ENTRYPOINT_vf = "0x80008000"
+UBOOT_ENTRYPOINT:mxs = "0x40008000"
+UBOOT_ENTRYPOINT:mx51 = "0x90008000"
+UBOOT_ENTRYPOINT:mx53 = "0x70008000"
+UBOOT_ENTRYPOINT:mx6 = "0x10008000"
+UBOOT_ENTRYPOINT:mx6sl = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sll = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sx = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ul = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ull = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ulz = "0x80008000"
+UBOOT_ENTRYPOINT:mx7 = "0x80008000"
+UBOOT_ENTRYPOINT:mx7ulp = "0x60008000"
+UBOOT_ENTRYPOINT:mx8m = "0x40480000"
+UBOOT_ENTRYPOINT:vf = "0x80008000"

# Some derivates can utilize the boot container provided by U-Boot,
# below variable sets that those machines which have a imx-boot-container
# in their MACHINEOVERRIDES can inherit a imx-boot-container class
UBOOT_PROVIDES_BOOT_CONTAINER = "0"
-UBOOT_PROVIDES_BOOT_CONTAINER_imx-boot-container = "1"
+UBOOT_PROVIDES_BOOT_CONTAINER:imx-boot-container = "1"

PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER_DRIVER = "xf86-video-fbdev"
-XSERVER_DRIVER_imxgpu2d = "xf86-video-imx-vivante"
-XSERVER_DRIVER_vf = "xf86-video-modesetting"
-XSERVER_DRIVER_append_mx8 = " xf86-video-modesetting"
-XSERVER_DRIVER_use-mainline-bsp = " \
+XSERVER_DRIVER:imxgpu2d = "xf86-video-imx-vivante"
+XSERVER_DRIVER:vf = "xf86-video-modesetting"
+XSERVER_DRIVER:append:mx8 = " xf86-video-modesetting"
+XSERVER_DRIVER:use-mainline-bsp = " \
xf86-video-fbdev \
xf86-video-modesetting \
xserver-xorg-extension-glx \
@@ -118,41 +118,41 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
# ARM_INSTRUCTION_SET = "thumb"
#
# handled by software
-# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
+# DEFAULTTUNE:mx6 ?= "cortexa9t-neon"
# handled by hardware
-DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
-DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ulz ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
-DEFAULTTUNE_vf ?= "cortexa5thf-neon"
+DEFAULTTUNE:mx6 ?= "cortexa9thf-neon"
+DEFAULTTUNE:mx6ul ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ull ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ulz ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx7 ?= "cortexa7thf-neon"
+DEFAULTTUNE:vf ?= "cortexa5thf-neon"

-DEFAULTTUNE_mx8m ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8qm ?= "cortexa72-cortexa53-crypto"
-DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx8m ?= "cortexa53-crypto"
+DEFAULTTUNE:mx8qm ?= "cortexa72-cortexa53-crypto"
+DEFAULTTUNE:mx8qxp ?= "cortexa35-crypto"

INHERIT += "machine-overrides-extender"

-MACHINEOVERRIDES_EXTENDER_mx25 = "use-mainline-bsp"
-MACHINEOVERRIDES_EXTENDER_mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sx = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6sl = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sll = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp"
-MACHINEOVERRIDES_EXTENDER_mx6ull = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ulz = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7d = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7ulp = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qm = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mn = "imxdrm:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mp = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8dxl = "imxfbdev"
-
-MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
+MACHINEOVERRIDES_EXTENDER:mx25 = "use-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sx = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6sl = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sll = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ul = "imxfbdev:imxpxp"
+MACHINEOVERRIDES_EXTENDER:mx6ull = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ulz = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7d = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7ulp = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qm = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mn = "imxdrm:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mp = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8dxl = "imxfbdev"
+
+MACHINEOVERRIDES_EXTENDER_FILTER_OUT:use-mainline-bsp = " \
imx \
\
mx6 \
@@ -182,40 +182,40 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \

# Sub-architecture support
MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
-MACHINE_SOCARCH_SUFFIX_mx6sl = "-mx6sl"
-MACHINE_SOCARCH_SUFFIX_mx6sll= "-mx6sll"
-MACHINE_SOCARCH_SUFFIX_mx7d = "-mx7d"
-MACHINE_SOCARCH_SUFFIX_mx7ulp = "-mx7ulp"
-MACHINE_SOCARCH_SUFFIX_vf60 = "-vf60"
-MACHINE_SOCARCH_SUFFIX_vf50 = "-vf50"
-MACHINE_SOCARCH_SUFFIX_mx6ul = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ulz = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx8qm = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm"
-MACHINE_SOCARCH_SUFFIX_mx8mn = "-mx8mn"
-MACHINE_SOCARCH_SUFFIX_mx8mp = "-mx8mp"
-MACHINE_SOCARCH_SUFFIX_mx8mq = "-mx8m"
-MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8dxl = "-mx8dxl"
-MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
+MACHINE_SOCARCH_SUFFIX:mx6q = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6dl = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6sx = "-mx6sx"
+MACHINE_SOCARCH_SUFFIX:mx6sl = "-mx6sl"
+MACHINE_SOCARCH_SUFFIX:mx6sll= "-mx6sll"
+MACHINE_SOCARCH_SUFFIX:mx7d = "-mx7d"
+MACHINE_SOCARCH_SUFFIX:mx7ulp = "-mx7ulp"
+MACHINE_SOCARCH_SUFFIX:vf60 = "-vf60"
+MACHINE_SOCARCH_SUFFIX:vf50 = "-vf50"
+MACHINE_SOCARCH_SUFFIX:mx6ul = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ull = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ulz = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx8qm = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8mm = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX:mx8mn = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX:mx8mp = "-mx8mp"
+MACHINE_SOCARCH_SUFFIX:mx8mq = "-mx8m"
+MACHINE_SOCARCH_SUFFIX:mx8qxp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dxl = "-mx8dxl"
+MACHINE_SOCARCH_SUFFIX:use-mainline-bsp = "-imx"

MACHINE_ARCH_FILTER = "virtual/kernel"
-MACHINE_SOCARCH_FILTER_append_imx = " \
+MACHINE_SOCARCH_FILTER:append:imx = " \
alsa-lib \
gstreamer1.0 \
weston \
"
-MACHINE_SOCARCH_FILTER_append_imxvpu = " \
+MACHINE_SOCARCH_FILTER:append:imxvpu = " \
imx-codec \
imx-vpuwrap \
libimxvpuapi \
virtual/imxvpu \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu = " \
virtual/egl \
virtual/mesa \
virtual/libopenvg \
@@ -225,15 +225,15 @@ MACHINE_SOCARCH_FILTER_append_imxgpu = " \
opencv \
pango \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu2d = " \
virtual/libg2d \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu3d = " \
virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
-MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
+MACHINE_SOCARCH_FILTER:append:use-mainline-bsp = " \
virtual/egl \
virtual/libopenvg \
virtual/libg2d \
@@ -245,23 +245,23 @@ MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
pango \
qtbase \
"
-MACHINE_SOCARCH_FILTER_append_mx6q = " \
+MACHINE_SOCARCH_FILTER:append:mx6q = " \
opencl-icd-loader \
opencl-clhpp \
opencl-headers \
"
-MACHINE_SOCARCH_FILTER_append_mx8 = " \
+MACHINE_SOCARCH_FILTER:append:mx8 = " \
opencl-icd-loader \
opencl-clhpp \
opencl-headers \
"
-MACHINE_SOCARCH_FILTER_append_mx8qm = " \
+MACHINE_SOCARCH_FILTER:append:mx8qm = " \
virtual/libopenvx \
"

INHERIT += "fsl-dynamic-packagearch"

-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \
imx-gpu-viv->kernel-module-imx-gpu-viv \
libimxvpuapi->virtual/imxvpu \
imx-vpuwrap->virtual/imxvpu \
@@ -271,44 +271,44 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \

# Firmware
MACHINE_FIRMWARE ?= ""
-MACHINE_FIRMWARE_append_mx25 = " firmware-imx-sdma-imx25"
-MACHINE_FIRMWARE_append_mx27 = " firmware-imx-vpu-imx27"
-MACHINE_FIRMWARE_append_mx7d = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-imx-sdma-imx6q"
-MACHINE_FIRMWARE_append_mx6q = " firmware-imx-vpu-imx6q"
-MACHINE_FIRMWARE_append_mx6dl = " firmware-imx-vpu-imx6d firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sl = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sll = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6ull = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx53 = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
-MACHINE_FIRMWARE_append_mx51 = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
-MACHINE_FIRMWARE_append_mx8mm = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mn = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
-MACHINE_FIRMWARE_append_mx8mq = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8qm = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+MACHINE_FIRMWARE:append:mx25 = " firmware-imx-sdma-imx25"
+MACHINE_FIRMWARE:append:mx27 = " firmware-imx-vpu-imx27"
+MACHINE_FIRMWARE:append:mx7d = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE:append:mx6q = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE:append:mx6dl = " firmware-imx-vpu-imx6d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sl = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sll = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6ull = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx53 = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
+MACHINE_FIRMWARE:append:mx51 = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
+MACHINE_FIRMWARE:append:mx8mm = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mn = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE:append:mx8mq = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8qm = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8qxp = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"

MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"

# Extra audio support
IMX_ALSA_EXTRA = ""
-IMX_ALSA_EXTRA_use-nxp-bsp = "imx-alsa-plugins"
-MACHINE_EXTRA_RRECOMMENDS_append_mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+IMX_ALSA_EXTRA:use-nxp-bsp = "imx-alsa-plugins"
+MACHINE_EXTRA_RRECOMMENDS:append:mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"

# Extra Cypress Wi-Fi and BTW firmware (Murata)
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4339', 'linux-firmware-bcm4339', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43430', 'linux-firmware-bcm43430', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455', 'linux-firmware-bcm43455', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4339', 'linux-firmware-bcm4339', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43430', 'linux-firmware-bcm43430', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455', 'linux-firmware-bcm43455', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"

# Extra QCA Wi-Fi & BTE driver and firmware
-MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-fsl-qca6174', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-fsl-qca9377', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-fsl-qca6174', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-fsl-qca9377', '', d)}"

# Extra udev rules
MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
@@ -320,29 +320,29 @@ MACHINE_EXTRA_RRECOMMENDS += " \

# GStreamer 1.0 plugins
MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6q ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ull ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx7d ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mm ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mn ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mp ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mq ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qm ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qxp ?= "imx-gst1.0-plugin"
-
-PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.16.0"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6dl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6q ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sx ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ul ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ull ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx7d ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mn ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mq ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qxp ?= "imx-gst1.0-plugin"
+
+PREFERRED_VERSION_gstreamer1.0:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-libav:mx8 ?= "1.16.0"

# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
-SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1"
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT:imxgpu = "1"

# Handle Vivante kernel driver setting:
# 0 - machine does not have Vivante GPU driver support
@@ -355,59 +355,59 @@ PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"

-PREFERRED_PROVIDER_virtual/egl_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgl_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/egl:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgl:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles1:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles2:imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d"
-PREFERRED_PROVIDER_virtual/libg2d_imxdpu ?= "imx-dpu-g2d"
-PREFERRED_PROVIDER_opencl-clhpp_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-headers_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-icd-loader_imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libg2d:imxdpu ?= "imx-dpu-g2d"
+PREFERRED_PROVIDER_opencl-clhpp:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-headers:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-icd-loader:imxgpu ?= "imx-gpu-viv"

-PREFERRED_VERSION_weston_imx ?= "9.0.0.imx"
-PREFERRED_VERSION_weston_use-mainline-bsp = ""
+PREFERRED_VERSION_weston:imx ?= "9.0.0.imx"
+PREFERRED_VERSION_weston:use-mainline-bsp = ""

-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx6 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx7 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx8 ?= "1.20.imx"

# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx6 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx7 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx8 ?= "2.4.102.imx"

# Use i.MX optee Version
-PREFERRED_VERSION_optee-os_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-client_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-test_mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-os:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-client:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-test:mx8 ?= "3.10.0.imx"

#Use i.MX opencv Version for mx8
-PREFERRED_VERSION_opencv_mx8 ?= "4.5.2.imx"
+PREFERRED_VERSION_opencv:mx8 ?= "4.5.2.imx"

# Handle default kernel
IMX_DEFAULT_KERNEL = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx8 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7ulp = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6sll = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
+IMX_DEFAULT_KERNEL:mxs = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx5 = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx6 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx8 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7ulp = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6sll = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ul = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ull = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:use-mainline-bsp = "linux-fslc"

PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"

SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.bmap wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES:mxs = "uboot-mxsboot-sdcard wic.bmap wic.gz"

# Do not update fstab file when using wic images
WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"

OPTEE_BOOT_IMAGE = "uTee"
-OPTEE_BOOT_IMAGE_aarch64 = ""
+OPTEE_BOOT_IMAGE:aarch64 = ""

IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

@@ -419,7 +419,7 @@ IMAGE_BOOT_FILES ?= " \

### wic default support
OPTEE_WKS_FILE_DEPENDS = "optee-os"
-OPTEE_WKS_FILE_DEPENDS_aarch64 = ""
+OPTEE_WKS_FILE_DEPENDS:aarch64 = ""

WKS_FILE_DEPENDS ?= " \
virtual/bootloader \
@@ -429,8 +429,8 @@ WKS_FILE_DEPENDS ?= " \
${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"

-WKS_FILE_DEPENDS_append_mx8 = " imx-boot"
-WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8 = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8m = " imx-boot"

# We need to restrict the append so we don't add this for other i.MX SoC's.
# Derivatives that are not yet adopted the usage of boot container provided
@@ -444,15 +444,15 @@ WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
# deployment task extesion execution defined in imx-boot-container class.
# For NXP BSP: rename is done in 'imx-boot' recipe at the execution of compile
# task.
-WKS_FILE_DEPENDS_append_use-mainline-bsp_aarch64 = " \
+WKS_FILE_DEPENDS:append:use-mainline-bsp:aarch64 = " \
${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '0', 'imx-boot', '')} \
"

SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8m ?= "imx-imx-boot-bootpart.wks.in"

-SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8 ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mxs ?= "imx-uboot-mxs-bootpart.wks.in"

# Boot container built as a part of mainline U-Boot uses different WKS
# file as the entire mx8m series, as U-Boot versions later than 2021.04 are
@@ -462,19 +462,19 @@ SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
# replacement of imx-boot from NXP.
# Creation of those binary files is controlled by UBOOT_PROVIDES_BOOT_CONTAINER
# variable defined above.
-SOC_DEFAULT_WKS_FILE_imx-boot-container ?= "imx-boot-container-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:imx-boot-container ?= "imx-boot-container-bootpart.wks.in"

WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

SERIAL_CONSOLES = "115200;ttymxc0"
-SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
+SERIAL_CONSOLES:mxs = "115200;ttyAMA0"

KERNEL_IMAGETYPE = "zImage"
-KERNEL_IMAGETYPE_aarch64 = "Image"
+KERNEL_IMAGETYPE:aarch64 = "Image"

MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"

-# Add the ability to specify _imx machines
+# Add the ability to specify :imx machines
MACHINEOVERRIDES =. "imx:"

-HOSTTOOLS_NONFATAL_append_mx8 = " sha384sum"
+HOSTTOOLS_NONFATAL:append:mx8 = " sha384sum"
diff --git a/conf/machine/include/imx8dxl-evk.inc b/conf/machine/include/imx8dxl-evk.inc
index 2868b4d6c1c3..4e75f8c4bbd3 100644
--- a/conf/machine/include/imx8dxl-evk.inc
+++ b/conf/machine/include/imx8dxl-evk.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
"

diff --git a/conf/machine/include/imx8mm-evk.inc b/conf/machine/include/imx8mm-evk.inc
index f458c56de9b7..1295de1d8271 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -11,19 +11,19 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
# and pin it to NXP BSP only
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359 qca9377"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359 qca9377"

KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -51,18 +51,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Mini EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Mini EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp = "root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"

LOADADDR = ""
UBOOT_SUFFIX = "bin"
@@ -73,4 +73,4 @@ OPTEE_BIN_EXT = "8mm"
TEE_LOAD_ADDR = "0xbe000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mn-evk.inc b/conf/machine/include/imx8mn-evk.inc
index a0e39857c770..411004000b66 100644
--- a/conf/machine/include/imx8mn-evk.inc
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -8,12 +8,12 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
# NXP BSP can consume proprietary jailhouse and Broadcom drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"

KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
@@ -22,8 +22,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -52,18 +52,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Nano EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Nano EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp = "root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"

BOOT_SPACE = "65536"
LOADADDR = ""
@@ -79,4 +79,4 @@ OPTEE_BIN_EXT = "8mn"
TEE_LOAD_ADDR = "0x56000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
index d070831ff3d3..bc2c038f0076 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -8,7 +8,7 @@ MACHINE_FEATURES += "pci wifi bluetooth"
# NXP BSP can consume proprietary jailhouse and Marvell drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse mrvl8997"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse mrvl8997"

# Mainline kernel contains only one DTB file for
# imx8mpevk machine
@@ -18,8 +18,8 @@ KERNEL_DEVICETREE = " \

UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -50,18 +50,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Plus EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Plus EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp = "root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"

LOADADDR = ""
UBOOT_SUFFIX = "bin"
@@ -72,4 +72,4 @@ OPTEE_BIN_EXT = "8mp"
TEE_LOAD_ADDR = "0x56000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8x-mek.inc b/conf/machine/include/imx8x-mek.inc
index 55a28c877e60..0682fbc1be21 100644
--- a/conf/machine/include/imx8x-mek.inc
+++ b/conf/machine/include/imx8x-mek.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191-rpmsg.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsp.dtb \
@@ -71,4 +71,4 @@ IMXBOOT_TARGETS = \
BOARD_TYPE = "mek"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/qoriq-base.inc b/conf/machine/include/qoriq-base.inc
index 0a42160f0f30..9bc3ee76c756 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -9,8 +9,8 @@ PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??= "nativesdk-u-boot-tools"
PREFERRED_VERSION_testfloat = "2a"

SOC_DEFAULT_IMAGE_FSTYPES = "tar.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1043a = " wic.bz2"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1046a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1043a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1046a = " wic.bz2"
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

# Composite Image Layout (in KBytes)
@@ -31,8 +31,8 @@ IMAGE_BOOT_FILES ?= " \
"

SOC_DEFAULT_WKS_FILE ?= ""
-SOC_DEFAULT_WKS_FILE_ls1043a ?= "ls104x-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_ls1046a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1043a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1046a ?= "ls104x-uboot-bootpart.wks.in"

WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

diff --git a/conf/machine/include/utilities.inc b/conf/machine/include/utilities.inc
index f11b588bbe5d..34ce7abcb6d7 100644
--- a/conf/machine/include/utilities.inc
+++ b/conf/machine/include/utilities.inc
@@ -23,6 +23,6 @@ def make_dtb_boot_files(d):

def get_spl_binary(d):
imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER')
- spl_binary = d.getVar("SPL_BINARY_pn-%s" % imx_default_bootloader)
+ spl_binary = d.getVar("SPL_BINARY:pn-%s" % imx_default_bootloader)

return spl_binary or ""
diff --git a/conf/machine/ls1028ardb.conf b/conf/machine/ls1028ardb.conf
index 63f3802f7959..d70a5a619f9b 100644
--- a/conf/machine/ls1028ardb.conf
+++ b/conf/machine/ls1028ardb.conf
@@ -22,7 +22,7 @@ UBOOT_CONFIG[tfa-secure-boot] = "ls1028ardb_tfa_SECURE_BOOT_defconfig"
UBOOT_CONFIG[tfa] = "ls1028ardb_tfa_defconfig"

KERNEL_DEVICETREE ?= "freescale/fsl-ls1028a-rdb.dtb freescale/fsl-ls1028a-qds.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = "\
+KERNEL_DEVICETREE:append:use-nxp-bsp = "\
freescale/fsl-ls1028a-rdb-dpdk.dtb \
"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1043ardb.conf b/conf/machine/ls1043ardb.conf
index fa8ab61566c7..4ff3c0acb913 100644
--- a/conf/machine/ls1043ardb.conf
+++ b/conf/machine/ls1043ardb.conf
@@ -27,7 +27,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1043a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1043a-rdb-sdk.dtb \
freescale/fsl-ls1043a-rdb-usdpaa.dtb \
freescale/fsl-ls1043a-qds-sdk.dtb \
diff --git a/conf/machine/ls1046afrwy.conf b/conf/machine/ls1046afrwy.conf
index e6eabc0f36df..eb3c0bb6f4a5 100644
--- a/conf/machine/ls1046afrwy.conf
+++ b/conf/machine/ls1046afrwy.conf
@@ -25,7 +25,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-frwy.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-frwy-sdk.dtb \
freescale/fsl-ls1046a-frwy-usdpaa.dtb \
"
diff --git a/conf/machine/ls1046ardb.conf b/conf/machine/ls1046ardb.conf
index 97fb1e29e36a..8e815295ad4c 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-rdb-sdk.dtb \
freescale/fsl-ls1046a-rdb-usdpaa.dtb \
freescale/fsl-ls1046a-qds-sdk.dtb \
diff --git a/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend b/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend
index 10b66c0e4adc..b7bf3298f6ff 100644
--- a/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend
+++ b/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend
@@ -1,3 +1,3 @@
-do_install_append() {
+do_install:append() {
rm -f ${D}${sysconfdir}/xdg/weston/weston.ini
}
diff --git a/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc b/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc
index cdd0f08fde77..7d8065f9db46 100644
--- a/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc
+++ b/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc
@@ -1,4 +1,4 @@
-DEPENDS_append_imxvpu = " imx-vpuwrap"
+DEPENDS:append:imxvpu = " imx-vpuwrap"

# Additional imx code and patches are included in the chromium-imx git repository.
# The code below fetches this repository, copies the extra source over to the main
@@ -26,7 +26,7 @@ do_patch[prefuncs] =+ "add_chromium_imx_patches"
# * Lost context problems are not known to happen with Vivante GPUs,
# so it is safe to use ignore-lost-context
# * Proprietary codecs need to be enabled for h.264 and MP4 support
-PACKAGECONFIG_append = " ignore-lost-context proprietary-codecs"
+PACKAGECONFIG:append = " ignore-lost-context proprietary-codecs"

copy_chromium_imx_files() {
# sources in src/ are already organized in a manner
diff --git a/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend b/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
index 0b4c4861b6e3..fb90c73e1d1f 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11', \
'', d), d)} \
diff --git a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend b/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend
index afbaee4323ad..e07d0d54235a 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
cogl-pango gles2 \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'egl-wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'egl-x11', \
diff --git a/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend b/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend
index 72d991c7e590..4fc41d058011 100644
--- a/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend
+++ b/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend
@@ -1 +1 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend b/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend
index 2e648ba34914..06661133569f 100644
--- a/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend
@@ -1,4 +1,4 @@
-# Only _mx8 machine do provide virtual/libgbm required for any drm* flavour
-DRM-REMOVE_imxgpu = "drm-gl drm-gles2"
-DRM-REMOVE_imxgpu_mx8 = ""
-PACKAGECONFIG_remove = "${DRM-REMOVE}"
+# Only :mx8 machine do provide virtual/libgbm required for any drm* flavour
+DRM-REMOVE:imxgpu = "drm-gl drm-gles2"
+DRM-REMOVE:imxgpu:mx8 = ""
+PACKAGECONFIG:remove = "${DRM-REMOVE}"
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend b/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend
index 8c6138c54aae..d07f8ae14d2c 100644
--- a/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_qoriq-ppc = " file://ppc-fixplt.patch "
+SRC_URI:append:qoriq-ppc = " file://ppc-fixplt.patch "

diff --git a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
index 1793ec06fb4e..9c6be782d6d0 100644
--- a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
@@ -19,15 +19,15 @@ EXTRA_OEMAKE_virtclass-native = 'FMCHOSTMODE=1 FMD_USPACE_HEADER_PATH="${STAGING
TCLAP_HEADER_PATH="${STAGING_INCDIR}" '

EXTRA_OEMAKE_PLATFORM ?= ""
-EXTRA_OEMAKE_PLATFORM_ls1043a = "ls1043"
-EXTRA_OEMAKE_PLATFORM_ls1046a = "ls1046"
-EXTRA_OEMAKE_PLATFORM_ls1088a = "ls1088"
-EXTRA_OEMAKE_PLATFORM_p1020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p3041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p4080 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p5040 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:ls1043a = "ls1043"
+EXTRA_OEMAKE_PLATFORM:ls1046a = "ls1046"
+EXTRA_OEMAKE_PLATFORM:ls1088a = "ls1088"
+EXTRA_OEMAKE_PLATFORM:p1020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p3041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p4080 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p5040 = "p4080ds"


do_compile () {
diff --git a/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend b/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend
index f4f4350489cf..be6945744efa 100644
--- a/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend
@@ -1,8 +1,8 @@
# i.MX extra configuration
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu3d = " \
+SRC_URI:append:imxgpu3d = " \
file://0016-xserver-common-enable-iglx-module.patch \
"

-PACKAGE_ARCH_imxgpu3d = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxgpu3d = "${MACHINE_SOCARCH}"
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
index 187681a8b123..8950c151bd77 100644
--- a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/qt4:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/qt4:"

python __anonymous () {
families = ['mx6']
@@ -8,21 +8,21 @@ python __anonymous () {
d.appendVarFlag('do_configure', 'depends', ' virtual/kernel:do_shared_workdir')
}

-SRC_URI_append_imxgpu2d += " \
+SRC_URI:append:imxgpu2d += " \
file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \
file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch \
file://0003-i.MX6-force-egl-visual-ID-33.patch \
"

-DEPENDS_append_imxgpu2d = " virtual/kernel virtual/libgles2"
-QT_GLFLAGS_imxgpu2d = "-opengl es2 -openvg"
-QT_CONFIG_FLAGS_append_imxgpu2d = " -I${STAGING_KERNEL_DIR}/include/uapi \
+DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2"
+QT_GLFLAGS:imxgpu2d = "-opengl es2 -openvg"
+QT_CONFIG_FLAGS:append:imxgpu2d = " -I${STAGING_KERNEL_DIR}/include/uapi \
-I${STAGING_KERNEL_DIR}/include/ \
-DLINUX=1 -DEGL_API_FB=1 \
-DQT_QPA_EXPERIMENTAL_TOUCHEVENT=1"

# The QT_CONFIG_FLAGS can pollute *.la files with -Dxxx
-do_compile_append_mx6 () {
+do_compile:append:mx6 () {
find lib -name "*.la" | xargs -n1 sed -i 's/-D.*=1//g'
}

diff --git a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
index bf3fb66eeb72..0d5897adc7f9 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
@@ -3,35 +3,35 @@
# Copyright (C) 2016, 2017 O.S. Systems Software LTDA.
# Copyright (C) 2017-2018 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = " \
+SRC_URI:append:imxgpu = " \
file://0014-Add-IMX-GPU-support.patch \
file://0001-egl.prf-Fix-build-error-when-egl-headers-need-platfo.patch \
"

PACKAGECONFIG_GL_IMX_GPU = ""
-PACKAGECONFIG_GL_IMX_GPU_mx8 = "gbm kms"
+PACKAGECONFIG_GL_IMX_GPU:mx8 = "gbm kms"

-PACKAGECONFIG_GL_imxpxp = "gles2"
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' gl', '', d)} \
+PACKAGECONFIG_GL:imxpxp = "gles2"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' gl', '', d)} \
${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_imxgpu3d = "gles2 \
+PACKAGECONFIG_GL:imxgpu3d = "gles2 \
${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_use-mainline-bsp ?= "gles2 gbm kms"
+PACKAGECONFIG_GL:use-mainline-bsp ?= "gles2 gbm kms"

PACKAGECONFIG_PLATFORM = ""
-PACKAGECONFIG_PLATFORM_imxgpu2d = "no-opengl linuxfb"
-PACKAGECONFIG_PLATFORM_imxgpu3d = " \
+PACKAGECONFIG_PLATFORM:imxgpu2d = "no-opengl linuxfb"
+PACKAGECONFIG_PLATFORM:imxgpu3d = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', \
bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
'eglfs', d), d)}"
-PACKAGECONFIG_PLATFORM_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
+PACKAGECONFIG_PLATFORM:use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
PACKAGECONFIG += "${PACKAGECONFIG_PLATFORM}"

PACKAGECONFIG_VULKAN_IMX_GPU = ""
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8 = "vulkan"
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8mm = ""
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8 = "vulkan"
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8mm = ""
PACKAGECONFIG_VULKAN = ""
-PACKAGECONFIG_VULKAN_imxgpu = "${PACKAGECONFIG_VULKAN_IMX_GPU}"
+PACKAGECONFIG_VULKAN:imxgpu = "${PACKAGECONFIG_VULKAN_IMX_GPU}"
PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'vulkan', '${PACKAGECONFIG_VULKAN}', '', d)}"
diff --git a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
index 168db09548ab..c1594e0571b4 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
@@ -1,8 +1,8 @@
# etnaviv mesa does not have glx
-PACKAGECONFIG_remove_use-mainline-bsp = "xcomposite-glx"
+PACKAGECONFIG:remove:use-mainline-bsp = "xcomposite-glx"

-PACKAGECONFIG_remove_mx6 = "xcomposite-egl xcomposite-glx"
-PACKAGECONFIG_remove_mx7 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx6 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx7 = "xcomposite-egl xcomposite-glx"

# i.MX8 does never provide native x11, so required dependencies are not met
-PACKAGECONFIG_remove_mx8 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx8 = "xcomposite-egl xcomposite-glx"
diff --git a/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend b/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend
index c7e6d32e4213..7aecf1e466c6 100644
--- a/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend
+++ b/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend
@@ -1,9 +1,9 @@
PACKAGECONFIG_qoriq-ppc = "qemu yajl lxc test remote macvtap libvirtd netcf udev python"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_qoriq-ppc = " file://qemu.conf"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:qoriq-ppc = " file://qemu.conf"

-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
install -m 0644 ${WORKDIR}/qemu.conf ${D}${sysconfdir}/libvirt/qemu.conf
}

diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend
index 3a398b2210fc..9433130725d5 100644
--- a/recipes-bsp/alsa-state/alsa-state.bbappend
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -1,10 +1,10 @@
# Append path for freescale layer to include alsa-state asound.conf
-FILESEXTRAPATHS_prepend_mx6 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx7 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx8 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_use-mainline-bsp := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx6 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx7 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx8 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:use-mainline-bsp := "${THISDIR}/${PN}/imx:"

-PACKAGE_ARCH_mx6 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_use-mainline-bsp = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:use-mainline-bsp = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/atf/qoriq-atf_1.5.bb b/recipes-bsp/atf/qoriq-atf_1.5.bb
index 192083348ea9..b03a6bcb95f5 100644
--- a/recipes-bsp/atf/qoriq-atf_1.5.bb
+++ b/recipes-bsp/atf/qoriq-atf_1.5.bb
@@ -8,7 +8,7 @@ PV = "1.5+git${SRCPV}"
inherit deploy

DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native mbedtls rcw cst-native"
-DEPENDS_append_lx2160a = " ddr-phy"
+DEPENDS:append:lx2160a = " ddr-phy"
do_compile[depends] += "u-boot:do_deploy rcw:do_deploy uefi:do_deploy"

S = "${WORKDIR}/git"
@@ -21,12 +21,12 @@ COMPATIBLE_MACHINE = "(qoriq)"
PACKAGE_ARCH = "${MACHINE_ARCH}"

PLATFORM = "${MACHINE}"
-PLATFORM_ls1088ardb-pb = "ls1088ardb"
+PLATFORM:ls1088ardb-pb = "ls1088ardb"
PLATFORM_ADDITIONAL_TARGET ??= ""
-PLATFORM_ADDITIONAL_TARGET_ls1012afrwy = "ls1012afrwy_512mb"
+PLATFORM_ADDITIONAL_TARGET:ls1012afrwy = "ls1012afrwy_512mb"

RCW_FOLDER ?= "${MACHINE}"
-RCW_FOLDER_ls1088ardb-pb = "ls1088ardb"
+RCW_FOLDER:ls1088ardb-pb = "ls1088ardb"

# requires CROSS_COMPILE set by hand as there is no configure script
export CROSS_COMPILE="${TARGET_PREFIX}"
@@ -56,16 +56,16 @@ PACKAGECONFIG[optee] = ",,optee-os-qoriq"
uboot_boot_sec ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa-secure-boot"
uboot_boot ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa"
rcw ?= ""
-rcw_ls1012a = "_default"
+rcw:ls1012a = "_default"
rcwsec ?= "_sben"

chassistype ?= "ls2088_1088"
-chassistype_ls1012a = "ls104x_1012"
-chassistype_ls1043a = "ls104x_1012"
-chassistype_ls1046a = "ls104x_1012"
+chassistype:ls1012a = "ls104x_1012"
+chassistype:ls1043a = "ls104x_1012"
+chassistype:ls1046a = "ls104x_1012"

ddrphyopt ?= ""
-ddrphyopt_lx2160a = "fip_ddr_sec"
+ddrphyopt:lx2160a = "fip_ddr_sec"

do_configure[noexec] = "1"

diff --git a/recipes-bsp/atf/qoriq-atf_2.3.bb b/recipes-bsp/atf/qoriq-atf_2.3.bb
index aed32851bc42..2698bd32a99c 100644
--- a/recipes-bsp/atf/qoriq-atf_2.3.bb
+++ b/recipes-bsp/atf/qoriq-atf_2.3.bb
@@ -47,7 +47,7 @@ do_compile() {
if [ "${NXP_COT}" = "true" -a "${ARM_COT}" = "true" ]; then
bbfatal " \
Error!, Both ARM CoT and NXP CoT are enabled. Only one CoT is built in a yocto build, \
- Don't add nxp-cot and arm-cot into DISTRO_FEATURES_append at the same time."
+ Don't add nxp-cot and arm-cot into DISTRO_FEATURES:append at the same time."
fi

if [ "${NXP_COT}" = "true" ]; then
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
index 650c1cfded61..6ea16d5be67a 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
@@ -19,5 +19,5 @@ addtask deploy after do_install before do_build
PACKAGE_ARCH = "${MACHINE_SOCARCH}"

COMPATIBLE_MACHINE = "(mx8)"
-COMPATIBLE_MACHINE_mx8m = "(^$)"
-COMPATIBLE_MACHINE_mx8x = "(^$)"
+COMPATIBLE_MACHINE:mx8m = "(^$)"
+COMPATIBLE_MACHINE:mx8x = "(^$)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
index 8ff4a3216060..34040b287de7 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
@@ -65,7 +65,7 @@ do_install() {
# as second one, and for every file match - it creates a separate package,
# which contains only files that matches the pattern.
#
-python populate_packages_prepend() {
+python populate_packages:prepend() {
easrcdir = bb.data.expand('${nonarch_base_libdir}/firmware/imx/easrc', d)
do_split_packages(d, easrcdir, '^easrc-([^_]*).*\.bin',
output_pattern='firmware-imx-easrc-%s',
diff --git a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
index e996c62de957..fd0c2e742265 100644
--- a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
+++ b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
@@ -9,7 +9,7 @@ LICENSE = "Proprietary"
DEPENDS = "libnl zlib"

FCC_TOOLS_FOLDER ?= "qca9377_qca6174_arm32"
-FCC_TOOLS_FOLDER_aarch64 = "qca9377_qca6174_arm64"
+FCC_TOOLS_FOLDER:aarch64 = "qca9377_qca6174_arm64"

do_install() {
install -d ${D}${sbindir}/fcc_tools
@@ -17,4 +17,4 @@ do_install() {
}

COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-bsp/formfactor/formfactor_%.bbappend b/recipes-bsp/formfactor/formfactor_%.bbappend
index 15f8f4e8c2d4..83cce1310fbb 100644
--- a/recipes-bsp/formfactor/formfactor_%.bbappend
+++ b/recipes-bsp/formfactor/formfactor_%.bbappend
@@ -1,2 +1,2 @@
# Append path for i.MX custom matchconfig
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-atf/imx-atf_2.4.bb
index f4db002be302..536a0a737cab 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.4.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.4.bb
@@ -27,7 +27,7 @@ EXTRA_OEMAKE += " \

BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}"

-CFLAGS_remove_mx8mq = "-O2"
+CFLAGS:remove:mx8mq = "-O2"

do_compile() {
# Clear LDFLAGS to avoid the option -Wl recognize issue
diff --git a/recipes-bsp/imx-lib/imx-lib_git.bb b/recipes-bsp/imx-lib/imx-lib_git.bb
index c56190702be9..a296b185da94 100644
--- a/recipes-bsp/imx-lib/imx-lib_git.bb
+++ b/recipes-bsp/imx-lib/imx-lib_git.bb
@@ -20,15 +20,15 @@ S = "${WORKDIR}/git"

inherit use-imx-headers

-PLATFORM_mx6q = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6S"
-PLATFORM_mx6sll = "IMX6UL"
-PLATFORM_mx6sx = "IMX6S"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx6ull = "IMX6UL"
-PLATFORM_mx7d = "IMX7"
-PLATFORM_mx7ulp = "IMX7"
+PLATFORM:mx6q = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6S"
+PLATFORM:mx6sll = "IMX6UL"
+PLATFORM:mx6sx = "IMX6S"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx6ull = "IMX6UL"
+PLATFORM:mx7d = "IMX7"
+PLATFORM:mx7ulp = "IMX7"

PARALLEL_MAKE="-j 1"
EXTRA_OEMAKE = ""
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
index 422670bed322..484db354a75b 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
@@ -10,8 +10,8 @@ SECTION = "BSP"
inherit use-imx-security-controller-firmware

IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware imx-seco"
-IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m"
-IMX_EXTRA_FIRMWARE_mx8x = "imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8m = "firmware-imx-8m"
+IMX_EXTRA_FIRMWARE:mx8x = "imx-sc-firmware imx-seco"
DEPENDS += " \
u-boot \
${IMX_EXTRA_FIRMWARE} \
@@ -20,7 +20,7 @@ DEPENDS += " \
"
# xxd is a dependency of fspi_packer.sh
DEPENDS += "xxd-native"
-DEPENDS_append_mx8m = " u-boot-mkimage-native dtc-native"
+DEPENDS:append:mx8m = " u-boot-mkimage-native dtc-native"
BOOT_NAME = "imx-boot"
PROVIDES = "${BOOT_NAME}"

@@ -41,7 +41,7 @@ do_compile[depends] += " \
SC_FIRMWARE_NAME ?= "scfw_tcm.bin"

ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"

UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
@@ -58,20 +58,20 @@ IMXBOOT_TARGETS ?= \
'flash_multi_cores flash_dcd', d), d)}"

BOOT_STAGING = "${S}/${IMX_BOOT_SOC_TARGET}"
-BOOT_STAGING_mx8m = "${S}/iMX8M"
-BOOT_STAGING_mx8dx = "${S}/iMX8QX"
+BOOT_STAGING:mx8m = "${S}/iMX8M"
+BOOT_STAGING:mx8dx = "${S}/iMX8QX"

SOC_FAMILY = "INVALID"
-SOC_FAMILY_mx8 = "mx8"
-SOC_FAMILY_mx8m = "mx8m"
-SOC_FAMILY_mx8x = "mx8x"
+SOC_FAMILY:mx8 = "mx8"
+SOC_FAMILY:mx8m = "mx8m"
+SOC_FAMILY:mx8x = "mx8x"

REV_OPTION ?= ""
-REV_OPTION_mx8qxp = \
+REV_OPTION:mx8qxp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', '', \
'REV=C0', d)}"

-compile_mx8m() {
+compile:mx8m() {
bbnote 8MQ/8MM/8MN/8MP boot binary build
for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
bbnote "Copy ddr_firmware: ${ddr_firmware} from ${DEPLOY_DIR_IMAGE} -> ${BOOT_STAGING} "
@@ -88,7 +88,7 @@ compile_mx8m() {
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin
}
-compile_mx8() {
+compile:mx8() {
bbnote 8QM boot binary build
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
@@ -100,7 +100,7 @@ compile_mx8() {
fi
}

-compile_mx8x() {
+compile:mx8x() {
bbnote 8QX boot binary build
cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
@@ -140,7 +140,7 @@ do_install () {
done
}

-deploy_mx8m() {
+deploy:mx8m() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
${DEPLOYDIR}/${BOOT_TOOLS}
@@ -153,7 +153,7 @@ deploy_mx8m() {
install -m 0755 ${BOOT_STAGING}/mkimage_fit_atf.sh ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${BOOT_STAGING}/mkimage_uboot ${DEPLOYDIR}/${BOOT_TOOLS}
}
-deploy_mx8() {
+deploy:mx8() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
@@ -162,7 +162,7 @@ deploy_mx8() {
${DEPLOYDIR}/${BOOT_TOOLS}
fi
}
-deploy_mx8x() {
+deploy:mx8x() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
index f9943342962e..90e3ebf13ce7 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
@@ -16,12 +16,12 @@ do_compile () {
cd ${S}
oe_runmake clean
oe_runmake bin
- oe_runmake -C iMX8M -f soc.mak mkimage_imx8
+ oe_runmake -C iMX8M -f soc.mak mkimage:imx8
}

do_install () {
cd ${S}
install -d ${D}${bindir}
- install -m 0755 iMX8M/mkimage_imx8 ${D}${bindir}/mkimage_imx8m
- install -m 0755 mkimage_imx8 ${D}${bindir}/mkimage_imx8
+ install -m 0755 iMX8M/mkimage:imx8 ${D}${bindir}/mkimage_imx8m
+ install -m 0755 mkimage:imx8 ${D}${bindir}/mkimage_imx8
}
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
index b8c3d3c3cf4f..6eb65b811aa2 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
@@ -15,10 +15,10 @@ SRC_URI[sha256sum] = "df0fe17c93e4c2835542d6b1b2557524f034e378b643100cd838225e82

BOARD_TYPE ?= "mek"
SC_FIRMWARE_NAME ?= "INVALID"
-SC_FIRMWARE_NAME_mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"

symlink_name = "scfw_tcm.bin"

diff --git a/recipes-bsp/imx-test/imx-test_git.bb b/recipes-bsp/imx-test/imx-test_git.bb
index 118590d5a93b..ad072c5f4d71 100644
--- a/recipes-bsp/imx-test/imx-test_git.bb
+++ b/recipes-bsp/imx-test/imx-test_git.bb
@@ -9,9 +9,9 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-or-later;md5=fed54355545ffd980b814dab4a3b312c"

DEPENDS = "alsa-lib libdrm"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " virtual/imxvpu"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " virtual/imxvpu"

PE = "1"
PV = "7.0+${SRCPV}"
@@ -29,22 +29,22 @@ inherit module-base use-imx-headers
INHIBIT_PACKAGE_STRIP = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"

-PLATFORM_mx6q = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6SL"
-PLATFORM_mx6sll = "IMX6SL"
-PLATFORM_mx6sx = "IMX6SX"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx7d = "IMX7D"
-PLATFORM_mx7ulp = "IMX7D"
-PLATFORM_mx8 = "IMX8"
+PLATFORM:mx6q = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6SL"
+PLATFORM:mx6sll = "IMX6SL"
+PLATFORM:mx6sx = "IMX6SX"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx7d = "IMX7D"
+PLATFORM:mx7ulp = "IMX7D"
+PLATFORM:mx8 = "IMX8"

PARALLEL_MAKE = "-j 1"
EXTRA_OEMAKE += "${PACKAGECONFIG_CONFARGS}"

PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_mx8m = " swpdm"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:mx8m = " swpdm"

PACKAGECONFIG[x11] = ",,libx11 libxdamage libxrender libxrandr"
PACKAGECONFIG[vpu] = "HAS_VPU=true,HAS_VPU=false,virtual/imxvpu"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
index 88b9ee0ef218..d362fce3b83e 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cd8bc2a79509c22fc9c1782a151210b1"

DEPENDS = "imx-vpu-hantro"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

SRC_URI = " \
${FSL_MIRROR}/${BP}.tar.gz \
@@ -13,9 +13,9 @@ SRC_URI = " \
SRC_URI[md5sum] = "65417710ef22214523c37f50f34b6ab2"
SRC_URI[sha256sum] = "897d174c4c0818f31012d8a60ed51fc83fdfc55fca2d2b0fc24a0db3e9f3b6e8"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

EXTRA_OEMAKE = " \
CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
index 20ac87c747db..d2fc8a1123ac 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
@@ -14,9 +14,9 @@ inherit fsl-eula-unpack use-imx-headers

PARALLEL_MAKE="-j 1"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

EXTRA_OEMAKE = " \
CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
index ad44065ae576..36c3fee3a7a7 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
@@ -42,7 +42,7 @@ EXTRA_OECMAKE += " \
-Wno-dev \
"

-do_configure_prepend() {
+do_configure:prepend() {
export SDKTARGETSYSROOT=${STAGING_DIR_HOST}
}

diff --git a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
index 726b1e16d84e..e57a4273bd36 100644
--- a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
+++ b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
@@ -26,15 +26,15 @@ EXTRA_OECONF = "--imx-linux-headers-path=${STAGING_INCDIR_IMX} \
# libg2d. However, that implementation's g2d_alloc() function
# is broken, so we cannot use it.
LIBG2D_PACKAGECONFIG = "g2d"
-LIBG2D_PACKAGECONFIG_imxdpu = ""
+LIBG2D_PACKAGECONFIG:imxdpu = ""

PACKAGECONFIG ?= " "
-PACKAGECONFIG_append_imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
-PACKAGECONFIG_append_imxipu = " ipu"
-PACKAGECONFIG_append_imxpxp = " pxp"
-PACKAGECONFIG_append_mx8m = " ion dwl"
-PACKAGECONFIG_append_mx8qm = " ion"
-PACKAGECONFIG_append_mx8qxp = " ion"
+PACKAGECONFIG:append:imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
+PACKAGECONFIG:append:imxipu = " ipu"
+PACKAGECONFIG:append:imxpxp = " pxp"
+PACKAGECONFIG:append:mx8m = " ion dwl"
+PACKAGECONFIG:append:mx8qm = " ion"
+PACKAGECONFIG:append:mx8qxp = " ion"

HANTRO_CONF = "--hantro-headers-path=${STAGING_INCDIR}/hantro_dec --hantro-decoder-version=G2"

diff --git a/recipes-bsp/mc-utils/mc-utils_git.bb b/recipes-bsp/mc-utils/mc-utils_git.bb
index b3c79b99138e..a2f81fe0dc0a 100644
--- a/recipes-bsp/mc-utils/mc-utils_git.bb
+++ b/recipes-bsp/mc-utils/mc-utils_git.bb
@@ -15,13 +15,13 @@ SRCREV = "8e0b863693fc2ccbc62a62c79b4e3db6da88c16e"
S = "${WORKDIR}/git"

MC_CFG ?= ""
-MC_CFG_ls1088a = "ls1088a"
-MC_CFG_ls2088a = "ls2088a"
-MC_CFG_lx2160a = "lx2160a"
-MC_CFG_lx2162aqds = "lx2162aqds"
+MC_CFG:ls1088a = "ls1088a"
+MC_CFG:ls2088a = "ls2088a"
+MC_CFG:lx2160a = "lx2160a"
+MC_CFG:lx2162aqds = "lx2162aqds"

MC_FLAVOUR ?= "RDB"
-MC_FLAVOUR_lx2162a = ""
+MC_FLAVOUR:lx2162a = ""

do_compile () {
oe_runmake -C config
diff --git a/recipes-bsp/rcw/rcw_git.bb b/recipes-bsp/rcw/rcw_git.bb
index 693506157188..637035b2064c 100644
--- a/recipes-bsp/rcw/rcw_git.bb
+++ b/recipes-bsp/rcw/rcw_git.bb
@@ -17,9 +17,9 @@ export PYTHON = "${USRBINPATH}/python3"
M="${@d.getVar('MACHINE').replace('-64b','').replace('-32b','').replace('-${SITEINFO_ENDIANNESS}','')}"

BOARD_TARGETS="${M}"
-BOARD_TARGETS_ls2088ardb="${M} ${M}_rev1.1"
-BOARD_TARGETS_ls1088ardb-pb="ls1088ardb"
-BOARD_TARGETS_lx2160ardb = "${M} ${M}_rev2"
+BOARD_TARGETS:ls2088ardb="${M} ${M}_rev1.1"
+BOARD_TARGETS:ls1088ardb-pb="ls1088ardb"
+BOARD_TARGETS:lx2160ardb = "${M} ${M}_rev2"

do_compile () {
oe_runmake BOARDS="${BOARD_TARGETS}" DESTDIR=${D}/boot/rcw/
diff --git a/recipes-bsp/u-boot/libubootenv_%.bbappend b/recipes-bsp/u-boot/libubootenv_%.bbappend
index 2633c344739b..619b510e1e1c 100644
--- a/recipes-bsp/u-boot/libubootenv_%.bbappend
+++ b/recipes-bsp/u-boot/libubootenv_%.bbappend
@@ -29,8 +29,8 @@ def fixup_uboot_config_dependency(d):
# | Signed-off-by: Ming Liu <liu.ming50@...>
# | Signed-off-by: Richard Purdie <richard.purdie@...>
# `----
- ubootmachine = d.getVar("UBOOT_MACHINE_pn-%s" % imx_default_bootloader)
- ubootconfig = (d.getVar("UBOOT_CONFIG_pn-%s" % imx_default_bootloader) or "").split()
+ ubootmachine = d.getVar("UBOOT_MACHINE:pn-%s" % imx_default_bootloader)
+ ubootconfig = (d.getVar("UBOOT_CONFIG:pn-%s" % imx_default_bootloader) or "").split()

d.setVar("UBOOT_CONFIG", ubootconfig)
d.setVar("UBOOT_MACHINE", ubootmachine)
diff --git a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
index 7f02746b060f..2e79166b279a 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-fslc:"

require u-boot-fslc_${PV}.bb
require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb b/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
index 4f97c722dd6f..2e7bde3838f9 100644
--- a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
@@ -12,7 +12,7 @@ DEPENDS += "bc-native dtc-native python3-setuptools-native"

# Location known to imx-boot component, where U-Boot artifacts
# should be additionally deployed.
-# See below note above do_deploy_append_mx8m for the purpose of
+# See below note above do_deploy:append:mx8m for the purpose of
# this delopyment location
BOOT_TOOLS = "imx-boot-tools"

@@ -48,7 +48,7 @@ EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CPPFLAGS}" \
# starts to use it - below append would not be necessary.
# Once all mx8m derivatives are migrated to use the 'flash.bin' boot
# container - this append can be dropped completely.
-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
# Deploy the mkimage, u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
index 2b296c192909..af5028896a34 100644
--- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-imx:"

require u-boot-imx_${PV}.bb
require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
index 6a279a12533d..bb5809e2a179 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
@@ -7,7 +7,7 @@ require u-boot-imx-common_${PV}.inc

PROVIDES += "u-boot"

-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
# Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
index 57f2780314c8..b6eee1d931a2 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
@@ -19,14 +19,14 @@ SRCREV= "f46a944f715f284aff1d42c009680ffe0be4058f"

S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
-PV_append = "+fslgit"
+PV:append = "+fslgit"
LOCALVERSION = "+fsl"

INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = "libgcc virtual/${TARGET_PREFIX}gcc bison-native bc-native swig-native python3-native"
-DEPENDS_append_qoriq-arm64 = " dtc-native"
-DEPENDS_append_qoriq-arm = " dtc-native"
-DEPENDS_append_qoriq-ppc = " boot-format-native"
+DEPENDS:append:qoriq-arm64 = " dtc-native"
+DEPENDS:append:qoriq-arm = " dtc-native"
+DEPENDS:append:qoriq-ppc = " boot-format-native"

python () {
if d.getVar("TCMODE") == "external-fsl":
@@ -41,8 +41,8 @@ python () {
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib32-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' + d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
- d.setVar('DEPENDS_append', ' lib32-gcc-cross-powerpc lib32-libgcc')
- d.setVar('PATH_append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib32-gcc-cross-powerpc lib32-libgcc')
+ d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir + '/lib32-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'powerpc' + sys_multilib + '-')
elif "fsl-lsch2-32b:" in arch:
@@ -51,8 +51,8 @@ python () {
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib64-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' + d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
- d.setVar('DEPENDS_append', ' lib64-gcc-cross-aarch64 lib64-libgcc')
- d.setVar('PATH_append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib64-gcc-cross-aarch64 lib64-libgcc')
+ d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir + '/lib64-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'aarch64' + sys_multilib + '-')
}
@@ -66,7 +66,7 @@ EXTRA_OEMAKE = 'CROSS_COMPILE=${WRAP_TARGET_PREFIX} CC="${WRAP_TARGET_PREFIX}gcc
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE} STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'

-do_compile_append_qoriq() {
+do_compile:append:qoriq() {
unset i j k
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
diff --git a/recipes-connectivity/iproute2/iproute2_%.bbappend b/recipes-connectivity/iproute2/iproute2_%.bbappend
index 4426eca57f1a..0f9b5a87defd 100644
--- a/recipes-connectivity/iproute2/iproute2_%.bbappend
+++ b/recipes-connectivity/iproute2/iproute2_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append () {
+do_install:append () {
install -d ${D}/usr/include/tc
cp -a ${B}/include ${D}/usr/include
cp -a ${B}/tc/*.h ${D}/usr/include/tc
diff --git a/recipes-connectivity/openssl/openssl_%.bbappend b/recipes-connectivity/openssl/openssl_%.bbappend
index ce4ff276e633..e88de3618243 100644
--- a/recipes-connectivity/openssl/openssl_%.bbappend
+++ b/recipes-connectivity/openssl/openssl_%.bbappend
@@ -1,8 +1,8 @@
-FILESEXTRAPATHS_append := "${THISDIR}/${PN}-qoriq:"
+FILESEXTRAPATHS:append := "${THISDIR}/${PN}-qoriq:"

-SRC_URI_append_qoriq = " \
+SRC_URI:append:qoriq = " \
file://0001-eng_devcrypto-add-support-for-TLS-algorithms-offload.patch \
file://0002-eng_devcrypto-add-support-for-TLS1.2-algorithms-offl.patch \
"

-PACKAGECONFIG_append_qoriq = " cryptodev-linux"
+PACKAGECONFIG:append:qoriq = " cryptodev-linux"
diff --git a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
index 000578744ac2..46dfc1245600 100644
--- a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
+++ b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
@@ -1,2 +1,2 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

diff --git a/recipes-core/udev/udev-rules-qoriq.bb b/recipes-core/udev/udev-rules-qoriq.bb
index c328f4ccbd97..e39da44ce7f3 100644
--- a/recipes-core/udev/udev-rules-qoriq.bb
+++ b/recipes-core/udev/udev-rules-qoriq.bb
@@ -18,11 +18,11 @@ RULE_t1024 = "72-fsl-dpaa-persistent-networking.rules"
RULE_qoriq-arm64 = "73-fsl-dpaa-persistent-networking.rules \
73-fsl-enetc-networking.rules \
"
-RULE_ls1046a = "73-fsl-dpaa-persistent-networking.rules \
+RULE:ls1046a = "73-fsl-dpaa-persistent-networking.rules \
74-ls1046a-xfi2-networking.rules \
"
-RULE_ls1012a = ""
-RULE_ls2080a = ""
+RULE:ls1012a = ""
+RULE:ls2080a = ""

do_install () {
install -d ${D}${sysconfdir}/udev/rules.d/
diff --git a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
index dfd7fdcfcd20..fe43a5e1883e 100644
--- a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
+++ b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
@@ -32,11 +32,11 @@ python() {

RDEPENDS_${PN}_class-target += "bash"

-EXTRA_OECONF_append_class-target = " --target-list=${@get_qemu_target_list(d)}"
-EXTRA_OECONF_append_class-target_mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
-EXTRA_OECONF_append_class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target_mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
+EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"

-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)}
}

diff --git a/recipes-devtools/qemu/qemu.inc b/recipes-devtools/qemu/qemu.inc
index bf05da9a4c3a..77d067da7ab2 100644
--- a/recipes-devtools/qemu/qemu.inc
+++ b/recipes-devtools/qemu/qemu.inc
@@ -52,7 +52,7 @@ COMPATIBLE_HOST_mipsarchn64 = "null"
# upstream states qemu doesn't work without optimization
DEBUG_BUILD = "0"

-do_install_append() {
+do_install:append() {
# Prevent QA warnings about installed ${localstatedir}/run
if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi
}
@@ -101,9 +101,9 @@ export LIBTOOL="${HOST_SYS}-libtool"

B = "${WORKDIR}/build"

-EXTRA_OECONF_append = " --python=${HOSTTOOLS_DIR}/python3"
+EXTRA_OECONF:append = " --python=${HOSTTOOLS_DIR}/python3"

-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
# Append build host pkg-config paths for native target since the host may provide sdl
BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --variable pc_path pkg-config || echo "")
if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
@@ -127,7 +127,7 @@ do_install () {
# This will trigger a MMU access fault in the virtual CPU. With this change,
# the qemu-mips works fine.
# IMPORTANT: This piece needs to be removed once the root cause is fixed!
-do_install_append() {
+do_install:append() {
if [ -e "${D}/${bindir}/qemu-mips" ]; then
create_wrapper ${D}/${bindir}/qemu-mips \
QEMU_RESERVED_VA=0x0
@@ -147,8 +147,8 @@ make_qemu_wrapper() {
}

# Disable kvm/virgl/mesa on targets that do not support it
-PACKAGECONFIG_remove_darwin = "kvm virglrenderer glx gtk+"
-PACKAGECONFIG_remove_mingw32 = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:darwin = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer glx gtk+"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-ng,--disable-virtfs,libcap-ng attr,"
diff --git a/recipes-dpaa/fm-ucode/fm-ucode_git.bb b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
index 39e4f9d0febb..319a56b33568 100644
--- a/recipes-dpaa/fm-ucode/fm-ucode_git.bb
+++ b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
@@ -13,13 +13,13 @@ SRCREV = "c275e91392e2adab1ed22f3867b8269ca3c54014"
S = "${WORKDIR}/git"

REGLEX ?= "${MACHINE}"
-REGLEX_t1023 = "t1024"
-REGLEX_t1040 = "t1040"
-REGLEX_t1042 = "t1040"
-REGLEX_b4420 = "b4860"
-REGLEX_t4160 = "t4240"
-REGLEX_ls1043a = "ls1043"
-REGLEX_ls1046a = "ls1046"
+REGLEX:t1023 = "t1024"
+REGLEX:t1040 = "t1040"
+REGLEX:t1042 = "t1040"
+REGLEX:b4420 = "b4860"
+REGLEX:t4160 = "t4240"
+REGLEX:ls1043a = "ls1043"
+REGLEX:ls1046a = "ls1046"

do_install () {
UCODE=`echo ${REGLEX} | sed -e 's,-.*$,,' -e 's,[a-zA-Z]*$,,'`
diff --git a/recipes-dpaa2/aiopsl/aiopsl_git.bb b/recipes-dpaa2/aiopsl/aiopsl_git.bb
index a1b0028938e5..794d013c5c2b 100644
--- a/recipes-dpaa2/aiopsl/aiopsl_git.bb
+++ b/recipes-dpaa2/aiopsl/aiopsl_git.bb
@@ -13,8 +13,8 @@ SRCREV = "87d83d8e99770325cc7ad9e10965c9959e7cb828"
do_configure[noexec] = "1"
do_compile[noexec] = "1"

-DEMOS_PATH_ls2088a = "LS2088A"
-DEMOS_PATH_ls1088a = "LS1088A"
+DEMOS_PATH:ls2088a = "LS2088A"
+DEMOS_PATH:ls1088a = "LS1088A"

do_install () {
install -d ${D}/usr/aiop/bin
diff --git a/recipes-dpaa2/management-complex/management-complex_10.14.1.bb b/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
index ddb305c1a36c..69804e9fa68e 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
@@ -11,10 +11,10 @@ SRCREV = "408110ee632f6291545b0b156cd74e7e3b4612cc"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

do_install () {
install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-complex_10.20.4.bb b/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
index 3e14a26eabeb..7e0059703738 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
@@ -11,10 +11,10 @@ SRCREV = "f73683596a7b72124d67b62e64f3dc2bb36b9321"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

do_install () {
install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-complex_10.24.0.bb b/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
index 17049a15e7c8..12c1a4d89dff 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
@@ -11,11 +11,11 @@ SRCREV = "324817697a4c89a9a940fb7dba1b18909913ee20"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx216xa"
-REGLEX_lx2162a = "lx216xa"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx216xa"
+REGLEX:lx2162a = "lx216xa"

do_install () {
install -d ${D}/boot
diff --git a/recipes-extended/dpdk/dpdk.inc b/recipes-extended/dpdk/dpdk.inc
index 61c02ae75f90..2d07187d14fd 100644
--- a/recipes-extended/dpdk/dpdk.inc
+++ b/recipes-extended/dpdk/dpdk.inc
@@ -3,23 +3,23 @@ HOMEPAGE = "http://dpdk.org"

RDEPENDS_${PN} += "python3-core"
DEPENDS = "virtual/kernel openssl"
-DEPENDS_append_x86-64 = " numactl"
+DEPENDS:append:x86-64 = " numactl"
do_configure[depends] += "virtual/kernel:do_shared_workdir"

inherit module

COMPATIBLE_HOST = '(aarch64|arm|i.86|x86_64).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
-COMPATIBLE_HOST_armv4 = 'null'
-COMPATIBLE_HOST_armv5 = 'null'
-COMPATIBLE_HOST_armv6 = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
+COMPATIBLE_HOST:armv4 = 'null'
+COMPATIBLE_HOST:armv5 = 'null'
+COMPATIBLE_HOST:armv6 = 'null'

COMPATIBLE_MACHINE = "(imx|qoriq)"

-DPDK_RTE_TARGET_x86-64 = "x86_64-native-linuxapp-gcc"
-DPDK_RTE_TARGET_x86 = "i686-native-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7a = "${ARCH}-armv7a-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:x86-64 = "x86_64-native-linuxapp-gcc"
+DPDK_RTE_TARGET:x86 = "i686-native-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7a = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
DPDK_RTE_TARGET ?= "${ARCH}-dpaa-linuxapp-gcc"

export RTE_TARGET = "${DPDK_RTE_TARGET}"
diff --git a/recipes-extended/dpdk/dpdk_19.11-20.12.bb b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
index 426713c2d1d7..37582124b021 100644
--- a/recipes-extended/dpdk/dpdk_19.11-20.12.bb
+++ b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
@@ -13,7 +13,7 @@ SRCREV = "7071c27f6f5aefb57de1cffab3484707b1e82e2b"

include dpdk.inc

-do_install_append () {
+do_install:append () {
# Remove the unneeded dir
rm -rf ${D}/${datadir}/${RTE_TARGET}/app
}
diff --git a/recipes-extended/jailhouse/jailhouse_0.12.bb b/recipes-extended/jailhouse/jailhouse_0.12.bb
index c49d7f5b194e..a83592d24f1f 100644
--- a/recipes-extended/jailhouse/jailhouse_0.12.bb
+++ b/recipes-extended/jailhouse/jailhouse_0.12.bb
@@ -39,9 +39,9 @@ CELLCONF_DIR ?= "${JH_DATADIR}/configs"
INMATES_DIR ?= "${JH_DATADIR}/inmates"

JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_arm ?= "${S}/ci/jailhouse-config-banana-pi.h"
+JH_CONFIG:x86 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:arm ?= "${S}/ci/jailhouse-config-banana-pi.h"

do_configure() {
if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ];
diff --git a/recipes-extended/odp/odp-counters_git.bb b/recipes-extended/odp/odp-counters_git.bb
index 860dd5faf450..9d88ea43edee 100644
--- a/recipes-extended/odp/odp-counters_git.bb
+++ b/recipes-extended/odp/odp-counters_git.bb
@@ -2,7 +2,7 @@ require odp.inc

inherit module

-do_compile_prepend () {
+do_compile:prepend () {
export KERNEL_PATH="${STAGING_KERNEL_DIR}"
export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
cd ${S}/test/debug/perf_counters
diff --git a/recipes-extended/odp/odp-module_git.bb b/recipes-extended/odp/odp-module_git.bb
index 46b896547a91..8bcdcd81573d 100644
--- a/recipes-extended/odp/odp-module_git.bb
+++ b/recipes-extended/odp/odp-module_git.bb
@@ -2,7 +2,7 @@ require odp.inc

inherit module

-do_compile_prepend () {
+do_compile:prepend () {
export KERNEL_PATH="${STAGING_KERNEL_DIR}"
export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
cd ${S}/kern
diff --git a/recipes-extended/odp/odp.inc b/recipes-extended/odp/odp.inc
index 129f77ae108b..d1e10b0f94d4 100644
--- a/recipes-extended/odp/odp.inc
+++ b/recipes-extended/odp/odp.inc
@@ -6,7 +6,7 @@ SECTION = "console/network"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=ca6103dc75397fb6bec596187d6b7829"

-FILESEXTRAPATHS_prepend := "${THISDIR}/odp:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/odp:"

SRC_URI = " \
git://source.codeaurora.org/external/qoriq/qoriq-components/odp;nobranch=1 \
diff --git a/recipes-extended/odp/odp_git.bb b/recipes-extended/odp/odp_git.bb
index 00575e24d5a8..bfe251ed6bda 100644
--- a/recipes-extended/odp/odp_git.bb
+++ b/recipes-extended/odp/odp_git.bb
@@ -9,14 +9,14 @@ DEPENDS = "openssl cunit libxml2"
RDEPENDS_${PN} = "bash libcrypto libssl odp-module odp-counters"

ODP_SOC ?= ""
-ODP_SOC_ls1043ardb = "LS1043"
-ODP_SOC_ls1046ardb = "LS1046"
+ODP_SOC:ls1043ardb = "LS1043"
+ODP_SOC:ls1046ardb = "LS1046"
ODP_PLATFORM ?= "linux-dpaa2"
ODP_BUILD_TYPE ?= "ls2088"
-ODP_BUILD_TYPE_ls1043ardb = "ls1043"
-ODP_BUILD_TYPE_ls1046ardb = "ls1046"
-ODP_BUILD_TYPE_ls2080ardb = "ls2080"
-ODP_BUILD_TYPE_ls1088ardb = "ls1088"
+ODP_BUILD_TYPE:ls1043ardb = "ls1043"
+ODP_BUILD_TYPE:ls1046ardb = "ls1046"
+ODP_BUILD_TYPE:ls2080ardb = "ls2080"
+ODP_BUILD_TYPE:ls1088ardb = "ls1088"

EXTRA_OECONF = "--with-platform=${ODP_PLATFORM} \
--enable-test-vald \
@@ -34,17 +34,17 @@ CFLAGS += "-Wno-format-truncation -Wno-maybe-uninitialized -Wno-implicit-fallthr

PACKAGECONFIG[perf] = "--enable-test-perf,,,"

-do_configure_prepend () {
+do_configure:prepend () {
export SOC=${ODP_SOC}
${S}/bootstrap
}

-do_compile_prepend () {
+do_compile:prepend () {
export SOC=${ODP_SOC}
export ARCH=${TUNE_ARCH}
}

-do_install_append () {
+do_install:append () {
install -d ${D}${includedir}/odp/kni
install -d ${D}${includedir}/odp/kern
install -d ${D}${includedir}/odp/flib/mc
diff --git a/recipes-extended/procps/procps_%.bbappend b/recipes-extended/procps/procps_%.bbappend
index face0ccc0f61..43fb349b8de2 100644
--- a/recipes-extended/procps/procps_%.bbappend
+++ b/recipes-extended/procps/procps_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
for keyword in \
net.ipv4.conf.default.rp_filter \
net.ipv4.conf.all.rp_filter \
diff --git a/recipes-extended/testfloat/testfloat_2a.bb b/recipes-extended/testfloat/testfloat_2a.bb
index 800cef3d172e..6777249f39e3 100644
--- a/recipes-extended/testfloat/testfloat_2a.bb
+++ b/recipes-extended/testfloat/testfloat_2a.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://testfloat/testfloat.txt;beginline=87;endline=95;md5=b
SRC_URI = " http://www.jhauser.us/arithmetic/TestFloat-2a.tar.Z;name=TestFloat \
http://www.jhauser.us/arithmetic/SoftFloat-2b.tar.Z;name=SoftFloat \
"
-SRC_URI_append_qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
+SRC_URI:append:qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
file://TestFloat-powerpc-E500v2-SPE-1.patch \
file://Yocto-replace-COMPILE_PREFIX-gcc.patch \
"
diff --git a/recipes-extended/tsntool/tsntool_git.bb b/recipes-extended/tsntool/tsntool_git.bb
index 8ef79d27c8bd..ea452f7c82f3 100644
--- a/recipes-extended/tsntool/tsntool_git.bb
+++ b/recipes-extended/tsntool/tsntool_git.bb
@@ -14,7 +14,7 @@ S = "${WORKDIR}/git"

do_configure[depends] += "virtual/kernel:do_shared_workdir"

-do_compile_prepend() {
+do_compile:prepend() {
mkdir -p ${S}/include/linux
cp -r ${STAGING_KERNEL_DIR}/include/uapi/linux/tsn.h ${S}/include/linux
}
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
index 4ad257ee9364..9229e26683a6 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Add packages for ISP build"
inherit packagegroup

ISP_PKGS ?= ""
-ISP_PKGS_mx8mp = " \
+ISP_PKGS:mx8mp = " \
isp-imx \
basler-camera \
basler-camera-dev \
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
index aeba762386f3..acadd526bc61 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
@@ -10,4 +10,4 @@ RDEPENDS_${PN} = " \
"

COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
index 43df5a70e670..233e3d00fa92 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
@@ -9,4 +9,4 @@ RDEPENDS_${PN} = " \
firmware-qca9377 \
"
COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-graphics/cairo/cairo_%.bbappend b/recipes-graphics/cairo/cairo_%.bbappend
index 5b1562ab8b4d..2c73c7f32f25 100644
--- a/recipes-graphics/cairo/cairo_%.bbappend
+++ b/recipes-graphics/cairo/cairo_%.bbappend
@@ -1,2 +1,2 @@
-PACKAGECONFIG_append_imxgpu3d = " egl glesv2"
-PACKAGECONFIG_remove_imxgpu3d = "opengl"
+PACKAGECONFIG:append:imxgpu3d = " egl glesv2"
+PACKAGECONFIG:remove:imxgpu3d = "opengl"
diff --git a/recipes-graphics/drm/libdrm_2.4.102.imx.bb b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
index 6935b7822b63..371d2e1775d8 100644
--- a/recipes-graphics/drm/libdrm_2.4.102.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
@@ -64,10 +64,10 @@ FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*"

BBCLASSEXTEND = "native nativesdk"

-PACKAGES_prepend_imxgpu = "${PN}-vivante "
-RRECOMMENDS_${PN}-drivers_append_imxgpu = " ${PN}-vivante"
+PACKAGES:prepend:imxgpu = "${PN}-vivante "
+RRECOMMENDS_${PN}-drivers:append:imxgpu = " ${PN}-vivante"
FILES_${PN}-vivante = "${libdir}/libdrm_vivante.so.*"
-PACKAGECONFIG_append_imxgpu = " vivante"
+PACKAGECONFIG:append:imxgpu = " vivante"
PACKAGECONFIG[vivante] = "-Dvivante=true,-Dvivante=false"

PACKAGE_ARCH = "${MACHINE_SOCARCH}"
diff --git a/recipes-graphics/gtk+/gtk+3_%.bbappend b/recipes-graphics/gtk+/gtk+3_%.bbappend
index be2bac75fbf8..2f108a274b0f 100644
--- a/recipes-graphics/gtk+/gtk+3_%.bbappend
+++ b/recipes-graphics/gtk+/gtk+3_%.bbappend
@@ -1,5 +1,5 @@
-DEPENDS_append_imxgpu2d = " virtual/egl"
+DEPENDS:append:imxgpu2d = " virtual/egl"

-PACKAGECONFIG_remove_imxgpu2d = " \
+PACKAGECONFIG:remove:imxgpu2d = " \
${@bb.utils.contains("DISTRO_FEATURES", "wayland", "x11", "", d)} \
"
diff --git a/recipes-graphics/images/core-image-weston.bbappend b/recipes-graphics/images/core-image-weston.bbappend
index 2a3cde69a8cd..77d2fe747801 100644
--- a/recipes-graphics/images/core-image-weston.bbappend
+++ b/recipes-graphics/images/core-image-weston.bbappend
@@ -1,3 +1,3 @@
# FIXME: i.MX6SL cannot use mesa for Graphics and it lacks GL support,
# so for now we skip it.
-CORE_IMAGE_BASE_INSTALL_remove_mx6sl = "clutter-1.0-examples"
+CORE_IMAGE_BASE_INSTALL:remove:mx6sl = "clutter-1.0-examples"
diff --git a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
index 65ce9cd567b4..d0ac10bdb9a2 100644
--- a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
+++ b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
@@ -11,16 +11,16 @@ S = "${WORKDIR}/git"

inherit cmake pkgconfig perlnative python3native

-PACKAGECONFIG_BACKEND_mx6 = " \
+PACKAGECONFIG_BACKEND:mx6 = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'waffle', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', \
'', d), d)} \
"
-PACKAGECONFIG_BACKEND_mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
-PACKAGECONFIG_BACKEND_mx8 = "waffle"
+PACKAGECONFIG_BACKEND:mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
+PACKAGECONFIG_BACKEND:mx8 = "waffle"

PACKAGECONFIG_GPU2D = ""
-PACKAGECONFIG_GPU2D_imxgpu2d = "vivante"
+PACKAGECONFIG_GPU2D:imxgpu2d = "vivante"

PACKAGECONFIG ??= " \
egl \
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
index 91a5542bd7a4..4c732ff2feb0 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -17,8 +17,8 @@ DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxcb libxshmfence libxxf86vm', \
'', d)} \
"
-DEPENDS_append_imxdrm = " libdrm wayland"
-DEPENDS_append_mx8 = " patchelf-native"
+DEPENDS:append:imxdrm = " libdrm wayland"
+DEPENDS:append:mx8 = " patchelf-native"

# imx-gpu-viv does not provide everything it needs to for virtual/libgl
# on x11 backend or on Wayland backend with XWayland support.
@@ -26,19 +26,19 @@ DEPENDS_append_mx8 = " patchelf-native"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}"

EXTRA_PROVIDES = ""
-EXTRA_PROVIDES_append_imxgpu3d = " \
+EXTRA_PROVIDES:append:imxgpu3d = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'virtual/libgl', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libgl', \
'', d), d)} \
virtual/libgles1 \
virtual/libgles2 \
"
-EXTRA_PROVIDES_append_mx8 = " \
+EXTRA_PROVIDES:append:mx8 = " \
virtual/libgbm \
"
PROVIDES_OPENVX = ""
-PROVIDES_OPENVX_mx8 = "virtual/libopenvx"
-PROVIDES_OPENVX_mx8mm = ""
+PROVIDES_OPENVX:mx8 = "virtual/libopenvx"
+PROVIDES_OPENVX:mx8mm = ""
PROVIDES += " \
imx-gpu-viv \
libgal-imx \
@@ -52,13 +52,13 @@ PROVIDES += " \
${EXTRA_PROVIDES} \
"

-RPROVIDES_${PN}_imxgpu3d += "imx-gpu-viv"
+RPROVIDES_${PN}:imxgpu3d += "imx-gpu-viv"

PE = "1"

inherit fsl-eula-unpack features_check

-REQUIRED_DISTRO_FEATURES_mx8 = "wayland"
+REQUIRED_DISTRO_FEATURES:mx8 = "wayland"

SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"

@@ -69,7 +69,7 @@ PACKAGECONFIG[valgrind] = ""

# Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below
IMX_PACKAGES_GBM = ""
-IMX_PACKAGES_GBM_mx8 = "libgbm-imx libgbm-imx-dev"
+IMX_PACKAGES_GBM:mx8 = "libgbm-imx libgbm-imx-dev"
PACKAGES =+ "libclc-imx libclc-imx-dev \
libgl-imx libgl-imx-dev \
libgles1-imx libgles1-imx-dev \
@@ -140,21 +140,21 @@ python __anonymous() {
}

IS_MX6SL = "0"
-IS_MX6SL_mx6sl = "1"
+IS_MX6SL:mx6sl = "1"

IS_MX8 = "0"
-IS_MX8_mx8 = "1"
+IS_MX8:mx8 = "1"

PACKAGE_FP_TYPE = "hardfp"

HAS_GBM = "false"
-HAS_GBM_mx8 = "true"
+HAS_GBM:mx8 = "true"

GLES3_HEADER_REMOVALS = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8m = "gl32.h"
-GLES3_HEADER_REMOVALS_mx8mm = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8qxp = ""
-GLES3_HEADER_REMOVALS_mx8qm = ""
+GLES3_HEADER_REMOVALS:mx8m = "gl32.h"
+GLES3_HEADER_REMOVALS:mx8mm = "gl31.h gl32.h"
+GLES3_HEADER_REMOVALS:mx8qxp = ""
+GLES3_HEADER_REMOVALS:mx8qm = ""

do_install () {
install -d ${D}${libdir}
@@ -291,9 +291,9 @@ INSANE_SKIP_libgal-imx += "build-deps"

FILES_libvsc-imx = "${libdir}/libVSC${SOLIBS}"

-FILES_libgbm-imx_mx8 = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
-FILES_libgbm-imx-dev_mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
-RDEPENDS_libgbm-imx_append_mx8 = " libdrm"
+FILES_libgbm-imx:mx8 = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
+FILES_libgbm-imx-dev:mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
+RDEPENDS_libgbm-imx:append:mx8 = " libdrm"
INSANE_SKIP_libgbm-imx += "dev-so"

FILES_libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}"
@@ -358,10 +358,10 @@ INSANE_SKIP_libgc-wayland-protocol-imx += "dev-so"
FILES_libgc-wayland-protocol-imx = "${libdir}/libgc_wayland_protocol${REALSOLIBS} ${libdir}/libgc_wayland_protocol${SOLIBS}"
FILES_libgc-wayland-protocol-imx-dev = "${libdir}/libgc_wayland_protocol${SOLIBSDEV} ${libdir}/pkgconfig/gc_wayland_protocol.pc"

-FILES_imx-gpu-viv-tools = "${bindir}/gmem_info"
+FILES:imx-gpu-viv-tools = "${bindir}/gmem_info"

-FILES_imx-gpu-viv-demos = "/opt"
-INSANE_SKIP_imx-gpu-viv-demos += "rpaths dev-deps"
+FILES:imx-gpu-viv-demos = "/opt"
+INSANE_SKIP:imx-gpu-viv-demos += "rpaths dev-deps"

FILES_libnn-imx = "${libdir}/libNN*${SOLIBS} ${libdir}/libnn*${SOLIBS} ${libdir}/libneuralnetworks${SOLIBS}"
FILES_libnn-imx-dev = "${includedir}/nnrt"
diff --git a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
index 5b82b3f4639b..71baa53d82ef 100644
--- a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
+++ b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
@@ -1,5 +1,5 @@
# Append EGL_CFLAGS to CFLAGS
-CFLAGS_append_imxgpu = " \
+CFLAGS:append:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_API_FB', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-DWL_EGL_PLATFORM', '', d)} \
"
diff --git a/recipes-graphics/libsdl2/libsdl2_%.bbappend b/recipes-graphics/libsdl2/libsdl2_%.bbappend
index 303ea63a7cf2..af9c97bb6e97 100644
--- a/recipes-graphics/libsdl2/libsdl2_%.bbappend
+++ b/recipes-graphics/libsdl2/libsdl2_%.bbappend
@@ -1,8 +1,8 @@
# what vivante driver does libsdl2 mean? Anyway it fails with missing functions as
# VIVANTE_Create VIVANTE_GLES_GetProcAddress VIVANTE_GLES_UnloadLibrary ...
-EXTRA_OECONF_append_imxgpu2d = " --disable-video-vivante"
+EXTRA_OECONF:append:imxgpu2d = " --disable-video-vivante"

-CFLAGS_append_imxgpu = " -DLINUX \
+CFLAGS:append:imxgpu = " -DLINUX \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_API_FB', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-DWL_EGL_PLATFORM', '', d)} \
"
diff --git a/recipes-graphics/mesa/mesa-demos_%.bbappend b/recipes-graphics/mesa/mesa-demos_%.bbappend
index 301f1b59f125..4b518185119b 100644
--- a/recipes-graphics/mesa/mesa-demos_%.bbappend
+++ b/recipes-graphics/mesa/mesa-demos_%.bbappend
@@ -1,26 +1,26 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = " file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
+SRC_URI:append:imxgpu = " file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
file://fix-clear-build-break.patch \
file://Add-OpenVG-demos-to-support-wayland.patch"

PACKAGECONFIG_REMOVE_IF_2D_ONLY = ""
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu2d = "gles1 gles2"
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu3d = ""
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu2d = "gles1 gles2"
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu3d = ""
PACKAGECONFIG_REMOVE_IF_GPU = ""
-PACKAGECONFIG_REMOVE_IF_GPU_imxgpu = " \
+PACKAGECONFIG_REMOVE_IF_GPU:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'glu x11', '', d)} \
"
-PACKAGECONFIG_remove = " \
+PACKAGECONFIG:remove = " \
${PACKAGECONFIG_REMOVE_IF_2D_ONLY} \
${PACKAGECONFIG_REMOVE_IF_GPU} \
"

PACKAGECONFIG_APPEND_IF_GPU = ""
-PACKAGECONFIG_APPEND_IF_GPU_imxgpu = " \
+PACKAGECONFIG_APPEND_IF_GPU:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland vg', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glut', '', d)} \
"
-PACKAGECONFIG_append = " \
+PACKAGECONFIG:append = " \
${PACKAGECONFIG_APPEND_IF_GPU} \
"
diff --git a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb b/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
index 2a32c448f436..c58c2cf30dc9 100644
--- a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
+++ b/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
@@ -12,7 +12,7 @@ SRC_URI = "\
do_configure[noexec] = "1"
do_compile[noexec] = "1"

-do_install_use-mainline-bsp() {
+do_install:use-mainline-bsp() {
# MESA global envirronment variables

# systemd
diff --git a/recipes-graphics/mesa/mesa-gl_%.bbappend b/recipes-graphics/mesa/mesa-gl_%.bbappend
index ca1c8f46d680..dafd27f0a68e 100644
--- a/recipes-graphics/mesa/mesa-gl_%.bbappend
+++ b/recipes-graphics/mesa/mesa-gl_%.bbappend
@@ -1 +1 @@
-COMPATIBLE_MACHINE_imxgpu = "(-)"
+COMPATIBLE_MACHINE:imxgpu = "(-)"
diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-graphics/mesa/mesa_%.bbappend
index 423ee63ec638..d0b55cacea4b 100644
--- a/recipes-graphics/mesa/mesa_%.bbappend
+++ b/recipes-graphics/mesa/mesa_%.bbappend
@@ -1,5 +1,5 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_use-mainline-bsp = " \
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:use-mainline-bsp = " \
file://0001-dri-add-createImageWithModifiers2-interface.patch \
file://0002-dri-add-loader_dri_create_image-helper.patch \
file://0003-loader-dri3-convert-to-loader_dri_create_image.patch \
@@ -11,11 +11,11 @@ SRC_URI_append_use-mainline-bsp = " \
file://0009-etnaviv-flush-used-render-buffers-on-context-flush-w.patch \
"

-PROVIDES_remove_imxgpu = "virtual/egl"
-PROVIDES_remove_imxgpu3d = "virtual/libgl virtual/libgles1 virtual/libgles2"
+PROVIDES:remove:imxgpu = "virtual/egl"
+PROVIDES:remove:imxgpu3d = "virtual/libgl virtual/libgles1 virtual/libgles2"

-PACKAGECONFIG_remove_imxgpu = "egl gbm"
-PACKAGECONFIG_remove_imxgpu3d = "gles"
+PACKAGECONFIG:remove:imxgpu = "egl gbm"
+PACKAGECONFIG:remove:imxgpu3d = "gles"

# FIXME: mesa should support 'x11-no-tls' option
python () {
@@ -28,13 +28,13 @@ python () {
}

# Enable Etnaviv and Freedreno support
-PACKAGECONFIG_append_use-mainline-bsp = " gallium etnaviv kmsro freedreno"
+PACKAGECONFIG:append:use-mainline-bsp = " gallium etnaviv kmsro freedreno"

# For NXP BSP, GPU drivers don't support dri
-PACKAGECONFIG_remove_imxgpu_use-nxp-bsp = "dri"
+PACKAGECONFIG:remove:imxgpu:use-nxp-bsp = "dri"

# mainline/etnaviv:
-RRECOMMENDS_${PN}-megadriver_append_use-mainline-bsp = " libdrm-etnaviv mesa-etnaviv-env"
+RRECOMMENDS_${PN}-megadriver:append:use-mainline-bsp = " libdrm-etnaviv mesa-etnaviv-env"

BACKEND = \
"${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -42,7 +42,7 @@ BACKEND = \
'fb', d), d)}"

# FIXME: Dirty hack to allow use of Vivante GPU libGL binary
-do_install_append_imxgpu3d () {
+do_install:append:imxgpu3d () {
rm -f ${D}${libdir}/libGL.* \
${D}${includedir}/GL/gl.h \
${D}${includedir}/GL/glcorearb.h \
@@ -54,6 +54,6 @@ do_install_append_imxgpu3d () {
fi
}

-do_install_append_imxgpu () {
+do_install:append:imxgpu () {
rm -rf ${D}${includedir}/KHR
}
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
index 28e1dc32fcce..1e4d181ce3e5 100644
--- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
+++ b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
@@ -1,3 +1,3 @@
# The i.MX implementation is dynamically loaded, so it requires an
# explicit runtime dependency.
-RRECOMMENDS_${PN}_append_imxgpu = " libvulkan-imx"
+RRECOMMENDS_${PN}:append:imxgpu = " libvulkan-imx"
diff --git a/recipes-graphics/waffle/waffle_%.bbappend b/recipes-graphics/waffle/waffle_%.bbappend
index 9d090bcfe2b0..380273a8c55c 100644
--- a/recipes-graphics/waffle/waffle_%.bbappend
+++ b/recipes-graphics/waffle/waffle_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

SRC_URI += " \
file://0001-meson-Add-missing-wayland-dependency-on-EGL.patch \
@@ -6,11 +6,11 @@ SRC_URI += " \
"

PACKAGECONFIG_IMXGPU_X11 = ""
-PACKAGECONFIG_IMXGPU_X11_imxgpu3d = "x11-egl glx"
+PACKAGECONFIG_IMXGPU_X11:imxgpu3d = "x11-egl glx"
PACKAGECONFIG_IMXGPU_GBM = "gbm"
-PACKAGECONFIG_IMXGPU_GBM_mx6 = ""
-PACKAGECONFIG_IMXGPU_GBM_mx7 = ""
-PACKAGECONFIG_imxgpu = " \
+PACKAGECONFIG_IMXGPU_GBM:mx6 = ""
+PACKAGECONFIG_IMXGPU_GBM:mx7 = ""
+PACKAGECONFIG:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11', '${PACKAGECONFIG_IMXGPU_X11}', \
'', d), d)} \
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend
index ebd982687b19..5710e9b5ecad 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -1,24 +1,24 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

# OpenGL is not required for parts with GPU support for 2D but not 3D
IMX_REQUIRED_DISTRO_FEATURES_REMOVE = ""
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu2d = "opengl"
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu3d = ""
-REQUIRED_DISTRO_FEATURES_remove = "${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu2d = "opengl"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu3d = ""
+REQUIRED_DISTRO_FEATURES:remove = "${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"

-SRC_URI_append_mx6sl = " file://weston.config"
+SRC_URI:append:mx6sl = " file://weston.config"

# To customize weston.ini, start by setting the desired assignment in weston.ini,
# commented out. For example:
# #xwayland=true
# Then add the assignment to INI_UNCOMMENT_ASSIGNMENTS.
-INI_UNCOMMENT_ASSIGNMENTS_append_imx = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:imx = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland=true', '', d)} \
"
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8 = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8 = " \
repaint-window=16 \
"
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8mq = " \
gbm-format=argb8888 \
\\[shell\\] \
size=1920x1080 \
@@ -27,10 +27,10 @@ INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
# FIXME: The 8QM and 8QXP SoCs have better performance without G2D so don't enable it
# Ideally, this should be seamless and Vivante ought to handle it internally and take the fastest
# rendering code.
-INI_UNCOMMENT_USE_G2D_imxgpu2d ?= "use-g2d=1"
-INI_UNCOMMENT_USE_G2D_mx8qm = ""
-INI_UNCOMMENT_USE_G2D_mx8qxp = ""
-INI_UNCOMMENT_ASSIGNMENTS_append_imxgpu2d = " \
+INI_UNCOMMENT_USE_G2D:imxgpu2d ?= "use-g2d=1"
+INI_UNCOMMENT_USE_G2D:mx8qm = ""
+INI_UNCOMMENT_USE_G2D:mx8qxp = ""
+INI_UNCOMMENT_ASSIGNMENTS:append:imxgpu2d = " \
${INI_UNCOMMENT_USE_G2D} \
"

@@ -41,7 +41,7 @@ uncomment() {
sed -i -e 's,^#'"$1"','"$1"',g' $2
}

-do_install_append() {
+do_install:append() {
if [ -f "${WORKDIR}/weston.config" ]; then
install -Dm0755 ${WORKDIR}/weston.config ${D}${sysconfdir}/default/weston
fi
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-graphics/wayland/weston_9.0.0.imx.bb
index 026f27cebe8b..16607a93c4d2 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_9.0.0.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \
"

-SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch "
+SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "

SRC_URI[sha256sum] = "5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe"

@@ -97,7 +97,7 @@ PACKAGECONFIG[shell-ivi] = "-Dshell-ivi=true,-Dshell-ivi=false"
# JPEG image loading support
PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg"

-do_install_append() {
+do_install:append() {
# Weston doesn't need the .la files to load modules, so wipe them
rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la

@@ -160,23 +160,23 @@ S = "${WORKDIR}/git"

# Disable OpenGL for parts with GPU support for 2D but not 3D
REQUIRED_DISTRO_FEATURES = "opengl"
-REQUIRED_DISTRO_FEATURES_imxgpu2d = ""
-REQUIRED_DISTRO_FEATURES_imxgpu3d = "opengl"
+REQUIRED_DISTRO_FEATURES:imxgpu2d = ""
+REQUIRED_DISTRO_FEATURES:imxgpu3d = "opengl"
PACKAGECONFIG_OPENGL = "opengl"
-PACKAGECONFIG_OPENGL_imxgpu2d = ""
-PACKAGECONFIG_OPENGL_imxgpu3d = "opengl"
+PACKAGECONFIG_OPENGL:imxgpu2d = ""
+PACKAGECONFIG_OPENGL:imxgpu3d = "opengl"

-PACKAGECONFIG_remove = "wayland x11"
-PACKAGECONFIG_append = " ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}"
+PACKAGECONFIG:remove = "wayland x11"
+PACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}"

-PACKAGECONFIG_remove_imxfbdev = "kms"
-PACKAGECONFIG_append_imxfbdev = " fbdev clients"
-PACKAGECONFIG_append_imxgpu = " imxgpu"
-PACKAGECONFIG_append_imxgpu2d = " imxg2d"
+PACKAGECONFIG:remove:imxfbdev = "kms"
+PACKAGECONFIG:append:imxfbdev = " fbdev clients"
+PACKAGECONFIG:append:imxgpu = " imxgpu"
+PACKAGECONFIG:append:imxgpu2d = " imxg2d"

# Clients support
SIMPLE_CLIENTS = "all"
-SIMPLE_CLIENTS_imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
+SIMPLE_CLIENTS:imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false,libxcursor"
PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLE_CLIENTS} -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false"
# Weston with i.MX GPU support
diff --git a/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend b/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
index a9c60f3ec4f9..d112b274a75d 100644
--- a/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
+++ b/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
@@ -1,2 +1,2 @@
# Append path for freescale layer to include bsp pointercal.xinput
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb b/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
index 069008c04479..836a16ba08cc 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
@@ -34,7 +34,7 @@ TARGET_CC_ARCH += "${LDFLAGS}"

PACKAGES =+ "xserver-xorg-extension-viv-autohdmi"

-do_install_append () {
+do_install:append () {
install -d ${D}${includedir}
cp -axr ${S}/EXA/src/vivante_gal/vivante_priv.h ${D}${includedir}
cp -axr ${S}/EXA/src/vivante_gal/vivante_gal.h ${D}${includedir}
diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
index ceb438e37115..3fe677b34770 100644
--- a/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
@@ -1,2 +1,2 @@
# Append path for freescale layer to include bsp xorg.conf
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
index 22d950c796cc..34e2ed82377b 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -1,7 +1,7 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
-SRC_URI_append_imxgpu = " \
+SRC_URI:append:use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
+SRC_URI:append:imxgpu = " \
file://0003-Remove-check-for-useSIGIO-option.patch \
file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch \
file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch \
@@ -10,7 +10,7 @@ SRC_URI_append_imxgpu = " \
"

IMX_OPENGL_PKGCONFIGS_REMOVE = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_imxdrm = "dri glx"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:imxdrm = "dri glx"
diff --git a/recipes-graphics/xwayland/xwayland_%.bbappend b/recipes-graphics/xwayland/xwayland_%.bbappend
index c26bb20d2caf..b3e79e09182f 100644
--- a/recipes-graphics/xwayland/xwayland_%.bbappend
+++ b/recipes-graphics/xwayland/xwayland_%.bbappend
@@ -1,4 +1,4 @@
IMX_OPENGL_PKGCONFIGS_REMOVE = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
diff --git a/recipes-kernel/ceetm/ceetm_git.bb b/recipes-kernel/ceetm/ceetm_git.bb
index 2e92ad49e5a4..45c3f19edc1a 100644
--- a/recipes-kernel/ceetm/ceetm_git.bb
+++ b/recipes-kernel/ceetm/ceetm_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=bac620b9883d38a84dfb73ca7122d915"

SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/ceetm;nobranch=1"
SRCREV = "6a7f2ec2091df2f4380cb8d25a36c399aed5af1b"
-SRC_URI_append = " file://0001-Makefile-update-CFLAGS.patch \
+SRC_URI:append = " file://0001-Makefile-update-CFLAGS.patch \
file://0001-use-new-api-tc_print_rate.patch \
"
DEPENDS = "iproute2"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
index feddc8faac80..36e2065db7c4 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
@@ -14,7 +14,7 @@ export KERNEL_PATH

INHIBIT_PACKAGE_STRIP = "1"

-do_compile_prepend() {
+do_compile:prepend() {
sed -i -e 's,EXTRA_CFLAGS += -I$(PWD),EXTRA_CFLAGS += -I${S},' ${S}/armodule/source/Makefile
}

diff --git a/recipes-kernel/kernel-modules/kernel-module-ipc.inc b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
index 350ba186aeb2..903c53a48731 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
@@ -11,7 +11,7 @@ SRCREV = "74d662707558290f070f9589177db730444bc435"
S = "${WORKDIR}/git"

do_configure[depends] += "virtual/kernel:do_shared_workdir"
-do_compile_prepend () {
+do_compile:prepend () {
cd ${S}/kernel
}

diff --git a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
index 0b23a47c04bb..a7b8a4e68ce7 100644
--- a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
@@ -20,4 +20,4 @@ EXTRA_OEMAKE += " \
"

COMPATIBLE_MACHINE = "(imx)"
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
index 63527d1324cc..95dd72fb894c 100644
--- a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by the Freescale Community \
that produces a Manufacturing Tool compatible Linux Kernel to be used in updater \
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
require linux-fslc-lts_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
index c155ebb969ed..09d35c9152ea 100644
--- a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
+++ b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by the Freescale Community \
that produces a Manufacturing Tool compatible Linux Kernel to be used in updater \
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
require linux-fslc_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-imx-headers_5.10.bb b/recipes-kernel/linux/linux-imx-headers_5.10.bb
index c656fa557e26..05e8b12c5bfe 100644
--- a/recipes-kernel/linux/linux-imx-headers_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-headers_5.10.bb
@@ -75,4 +75,4 @@ PACKAGE_ARCH = "${MACHINE_SOCARCH}"
# Restrict this recipe to NXP BSP only, this recipe is not compatible
# with mainline BSP
COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
index 0a9f5259ed94..311245b19b6d 100644
--- a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
@@ -5,7 +5,7 @@ SUMMARY = "Produces a Manufacturing Tool compatible Linux Kernel"
DESCRIPTION = "Linux Kernel provided and supported by Freescale that produces a \
Manufacturing Tool compatible Linux Kernel to be used in updater environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-imx:"
require linux-imx_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-qoriq.inc b/recipes-kernel/linux/linux-qoriq.inc
index 4d134b476599..2333990fb79c 100644
--- a/recipes-kernel/linux/linux-qoriq.inc
+++ b/recipes-kernel/linux/linux-qoriq.inc
@@ -7,12 +7,12 @@ LICENSE = "GPLv2"

S = "${WORKDIR}/git"

-DEPENDS_append = " libgcc"
+DEPENDS:append = " libgcc"
# not put Images into /boot of rootfs, install kernel-image if needed
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""

-KERNEL_CC_append = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_CC:append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append = " ${TOOLCHAIN_OPTIONS}"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"

ZIMAGE_BASE_NAME = "zImage-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}"
@@ -24,9 +24,9 @@ PV = "${LINUX_VERSION}+git${SRCPV}"
SCMVERSION ?= "y"
LOCALVERSION = ""
DELTA_KERNEL_DEFCONFIG ?= ""
-DELTA_KERNEL_DEFCONFIG_prepend_qoriq-arm64 = "lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_fsl-lsch2-32b = "multi_v7_lpae.config multi_v8.config lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_ls102xa = "multi_v7_lpae.config lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:qoriq-arm64 = "lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:fsl-lsch2-32b = "multi_v7_lpae.config multi_v8.config lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:ls102xa = "multi_v7_lpae.config lsdk.config "

do_merge_delta_config[depends] += "virtual/${TARGET_PREFIX}gcc:do_populate_sysroot bison-native:do_populate_sysroot"
do_merge_delta_config[dirs] = "${B}"
@@ -56,11 +56,11 @@ do_merge_delta_config() {
addtask merge_delta_config before do_kernel_localversion after do_patch

# The link of dts folder is needed for 32b compile of aarch64 targets(e.g. ls1043ardb-32b)
-do_compile_prepend_fsl-lsch2-32b() {
+do_compile:prepend:fsl-lsch2-32b() {
ln -sfT ${STAGING_KERNEL_DIR}/arch/arm64/boot/dts/freescale ${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
}

-do_install_prepend_fsl-lsch2-32b() {
+do_install:prepend:fsl-lsch2-32b() {
rm -f ${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
}

diff --git a/recipes-multimedia/alsa/alsa-lib_%.bbappend b/recipes-multimedia/alsa/alsa-lib_%.bbappend
index 80c11f33204f..d76c45d1e162 100644
--- a/recipes-multimedia/alsa/alsa-lib_%.bbappend
+++ b/recipes-multimedia/alsa/alsa-lib_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

IMX_PATCH = " \
file://0001-add-conf-for-multichannel-support-in-imx.patch \
@@ -6,6 +6,6 @@ IMX_PATCH = " \
file://0005-add-ak4458-conf-for-multichannel-support.patch \
file://0006-add-conf-for-iMX-XCVR-sound-card.patch \
"
-SRC_URI_append_imx = "${IMX_PATCH}"
+SRC_URI:append:imx = "${IMX_PATCH}"

-PACKAGE_ARCH_imx = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx = "${MACHINE_SOCARCH}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
index 3f1ec99d9560..cf640e13779e 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
@@ -50,8 +50,8 @@ LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
--cross-prefix='${HOST_PREFIX}'"

# Disable assembly optimizations for X32, as this libav lacks the support
-PACKAGECONFIG_remove_linux-gnux32 = "yasm"
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG_append_linux-gnux32 = " --disable-asm"
+PACKAGECONFIG:remove:linux-gnux32 = "yasm"
+LIBAV_EXTRA_CONFIGURE_COMMON_ARG:append:linux-gnux32 = " --disable-asm"

LIBAV_EXTRA_CONFIGURE_COMMON = \
'${LIBAV_EXTRA_CONFIGURE}="${LIBAV_EXTRA_CONFIGURE_COMMON_ARG}"'
@@ -63,8 +63,8 @@ FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"

# http://errors.yoctoproject.org/Errors/Details/20493/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

# ffmpeg/libav disables PIC on some platforms (e.g. x86-32)
INSANE_SKIP_${PN} = "textrel"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
index 6925611ac080..376764583179 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
@@ -1,14 +1,14 @@
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc

-DEPENDS_append_imxgpu2d = " virtual/libg2d"
-DEPENDS_append_mx8 = " libdrm"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"
+DEPENDS:append:mx8 = " libdrm"

-PACKAGECONFIG_append_mx8 = " kms"
+PACKAGECONFIG:append:mx8 = " kms"

DEFAULT_PREFERENCE = "-1"

-PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxpxp = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"

GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https"
SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
@@ -37,7 +37,7 @@ DEPENDS += "gstreamer1.0-plugins-base"
inherit gobject-introspection

PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)}"
-PACKAGECONFIG_GL_imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"
+PACKAGECONFIG_GL:imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"

PACKAGECONFIG ??= " \
${GSTREAMER_ORC} \
@@ -163,8 +163,8 @@ EXTRA_OEMESON += " \

export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
index d92bdf3ca3c2..1c62f31dc227 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
@@ -1,5 +1,5 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"

# For mainline BSP we need to enable 'gbm' Window system
-PACKAGECONFIG_GL_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm', '', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm', '', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
index db0b740fa22b..01db6125d67d 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} \
S = "${WORKDIR}/git"

DEPENDS += "iso-codes util-linux zlib"
-DEPENDS_append_imxgpu2d = " virtual/libg2d"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"

inherit use-imx-headers gobject-introspection gtk-doc

diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
index 8565c6a53377..7e72cdaa2273 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
@@ -1,3 +1,3 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
-PACKAGECONFIG_GL_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
index 7c6025dd900e..439c4430f407 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
@@ -28,22 +28,22 @@ inherit pkgconfig meson use-imx-headers
# is needed to improve performance.
LIBG2D_DPU_OPTION = "-Dg2d-based-on-dpu=false"
LIBG2D_DEPENDENCIES = "virtual/libg2d"
-LIBG2D_DPU_OPTION_imxdpu = "-Dg2d-based-on-dpu=true"
-LIBG2D_DEPENDENCIES_imxdpu = "virtual/libg2d libdrm"
+LIBG2D_DPU_OPTION:imxdpu = "-Dg2d-based-on-dpu=true"
+LIBG2D_DEPENDENCIES:imxdpu = "virtual/libg2d libdrm"

EXTRA_OEMESON += "-Dimx-headers-path=${STAGING_INCDIR_IMX}"

PACKAGECONFIG ?= "uniaudiodec"
-PACKAGECONFIG_append_imxgpu2d = " g2d"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_imxipu = " ipu"
-PACKAGECONFIG_append_imxpxp = " pxp"
+PACKAGECONFIG:append:imxgpu2d = " g2d"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:imxipu = " ipu"
+PACKAGECONFIG:append:imxpxp = " pxp"
# The custom imxv4l2 elements are only available on the i.MX6.
# The 2D blitter sinks require an MXC framebuffer, which
# is not available anymore on the i.MX8 (since these SoCs
# now use KMS instead of the old Linux framebuffer).
-PACKAGECONFIG_append_mx6 = " imx2dvideosink v4l2"
-PACKAGECONFIG_append_mx7 = " imx2dvideosink"
+PACKAGECONFIG:append:mx6 = " imx2dvideosink v4l2"
+PACKAGECONFIG:append:mx7 = " imx2dvideosink"

PACKAGECONFIG[g2d] = "-Dg2d=enabled ${LIBG2D_DPU_OPTION},-Dg2d=disabled,${LIBG2D_DEPENDENCIES}"
PACKAGECONFIG[pxp] = "-Dpxp=enabled,-Dpxp=disabled,"
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
index c8bb6cd8a45a..9f58aa64d5dc 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
@@ -8,9 +8,9 @@ LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
SECTION = "multimedia"

DEPENDS = "imx-codec imx-parser gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " imx-vpuwrap libdrm"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " imx-vpuwrap libdrm"

# For backwards compatibility
RREPLACES_${PN} = "gst1.0-fsl-plugin"
@@ -31,14 +31,14 @@ S = "${WORKDIR}/git"

inherit autotools pkgconfig use-imx-headers

-PLATFORM_mx6 = "MX6"
-PLATFORM_mx6sl = "MX6SL"
-PLATFORM_mx6sx = "MX6SX"
-PLATFORM_mx6ul = "MX6UL"
-PLATFORM_mx6sll = "MX6SLL"
-PLATFORM_mx7= "MX7D"
-PLATFORM_mx7ulp= "MX7ULP"
-PLATFORM_mx8 = "MX8"
+PLATFORM:mx6 = "MX6"
+PLATFORM:mx6sl = "MX6SL"
+PLATFORM:mx6sx = "MX6SX"
+PLATFORM:mx6ul = "MX6UL"
+PLATFORM:mx6sll = "MX6SLL"
+PLATFORM:mx7= "MX7D"
+PLATFORM:mx7ulp= "MX7ULP"
+PLATFORM:mx8 = "MX8"

# Todo add a mechanism to map possible build targets
EXTRA_OECONF = "PLATFORM=${PLATFORM} \
@@ -55,7 +55,7 @@ RDEPENDS_${PN} += "imx-parser ${BEEP_RDEPENDS} gstreamer1.0-plugins-good-id3demu
# overlaysink rely on G2D,
# cannot be supported on i.MX6SLL & i.MX6UL & i.MX6ULL & i.MX7D
PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxgpu2d = "overlaysink"
+PACKAGECONFIG:imxgpu2d = "overlaysink"


# FIXME: Add all features
diff --git a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
index 76a52f26cb64..4bb76030ed62 100644
--- a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
+++ b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
@@ -21,14 +21,14 @@ EXTRA_OECONF = "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8
bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '--enable-fhw', '', d), d)}"

PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxvpu = "vpu"
+PACKAGECONFIG:imxvpu = "vpu"

# We need to ensure we don't have '-src' package overrided
PACKAGE_DEBUG_SPLIT_STYLE = 'debug-without-src'

PACKAGECONFIG[vpu] = "--enable-vpu,--disable-vpu,virtual/imxvpu"

-do_install_append() {
+do_install:append() {
# LTIB move the files around or gst-fsl-plugin won't find them
for p in $(find ${D}${libdir}/imx-mm -mindepth 2 -maxdepth 2 -not -type d); do
mv $p ${D}${libdir}
@@ -85,7 +85,7 @@ python __set_metapkg_rdepends() {
codec_pkgs = oe.utils.packages_filter_out_system(d)
codec_pkgs = filter(lambda x: x not in ['imx-codec-test-bin', 'imx-codec-test-source'],
codec_pkgs)
- d.appendVar('RDEPENDS_imx-codec-meta', ' ' + ' '.join(codec_pkgs))
+ d.appendVar('RDEPENDS:imx-codec-meta', ' ' + ' '.join(codec_pkgs))
}

PACKAGESPLITFUNCS =+ "__split_libfslcodec_plugins __set_metapkg_rdepends"
diff --git a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
index 2b0282351840..f77e33f76d07 100644
--- a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
+++ b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
@@ -8,7 +8,7 @@ SECTION = "multimedia"
LIC_FILES_CHKSUM = "file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"

DEPENDS = "virtual/imxvpu"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

SRC_URI = "git://github.com/NXP/imx-vpuwrap.git;protocol=https;branch=${SRCBRANCH}"

@@ -19,7 +19,7 @@ S = "${WORKDIR}/git"

inherit autotools pkgconfig

-do_install_append() {
+do_install:append() {
# FIXME: Drop examples for now
rm -r ${D}${datadir}
}
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
index f66eff27568c..372d78dcb859 100644
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
+++ b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
@@ -15,10 +15,10 @@ S = "${WORKDIR}/git"

inherit waf pkgconfig use-imx-headers

-IMX_PLATFORM_mx6 = "imx6"
-IMX_PLATFORM_mx8mq = "imx8m"
-IMX_PLATFORM_mx8mm = "imx8mm"
-IMX_PLATFORM_mx8mp = "imx8mm"
+IMX_PLATFORM:mx6 = "imx6"
+IMX_PLATFORM:mx8mq = "imx8m"
+IMX_PLATFORM:mx8mm = "imx8mm"
+IMX_PLATFORM:mx8mp = "imx8mm"

EXTRA_OECONF = "--imx-platform=${IMX_PLATFORM} --libdir=${libdir} --imx-headers=${STAGING_INCDIR_IMX} --sysroot-path=${RECIPE_SYSROOT}"

diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index 78a17864724a..ae69be4c8601 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,21 +1,21 @@

-CACHED_CONFIGUREVARS_append_mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"
+CACHED_CONFIGUREVARS:append:mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}/imx:"

-SRC_URI_append_mx6 = " file://daemon.conf file://default.pa"
-SRC_URI_append_mx7 = " file://daemon.conf file://default.pa \
+SRC_URI:append:mx6 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx7 = " file://daemon.conf file://default.pa \
file://pulseaudio-remove-the-control-for-speaker-headphone-widge.patch \
"
-SRC_URI_append_mx8 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx8 = " file://daemon.conf file://default.pa"

-do_install_append() {
+do_install:append() {
if [ -e "${WORKDIR}/daemon.conf" ] && [ -e "${WORKDIR}/default.pa" ]; then
install -m 0644 ${WORKDIR}/daemon.conf ${D}${sysconfdir}/pulse/daemon.conf
install -m 0644 ${WORKDIR}/default.pa ${D}${sysconfdir}/pulse/default.pa
fi
}

-PACKAGE_ARCH_mx6 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"
diff --git a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
index 58b6b8a45b18..b2ac77483ef8 100644
--- a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
@@ -21,8 +21,8 @@ inherit python3native systemd
SYSTEMD_SERVICE_${PN} = "tee-supplicant.service"

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

EXTRA_OEMAKE = "ARCH=${OPTEE_ARCH} O=${B}"

diff --git a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
index 712b1aa69046..c0b3b7631269 100644
--- a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
@@ -22,23 +22,23 @@ inherit deploy python3native autotools

# The platform flavor corresponds to the Yocto machine without the leading 'i'.
PLATFORM_FLAVOR = "${@d.getVar('MACHINE')[1:]}"
-PLATFORM_FLAVOR_imx6qpdlsolox = "mx6qsabresd"
-PLATFORM_FLAVOR_imx6ul7d = "mx6ulevk"
-PLATFORM_FLAVOR_imx6ull14x14evk = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ull9x9evk = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ulz-14x14-evk = "mx6ulzevk"
-PLATFORM_FLAVOR_mx8mq = "mx8mqevk"
-PLATFORM_FLAVOR_mx8mm = "mx8mmevk"
-PLATFORM_FLAVOR_mx8mn = "mx8mnevk"
-PLATFORM_FLAVOR_mx8mp = "mx8mpevk"
-PLATFORM_FLAVOR_mx8qm = "mx8qmmek"
-PLATFORM_FLAVOR_mx8qxp = "mx8qxpmek"
-PLATFORM_FLAVOR_mx8dx = "mx8dxmek"
-PLATFORM_FLAVOR_mx8dxl = "mx8dxlevk"
+PLATFORM_FLAVOR:imx6qpdlsolox = "mx6qsabresd"
+PLATFORM_FLAVOR:imx6ul7d = "mx6ulevk"
+PLATFORM_FLAVOR:imx6ull14x14evk = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ull9x9evk = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ulz-14x14-evk = "mx6ulzevk"
+PLATFORM_FLAVOR:mx8mq = "mx8mqevk"
+PLATFORM_FLAVOR:mx8mm = "mx8mmevk"
+PLATFORM_FLAVOR:mx8mn = "mx8mnevk"
+PLATFORM_FLAVOR:mx8mp = "mx8mpevk"
+PLATFORM_FLAVOR:mx8qm = "mx8qmmek"
+PLATFORM_FLAVOR:mx8qxp = "mx8qxpmek"
+PLATFORM_FLAVOR:mx8dx = "mx8dxmek"
+PLATFORM_FLAVOR:mx8dxl = "mx8dxlevk"

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

# Optee-os can be built for 32 bits and 64 bits at the same time
# as long as the compilers are correctly defined.
diff --git a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
index a8a1b245e496..4a6aec56dd45 100644
--- a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
@@ -20,11 +20,11 @@ SRCREV = "0c998f42a3fb87b9f2929955cf4b0116cc515091"
inherit python3native

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

TA_DEV_KIT_DIR_arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32/"
-TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/"
+TA_DEV_KIT_DIR:aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/"

CFLAGS += "--sysroot=${STAGING_DIR_HOST}"
CXXFLAGS += "--sysroot=${STAGING_DIR_HOST}"
diff --git a/recipes-security/optee/optee-os-qoriq_3.8.0.bb b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
index b8d764ff5e12..556f13518d7e 100644
--- a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
+++ b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
@@ -19,9 +19,9 @@ SRCREV = "0cb01f7f6aee552ead49990c06f69f73f459cc65"
S = "${WORKDIR}/git"

OPTEEMACHINE ?= "${MACHINE}"
-OPTEEMACHINE_ls1088ardb-pb = "ls1088ardb"
-OPTEEMACHINE_ls1046afrwy = "ls1046ardb"
-OPTEEMACHINE_lx2162aqds = "lx2160aqds"
+OPTEEMACHINE:ls1088ardb-pb = "ls1088ardb"
+OPTEEMACHINE:ls1046afrwy = "ls1046ardb"
+OPTEEMACHINE:lx2162aqds = "lx2160aqds"

EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE} CFG_ARM64_core=y \
ARCH=arm \
@@ -31,10 +31,10 @@ EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE} CFG_ARM64_core=y \
LDFLAGS= \
LIBGCC_LOCATE_CFLAGS=--sysroot=${STAGING_DIR_HOST} \
"
-EXTRA_OEMAKE_append_lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-lx2160a-qds.dts CFG_EMBED_DT=y"
+EXTRA_OEMAKE:append:lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-lx2160a-qds.dts CFG_EMBED_DT=y"

-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

do_compile() {
unset LDFLAGS
diff --git a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch b/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
index c5a64387f525..7fdf1dd8a62b 100644
--- a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
+++ b/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
@@ -21,10 +21,10 @@ index 56ca9e310..99b7a33f6 100644

set(filter_srcs "${CMAKE_CURRENT_LIST_DIR}/src/tinyxml2/tinyxml2.cpp")
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override") # GCC
-+ ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override -Os") # GCC
+- ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override") # GCC
++ ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override -Os") # GCC
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-inconsistent-missing-override") # Clang
+ ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-inconsistent-missing-override") # Clang
endif()
--
2.28.0
diff --git a/recipes-support/opencv/opencv_4.5.2.imx.bb b/recipes-support/opencv/opencv_4.5.2.imx.bb
index a86fd3ecb3da..402eab9bb52d 100644
--- a/recipes-support/opencv/opencv_4.5.2.imx.bb
+++ b/recipes-support/opencv/opencv_4.5.2.imx.bb
@@ -11,8 +11,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"

@@ -59,7 +59,7 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \
file://0001-Make-ts-module-external.patch \
file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
"
-SRC_URI_append_riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
+SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"

S = "${WORKDIR}/git"

@@ -106,7 +106,7 @@ EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1", "", d)} \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \
"
-EXTRA_OECMAKE_append_x86 = " -DX86=ON"
+EXTRA_OECMAKE:append:x86 = " -DX86=ON"

PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
@@ -158,7 +158,7 @@ PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '
${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-${BPN}', '', d)} \
${PN}-apps"

-python populate_packages_prepend () {
+python populate_packages:prepend () {
cv_libdir = d.expand('${libdir}')
do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True)
do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
@@ -211,14 +211,14 @@ RDEPENDS_python3-opencv = "python3-core python3-numpy"

RDEPENDS_${PN}-apps = "bash"

-do_compile_prepend() {
+do_compile:prepend() {
# remove the build host info to improve reproducibility
if [ -f ${WORKDIR}/build/modules/core/version_string.inc ]; then
sed -i "s#${WORKDIR}#/workdir#g" ${WORKDIR}/build/modules/core/version_string.inc
fi
}

-do_install_append() {
+do_install:append() {
# Move Python files into correct library folder (for multilib build)
if [ "$libdir" != "/usr/lib" -a -d ${D}/usr/lib ]; then
mv ${D}/usr/lib/* ${D}/${libdir}/
@@ -245,7 +245,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRCREV_opencv = "5423d53ae0d116ee5bbe52f8b5503f0cd8586998"
OPENCV_SRC ?= "git://source.codeaurora.org/external/imx/opencv-imx.git;protocol=https"
SRCBRANCH = "4.5.2_imx"
-SRC_URI_remove = "git://github.com/opencv/opencv.git;name=opencv"
+SRC_URI:remove = "git://github.com/opencv/opencv.git;name=opencv"
SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv"

# Add opencv_extra
@@ -254,7 +254,7 @@ SRC_URI += " \
git://github.com/opencv/opencv_extra.git;destsuffix=extra;name=extra \
file://0001-Add-smaller-version-of-download_models.py.patch;patchdir=../extra \
"
-SRCREV_FORMAT_append = "_extra"
+SRCREV_FORMAT:append = "_extra"

# Add tiny-dnn
SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59"
@@ -264,25 +264,25 @@ SRC_URI += " \
file://OpenCV_DNN_examples.patch \
"

-PACKAGECONFIG_remove = "eigen"
-PACKAGECONFIG_append_mx8 = " dnn text"
+PACKAGECONFIG:remove = "eigen"
+PACKAGECONFIG:append:mx8 = " dnn text"
PACKAGECONFIG_OPENCL = ""
-PACKAGECONFIG_OPENCL_mx8 = "opencl"
-PACKAGECONFIG_OPENCL_mx8dxl = ""
-PACKAGECONFIG_OPENCL_mx8mm = ""
-PACKAGECONFIG_OPENCL_mx8mnlite = ""
-PACKAGECONFIG_append = " ${PACKAGECONFIG_OPENCL}"
+PACKAGECONFIG_OPENCL:mx8 = "opencl"
+PACKAGECONFIG_OPENCL:mx8dxl = ""
+PACKAGECONFIG_OPENCL:mx8mm = ""
+PACKAGECONFIG_OPENCL:mx8mnlite = ""
+PACKAGECONFIG:append = " ${PACKAGECONFIG_OPENCL}"

PACKAGECONFIG[openvx] = "-DWITH_OPENVX=ON -DOPENVX_ROOT=${STAGING_LIBDIR} -DOPENVX_LIB_CANDIDATES='OpenVX;OpenVXU',-DWITH_OPENVX=OFF,virtual/libopenvx,"
PACKAGECONFIG[qt5] = "-DWITH_QT=ON -DOE_QMAKE_PATH_EXTERNAL_HOST_BINS=${STAGING_BINDIR_NATIVE} -DCMAKE_PREFIX_PATH=${STAGING_BINDIR_NATIVE}/cmake,-DWITH_QT=OFF,qtbase qtbase-native,"
PACKAGECONFIG[tests-imx] = "-DINSTALL_TESTS=ON -DOPENCV_TEST_DATA_PATH=${S}/../extra/testdata, -DINSTALL_TESTS=OFF,"

-do_unpack_extra_append() {
+do_unpack_extra:append() {
mkdir -p ${S}/3rdparty/tinydnn/
tar xzf ${WORKDIR}/v1.0.0a3.tar.gz -C ${S}/3rdparty/tinydnn/
}

-do_install_append() {
+do_install:append() {
ln -sf opencv4/opencv2 ${D}${includedir}/opencv2
install -d ${D}${datadir}/OpenCV/samples/data
cp -r ${S}/samples/data/* ${D}${datadir}/OpenCV/samples/data
--
2.31.1


Otavio Salvador
 

Hello,

We have an onging PR for it; please try it out.

Em sáb., 7 de ago. de 2021 às 04:09, Thomas Perrot
<thomas.perrot@...> escreveu:


Signed-off-by: Thomas Perrot <thomas.perrot@...>
---
classes/fsl-eula-unpack.bbclass | 4 +-
classes/fsl-u-boot-localversion.bbclass | 2 +-
.../fsl-vivante-kernel-driver-handler.bbclass | 2 +-
classes/image_types_fsl.bbclass | 2 +-
classes/imx-boot-container.bbclass | 4 +-
classes/kernel-imximage.bbclass | 4 +-
classes/kernel-itbimage.bbclass | 2 +-
classes/mfgtool-initramfs-image.bbclass | 2 +-
classes/qoriq_build_64bit_kernel.bbclass | 4 +-
classes/use-imx-headers.bbclass | 6 +-
...e-imx-security-controller-firmware.bbclass | 6 +-
conf/layer.conf | 2 +-
conf/machine/imx6qdlsabreauto.conf | 18 +-
conf/machine/imx6qdlsabresd.conf | 18 +-
conf/machine/imx6slevk.conf | 2 +-
conf/machine/imx6sllevk.conf | 2 +-
conf/machine/imx6sxsabreauto.conf | 4 +-
conf/machine/imx6sxsabresd.conf | 4 +-
conf/machine/imx6ulevk.conf | 12 +-
conf/machine/imx6ullevk.conf | 2 +-
conf/machine/imx6ulz-14x14-evk.conf | 2 +-
conf/machine/imx7dsabresd.conf | 2 +-
conf/machine/imx7ulpevk.conf | 4 +-
conf/machine/imx8dxl-lpddr4-evk.conf | 2 +-
conf/machine/imx8mm-ddr4-evk.conf | 2 +-
conf/machine/imx8mm-lpddr4-evk.conf | 2 +-
conf/machine/imx8mn-ddr4-evk.conf | 2 +-
conf/machine/imx8mn-lpddr4-evk.conf | 2 +-
conf/machine/imx8mp-ddr4-evk.conf | 2 +-
conf/machine/imx8mp-lpddr4-evk.conf | 2 +-
conf/machine/imx8mq-evk.conf | 12 +-
conf/machine/imx8qm-mek.conf | 8 +-
conf/machine/imx8qxp-mek.conf | 2 +-
conf/machine/include/imx-base.inc | 360 +++++++++---------
conf/machine/include/imx8dxl-evk.inc | 4 +-
conf/machine/include/imx8mm-evk.inc | 26 +-
conf/machine/include/imx8mn-evk.inc | 26 +-
conf/machine/include/imx8mp-evk.inc | 24 +-
conf/machine/include/imx8x-mek.inc | 6 +-
conf/machine/include/qoriq-base.inc | 8 +-
conf/machine/include/utilities.inc | 2 +-
conf/machine/ls1028ardb.conf | 2 +-
conf/machine/ls1043ardb.conf | 2 +-
conf/machine/ls1046afrwy.conf | 2 +-
conf/machine/ls1046ardb.conf | 2 +-
.../wayland/weston-init.bbappend | 2 +-
.../recipes-browser/chromium/chromium-imx.inc | 4 +-
.../clutter/clutter-1.0_%.bbappend | 2 +-
.../recipes-graphics/cogl/cogl-1.0_%.bbappend | 2 +-
.../wayland/weston-init.bbappend | 2 +-
.../glmark2/glmark2_%.bbappend | 8 +-
.../recipes-devtools/luajit/luajit_%.bbappend | 4 +-
.../recipes-dpaa/fmc/fmc_git.bb | 18 +-
.../xserver-common/xserver-common_%.bbappend | 6 +-
.../recipes-qt4/qt4/qt4-imx-support.inc | 12 +-
.../recipes-qt/qt5/qtbase_%.bbappend | 26 +-
.../recipes-qt/qt5/qtwayland_%.bbappend | 8 +-
.../libvirt/libvirt_%.bbappend | 6 +-
recipes-bsp/alsa-state/alsa-state.bbappend | 16 +-
recipes-bsp/atf/qoriq-atf_1.5.bb | 18 +-
recipes-bsp/atf/qoriq-atf_2.3.bb | 2 +-
.../firmware-imx/firmware-imx-8_8.12.bb | 4 +-
recipes-bsp/firmware-imx/firmware-imx_8.12.bb | 2 +-
recipes-bsp/firmware-qca/qca-tools_3.0.2.bb | 4 +-
recipes-bsp/formfactor/formfactor_%.bbappend | 2 +-
recipes-bsp/imx-atf/imx-atf_2.4.bb | 2 +-
recipes-bsp/imx-lib/imx-lib_git.bb | 18 +-
recipes-bsp/imx-mkimage/imx-boot_1.0.bb | 32 +-
recipes-bsp/imx-mkimage/imx-mkimage_git.bb | 6 +-
.../imx-sc-firmware/imx-sc-firmware_1.9.0.bb | 8 +-
recipes-bsp/imx-test/imx-test_git.bb | 28 +-
.../imx-vpu-hantro-daemon_1.0.0.bb | 8 +-
.../imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb | 6 +-
recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb | 2 +-
.../libimxdmabuffer/libimxdmabuffer_1.0.1.bb | 14 +-
recipes-bsp/mc-utils/mc-utils_git.bb | 10 +-
recipes-bsp/rcw/rcw_git.bb | 6 +-
recipes-bsp/u-boot/libubootenv_%.bbappend | 4 +-
.../u-boot/u-boot-fslc-mfgtool_2021.07.bb | 2 +-
recipes-bsp/u-boot/u-boot-fslc_2021.07.bb | 4 +-
.../u-boot/u-boot-imx-mfgtool_2021.04.bb | 2 +-
recipes-bsp/u-boot/u-boot-imx_2021.04.bb | 2 +-
recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb | 18 +-
.../iproute2/iproute2_%.bbappend | 2 +-
.../openssl/openssl_%.bbappend | 6 +-
.../init-ifupdown/init-ifupdown_%.bbappend | 2 +-
recipes-core/udev/udev-rules-qoriq.bb | 6 +-
recipes-devtools/qemu/qemu-qoriq_4.1.0.bb | 8 +-
recipes-devtools/qemu/qemu.inc | 12 +-
recipes-dpaa/fm-ucode/fm-ucode_git.bb | 14 +-
recipes-dpaa2/aiopsl/aiopsl_git.bb | 4 +-
.../management-complex_10.14.1.bb | 8 +-
.../management-complex_10.20.4.bb | 8 +-
.../management-complex_10.24.0.bb | 10 +-
recipes-extended/dpdk/dpdk.inc | 18 +-
recipes-extended/dpdk/dpdk_19.11-20.12.bb | 2 +-
recipes-extended/jailhouse/jailhouse_0.12.bb | 6 +-
recipes-extended/odp/odp-counters_git.bb | 2 +-
recipes-extended/odp/odp-module_git.bb | 2 +-
recipes-extended/odp/odp.inc | 2 +-
recipes-extended/odp/odp_git.bb | 18 +-
recipes-extended/procps/procps_%.bbappend | 2 +-
recipes-extended/testfloat/testfloat_2a.bb | 2 +-
recipes-extended/tsntool/tsntool_git.bb | 2 +-
.../packagegroups/packagegroup-fsl-isp.bb | 2 +-
.../packagegroups/packagegroup-fsl-qca6174.bb | 2 +-
.../packagegroups/packagegroup-fsl-qca9377.bb | 2 +-
recipes-graphics/cairo/cairo_%.bbappend | 4 +-
recipes-graphics/drm/libdrm_2.4.102.imx.bb | 6 +-
recipes-graphics/gtk+/gtk+3_%.bbappend | 4 +-
.../images/core-image-weston.bbappend | 2 +-
.../imx-gpu-apitrace_9.0.0.bb | 8 +-
.../imx-gpu-viv/imx-gpu-viv-6.inc | 44 +--
.../libepoxy/libepoxy_1.5.%.bbappend | 2 +-
recipes-graphics/libsdl2/libsdl2_%.bbappend | 4 +-
recipes-graphics/mesa/mesa-demos_%.bbappend | 16 +-
recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb | 2 +-
recipes-graphics/mesa/mesa-gl_%.bbappend | 2 +-
recipes-graphics/mesa/mesa_%.bbappend | 22 +-
.../vulkan/vulkan-loader_%.bbappend | 2 +-
recipes-graphics/waffle/waffle_%.bbappend | 10 +-
recipes-graphics/wayland/weston-init.bbappend | 26 +-
recipes-graphics/wayland/weston_9.0.0.imx.bb | 26 +-
.../pointercal-xinput_%.bbappend | 2 +-
.../xf86-video-imx-vivante_6.4.0.p0.0.bb | 2 +-
.../xserver-xf86-config_%.bbappend | 2 +-
.../xorg-xserver/xserver-xorg_%.bbappend | 14 +-
recipes-graphics/xwayland/xwayland_%.bbappend | 6 +-
recipes-kernel/ceetm/ceetm_git.bb | 2 +-
.../kernel-modules/kernel-module-ar_git.bb | 2 +-
.../kernel-modules/kernel-module-ipc.inc | 2 +-
.../kernel-module-qcacld-lea.inc | 2 +-
.../linux/linux-fslc-lts-mfgtool_5.10.bb | 2 +-
.../linux/linux-fslc-mfgtool_5.12.bb | 2 +-
.../linux/linux-imx-headers_5.10.bb | 2 +-
.../linux/linux-imx-mfgtool_5.10.bb | 2 +-
recipes-kernel/linux/linux-qoriq.inc | 16 +-
recipes-multimedia/alsa/alsa-lib_%.bbappend | 6 +-
.../gstreamer/gstreamer1.0-libav_1.16.0.bb | 8 +-
.../gstreamer1.0-plugins-bad_1.16.3.imx.bb | 16 +-
.../gstreamer1.0-plugins-base_1.16.%.bbappend | 6 +-
.../gstreamer1.0-plugins-base_1.16.2.imx.bb | 2 +-
.../gstreamer1.0-plugins-good_1.16.%.bbappend | 6 +-
.../gstreamer1.0-plugins-imx_2.0.0.bb | 16 +-
.../gstreamer/imx-gst1.0-plugin_4.5.7.bb | 24 +-
.../imx-codec/imx-codec_4.5.7.bb | 6 +-
.../imx-vpuwrap/imx-vpuwrap_4.5.7.bb | 4 +-
.../libimxvpuapi/libimxvpuapi2_2.2.0.bb | 8 +-
.../pulseaudio/pulseaudio_%.bbappend | 18 +-
.../optee-imx/optee-client_3.10.0.imx.bb | 4 +-
.../optee-imx/optee-os_3.10.0.imx.bb | 30 +-
.../optee-imx/optee-test_3.10.0.imx.bb | 6 +-
.../optee/optee-os-qoriq_3.8.0.bb | 12 +-
.../0001-Use-Os-to-compile-tinyxml2.cpp.patch | 6 +-
recipes-support/opencv/opencv_4.5.2.imx.bb | 36 +-
155 files changed, 762 insertions(+), 762 deletions(-)

diff --git a/classes/fsl-eula-unpack.bbclass b/classes/fsl-eula-unpack.bbclass
index 498d7826d9cf..5690898c5a43 100644
--- a/classes/fsl-eula-unpack.bbclass
+++ b/classes/fsl-eula-unpack.bbclass
@@ -79,11 +79,11 @@ FSL_EULA_FILE_MD5SUM ?= \

LIC_FILES_CHKSUM_LAYER ?= "file://${FSL_EULA_FILE};md5=${FSL_EULA_FILE_MD5SUM}"
LIC_FILES_CHKSUM_LAYER[vardepsexclude] += "FSL_EULA_FILE"
-LIC_FILES_CHKSUM_append = " ${LIC_FILES_CHKSUM_LAYER}"
+LIC_FILES_CHKSUM:append = " ${LIC_FILES_CHKSUM_LAYER}"

LIC_FILES_CHKSUM[vardepsexclude] += "FSL_EULA_FILE"

-do_fetch_prepend() {
+do_fetch:prepend() {
if "Proprietary" not in d.getVar("LICENSE"):
bb.fatal("The recipe LICENSE should include Proprietary but is " + d.getVar("LICENSE") + ".")
}
diff --git a/classes/fsl-u-boot-localversion.bbclass b/classes/fsl-u-boot-localversion.bbclass
index 617aae1de215..ebde8ea718f2 100644
--- a/classes/fsl-u-boot-localversion.bbclass
+++ b/classes/fsl-u-boot-localversion.bbclass
@@ -14,7 +14,7 @@ LOCALVERSION ??= "+fslc"

UBOOT_LOCALVERSION = "${LOCALVERSION}"

-do_compile_prepend() {
+do_compile:prepend() {
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
head=`cd ${S} ; git rev-parse --verify --short HEAD 2> /dev/null`
diff --git a/classes/fsl-vivante-kernel-driver-handler.bbclass b/classes/fsl-vivante-kernel-driver-handler.bbclass
index 8ac8a33445d2..7ba597f1963e 100644
--- a/classes/fsl-vivante-kernel-driver-handler.bbclass
+++ b/classes/fsl-vivante-kernel-driver-handler.bbclass
@@ -49,7 +49,7 @@ python fsl_vivante_kernel_driver_handler () {
addhandler fsl_vivante_kernel_driver_handler
fsl_vivante_kernel_driver_handler[eventmask] = "bb.event.RecipePreFinalise"

-do_configure_append () {
+do_configure:append () {
if [ "${MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT}" = "1" ]; then
config="${B}/.config"

diff --git a/classes/image_types_fsl.bbclass b/classes/image_types_fsl.bbclass
index c49c51b7a348..d6d8da95fd3b 100644
--- a/classes/image_types_fsl.bbclass
+++ b/classes/image_types_fsl.bbclass
@@ -37,7 +37,7 @@ do_image_wic[depends] += " \
"

# We need to apply a fixup inside of the partition table
-IMAGE_CMD_wic_append_mxs() {
+IMAGE_CMD_wic:append:mxs() {
# Change partition type for mxs processor family
bbnote "Setting partition type to 0x53 as required for mxs' SoC family."
echo -n S | dd of=$out${IMAGE_NAME_SUFFIX}.wic bs=1 count=1 seek=450 conv=notrunc
diff --git a/classes/imx-boot-container.bbclass b/classes/imx-boot-container.bbclass
index 41fe9cca739a..33de45c52b28 100644
--- a/classes/imx-boot-container.bbclass
+++ b/classes/imx-boot-container.bbclass
@@ -23,7 +23,7 @@

# Define ATF binary file to be deployed to the U-Boot build folder
ATF_MACHINE_NAME = "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"

# This package aggregates output deployed by other packages, so set the
# appropriate dependencies for populate binaries task
@@ -76,7 +76,7 @@ addtask do_resolve_and_populate_binaries before do_compile after do_configure
# This effectively would allow the usage of the same WKS file for those
# derivatives that are using the boot container from U-Boot and those
# that are not yet have support for it enabled.
-do_deploy_append() {
+do_deploy:append() {
# Deploy the resulted flash.bin for WIC to pick it up
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
diff --git a/classes/kernel-imximage.bbclass b/classes/kernel-imximage.bbclass
index 234cc00d3059..ccf7ec53bf45 100644
--- a/classes/kernel-imximage.bbclass
+++ b/classes/kernel-imximage.bbclass
@@ -17,7 +17,7 @@
#
# Copyright 2017 (C) O.S. Systems Software LTDA.

-DEPENDS_append = ' u-boot-mkimage-native'
+DEPENDS:append = ' u-boot-mkimage-native'

IMXIMAGE_ENTRYPOINT ?= "${UBOOT_ENTRYPOINT}"

@@ -55,6 +55,6 @@ gen_imximage() {
done
}

-do_deploy_append() {
+do_deploy:append() {
gen_imximage
}
diff --git a/classes/kernel-itbimage.bbclass b/classes/kernel-itbimage.bbclass
index 84262879c09b..51a87319ce94 100644
--- a/classes/kernel-itbimage.bbclass
+++ b/classes/kernel-itbimage.bbclass
@@ -459,7 +459,7 @@ addtask assemble_fitimage_initramfs before do_deploy after do_install


kernel_do_deploy[vardepsexclude] = "DATETIME"
-kernel_do_deploy_append() {
+kernel_do_deploy:append() {
# Update deploy directory
if echo ${KERNEL_IMAGETYPES} | grep -wq "itbImage"; then
cd ${B}
diff --git a/classes/mfgtool-initramfs-image.bbclass b/classes/mfgtool-initramfs-image.bbclass
index 65028b8faa88..1d4c55131d67 100644
--- a/classes/mfgtool-initramfs-image.bbclass
+++ b/classes/mfgtool-initramfs-image.bbclass
@@ -13,7 +13,7 @@ FEATURE_PACKAGES_extfs = "packagegroup-fsl-mfgtool-extfs"
FEATURE_PACKAGES_f2fs = "packagegroup-fsl-mfgtool-f2fs"

IMAGE_FSTYPES = "cpio.gz.u-boot"
-IMAGE_FSTYPES_mxs = "cpio.gz.u-boot"
+IMAGE_FSTYPES:mxs = "cpio.gz.u-boot"
IMAGE_ROOTFS_SIZE ?= "8192"

# Filesystems enabled by default
diff --git a/classes/qoriq_build_64bit_kernel.bbclass b/classes/qoriq_build_64bit_kernel.bbclass
index 93b4d412ff3c..7014be91cc1f 100644
--- a/classes/qoriq_build_64bit_kernel.bbclass
+++ b/classes/qoriq_build_64bit_kernel.bbclass
@@ -6,8 +6,8 @@ python () {
if promote_kernel == "1":
sys_multilib = 'powerpc64' + d.getVar('TARGET_VENDOR', False) + 'mllib64-' + d.getVar('HOST_OS', False)
tc_options = d.getVar('TOOLCHAIN_OPTIONS', False) + '/../lib64-' + d.getVar("MACHINE", False)
- d.setVar('DEPENDS_append', ' lib64-gcc-cross-powerpc64 lib64-libgcc')
- d.setVar('PATH_append', ':' + d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib64-gcc-cross-powerpc64 lib64-libgcc')
+ d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
d.setVar('KERNEL_CC', d.getVar('CCACHE', False) + sys_multilib + '-' + 'gcc' + d.getVar('HOST_CC_KERNEL_ARCH', False) + tc_options)
d.setVar('KERNEL_LD', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ld.bfd' + d.getVar('HOST_LD_KERNEL_ARCH', False) + tc_options)
d.setVar('KERNEL_AR', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ar' + d.getVar('HOST_AR_KERNEL_ARCH', False))
diff --git a/classes/use-imx-headers.bbclass b/classes/use-imx-headers.bbclass
index fcec68c8b3e0..b03d37413504 100644
--- a/classes/use-imx-headers.bbclass
+++ b/classes/use-imx-headers.bbclass
@@ -13,14 +13,14 @@
#
# Copyright 2018 (C) O.S. Systems Software LTDA.

-DEPENDS_append_imx = " linux-imx-headers"
+DEPENDS:append:imx = " linux-imx-headers"

# Set runtime dependency of -dev for package inheriting this class to
# linux-imx-headers-dev package. This is required in order to propagate
# headers into the SDK
RDEPENDS_${PN}-dev += "linux-imx-headers-dev"

-PACKAGE_ARCH_imx ?= "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx ?= "${MACHINE_SOCARCH}"

STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"

@@ -34,4 +34,4 @@ STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"
# Typical example here would be imx-vpu-hantro recipe, which requires NXP
# BSP and is not compatible with mainline.
COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/classes/use-imx-security-controller-firmware.bbclass b/classes/use-imx-security-controller-firmware.bbclass
index 7c79fc62bbd5..9650059b5066 100644
--- a/classes/use-imx-security-controller-firmware.bbclass
+++ b/classes/use-imx-security-controller-firmware.bbclass
@@ -18,11 +18,11 @@

SECO_FIRMWARE_NAME ?= ""

-SECO_FIRMWARE_NAME_mx8qm = "mx8qmb0-ahab-container.img"
-SECO_FIRMWARE_NAME_mx8qxp = \
+SECO_FIRMWARE_NAME:mx8qm = "mx8qmb0-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8qxp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', 'mx8qxb0-ahab-container.img', \
'mx8qxc0-ahab-container.img', d)}"
-SECO_FIRMWARE_NAME_mx8dxl = "mx8dxla1-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8dxl = "mx8dxla1-ahab-container.img"

python () {
if "mx8m" in d.getVar('MACHINEOVERRIDES').split(":"):
diff --git a/conf/layer.conf b/conf/layer.conf
index e07b65ab77f4..4487de9cc445 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "freescale-layer"
BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_freescale-layer = "5"
-LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott honister"

# Add the Freescale-specific licenses into the metadata
LICENSE_PATH += "${LAYERDIR}/custom-licenses"
diff --git a/conf/machine/imx6qdlsabreauto.conf b/conf/machine/imx6qdlsabreauto.conf
index b7aec8c257ee..0b5274cb8149 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE = " \
imx6dl-sabreauto.dtb imx6dl-sabreauto-gpmi-weim.dtb imx6dl-sabreauto-ecspi.dtb \
imx6dl-sabreauto-flexcan1.dtb imx6dl-sabreauto-enetirq.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
imx6qp-sabreauto.dtb \
imx6q-sabreauto.dtb \
imx6dl-sabreauto.dtb \
@@ -34,18 +34,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx = "mx6qsabreauto_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx = "mx6qsabreauto_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -54,6 +54,6 @@ WKS_FILE = " \

SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6qdlsabresd.conf b/conf/machine/imx6qdlsabresd.conf
index b3d09e9397cb..27a2e9d7fa7f 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -35,7 +35,7 @@ KERNEL_DEVICETREE = " \
imx6dl-sabresd-hdcp.dtb \
imx6dl-sabresd-ldo.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
imx6qp-sabresd.dtb \
imx6q-sabresd.dtb \
imx6dl-sabresd.dtb \
@@ -43,18 +43,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -63,6 +63,6 @@ WKS_FILE = " \

SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6slevk.conf b/conf/machine/imx6slevk.conf
index 1e8c403b7cde..8bef21b680b4 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -10,7 +10,7 @@ include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa9.inc

KERNEL_DEVICETREE = "imx6sl-evk.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6sl-evk-btwifi.dtb \
imx6sl-evk-csi.dtb \
imx6sl-evk-ldo.dtb \
diff --git a/conf/machine/imx6sllevk.conf b/conf/machine/imx6sllevk.conf
index 30b537f18666..6282533aa4f1 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -23,7 +23,7 @@ UBOOT_CONFIG[sd-optee] = "mx6sllevk_optee_config,sdcard"
UBOOT_CONFIG[epdc] = "mx6sllevk_epdc_config"
UBOOT_CONFIG[mfgtool] = "mx6sllevk_config"

-OPTEE_BIN_EXT_imx6sllevk = "6sllevk"
+OPTEE_BIN_EXT:imx6sllevk = "6sllevk"

SERIAL_CONSOLES = "115200;ttymxc0"

diff --git a/conf/machine/imx6sxsabreauto.conf b/conf/machine/imx6sxsabreauto.conf
index f7031ccb1134..2354635e2b33 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -10,7 +10,7 @@ require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa9.inc

KERNEL_DEVICETREE = "imx6sx-sabreauto.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sabreauto.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6sx-sabreauto.dtb"

UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_SUFFIX = "imx"
@@ -29,6 +29,6 @@ OPTEE_BIN_EXT = "6sxauto"

SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6sxsabresd.conf b/conf/machine/imx6sxsabresd.conf
index ff7d6ae62d03..fcfcbd5f41c7 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -14,7 +14,7 @@ KERNEL_DEVICETREE = " \
imx6sx-sdb-reva.dtb \
imx6sx-sdb-sai.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6sx-sdb-btwifi.dtb \
imx6sx-sdb-emmc.dtb \
imx6sx-sdb-lcdif1.dtb \
@@ -43,6 +43,6 @@ OPTEE_BIN_EXT = "6sxsdb"

SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
diff --git a/conf/machine/imx6ulevk.conf b/conf/machine/imx6ulevk.conf
index f7c5d8ae52df..6fd14456fb29 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -21,19 +21,19 @@ KERNEL_DEVICETREE = " \
imx6ul-14x14-evk-emmc.dtb \
imx6ul-14x14-evk-gpmi-weim.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6ul-14x14-evk.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6ul-14x14-evk.dtb"

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide SPL support
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
diff --git a/conf/machine/imx6ullevk.conf b/conf/machine/imx6ullevk.conf
index bd592a20bf43..f5b7309fbe6b 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -15,7 +15,7 @@ KERNEL_DEVICETREE = " \
imx6ull-14x14-evk.dtb \
"

-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ull-14x14-evk-btwifi.dtb \
imx6ull-14x14-evk-btwifi-oob.dtb \
imx6ull-14x14-evk-emmc.dtb \
diff --git a/conf/machine/imx6ulz-14x14-evk.conf b/conf/machine/imx6ulz-14x14-evk.conf
index 7b794e7ccb13..a27f1ef11277 100644
--- a/conf/machine/imx6ulz-14x14-evk.conf
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -14,7 +14,7 @@ MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
KERNEL_DEVICETREE = " \
imx6ulz-14x14-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ulz-14x14-evk-btwifi.dtb \
imx6ulz-14x14-evk-emmc.dtb \
imx6ulz-14x14-evk-gpmi-weim.dtb \
diff --git a/conf/machine/imx7dsabresd.conf b/conf/machine/imx7dsabresd.conf
index e848f294395f..860c8007f711 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -12,7 +12,7 @@ require conf/machine/include/tune-cortexa7.inc
MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"

KERNEL_DEVICETREE = "imx7d-sdb.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx7d-sdb-epdc.dtb \
imx7d-sdb-gpmi-weim.dtb \
imx7d-sdb-m4.dtb \
diff --git a/conf/machine/imx7ulpevk.conf b/conf/machine/imx7ulpevk.conf
index a587f44b388c..d685a90caca2 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -14,10 +14,10 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
KERNEL_DEVICETREE = " \
imx7ulp-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-mainline-bsp = " \
+KERNEL_DEVICETREE:append:use-mainline-bsp = " \
imx7ulp-com.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx7ulp-evk-ft5416.dtb \
imx7ulp-evk-mipi.dtb \
imx7ulp-evkb.dtb \
diff --git a/conf/machine/imx8dxl-lpddr4-evk.conf b/conf/machine/imx8dxl-lpddr4-evk.conf
index 1ea5260bb2c9..d44a4732128a 100644
--- a/conf/machine/imx8dxl-lpddr4-evk.conf
+++ b/conf/machine/imx8dxl-lpddr4-evk.conf
@@ -5,7 +5,7 @@

require conf/machine/include/imx8dxl-evk.inc
KERNEL_DEVICETREE_BASENAME = "imx8dxl-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0-tja1100.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-ddr4-evk.conf
index 3901bb92c3a0..f21cc38148b9 100644
--- a/conf/machine/imx8mm-ddr4-evk.conf
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -7,7 +7,7 @@
require include/imx8mm-evk.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
"
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf b/conf/machine/imx8mm-lpddr4-evk.conf
index 6007c5404fc1..0a85ed20ac81 100644
--- a/conf/machine/imx8mm-lpddr4-evk.conf
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mm-evk.inc

# The device tree name is implicit for LPDDR4, so can't use MACHINE here
KERNEL_DEVICETREE_BASENAME = "imx8mm-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
diff --git a/conf/machine/imx8mn-ddr4-evk.conf b/conf/machine/imx8mn-ddr4-evk.conf
index 442afdbd0547..d004d2aecb3b 100644
--- a/conf/machine/imx8mn-ddr4-evk.conf
+++ b/conf/machine/imx8mn-ddr4-evk.conf
@@ -7,7 +7,7 @@
require include/imx8mn-evk.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_ddr4_evk"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf b/conf/machine/imx8mn-lpddr4-evk.conf
index 7c58bc19f8a2..2e5e6be9aa21 100644
--- a/conf/machine/imx8mn-lpddr4-evk.conf
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mn-evk.inc

# The device tree name is implicit for LPDDR4, so can't use MACHINE here
KERNEL_DEVICETREE_BASENAME = "imx8mn-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_evk"
diff --git a/conf/machine/imx8mp-ddr4-evk.conf b/conf/machine/imx8mp-ddr4-evk.conf
index 09517769f00b..78e0c1608152 100644
--- a/conf/machine/imx8mp-ddr4-evk.conf
+++ b/conf/machine/imx8mp-ddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mp-evk.inc

# FIXME: This machine is not yet supported by u-boot-fslc, so for now
# use u-boot-imx for mainline.
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-imx"

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"

diff --git a/conf/machine/imx8mp-lpddr4-evk.conf b/conf/machine/imx8mp-lpddr4-evk.conf
index cf926c08d0a1..76a1f44990fe 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -11,7 +11,7 @@ KERNEL_DEVICETREE_BASENAME = "imx8mp-evk"

# NXP kernel has additional DTB files for various board configuration and
# derivates. Include them here for NXP BSP only
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mp-ab2.dtb \
freescale/imx8mp-evk-basler.dtb \
freescale/imx8mp-evk-basler-ov2775.dtb \
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-evk.conf
index 9907ef4b26c2..b6dcd89026bb 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -12,14 +12,14 @@ require conf/machine/include/tune-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci wifi bluetooth optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

-MACHINE_SOCARCH_FILTER_append_mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"
+MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"

KERNEL_DEVICETREE = " \
freescale/imx8mq-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mq-evk-ak4497.dtb \
freescale/imx8mq-evk-audio-tdm.dtb \
freescale/imx8mq-evk-dcss-adv7535.dtb \
@@ -40,8 +40,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
freescale/imx8mq-evk-usdhc2-m2.dtb \
"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -77,7 +77,7 @@ IMX_BOOT_SEEK = "33"
OPTEE_BIN_EXT = "8mq"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"

# Use gstreamer 1.16 from meta-freescale
PREFERRED_VERSION_gstreamer1.0 ?= "1.16.imx"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
index 5ceb6b8bb2f7..655c453f6262 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -11,7 +11,7 @@ require conf/machine/include/tune-cortexa72-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -55,8 +55,8 @@ UBOOT_MAKE_TARGET = \
SPL_BINARY = \
"${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'spl/u-boot-spl.bin', \
'', d)}"
-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -86,4 +86,4 @@ IMX_BOOT_SOC_TARGET = "iMX8QM"
BOARD_TYPE = "mek"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-mek.conf
index 5b29138fc3fd..29412cc35bc9 100644
--- a/conf/machine/imx8qxp-mek.conf
+++ b/conf/machine/imx8qxp-mek.conf
@@ -8,7 +8,7 @@ MACHINEOVERRIDES =. "mx8qxp:"
require include/imx8x-mek.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dom0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index f92a08af1c00..78f815d1310d 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -13,8 +13,8 @@ require conf/machine/include/utilities.inc
IMX_DEFAULT_BSP ?= "mainline"

# Those are SoC families we'd like to force the use of mainline BSP.
-IMX_DEFAULT_BSP_mxs ?= "mainline"
-IMX_DEFAULT_BSP_mx5 ?= "mainline"
+IMX_DEFAULT_BSP:mxs ?= "mainline"
+IMX_DEFAULT_BSP:mx5 ?= "mainline"

MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"

@@ -32,16 +32,16 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# ,----[ imx6qdlsabresd.conf ]
# | ### u-boot-fslc settings ###
# |
-# | SPL_BINARY_pn-u-boot-fslc = "SPL"
-# | UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+# | SPL_BINARY:pn-u-boot-fslc = "SPL"
+# | UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-fslc = "img"
# |
# | ### u-boot-imx settings ###
# |
# | # The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# | # variants. Change the defconfig to the targeted SoC variant.
-# | UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+# | UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-imx = "imx"
# `----
#
# As result, the 'UBOOT_SUFFIX' is dynamically set based on the preferred U-Boot
@@ -61,7 +61,7 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# | UBOOT_MACHINE = "mx53loco_config"
# `----
IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
-UBOOT_SUFFIX ?= "${UBOOT_SUFFIX_pn-${IMX_DEFAULT_BOOTLOADER}}"
+UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}"

# We need to export the original variable to allow it to be used when generating
# wic based images.
@@ -75,33 +75,33 @@ PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"

PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"

-UBOOT_ENTRYPOINT_mxs = "0x40008000"
-UBOOT_ENTRYPOINT_mx51 = "0x90008000"
-UBOOT_ENTRYPOINT_mx53 = "0x70008000"
-UBOOT_ENTRYPOINT_mx6 = "0x10008000"
-UBOOT_ENTRYPOINT_mx6sl = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sll = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ul = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ull = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ulz = "0x80008000"
-UBOOT_ENTRYPOINT_mx7 = "0x80008000"
-UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
-UBOOT_ENTRYPOINT_mx8m = "0x40480000"
-UBOOT_ENTRYPOINT_vf = "0x80008000"
+UBOOT_ENTRYPOINT:mxs = "0x40008000"
+UBOOT_ENTRYPOINT:mx51 = "0x90008000"
+UBOOT_ENTRYPOINT:mx53 = "0x70008000"
+UBOOT_ENTRYPOINT:mx6 = "0x10008000"
+UBOOT_ENTRYPOINT:mx6sl = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sll = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sx = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ul = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ull = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ulz = "0x80008000"
+UBOOT_ENTRYPOINT:mx7 = "0x80008000"
+UBOOT_ENTRYPOINT:mx7ulp = "0x60008000"
+UBOOT_ENTRYPOINT:mx8m = "0x40480000"
+UBOOT_ENTRYPOINT:vf = "0x80008000"

# Some derivates can utilize the boot container provided by U-Boot,
# below variable sets that those machines which have a imx-boot-container
# in their MACHINEOVERRIDES can inherit a imx-boot-container class
UBOOT_PROVIDES_BOOT_CONTAINER = "0"
-UBOOT_PROVIDES_BOOT_CONTAINER_imx-boot-container = "1"
+UBOOT_PROVIDES_BOOT_CONTAINER:imx-boot-container = "1"

PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER_DRIVER = "xf86-video-fbdev"
-XSERVER_DRIVER_imxgpu2d = "xf86-video-imx-vivante"
-XSERVER_DRIVER_vf = "xf86-video-modesetting"
-XSERVER_DRIVER_append_mx8 = " xf86-video-modesetting"
-XSERVER_DRIVER_use-mainline-bsp = " \
+XSERVER_DRIVER:imxgpu2d = "xf86-video-imx-vivante"
+XSERVER_DRIVER:vf = "xf86-video-modesetting"
+XSERVER_DRIVER:append:mx8 = " xf86-video-modesetting"
+XSERVER_DRIVER:use-mainline-bsp = " \
xf86-video-fbdev \
xf86-video-modesetting \
xserver-xorg-extension-glx \
@@ -118,41 +118,41 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
# ARM_INSTRUCTION_SET = "thumb"
#
# handled by software
-# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
+# DEFAULTTUNE:mx6 ?= "cortexa9t-neon"
# handled by hardware
-DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
-DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ulz ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
-DEFAULTTUNE_vf ?= "cortexa5thf-neon"
+DEFAULTTUNE:mx6 ?= "cortexa9thf-neon"
+DEFAULTTUNE:mx6ul ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ull ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ulz ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx7 ?= "cortexa7thf-neon"
+DEFAULTTUNE:vf ?= "cortexa5thf-neon"

-DEFAULTTUNE_mx8m ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8qm ?= "cortexa72-cortexa53-crypto"
-DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx8m ?= "cortexa53-crypto"
+DEFAULTTUNE:mx8qm ?= "cortexa72-cortexa53-crypto"
+DEFAULTTUNE:mx8qxp ?= "cortexa35-crypto"

INHERIT += "machine-overrides-extender"

-MACHINEOVERRIDES_EXTENDER_mx25 = "use-mainline-bsp"
-MACHINEOVERRIDES_EXTENDER_mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sx = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6sl = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sll = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp"
-MACHINEOVERRIDES_EXTENDER_mx6ull = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ulz = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7d = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7ulp = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qm = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mn = "imxdrm:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mp = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8dxl = "imxfbdev"
-
-MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
+MACHINEOVERRIDES_EXTENDER:mx25 = "use-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sx = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6sl = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sll = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ul = "imxfbdev:imxpxp"
+MACHINEOVERRIDES_EXTENDER:mx6ull = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ulz = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7d = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7ulp = "imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qm = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mn = "imxdrm:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mp = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8dxl = "imxfbdev"
+
+MACHINEOVERRIDES_EXTENDER_FILTER_OUT:use-mainline-bsp = " \
imx \
\
mx6 \
@@ -182,40 +182,40 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \

# Sub-architecture support
MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
-MACHINE_SOCARCH_SUFFIX_mx6sl = "-mx6sl"
-MACHINE_SOCARCH_SUFFIX_mx6sll= "-mx6sll"
-MACHINE_SOCARCH_SUFFIX_mx7d = "-mx7d"
-MACHINE_SOCARCH_SUFFIX_mx7ulp = "-mx7ulp"
-MACHINE_SOCARCH_SUFFIX_vf60 = "-vf60"
-MACHINE_SOCARCH_SUFFIX_vf50 = "-vf50"
-MACHINE_SOCARCH_SUFFIX_mx6ul = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ulz = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx8qm = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm"
-MACHINE_SOCARCH_SUFFIX_mx8mn = "-mx8mn"
-MACHINE_SOCARCH_SUFFIX_mx8mp = "-mx8mp"
-MACHINE_SOCARCH_SUFFIX_mx8mq = "-mx8m"
-MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8dxl = "-mx8dxl"
-MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
+MACHINE_SOCARCH_SUFFIX:mx6q = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6dl = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6sx = "-mx6sx"
+MACHINE_SOCARCH_SUFFIX:mx6sl = "-mx6sl"
+MACHINE_SOCARCH_SUFFIX:mx6sll= "-mx6sll"
+MACHINE_SOCARCH_SUFFIX:mx7d = "-mx7d"
+MACHINE_SOCARCH_SUFFIX:mx7ulp = "-mx7ulp"
+MACHINE_SOCARCH_SUFFIX:vf60 = "-vf60"
+MACHINE_SOCARCH_SUFFIX:vf50 = "-vf50"
+MACHINE_SOCARCH_SUFFIX:mx6ul = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ull = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ulz = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx8qm = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8mm = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX:mx8mn = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX:mx8mp = "-mx8mp"
+MACHINE_SOCARCH_SUFFIX:mx8mq = "-mx8m"
+MACHINE_SOCARCH_SUFFIX:mx8qxp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dxl = "-mx8dxl"
+MACHINE_SOCARCH_SUFFIX:use-mainline-bsp = "-imx"

MACHINE_ARCH_FILTER = "virtual/kernel"
-MACHINE_SOCARCH_FILTER_append_imx = " \
+MACHINE_SOCARCH_FILTER:append:imx = " \
alsa-lib \
gstreamer1.0 \
weston \
"
-MACHINE_SOCARCH_FILTER_append_imxvpu = " \
+MACHINE_SOCARCH_FILTER:append:imxvpu = " \
imx-codec \
imx-vpuwrap \
libimxvpuapi \
virtual/imxvpu \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu = " \
virtual/egl \
virtual/mesa \
virtual/libopenvg \
@@ -225,15 +225,15 @@ MACHINE_SOCARCH_FILTER_append_imxgpu = " \
opencv \
pango \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu2d = " \
virtual/libg2d \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu3d = " \
virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
-MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
+MACHINE_SOCARCH_FILTER:append:use-mainline-bsp = " \
virtual/egl \
virtual/libopenvg \
virtual/libg2d \
@@ -245,23 +245,23 @@ MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
pango \
qtbase \
"
-MACHINE_SOCARCH_FILTER_append_mx6q = " \
+MACHINE_SOCARCH_FILTER:append:mx6q = " \
opencl-icd-loader \
opencl-clhpp \
opencl-headers \
"
-MACHINE_SOCARCH_FILTER_append_mx8 = " \
+MACHINE_SOCARCH_FILTER:append:mx8 = " \
opencl-icd-loader \
opencl-clhpp \
opencl-headers \
"
-MACHINE_SOCARCH_FILTER_append_mx8qm = " \
+MACHINE_SOCARCH_FILTER:append:mx8qm = " \
virtual/libopenvx \
"

INHERIT += "fsl-dynamic-packagearch"

-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \
imx-gpu-viv->kernel-module-imx-gpu-viv \
libimxvpuapi->virtual/imxvpu \
imx-vpuwrap->virtual/imxvpu \
@@ -271,44 +271,44 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \

# Firmware
MACHINE_FIRMWARE ?= ""
-MACHINE_FIRMWARE_append_mx25 = " firmware-imx-sdma-imx25"
-MACHINE_FIRMWARE_append_mx27 = " firmware-imx-vpu-imx27"
-MACHINE_FIRMWARE_append_mx7d = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-imx-sdma-imx6q"
-MACHINE_FIRMWARE_append_mx6q = " firmware-imx-vpu-imx6q"
-MACHINE_FIRMWARE_append_mx6dl = " firmware-imx-vpu-imx6d firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sl = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sll = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6ull = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx53 = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
-MACHINE_FIRMWARE_append_mx51 = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
-MACHINE_FIRMWARE_append_mx8mm = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mn = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
-MACHINE_FIRMWARE_append_mx8mq = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8qm = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+MACHINE_FIRMWARE:append:mx25 = " firmware-imx-sdma-imx25"
+MACHINE_FIRMWARE:append:mx27 = " firmware-imx-vpu-imx27"
+MACHINE_FIRMWARE:append:mx7d = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE:append:mx6q = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE:append:mx6dl = " firmware-imx-vpu-imx6d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sl = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sll = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6ull = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx53 = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
+MACHINE_FIRMWARE:append:mx51 = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
+MACHINE_FIRMWARE:append:mx8mm = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mn = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE:append:mx8mq = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8qm = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8qxp = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:use-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"

MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"

# Extra audio support
IMX_ALSA_EXTRA = ""
-IMX_ALSA_EXTRA_use-nxp-bsp = "imx-alsa-plugins"
-MACHINE_EXTRA_RRECOMMENDS_append_mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+IMX_ALSA_EXTRA:use-nxp-bsp = "imx-alsa-plugins"
+MACHINE_EXTRA_RRECOMMENDS:append:mx6 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx7 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx8 = " ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}', '', d)}"

# Extra Cypress Wi-Fi and BTW firmware (Murata)
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4339', 'linux-firmware-bcm4339', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43430', 'linux-firmware-bcm43430', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455', 'linux-firmware-bcm43455', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4339', 'linux-firmware-bcm4339', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43430', 'linux-firmware-bcm43430', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455', 'linux-firmware-bcm43455', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"

# Extra QCA Wi-Fi & BTE driver and firmware
-MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-fsl-qca6174', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-fsl-qca9377', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-fsl-qca6174', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-fsl-qca9377', '', d)}"

# Extra udev rules
MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
@@ -320,29 +320,29 @@ MACHINE_EXTRA_RRECOMMENDS += " \

# GStreamer 1.0 plugins
MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6q ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ull ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx7d ?= "gstreamer1.0-plugins-imx-meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mm ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mn ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mp ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mq ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qm ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qxp ?= "imx-gst1.0-plugin"
-
-PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.16.0"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6dl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6q ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sl ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sx ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ul ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ull ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx7d ?= "gstreamer1.0-plugins-imx-meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mn ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mq ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qxp ?= "imx-gst1.0-plugin"
+
+PREFERRED_VERSION_gstreamer1.0:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-libav:mx8 ?= "1.16.0"

# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
-SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1"
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT:imxgpu = "1"

# Handle Vivante kernel driver setting:
# 0 - machine does not have Vivante GPU driver support
@@ -355,59 +355,59 @@ PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"

-PREFERRED_PROVIDER_virtual/egl_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgl_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/egl:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgl:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles1:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles2:imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d"
-PREFERRED_PROVIDER_virtual/libg2d_imxdpu ?= "imx-dpu-g2d"
-PREFERRED_PROVIDER_opencl-clhpp_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-headers_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-icd-loader_imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libg2d:imxdpu ?= "imx-dpu-g2d"
+PREFERRED_PROVIDER_opencl-clhpp:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-headers:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-icd-loader:imxgpu ?= "imx-gpu-viv"

-PREFERRED_VERSION_weston_imx ?= "9.0.0.imx"
-PREFERRED_VERSION_weston_use-mainline-bsp = ""
+PREFERRED_VERSION_weston:imx ?= "9.0.0.imx"
+PREFERRED_VERSION_weston:use-mainline-bsp = ""

-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx6 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx7 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx8 ?= "1.20.imx"

# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx6 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx7 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx8 ?= "2.4.102.imx"

# Use i.MX optee Version
-PREFERRED_VERSION_optee-os_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-client_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-test_mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-os:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-client:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-test:mx8 ?= "3.10.0.imx"

#Use i.MX opencv Version for mx8
-PREFERRED_VERSION_opencv_mx8 ?= "4.5.2.imx"
+PREFERRED_VERSION_opencv:mx8 ?= "4.5.2.imx"

# Handle default kernel
IMX_DEFAULT_KERNEL = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx8 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7ulp = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6sll = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
+IMX_DEFAULT_KERNEL:mxs = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx5 = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx6 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx8 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7ulp = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6sll = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ul = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ull = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:use-mainline-bsp = "linux-fslc"

PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"

SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.bmap wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES:mxs = "uboot-mxsboot-sdcard wic.bmap wic.gz"

# Do not update fstab file when using wic images
WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"

OPTEE_BOOT_IMAGE = "uTee"
-OPTEE_BOOT_IMAGE_aarch64 = ""
+OPTEE_BOOT_IMAGE:aarch64 = ""

IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

@@ -419,7 +419,7 @@ IMAGE_BOOT_FILES ?= " \

### wic default support
OPTEE_WKS_FILE_DEPENDS = "optee-os"
-OPTEE_WKS_FILE_DEPENDS_aarch64 = ""
+OPTEE_WKS_FILE_DEPENDS:aarch64 = ""

WKS_FILE_DEPENDS ?= " \
virtual/bootloader \
@@ -429,8 +429,8 @@ WKS_FILE_DEPENDS ?= " \
${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"

-WKS_FILE_DEPENDS_append_mx8 = " imx-boot"
-WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8 = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8m = " imx-boot"

# We need to restrict the append so we don't add this for other i.MX SoC's.
# Derivatives that are not yet adopted the usage of boot container provided
@@ -444,15 +444,15 @@ WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
# deployment task extesion execution defined in imx-boot-container class.
# For NXP BSP: rename is done in 'imx-boot' recipe at the execution of compile
# task.
-WKS_FILE_DEPENDS_append_use-mainline-bsp_aarch64 = " \
+WKS_FILE_DEPENDS:append:use-mainline-bsp:aarch64 = " \
${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '0', 'imx-boot', '')} \
"

SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8m ?= "imx-imx-boot-bootpart.wks.in"

-SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8 ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mxs ?= "imx-uboot-mxs-bootpart.wks.in"

# Boot container built as a part of mainline U-Boot uses different WKS
# file as the entire mx8m series, as U-Boot versions later than 2021.04 are
@@ -462,19 +462,19 @@ SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
# replacement of imx-boot from NXP.
# Creation of those binary files is controlled by UBOOT_PROVIDES_BOOT_CONTAINER
# variable defined above.
-SOC_DEFAULT_WKS_FILE_imx-boot-container ?= "imx-boot-container-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:imx-boot-container ?= "imx-boot-container-bootpart.wks.in"

WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

SERIAL_CONSOLES = "115200;ttymxc0"
-SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
+SERIAL_CONSOLES:mxs = "115200;ttyAMA0"

KERNEL_IMAGETYPE = "zImage"
-KERNEL_IMAGETYPE_aarch64 = "Image"
+KERNEL_IMAGETYPE:aarch64 = "Image"

MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"

-# Add the ability to specify _imx machines
+# Add the ability to specify :imx machines
MACHINEOVERRIDES =. "imx:"

-HOSTTOOLS_NONFATAL_append_mx8 = " sha384sum"
+HOSTTOOLS_NONFATAL:append:mx8 = " sha384sum"
diff --git a/conf/machine/include/imx8dxl-evk.inc b/conf/machine/include/imx8dxl-evk.inc
index 2868b4d6c1c3..4e75f8c4bbd3 100644
--- a/conf/machine/include/imx8dxl-evk.inc
+++ b/conf/machine/include/imx8dxl-evk.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
"

diff --git a/conf/machine/include/imx8mm-evk.inc b/conf/machine/include/imx8mm-evk.inc
index f458c56de9b7..1295de1d8271 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -11,19 +11,19 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
# and pin it to NXP BSP only
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359 qca9377"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359 qca9377"

KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -51,18 +51,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Mini EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Mini EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp = "root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"

LOADADDR = ""
UBOOT_SUFFIX = "bin"
@@ -73,4 +73,4 @@ OPTEE_BIN_EXT = "8mm"
TEE_LOAD_ADDR = "0xbe000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mn-evk.inc b/conf/machine/include/imx8mn-evk.inc
index a0e39857c770..411004000b66 100644
--- a/conf/machine/include/imx8mn-evk.inc
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -8,12 +8,12 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
# NXP BSP can consume proprietary jailhouse and Broadcom drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"

KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
@@ -22,8 +22,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -52,18 +52,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Nano EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Nano EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp = "root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"

BOOT_SPACE = "65536"
LOADADDR = ""
@@ -79,4 +79,4 @@ OPTEE_BIN_EXT = "8mn"
TEE_LOAD_ADDR = "0x56000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
index d070831ff3d3..bc2c038f0076 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -8,7 +8,7 @@ MACHINE_FEATURES += "pci wifi bluetooth"
# NXP BSP can consume proprietary jailhouse and Marvell drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse mrvl8997"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse mrvl8997"

# Mainline kernel contains only one DTB file for
# imx8mpevk machine
@@ -18,8 +18,8 @@ KERNEL_DEVICETREE = " \

UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -50,18 +50,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Plus EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M Plus EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp = "console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp = "root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp = "../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp = "console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp = "root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"

LOADADDR = ""
UBOOT_SUFFIX = "bin"
@@ -72,4 +72,4 @@ OPTEE_BIN_EXT = "8mp"
TEE_LOAD_ADDR = "0x56000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8x-mek.inc b/conf/machine/include/imx8x-mek.inc
index 55a28c877e60..0682fbc1be21 100644
--- a/conf/machine/include/imx8x-mek.inc
+++ b/conf/machine/include/imx8x-mek.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191-rpmsg.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsp.dtb \
@@ -71,4 +71,4 @@ IMXBOOT_TARGETS = \
BOARD_TYPE = "mek"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/qoriq-base.inc b/conf/machine/include/qoriq-base.inc
index 0a42160f0f30..9bc3ee76c756 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -9,8 +9,8 @@ PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??= "nativesdk-u-boot-tools"
PREFERRED_VERSION_testfloat = "2a"

SOC_DEFAULT_IMAGE_FSTYPES = "tar.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1043a = " wic.bz2"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1046a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1043a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1046a = " wic.bz2"
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

# Composite Image Layout (in KBytes)
@@ -31,8 +31,8 @@ IMAGE_BOOT_FILES ?= " \
"

SOC_DEFAULT_WKS_FILE ?= ""
-SOC_DEFAULT_WKS_FILE_ls1043a ?= "ls104x-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_ls1046a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1043a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1046a ?= "ls104x-uboot-bootpart.wks.in"

WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

diff --git a/conf/machine/include/utilities.inc b/conf/machine/include/utilities.inc
index f11b588bbe5d..34ce7abcb6d7 100644
--- a/conf/machine/include/utilities.inc
+++ b/conf/machine/include/utilities.inc
@@ -23,6 +23,6 @@ def make_dtb_boot_files(d):

def get_spl_binary(d):
imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER')
- spl_binary = d.getVar("SPL_BINARY_pn-%s" % imx_default_bootloader)
+ spl_binary = d.getVar("SPL_BINARY:pn-%s" % imx_default_bootloader)

return spl_binary or ""
diff --git a/conf/machine/ls1028ardb.conf b/conf/machine/ls1028ardb.conf
index 63f3802f7959..d70a5a619f9b 100644
--- a/conf/machine/ls1028ardb.conf
+++ b/conf/machine/ls1028ardb.conf
@@ -22,7 +22,7 @@ UBOOT_CONFIG[tfa-secure-boot] = "ls1028ardb_tfa_SECURE_BOOT_defconfig"
UBOOT_CONFIG[tfa] = "ls1028ardb_tfa_defconfig"

KERNEL_DEVICETREE ?= "freescale/fsl-ls1028a-rdb.dtb freescale/fsl-ls1028a-qds.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = "\
+KERNEL_DEVICETREE:append:use-nxp-bsp = "\
freescale/fsl-ls1028a-rdb-dpdk.dtb \
"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1043ardb.conf b/conf/machine/ls1043ardb.conf
index fa8ab61566c7..4ff3c0acb913 100644
--- a/conf/machine/ls1043ardb.conf
+++ b/conf/machine/ls1043ardb.conf
@@ -27,7 +27,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1043a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1043a-rdb-sdk.dtb \
freescale/fsl-ls1043a-rdb-usdpaa.dtb \
freescale/fsl-ls1043a-qds-sdk.dtb \
diff --git a/conf/machine/ls1046afrwy.conf b/conf/machine/ls1046afrwy.conf
index e6eabc0f36df..eb3c0bb6f4a5 100644
--- a/conf/machine/ls1046afrwy.conf
+++ b/conf/machine/ls1046afrwy.conf
@@ -25,7 +25,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-frwy.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-frwy-sdk.dtb \
freescale/fsl-ls1046a-frwy-usdpaa.dtb \
"
diff --git a/conf/machine/ls1046ardb.conf b/conf/machine/ls1046ardb.conf
index 97fb1e29e36a..8e815295ad4c 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-rdb-sdk.dtb \
freescale/fsl-ls1046a-rdb-usdpaa.dtb \
freescale/fsl-ls1046a-qds-sdk.dtb \
diff --git a/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend b/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend
index 10b66c0e4adc..b7bf3298f6ff 100644
--- a/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend
+++ b/dynamic-layers/aglprofilegraphical/recipes-graphics/wayland/weston-init.bbappend
@@ -1,3 +1,3 @@
-do_install_append() {
+do_install:append() {
rm -f ${D}${sysconfdir}/xdg/weston/weston.ini
}
diff --git a/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc b/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc
index cdd0f08fde77..7d8065f9db46 100644
--- a/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc
+++ b/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-imx.inc
@@ -1,4 +1,4 @@
-DEPENDS_append_imxvpu = " imx-vpuwrap"
+DEPENDS:append:imxvpu = " imx-vpuwrap"

# Additional imx code and patches are included in the chromium-imx git repository.
# The code below fetches this repository, copies the extra source over to the main
@@ -26,7 +26,7 @@ do_patch[prefuncs] =+ "add_chromium_imx_patches"
# * Lost context problems are not known to happen with Vivante GPUs,
# so it is safe to use ignore-lost-context
# * Proprietary codecs need to be enabled for h.264 and MP4 support
-PACKAGECONFIG_append = " ignore-lost-context proprietary-codecs"
+PACKAGECONFIG:append = " ignore-lost-context proprietary-codecs"

copy_chromium_imx_files() {
# sources in src/ are already organized in a manner
diff --git a/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend b/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
index 0b4c4861b6e3..fb90c73e1d1f 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11', \
'', d), d)} \
diff --git a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend b/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend
index afbaee4323ad..e07d0d54235a 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
cogl-pango gles2 \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'egl-wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'egl-x11', \
diff --git a/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend b/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend
index 72d991c7e590..4fc41d058011 100644
--- a/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend
+++ b/dynamic-layers/ivi/recipes-graphics/wayland/weston-init.bbappend
@@ -1 +1 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend b/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend
index 2e648ba34914..06661133569f 100644
--- a/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-benchmark/glmark2/glmark2_%.bbappend
@@ -1,4 +1,4 @@
-# Only _mx8 machine do provide virtual/libgbm required for any drm* flavour
-DRM-REMOVE_imxgpu = "drm-gl drm-gles2"
-DRM-REMOVE_imxgpu_mx8 = ""
-PACKAGECONFIG_remove = "${DRM-REMOVE}"
+# Only :mx8 machine do provide virtual/libgbm required for any drm* flavour
+DRM-REMOVE:imxgpu = "drm-gl drm-gles2"
+DRM-REMOVE:imxgpu:mx8 = ""
+PACKAGECONFIG:remove = "${DRM-REMOVE}"
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend b/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend
index 8c6138c54aae..d07f8ae14d2c 100644
--- a/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/luajit/luajit_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_qoriq-ppc = " file://ppc-fixplt.patch "
+SRC_URI:append:qoriq-ppc = " file://ppc-fixplt.patch "

diff --git a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
index 1793ec06fb4e..9c6be782d6d0 100644
--- a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
@@ -19,15 +19,15 @@ EXTRA_OEMAKE_virtclass-native = 'FMCHOSTMODE=1 FMD_USPACE_HEADER_PATH="${STAGING
TCLAP_HEADER_PATH="${STAGING_INCDIR}" '

EXTRA_OEMAKE_PLATFORM ?= ""
-EXTRA_OEMAKE_PLATFORM_ls1043a = "ls1043"
-EXTRA_OEMAKE_PLATFORM_ls1046a = "ls1046"
-EXTRA_OEMAKE_PLATFORM_ls1088a = "ls1088"
-EXTRA_OEMAKE_PLATFORM_p1020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p3041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p4080 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p5040 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:ls1043a = "ls1043"
+EXTRA_OEMAKE_PLATFORM:ls1046a = "ls1046"
+EXTRA_OEMAKE_PLATFORM:ls1088a = "ls1088"
+EXTRA_OEMAKE_PLATFORM:p1020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p3041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p4080 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p5040 = "p4080ds"


do_compile () {
diff --git a/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend b/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend
index f4f4350489cf..be6945744efa 100644
--- a/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-graphics/xserver-common/xserver-common_%.bbappend
@@ -1,8 +1,8 @@
# i.MX extra configuration
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu3d = " \
+SRC_URI:append:imxgpu3d = " \
file://0016-xserver-common-enable-iglx-module.patch \
"

-PACKAGE_ARCH_imxgpu3d = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxgpu3d = "${MACHINE_SOCARCH}"
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
index 187681a8b123..8950c151bd77 100644
--- a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/qt4:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/qt4:"

python __anonymous () {
families = ['mx6']
@@ -8,21 +8,21 @@ python __anonymous () {
d.appendVarFlag('do_configure', 'depends', ' virtual/kernel:do_shared_workdir')
}

-SRC_URI_append_imxgpu2d += " \
+SRC_URI:append:imxgpu2d += " \
file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \
file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch \
file://0003-i.MX6-force-egl-visual-ID-33.patch \
"

-DEPENDS_append_imxgpu2d = " virtual/kernel virtual/libgles2"
-QT_GLFLAGS_imxgpu2d = "-opengl es2 -openvg"
-QT_CONFIG_FLAGS_append_imxgpu2d = " -I${STAGING_KERNEL_DIR}/include/uapi \
+DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2"
+QT_GLFLAGS:imxgpu2d = "-opengl es2 -openvg"
+QT_CONFIG_FLAGS:append:imxgpu2d = " -I${STAGING_KERNEL_DIR}/include/uapi \
-I${STAGING_KERNEL_DIR}/include/ \
-DLINUX=1 -DEGL_API_FB=1 \
-DQT_QPA_EXPERIMENTAL_TOUCHEVENT=1"

# The QT_CONFIG_FLAGS can pollute *.la files with -Dxxx
-do_compile_append_mx6 () {
+do_compile:append:mx6 () {
find lib -name "*.la" | xargs -n1 sed -i 's/-D.*=1//g'
}

diff --git a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
index bf3fb66eeb72..0d5897adc7f9 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
@@ -3,35 +3,35 @@
# Copyright (C) 2016, 2017 O.S. Systems Software LTDA.
# Copyright (C) 2017-2018 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = " \
+SRC_URI:append:imxgpu = " \
file://0014-Add-IMX-GPU-support.patch \
file://0001-egl.prf-Fix-build-error-when-egl-headers-need-platfo.patch \
"

PACKAGECONFIG_GL_IMX_GPU = ""
-PACKAGECONFIG_GL_IMX_GPU_mx8 = "gbm kms"
+PACKAGECONFIG_GL_IMX_GPU:mx8 = "gbm kms"

-PACKAGECONFIG_GL_imxpxp = "gles2"
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' gl', '', d)} \
+PACKAGECONFIG_GL:imxpxp = "gles2"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' gl', '', d)} \
${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_imxgpu3d = "gles2 \
+PACKAGECONFIG_GL:imxgpu3d = "gles2 \
${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_use-mainline-bsp ?= "gles2 gbm kms"
+PACKAGECONFIG_GL:use-mainline-bsp ?= "gles2 gbm kms"

PACKAGECONFIG_PLATFORM = ""
-PACKAGECONFIG_PLATFORM_imxgpu2d = "no-opengl linuxfb"
-PACKAGECONFIG_PLATFORM_imxgpu3d = " \
+PACKAGECONFIG_PLATFORM:imxgpu2d = "no-opengl linuxfb"
+PACKAGECONFIG_PLATFORM:imxgpu3d = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', \
bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
'eglfs', d), d)}"
-PACKAGECONFIG_PLATFORM_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
+PACKAGECONFIG_PLATFORM:use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
PACKAGECONFIG += "${PACKAGECONFIG_PLATFORM}"

PACKAGECONFIG_VULKAN_IMX_GPU = ""
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8 = "vulkan"
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8mm = ""
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8 = "vulkan"
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8mm = ""
PACKAGECONFIG_VULKAN = ""
-PACKAGECONFIG_VULKAN_imxgpu = "${PACKAGECONFIG_VULKAN_IMX_GPU}"
+PACKAGECONFIG_VULKAN:imxgpu = "${PACKAGECONFIG_VULKAN_IMX_GPU}"
PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'vulkan', '${PACKAGECONFIG_VULKAN}', '', d)}"
diff --git a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
index 168db09548ab..c1594e0571b4 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
@@ -1,8 +1,8 @@
# etnaviv mesa does not have glx
-PACKAGECONFIG_remove_use-mainline-bsp = "xcomposite-glx"
+PACKAGECONFIG:remove:use-mainline-bsp = "xcomposite-glx"

-PACKAGECONFIG_remove_mx6 = "xcomposite-egl xcomposite-glx"
-PACKAGECONFIG_remove_mx7 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx6 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx7 = "xcomposite-egl xcomposite-glx"

# i.MX8 does never provide native x11, so required dependencies are not met
-PACKAGECONFIG_remove_mx8 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx8 = "xcomposite-egl xcomposite-glx"
diff --git a/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend b/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend
index c7e6d32e4213..7aecf1e466c6 100644
--- a/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend
+++ b/dynamic-layers/virtualization-layer/recipes-extended/libvirt/libvirt_%.bbappend
@@ -1,9 +1,9 @@
PACKAGECONFIG_qoriq-ppc = "qemu yajl lxc test remote macvtap libvirtd netcf udev python"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_qoriq-ppc = " file://qemu.conf"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:qoriq-ppc = " file://qemu.conf"

-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
install -m 0644 ${WORKDIR}/qemu.conf ${D}${sysconfdir}/libvirt/qemu.conf
}

diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend
index 3a398b2210fc..9433130725d5 100644
--- a/recipes-bsp/alsa-state/alsa-state.bbappend
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -1,10 +1,10 @@
# Append path for freescale layer to include alsa-state asound.conf
-FILESEXTRAPATHS_prepend_mx6 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx7 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx8 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_use-mainline-bsp := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx6 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx7 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx8 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:use-mainline-bsp := "${THISDIR}/${PN}/imx:"

-PACKAGE_ARCH_mx6 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_use-mainline-bsp = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:use-mainline-bsp = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/atf/qoriq-atf_1.5.bb b/recipes-bsp/atf/qoriq-atf_1.5.bb
index 192083348ea9..b03a6bcb95f5 100644
--- a/recipes-bsp/atf/qoriq-atf_1.5.bb
+++ b/recipes-bsp/atf/qoriq-atf_1.5.bb
@@ -8,7 +8,7 @@ PV = "1.5+git${SRCPV}"
inherit deploy

DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native mbedtls rcw cst-native"
-DEPENDS_append_lx2160a = " ddr-phy"
+DEPENDS:append:lx2160a = " ddr-phy"
do_compile[depends] += "u-boot:do_deploy rcw:do_deploy uefi:do_deploy"

S = "${WORKDIR}/git"
@@ -21,12 +21,12 @@ COMPATIBLE_MACHINE = "(qoriq)"
PACKAGE_ARCH = "${MACHINE_ARCH}"

PLATFORM = "${MACHINE}"
-PLATFORM_ls1088ardb-pb = "ls1088ardb"
+PLATFORM:ls1088ardb-pb = "ls1088ardb"
PLATFORM_ADDITIONAL_TARGET ??= ""
-PLATFORM_ADDITIONAL_TARGET_ls1012afrwy = "ls1012afrwy_512mb"
+PLATFORM_ADDITIONAL_TARGET:ls1012afrwy = "ls1012afrwy_512mb"

RCW_FOLDER ?= "${MACHINE}"
-RCW_FOLDER_ls1088ardb-pb = "ls1088ardb"
+RCW_FOLDER:ls1088ardb-pb = "ls1088ardb"

# requires CROSS_COMPILE set by hand as there is no configure script
export CROSS_COMPILE="${TARGET_PREFIX}"
@@ -56,16 +56,16 @@ PACKAGECONFIG[optee] = ",,optee-os-qoriq"
uboot_boot_sec ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa-secure-boot"
uboot_boot ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa"
rcw ?= ""
-rcw_ls1012a = "_default"
+rcw:ls1012a = "_default"
rcwsec ?= "_sben"

chassistype ?= "ls2088_1088"
-chassistype_ls1012a = "ls104x_1012"
-chassistype_ls1043a = "ls104x_1012"
-chassistype_ls1046a = "ls104x_1012"
+chassistype:ls1012a = "ls104x_1012"
+chassistype:ls1043a = "ls104x_1012"
+chassistype:ls1046a = "ls104x_1012"

ddrphyopt ?= ""
-ddrphyopt_lx2160a = "fip_ddr_sec"
+ddrphyopt:lx2160a = "fip_ddr_sec"

do_configure[noexec] = "1"

diff --git a/recipes-bsp/atf/qoriq-atf_2.3.bb b/recipes-bsp/atf/qoriq-atf_2.3.bb
index aed32851bc42..2698bd32a99c 100644
--- a/recipes-bsp/atf/qoriq-atf_2.3.bb
+++ b/recipes-bsp/atf/qoriq-atf_2.3.bb
@@ -47,7 +47,7 @@ do_compile() {
if [ "${NXP_COT}" = "true" -a "${ARM_COT}" = "true" ]; then
bbfatal " \
Error!, Both ARM CoT and NXP CoT are enabled. Only one CoT is built in a yocto build, \
- Don't add nxp-cot and arm-cot into DISTRO_FEATURES_append at the same time."
+ Don't add nxp-cot and arm-cot into DISTRO_FEATURES:append at the same time."
fi

if [ "${NXP_COT}" = "true" ]; then
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
index 650c1cfded61..6ea16d5be67a 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
@@ -19,5 +19,5 @@ addtask deploy after do_install before do_build
PACKAGE_ARCH = "${MACHINE_SOCARCH}"

COMPATIBLE_MACHINE = "(mx8)"
-COMPATIBLE_MACHINE_mx8m = "(^$)"
-COMPATIBLE_MACHINE_mx8x = "(^$)"
+COMPATIBLE_MACHINE:mx8m = "(^$)"
+COMPATIBLE_MACHINE:mx8x = "(^$)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
index 8ff4a3216060..34040b287de7 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
@@ -65,7 +65,7 @@ do_install() {
# as second one, and for every file match - it creates a separate package,
# which contains only files that matches the pattern.
#
-python populate_packages_prepend() {
+python populate_packages:prepend() {
easrcdir = bb.data.expand('${nonarch_base_libdir}/firmware/imx/easrc', d)
do_split_packages(d, easrcdir, '^easrc-([^_]*).*\.bin',
output_pattern='firmware-imx-easrc-%s',
diff --git a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
index e996c62de957..fd0c2e742265 100644
--- a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
+++ b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
@@ -9,7 +9,7 @@ LICENSE = "Proprietary"
DEPENDS = "libnl zlib"

FCC_TOOLS_FOLDER ?= "qca9377_qca6174_arm32"
-FCC_TOOLS_FOLDER_aarch64 = "qca9377_qca6174_arm64"
+FCC_TOOLS_FOLDER:aarch64 = "qca9377_qca6174_arm64"

do_install() {
install -d ${D}${sbindir}/fcc_tools
@@ -17,4 +17,4 @@ do_install() {
}

COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-bsp/formfactor/formfactor_%.bbappend b/recipes-bsp/formfactor/formfactor_%.bbappend
index 15f8f4e8c2d4..83cce1310fbb 100644
--- a/recipes-bsp/formfactor/formfactor_%.bbappend
+++ b/recipes-bsp/formfactor/formfactor_%.bbappend
@@ -1,2 +1,2 @@
# Append path for i.MX custom matchconfig
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-atf/imx-atf_2.4.bb
index f4db002be302..536a0a737cab 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.4.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.4.bb
@@ -27,7 +27,7 @@ EXTRA_OEMAKE += " \

BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}"

-CFLAGS_remove_mx8mq = "-O2"
+CFLAGS:remove:mx8mq = "-O2"

do_compile() {
# Clear LDFLAGS to avoid the option -Wl recognize issue
diff --git a/recipes-bsp/imx-lib/imx-lib_git.bb b/recipes-bsp/imx-lib/imx-lib_git.bb
index c56190702be9..a296b185da94 100644
--- a/recipes-bsp/imx-lib/imx-lib_git.bb
+++ b/recipes-bsp/imx-lib/imx-lib_git.bb
@@ -20,15 +20,15 @@ S = "${WORKDIR}/git"

inherit use-imx-headers

-PLATFORM_mx6q = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6S"
-PLATFORM_mx6sll = "IMX6UL"
-PLATFORM_mx6sx = "IMX6S"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx6ull = "IMX6UL"
-PLATFORM_mx7d = "IMX7"
-PLATFORM_mx7ulp = "IMX7"
+PLATFORM:mx6q = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6S"
+PLATFORM:mx6sll = "IMX6UL"
+PLATFORM:mx6sx = "IMX6S"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx6ull = "IMX6UL"
+PLATFORM:mx7d = "IMX7"
+PLATFORM:mx7ulp = "IMX7"

PARALLEL_MAKE="-j 1"
EXTRA_OEMAKE = ""
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
index 422670bed322..484db354a75b 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
@@ -10,8 +10,8 @@ SECTION = "BSP"
inherit use-imx-security-controller-firmware

IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware imx-seco"
-IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m"
-IMX_EXTRA_FIRMWARE_mx8x = "imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8m = "firmware-imx-8m"
+IMX_EXTRA_FIRMWARE:mx8x = "imx-sc-firmware imx-seco"
DEPENDS += " \
u-boot \
${IMX_EXTRA_FIRMWARE} \
@@ -20,7 +20,7 @@ DEPENDS += " \
"
# xxd is a dependency of fspi_packer.sh
DEPENDS += "xxd-native"
-DEPENDS_append_mx8m = " u-boot-mkimage-native dtc-native"
+DEPENDS:append:mx8m = " u-boot-mkimage-native dtc-native"
BOOT_NAME = "imx-boot"
PROVIDES = "${BOOT_NAME}"

@@ -41,7 +41,7 @@ do_compile[depends] += " \
SC_FIRMWARE_NAME ?= "scfw_tcm.bin"

ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"

UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
@@ -58,20 +58,20 @@ IMXBOOT_TARGETS ?= \
'flash_multi_cores flash_dcd', d), d)}"

BOOT_STAGING = "${S}/${IMX_BOOT_SOC_TARGET}"
-BOOT_STAGING_mx8m = "${S}/iMX8M"
-BOOT_STAGING_mx8dx = "${S}/iMX8QX"
+BOOT_STAGING:mx8m = "${S}/iMX8M"
+BOOT_STAGING:mx8dx = "${S}/iMX8QX"

SOC_FAMILY = "INVALID"
-SOC_FAMILY_mx8 = "mx8"
-SOC_FAMILY_mx8m = "mx8m"
-SOC_FAMILY_mx8x = "mx8x"
+SOC_FAMILY:mx8 = "mx8"
+SOC_FAMILY:mx8m = "mx8m"
+SOC_FAMILY:mx8x = "mx8x"

REV_OPTION ?= ""
-REV_OPTION_mx8qxp = \
+REV_OPTION:mx8qxp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', '', \
'REV=C0', d)}"

-compile_mx8m() {
+compile:mx8m() {
bbnote 8MQ/8MM/8MN/8MP boot binary build
for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
bbnote "Copy ddr_firmware: ${ddr_firmware} from ${DEPLOY_DIR_IMAGE} -> ${BOOT_STAGING} "
@@ -88,7 +88,7 @@ compile_mx8m() {
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin
}
-compile_mx8() {
+compile:mx8() {
bbnote 8QM boot binary build
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
@@ -100,7 +100,7 @@ compile_mx8() {
fi
}

-compile_mx8x() {
+compile:mx8x() {
bbnote 8QX boot binary build
cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
@@ -140,7 +140,7 @@ do_install () {
done
}

-deploy_mx8m() {
+deploy:mx8m() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
${DEPLOYDIR}/${BOOT_TOOLS}
@@ -153,7 +153,7 @@ deploy_mx8m() {
install -m 0755 ${BOOT_STAGING}/mkimage_fit_atf.sh ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${BOOT_STAGING}/mkimage_uboot ${DEPLOYDIR}/${BOOT_TOOLS}
}
-deploy_mx8() {
+deploy:mx8() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
@@ -162,7 +162,7 @@ deploy_mx8() {
${DEPLOYDIR}/${BOOT_TOOLS}
fi
}
-deploy_mx8x() {
+deploy:mx8x() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
index f9943342962e..90e3ebf13ce7 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
@@ -16,12 +16,12 @@ do_compile () {
cd ${S}
oe_runmake clean
oe_runmake bin
- oe_runmake -C iMX8M -f soc.mak mkimage_imx8
+ oe_runmake -C iMX8M -f soc.mak mkimage:imx8
}

do_install () {
cd ${S}
install -d ${D}${bindir}
- install -m 0755 iMX8M/mkimage_imx8 ${D}${bindir}/mkimage_imx8m
- install -m 0755 mkimage_imx8 ${D}${bindir}/mkimage_imx8
+ install -m 0755 iMX8M/mkimage:imx8 ${D}${bindir}/mkimage_imx8m
+ install -m 0755 mkimage:imx8 ${D}${bindir}/mkimage_imx8
}
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
index b8c3d3c3cf4f..6eb65b811aa2 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
@@ -15,10 +15,10 @@ SRC_URI[sha256sum] = "df0fe17c93e4c2835542d6b1b2557524f034e378b643100cd838225e82

BOARD_TYPE ?= "mek"
SC_FIRMWARE_NAME ?= "INVALID"
-SC_FIRMWARE_NAME_mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"

symlink_name = "scfw_tcm.bin"

diff --git a/recipes-bsp/imx-test/imx-test_git.bb b/recipes-bsp/imx-test/imx-test_git.bb
index 118590d5a93b..ad072c5f4d71 100644
--- a/recipes-bsp/imx-test/imx-test_git.bb
+++ b/recipes-bsp/imx-test/imx-test_git.bb
@@ -9,9 +9,9 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-or-later;md5=fed54355545ffd980b814dab4a3b312c"

DEPENDS = "alsa-lib libdrm"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " virtual/imxvpu"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " virtual/imxvpu"

PE = "1"
PV = "7.0+${SRCPV}"
@@ -29,22 +29,22 @@ inherit module-base use-imx-headers
INHIBIT_PACKAGE_STRIP = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"

-PLATFORM_mx6q = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6SL"
-PLATFORM_mx6sll = "IMX6SL"
-PLATFORM_mx6sx = "IMX6SX"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx7d = "IMX7D"
-PLATFORM_mx7ulp = "IMX7D"
-PLATFORM_mx8 = "IMX8"
+PLATFORM:mx6q = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6SL"
+PLATFORM:mx6sll = "IMX6SL"
+PLATFORM:mx6sx = "IMX6SX"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx7d = "IMX7D"
+PLATFORM:mx7ulp = "IMX7D"
+PLATFORM:mx8 = "IMX8"

PARALLEL_MAKE = "-j 1"
EXTRA_OEMAKE += "${PACKAGECONFIG_CONFARGS}"

PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_mx8m = " swpdm"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:mx8m = " swpdm"

PACKAGECONFIG[x11] = ",,libx11 libxdamage libxrender libxrandr"
PACKAGECONFIG[vpu] = "HAS_VPU=true,HAS_VPU=false,virtual/imxvpu"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
index 88b9ee0ef218..d362fce3b83e 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cd8bc2a79509c22fc9c1782a151210b1"

DEPENDS = "imx-vpu-hantro"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

SRC_URI = " \
${FSL_MIRROR}/${BP}.tar.gz \
@@ -13,9 +13,9 @@ SRC_URI = " \
SRC_URI[md5sum] = "65417710ef22214523c37f50f34b6ab2"
SRC_URI[sha256sum] = "897d174c4c0818f31012d8a60ed51fc83fdfc55fca2d2b0fc24a0db3e9f3b6e8"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

EXTRA_OEMAKE = " \
CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
index 20ac87c747db..d2fc8a1123ac 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
@@ -14,9 +14,9 @@ inherit fsl-eula-unpack use-imx-headers

PARALLEL_MAKE="-j 1"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

EXTRA_OEMAKE = " \
CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
index ad44065ae576..36c3fee3a7a7 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
@@ -42,7 +42,7 @@ EXTRA_OECMAKE += " \
-Wno-dev \
"

-do_configure_prepend() {
+do_configure:prepend() {
export SDKTARGETSYSROOT=${STAGING_DIR_HOST}
}

diff --git a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
index 726b1e16d84e..e57a4273bd36 100644
--- a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
+++ b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
@@ -26,15 +26,15 @@ EXTRA_OECONF = "--imx-linux-headers-path=${STAGING_INCDIR_IMX} \
# libg2d. However, that implementation's g2d_alloc() function
# is broken, so we cannot use it.
LIBG2D_PACKAGECONFIG = "g2d"
-LIBG2D_PACKAGECONFIG_imxdpu = ""
+LIBG2D_PACKAGECONFIG:imxdpu = ""

PACKAGECONFIG ?= " "
-PACKAGECONFIG_append_imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
-PACKAGECONFIG_append_imxipu = " ipu"
-PACKAGECONFIG_append_imxpxp = " pxp"
-PACKAGECONFIG_append_mx8m = " ion dwl"
-PACKAGECONFIG_append_mx8qm = " ion"
-PACKAGECONFIG_append_mx8qxp = " ion"
+PACKAGECONFIG:append:imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
+PACKAGECONFIG:append:imxipu = " ipu"
+PACKAGECONFIG:append:imxpxp = " pxp"
+PACKAGECONFIG:append:mx8m = " ion dwl"
+PACKAGECONFIG:append:mx8qm = " ion"
+PACKAGECONFIG:append:mx8qxp = " ion"

HANTRO_CONF = "--hantro-headers-path=${STAGING_INCDIR}/hantro_dec --hantro-decoder-version=G2"

diff --git a/recipes-bsp/mc-utils/mc-utils_git.bb b/recipes-bsp/mc-utils/mc-utils_git.bb
index b3c79b99138e..a2f81fe0dc0a 100644
--- a/recipes-bsp/mc-utils/mc-utils_git.bb
+++ b/recipes-bsp/mc-utils/mc-utils_git.bb
@@ -15,13 +15,13 @@ SRCREV = "8e0b863693fc2ccbc62a62c79b4e3db6da88c16e"
S = "${WORKDIR}/git"

MC_CFG ?= ""
-MC_CFG_ls1088a = "ls1088a"
-MC_CFG_ls2088a = "ls2088a"
-MC_CFG_lx2160a = "lx2160a"
-MC_CFG_lx2162aqds = "lx2162aqds"
+MC_CFG:ls1088a = "ls1088a"
+MC_CFG:ls2088a = "ls2088a"
+MC_CFG:lx2160a = "lx2160a"
+MC_CFG:lx2162aqds = "lx2162aqds"

MC_FLAVOUR ?= "RDB"
-MC_FLAVOUR_lx2162a = ""
+MC_FLAVOUR:lx2162a = ""

do_compile () {
oe_runmake -C config
diff --git a/recipes-bsp/rcw/rcw_git.bb b/recipes-bsp/rcw/rcw_git.bb
index 693506157188..637035b2064c 100644
--- a/recipes-bsp/rcw/rcw_git.bb
+++ b/recipes-bsp/rcw/rcw_git.bb
@@ -17,9 +17,9 @@ export PYTHON = "${USRBINPATH}/python3"
M="${@d.getVar('MACHINE').replace('-64b','').replace('-32b','').replace('-${SITEINFO_ENDIANNESS}','')}"

BOARD_TARGETS="${M}"
-BOARD_TARGETS_ls2088ardb="${M} ${M}_rev1.1"
-BOARD_TARGETS_ls1088ardb-pb="ls1088ardb"
-BOARD_TARGETS_lx2160ardb = "${M} ${M}_rev2"
+BOARD_TARGETS:ls2088ardb="${M} ${M}_rev1.1"
+BOARD_TARGETS:ls1088ardb-pb="ls1088ardb"
+BOARD_TARGETS:lx2160ardb = "${M} ${M}_rev2"

do_compile () {
oe_runmake BOARDS="${BOARD_TARGETS}" DESTDIR=${D}/boot/rcw/
diff --git a/recipes-bsp/u-boot/libubootenv_%.bbappend b/recipes-bsp/u-boot/libubootenv_%.bbappend
index 2633c344739b..619b510e1e1c 100644
--- a/recipes-bsp/u-boot/libubootenv_%.bbappend
+++ b/recipes-bsp/u-boot/libubootenv_%.bbappend
@@ -29,8 +29,8 @@ def fixup_uboot_config_dependency(d):
# | Signed-off-by: Ming Liu <liu.ming50@...>
# | Signed-off-by: Richard Purdie <richard.purdie@...>
# `----
- ubootmachine = d.getVar("UBOOT_MACHINE_pn-%s" % imx_default_bootloader)
- ubootconfig = (d.getVar("UBOOT_CONFIG_pn-%s" % imx_default_bootloader) or "").split()
+ ubootmachine = d.getVar("UBOOT_MACHINE:pn-%s" % imx_default_bootloader)
+ ubootconfig = (d.getVar("UBOOT_CONFIG:pn-%s" % imx_default_bootloader) or "").split()

d.setVar("UBOOT_CONFIG", ubootconfig)
d.setVar("UBOOT_MACHINE", ubootmachine)
diff --git a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
index 7f02746b060f..2e79166b279a 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-fslc:"

require u-boot-fslc_${PV}.bb
require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb b/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
index 4f97c722dd6f..2e7bde3838f9 100644
--- a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
@@ -12,7 +12,7 @@ DEPENDS += "bc-native dtc-native python3-setuptools-native"

# Location known to imx-boot component, where U-Boot artifacts
# should be additionally deployed.
-# See below note above do_deploy_append_mx8m for the purpose of
+# See below note above do_deploy:append:mx8m for the purpose of
# this delopyment location
BOOT_TOOLS = "imx-boot-tools"

@@ -48,7 +48,7 @@ EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CPPFLAGS}" \
# starts to use it - below append would not be necessary.
# Once all mx8m derivatives are migrated to use the 'flash.bin' boot
# container - this append can be dropped completely.
-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
# Deploy the mkimage, u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
index 2b296c192909..af5028896a34 100644
--- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-imx:"

require u-boot-imx_${PV}.bb
require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
index 6a279a12533d..bb5809e2a179 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
@@ -7,7 +7,7 @@ require u-boot-imx-common_${PV}.inc

PROVIDES += "u-boot"

-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
# Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
index 57f2780314c8..b6eee1d931a2 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
@@ -19,14 +19,14 @@ SRCREV= "f46a944f715f284aff1d42c009680ffe0be4058f"

S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
-PV_append = "+fslgit"
+PV:append = "+fslgit"
LOCALVERSION = "+fsl"

INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = "libgcc virtual/${TARGET_PREFIX}gcc bison-native bc-native swig-native python3-native"
-DEPENDS_append_qoriq-arm64 = " dtc-native"
-DEPENDS_append_qoriq-arm = " dtc-native"
-DEPENDS_append_qoriq-ppc = " boot-format-native"
+DEPENDS:append:qoriq-arm64 = " dtc-native"
+DEPENDS:append:qoriq-arm = " dtc-native"
+DEPENDS:append:qoriq-ppc = " boot-format-native"

python () {
if d.getVar("TCMODE") == "external-fsl":
@@ -41,8 +41,8 @@ python () {
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib32-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' + d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
- d.setVar('DEPENDS_append', ' lib32-gcc-cross-powerpc lib32-libgcc')
- d.setVar('PATH_append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib32-gcc-cross-powerpc lib32-libgcc')
+ d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir + '/lib32-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'powerpc' + sys_multilib + '-')
elif "fsl-lsch2-32b:" in arch:
@@ -51,8 +51,8 @@ python () {
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib64-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' + d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
- d.setVar('DEPENDS_append', ' lib64-gcc-cross-aarch64 lib64-libgcc')
- d.setVar('PATH_append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib64-gcc-cross-aarch64 lib64-libgcc')
+ d.setVar('PATH:append', ':' + d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir + '/lib64-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'aarch64' + sys_multilib + '-')
}
@@ -66,7 +66,7 @@ EXTRA_OEMAKE = 'CROSS_COMPILE=${WRAP_TARGET_PREFIX} CC="${WRAP_TARGET_PREFIX}gcc
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE} STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'

-do_compile_append_qoriq() {
+do_compile:append:qoriq() {
unset i j k
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
diff --git a/recipes-connectivity/iproute2/iproute2_%.bbappend b/recipes-connectivity/iproute2/iproute2_%.bbappend
index 4426eca57f1a..0f9b5a87defd 100644
--- a/recipes-connectivity/iproute2/iproute2_%.bbappend
+++ b/recipes-connectivity/iproute2/iproute2_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append () {
+do_install:append () {
install -d ${D}/usr/include/tc
cp -a ${B}/include ${D}/usr/include
cp -a ${B}/tc/*.h ${D}/usr/include/tc
diff --git a/recipes-connectivity/openssl/openssl_%.bbappend b/recipes-connectivity/openssl/openssl_%.bbappend
index ce4ff276e633..e88de3618243 100644
--- a/recipes-connectivity/openssl/openssl_%.bbappend
+++ b/recipes-connectivity/openssl/openssl_%.bbappend
@@ -1,8 +1,8 @@
-FILESEXTRAPATHS_append := "${THISDIR}/${PN}-qoriq:"
+FILESEXTRAPATHS:append := "${THISDIR}/${PN}-qoriq:"

-SRC_URI_append_qoriq = " \
+SRC_URI:append:qoriq = " \
file://0001-eng_devcrypto-add-support-for-TLS-algorithms-offload.patch \
file://0002-eng_devcrypto-add-support-for-TLS1.2-algorithms-offl.patch \
"

-PACKAGECONFIG_append_qoriq = " cryptodev-linux"
+PACKAGECONFIG:append:qoriq = " cryptodev-linux"
diff --git a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
index 000578744ac2..46dfc1245600 100644
--- a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
+++ b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
@@ -1,2 +1,2 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

diff --git a/recipes-core/udev/udev-rules-qoriq.bb b/recipes-core/udev/udev-rules-qoriq.bb
index c328f4ccbd97..e39da44ce7f3 100644
--- a/recipes-core/udev/udev-rules-qoriq.bb
+++ b/recipes-core/udev/udev-rules-qoriq.bb
@@ -18,11 +18,11 @@ RULE_t1024 = "72-fsl-dpaa-persistent-networking.rules"
RULE_qoriq-arm64 = "73-fsl-dpaa-persistent-networking.rules \
73-fsl-enetc-networking.rules \
"
-RULE_ls1046a = "73-fsl-dpaa-persistent-networking.rules \
+RULE:ls1046a = "73-fsl-dpaa-persistent-networking.rules \
74-ls1046a-xfi2-networking.rules \
"
-RULE_ls1012a = ""
-RULE_ls2080a = ""
+RULE:ls1012a = ""
+RULE:ls2080a = ""

do_install () {
install -d ${D}${sysconfdir}/udev/rules.d/
diff --git a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
index dfd7fdcfcd20..fe43a5e1883e 100644
--- a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
+++ b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
@@ -32,11 +32,11 @@ python() {

RDEPENDS_${PN}_class-target += "bash"

-EXTRA_OECONF_append_class-target = " --target-list=${@get_qemu_target_list(d)}"
-EXTRA_OECONF_append_class-target_mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
-EXTRA_OECONF_append_class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target_mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}"
+EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}"

-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)}
}

diff --git a/recipes-devtools/qemu/qemu.inc b/recipes-devtools/qemu/qemu.inc
index bf05da9a4c3a..77d067da7ab2 100644
--- a/recipes-devtools/qemu/qemu.inc
+++ b/recipes-devtools/qemu/qemu.inc
@@ -52,7 +52,7 @@ COMPATIBLE_HOST_mipsarchn64 = "null"
# upstream states qemu doesn't work without optimization
DEBUG_BUILD = "0"

-do_install_append() {
+do_install:append() {
# Prevent QA warnings about installed ${localstatedir}/run
if [ -d ${D}${localstatedir}/run ]; then rmdir ${D}${localstatedir}/run; fi
}
@@ -101,9 +101,9 @@ export LIBTOOL="${HOST_SYS}-libtool"

B = "${WORKDIR}/build"

-EXTRA_OECONF_append = " --python=${HOSTTOOLS_DIR}/python3"
+EXTRA_OECONF:append = " --python=${HOSTTOOLS_DIR}/python3"

-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
# Append build host pkg-config paths for native target since the host may provide sdl
BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --variable pc_path pkg-config || echo "")
if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
@@ -127,7 +127,7 @@ do_install () {
# This will trigger a MMU access fault in the virtual CPU. With this change,
# the qemu-mips works fine.
# IMPORTANT: This piece needs to be removed once the root cause is fixed!
-do_install_append() {
+do_install:append() {
if [ -e "${D}/${bindir}/qemu-mips" ]; then
create_wrapper ${D}/${bindir}/qemu-mips \
QEMU_RESERVED_VA=0x0
@@ -147,8 +147,8 @@ make_qemu_wrapper() {
}

# Disable kvm/virgl/mesa on targets that do not support it
-PACKAGECONFIG_remove_darwin = "kvm virglrenderer glx gtk+"
-PACKAGECONFIG_remove_mingw32 = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:darwin = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer glx gtk+"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-ng,--disable-virtfs,libcap-ng attr,"
diff --git a/recipes-dpaa/fm-ucode/fm-ucode_git.bb b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
index 39e4f9d0febb..319a56b33568 100644
--- a/recipes-dpaa/fm-ucode/fm-ucode_git.bb
+++ b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
@@ -13,13 +13,13 @@ SRCREV = "c275e91392e2adab1ed22f3867b8269ca3c54014"
S = "${WORKDIR}/git"

REGLEX ?= "${MACHINE}"
-REGLEX_t1023 = "t1024"
-REGLEX_t1040 = "t1040"
-REGLEX_t1042 = "t1040"
-REGLEX_b4420 = "b4860"
-REGLEX_t4160 = "t4240"
-REGLEX_ls1043a = "ls1043"
-REGLEX_ls1046a = "ls1046"
+REGLEX:t1023 = "t1024"
+REGLEX:t1040 = "t1040"
+REGLEX:t1042 = "t1040"
+REGLEX:b4420 = "b4860"
+REGLEX:t4160 = "t4240"
+REGLEX:ls1043a = "ls1043"
+REGLEX:ls1046a = "ls1046"

do_install () {
UCODE=`echo ${REGLEX} | sed -e 's,-.*$,,' -e 's,[a-zA-Z]*$,,'`
diff --git a/recipes-dpaa2/aiopsl/aiopsl_git.bb b/recipes-dpaa2/aiopsl/aiopsl_git.bb
index a1b0028938e5..794d013c5c2b 100644
--- a/recipes-dpaa2/aiopsl/aiopsl_git.bb
+++ b/recipes-dpaa2/aiopsl/aiopsl_git.bb
@@ -13,8 +13,8 @@ SRCREV = "87d83d8e99770325cc7ad9e10965c9959e7cb828"
do_configure[noexec] = "1"
do_compile[noexec] = "1"

-DEMOS_PATH_ls2088a = "LS2088A"
-DEMOS_PATH_ls1088a = "LS1088A"
+DEMOS_PATH:ls2088a = "LS2088A"
+DEMOS_PATH:ls1088a = "LS1088A"

do_install () {
install -d ${D}/usr/aiop/bin
diff --git a/recipes-dpaa2/management-complex/management-complex_10.14.1.bb b/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
index ddb305c1a36c..69804e9fa68e 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
@@ -11,10 +11,10 @@ SRCREV = "408110ee632f6291545b0b156cd74e7e3b4612cc"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

do_install () {
install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-complex_10.20.4.bb b/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
index 3e14a26eabeb..7e0059703738 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
@@ -11,10 +11,10 @@ SRCREV = "f73683596a7b72124d67b62e64f3dc2bb36b9321"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

do_install () {
install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-complex_10.24.0.bb b/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
index 17049a15e7c8..12c1a4d89dff 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
@@ -11,11 +11,11 @@ SRCREV = "324817697a4c89a9a940fb7dba1b18909913ee20"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx216xa"
-REGLEX_lx2162a = "lx216xa"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx216xa"
+REGLEX:lx2162a = "lx216xa"

do_install () {
install -d ${D}/boot
diff --git a/recipes-extended/dpdk/dpdk.inc b/recipes-extended/dpdk/dpdk.inc
index 61c02ae75f90..2d07187d14fd 100644
--- a/recipes-extended/dpdk/dpdk.inc
+++ b/recipes-extended/dpdk/dpdk.inc
@@ -3,23 +3,23 @@ HOMEPAGE = "http://dpdk.org"

RDEPENDS_${PN} += "python3-core"
DEPENDS = "virtual/kernel openssl"
-DEPENDS_append_x86-64 = " numactl"
+DEPENDS:append:x86-64 = " numactl"
do_configure[depends] += "virtual/kernel:do_shared_workdir"

inherit module

COMPATIBLE_HOST = '(aarch64|arm|i.86|x86_64).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
-COMPATIBLE_HOST_armv4 = 'null'
-COMPATIBLE_HOST_armv5 = 'null'
-COMPATIBLE_HOST_armv6 = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
+COMPATIBLE_HOST:armv4 = 'null'
+COMPATIBLE_HOST:armv5 = 'null'
+COMPATIBLE_HOST:armv6 = 'null'

COMPATIBLE_MACHINE = "(imx|qoriq)"

-DPDK_RTE_TARGET_x86-64 = "x86_64-native-linuxapp-gcc"
-DPDK_RTE_TARGET_x86 = "i686-native-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7a = "${ARCH}-armv7a-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:x86-64 = "x86_64-native-linuxapp-gcc"
+DPDK_RTE_TARGET:x86 = "i686-native-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7a = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
DPDK_RTE_TARGET ?= "${ARCH}-dpaa-linuxapp-gcc"

export RTE_TARGET = "${DPDK_RTE_TARGET}"
diff --git a/recipes-extended/dpdk/dpdk_19.11-20.12.bb b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
index 426713c2d1d7..37582124b021 100644
--- a/recipes-extended/dpdk/dpdk_19.11-20.12.bb
+++ b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
@@ -13,7 +13,7 @@ SRCREV = "7071c27f6f5aefb57de1cffab3484707b1e82e2b"

include dpdk.inc

-do_install_append () {
+do_install:append () {
# Remove the unneeded dir
rm -rf ${D}/${datadir}/${RTE_TARGET}/app
}
diff --git a/recipes-extended/jailhouse/jailhouse_0.12.bb b/recipes-extended/jailhouse/jailhouse_0.12.bb
index c49d7f5b194e..a83592d24f1f 100644
--- a/recipes-extended/jailhouse/jailhouse_0.12.bb
+++ b/recipes-extended/jailhouse/jailhouse_0.12.bb
@@ -39,9 +39,9 @@ CELLCONF_DIR ?= "${JH_DATADIR}/configs"
INMATES_DIR ?= "${JH_DATADIR}/inmates"

JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_arm ?= "${S}/ci/jailhouse-config-banana-pi.h"
+JH_CONFIG:x86 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:arm ?= "${S}/ci/jailhouse-config-banana-pi.h"

do_configure() {
if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ];
diff --git a/recipes-extended/odp/odp-counters_git.bb b/recipes-extended/odp/odp-counters_git.bb
index 860dd5faf450..9d88ea43edee 100644
--- a/recipes-extended/odp/odp-counters_git.bb
+++ b/recipes-extended/odp/odp-counters_git.bb
@@ -2,7 +2,7 @@ require odp.inc

inherit module

-do_compile_prepend () {
+do_compile:prepend () {
export KERNEL_PATH="${STAGING_KERNEL_DIR}"
export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
cd ${S}/test/debug/perf_counters
diff --git a/recipes-extended/odp/odp-module_git.bb b/recipes-extended/odp/odp-module_git.bb
index 46b896547a91..8bcdcd81573d 100644
--- a/recipes-extended/odp/odp-module_git.bb
+++ b/recipes-extended/odp/odp-module_git.bb
@@ -2,7 +2,7 @@ require odp.inc

inherit module

-do_compile_prepend () {
+do_compile:prepend () {
export KERNEL_PATH="${STAGING_KERNEL_DIR}"
export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
cd ${S}/kern
diff --git a/recipes-extended/odp/odp.inc b/recipes-extended/odp/odp.inc
index 129f77ae108b..d1e10b0f94d4 100644
--- a/recipes-extended/odp/odp.inc
+++ b/recipes-extended/odp/odp.inc
@@ -6,7 +6,7 @@ SECTION = "console/network"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=ca6103dc75397fb6bec596187d6b7829"

-FILESEXTRAPATHS_prepend := "${THISDIR}/odp:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/odp:"

SRC_URI = " \
git://source.codeaurora.org/external/qoriq/qoriq-components/odp;nobranch=1 \
diff --git a/recipes-extended/odp/odp_git.bb b/recipes-extended/odp/odp_git.bb
index 00575e24d5a8..bfe251ed6bda 100644
--- a/recipes-extended/odp/odp_git.bb
+++ b/recipes-extended/odp/odp_git.bb
@@ -9,14 +9,14 @@ DEPENDS = "openssl cunit libxml2"
RDEPENDS_${PN} = "bash libcrypto libssl odp-module odp-counters"

ODP_SOC ?= ""
-ODP_SOC_ls1043ardb = "LS1043"
-ODP_SOC_ls1046ardb = "LS1046"
+ODP_SOC:ls1043ardb = "LS1043"
+ODP_SOC:ls1046ardb = "LS1046"
ODP_PLATFORM ?= "linux-dpaa2"
ODP_BUILD_TYPE ?= "ls2088"
-ODP_BUILD_TYPE_ls1043ardb = "ls1043"
-ODP_BUILD_TYPE_ls1046ardb = "ls1046"
-ODP_BUILD_TYPE_ls2080ardb = "ls2080"
-ODP_BUILD_TYPE_ls1088ardb = "ls1088"
+ODP_BUILD_TYPE:ls1043ardb = "ls1043"
+ODP_BUILD_TYPE:ls1046ardb = "ls1046"
+ODP_BUILD_TYPE:ls2080ardb = "ls2080"
+ODP_BUILD_TYPE:ls1088ardb = "ls1088"

EXTRA_OECONF = "--with-platform=${ODP_PLATFORM} \
--enable-test-vald \
@@ -34,17 +34,17 @@ CFLAGS += "-Wno-format-truncation -Wno-maybe-uninitialized -Wno-implicit-fallthr

PACKAGECONFIG[perf] = "--enable-test-perf,,,"

-do_configure_prepend () {
+do_configure:prepend () {
export SOC=${ODP_SOC}
${S}/bootstrap
}

-do_compile_prepend () {
+do_compile:prepend () {
export SOC=${ODP_SOC}
export ARCH=${TUNE_ARCH}
}

-do_install_append () {
+do_install:append () {
install -d ${D}${includedir}/odp/kni
install -d ${D}${includedir}/odp/kern
install -d ${D}${includedir}/odp/flib/mc
diff --git a/recipes-extended/procps/procps_%.bbappend b/recipes-extended/procps/procps_%.bbappend
index face0ccc0f61..43fb349b8de2 100644
--- a/recipes-extended/procps/procps_%.bbappend
+++ b/recipes-extended/procps/procps_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
for keyword in \
net.ipv4.conf.default.rp_filter \
net.ipv4.conf.all.rp_filter \
diff --git a/recipes-extended/testfloat/testfloat_2a.bb b/recipes-extended/testfloat/testfloat_2a.bb
index 800cef3d172e..6777249f39e3 100644
--- a/recipes-extended/testfloat/testfloat_2a.bb
+++ b/recipes-extended/testfloat/testfloat_2a.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://testfloat/testfloat.txt;beginline=87;endline=95;md5=b
SRC_URI = " http://www.jhauser.us/arithmetic/TestFloat-2a.tar.Z;name=TestFloat \
http://www.jhauser.us/arithmetic/SoftFloat-2b.tar.Z;name=SoftFloat \
"
-SRC_URI_append_qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
+SRC_URI:append:qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
file://TestFloat-powerpc-E500v2-SPE-1.patch \
file://Yocto-replace-COMPILE_PREFIX-gcc.patch \
"
diff --git a/recipes-extended/tsntool/tsntool_git.bb b/recipes-extended/tsntool/tsntool_git.bb
index 8ef79d27c8bd..ea452f7c82f3 100644
--- a/recipes-extended/tsntool/tsntool_git.bb
+++ b/recipes-extended/tsntool/tsntool_git.bb
@@ -14,7 +14,7 @@ S = "${WORKDIR}/git"

do_configure[depends] += "virtual/kernel:do_shared_workdir"

-do_compile_prepend() {
+do_compile:prepend() {
mkdir -p ${S}/include/linux
cp -r ${STAGING_KERNEL_DIR}/include/uapi/linux/tsn.h ${S}/include/linux
}
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
index 4ad257ee9364..9229e26683a6 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Add packages for ISP build"
inherit packagegroup

ISP_PKGS ?= ""
-ISP_PKGS_mx8mp = " \
+ISP_PKGS:mx8mp = " \
isp-imx \
basler-camera \
basler-camera-dev \
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
index aeba762386f3..acadd526bc61 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
@@ -10,4 +10,4 @@ RDEPENDS_${PN} = " \
"

COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
index 43df5a70e670..233e3d00fa92 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
@@ -9,4 +9,4 @@ RDEPENDS_${PN} = " \
firmware-qca9377 \
"
COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-graphics/cairo/cairo_%.bbappend b/recipes-graphics/cairo/cairo_%.bbappend
index 5b1562ab8b4d..2c73c7f32f25 100644
--- a/recipes-graphics/cairo/cairo_%.bbappend
+++ b/recipes-graphics/cairo/cairo_%.bbappend
@@ -1,2 +1,2 @@
-PACKAGECONFIG_append_imxgpu3d = " egl glesv2"
-PACKAGECONFIG_remove_imxgpu3d = "opengl"
+PACKAGECONFIG:append:imxgpu3d = " egl glesv2"
+PACKAGECONFIG:remove:imxgpu3d = "opengl"
diff --git a/recipes-graphics/drm/libdrm_2.4.102.imx.bb b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
index 6935b7822b63..371d2e1775d8 100644
--- a/recipes-graphics/drm/libdrm_2.4.102.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
@@ -64,10 +64,10 @@ FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*"

BBCLASSEXTEND = "native nativesdk"

-PACKAGES_prepend_imxgpu = "${PN}-vivante "
-RRECOMMENDS_${PN}-drivers_append_imxgpu = " ${PN}-vivante"
+PACKAGES:prepend:imxgpu = "${PN}-vivante "
+RRECOMMENDS_${PN}-drivers:append:imxgpu = " ${PN}-vivante"
FILES_${PN}-vivante = "${libdir}/libdrm_vivante.so.*"
-PACKAGECONFIG_append_imxgpu = " vivante"
+PACKAGECONFIG:append:imxgpu = " vivante"
PACKAGECONFIG[vivante] = "-Dvivante=true,-Dvivante=false"

PACKAGE_ARCH = "${MACHINE_SOCARCH}"
diff --git a/recipes-graphics/gtk+/gtk+3_%.bbappend b/recipes-graphics/gtk+/gtk+3_%.bbappend
index be2bac75fbf8..2f108a274b0f 100644
--- a/recipes-graphics/gtk+/gtk+3_%.bbappend
+++ b/recipes-graphics/gtk+/gtk+3_%.bbappend
@@ -1,5 +1,5 @@
-DEPENDS_append_imxgpu2d = " virtual/egl"
+DEPENDS:append:imxgpu2d = " virtual/egl"

-PACKAGECONFIG_remove_imxgpu2d = " \
+PACKAGECONFIG:remove:imxgpu2d = " \
${@bb.utils.contains("DISTRO_FEATURES", "wayland", "x11", "", d)} \
"
diff --git a/recipes-graphics/images/core-image-weston.bbappend b/recipes-graphics/images/core-image-weston.bbappend
index 2a3cde69a8cd..77d2fe747801 100644
--- a/recipes-graphics/images/core-image-weston.bbappend
+++ b/recipes-graphics/images/core-image-weston.bbappend
@@ -1,3 +1,3 @@
# FIXME: i.MX6SL cannot use mesa for Graphics and it lacks GL support,
# so for now we skip it.
-CORE_IMAGE_BASE_INSTALL_remove_mx6sl = "clutter-1.0-examples"
+CORE_IMAGE_BASE_INSTALL:remove:mx6sl = "clutter-1.0-examples"
diff --git a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
index 65ce9cd567b4..d0ac10bdb9a2 100644
--- a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
+++ b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
@@ -11,16 +11,16 @@ S = "${WORKDIR}/git"

inherit cmake pkgconfig perlnative python3native

-PACKAGECONFIG_BACKEND_mx6 = " \
+PACKAGECONFIG_BACKEND:mx6 = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'waffle', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', \
'', d), d)} \
"
-PACKAGECONFIG_BACKEND_mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
-PACKAGECONFIG_BACKEND_mx8 = "waffle"
+PACKAGECONFIG_BACKEND:mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
+PACKAGECONFIG_BACKEND:mx8 = "waffle"

PACKAGECONFIG_GPU2D = ""
-PACKAGECONFIG_GPU2D_imxgpu2d = "vivante"
+PACKAGECONFIG_GPU2D:imxgpu2d = "vivante"

PACKAGECONFIG ??= " \
egl \
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
index 91a5542bd7a4..4c732ff2feb0 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -17,8 +17,8 @@ DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxcb libxshmfence libxxf86vm', \
'', d)} \
"
-DEPENDS_append_imxdrm = " libdrm wayland"
-DEPENDS_append_mx8 = " patchelf-native"
+DEPENDS:append:imxdrm = " libdrm wayland"
+DEPENDS:append:mx8 = " patchelf-native"

# imx-gpu-viv does not provide everything it needs to for virtual/libgl
# on x11 backend or on Wayland backend with XWayland support.
@@ -26,19 +26,19 @@ DEPENDS_append_mx8 = " patchelf-native"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}"

EXTRA_PROVIDES = ""
-EXTRA_PROVIDES_append_imxgpu3d = " \
+EXTRA_PROVIDES:append:imxgpu3d = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'virtual/libgl', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libgl', \
'', d), d)} \
virtual/libgles1 \
virtual/libgles2 \
"
-EXTRA_PROVIDES_append_mx8 = " \
+EXTRA_PROVIDES:append:mx8 = " \
virtual/libgbm \
"
PROVIDES_OPENVX = ""
-PROVIDES_OPENVX_mx8 = "virtual/libopenvx"
-PROVIDES_OPENVX_mx8mm = ""
+PROVIDES_OPENVX:mx8 = "virtual/libopenvx"
+PROVIDES_OPENVX:mx8mm = ""
PROVIDES += " \
imx-gpu-viv \
libgal-imx \
@@ -52,13 +52,13 @@ PROVIDES += " \
${EXTRA_PROVIDES} \
"

-RPROVIDES_${PN}_imxgpu3d += "imx-gpu-viv"
+RPROVIDES_${PN}:imxgpu3d += "imx-gpu-viv"

PE = "1"

inherit fsl-eula-unpack features_check

-REQUIRED_DISTRO_FEATURES_mx8 = "wayland"
+REQUIRED_DISTRO_FEATURES:mx8 = "wayland"

SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"

@@ -69,7 +69,7 @@ PACKAGECONFIG[valgrind] = ""

# Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below
IMX_PACKAGES_GBM = ""
-IMX_PACKAGES_GBM_mx8 = "libgbm-imx libgbm-imx-dev"
+IMX_PACKAGES_GBM:mx8 = "libgbm-imx libgbm-imx-dev"
PACKAGES =+ "libclc-imx libclc-imx-dev \
libgl-imx libgl-imx-dev \
libgles1-imx libgles1-imx-dev \
@@ -140,21 +140,21 @@ python __anonymous() {
}

IS_MX6SL = "0"
-IS_MX6SL_mx6sl = "1"
+IS_MX6SL:mx6sl = "1"

IS_MX8 = "0"
-IS_MX8_mx8 = "1"
+IS_MX8:mx8 = "1"

PACKAGE_FP_TYPE = "hardfp"

HAS_GBM = "false"
-HAS_GBM_mx8 = "true"
+HAS_GBM:mx8 = "true"

GLES3_HEADER_REMOVALS = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8m = "gl32.h"
-GLES3_HEADER_REMOVALS_mx8mm = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8qxp = ""
-GLES3_HEADER_REMOVALS_mx8qm = ""
+GLES3_HEADER_REMOVALS:mx8m = "gl32.h"
+GLES3_HEADER_REMOVALS:mx8mm = "gl31.h gl32.h"
+GLES3_HEADER_REMOVALS:mx8qxp = ""
+GLES3_HEADER_REMOVALS:mx8qm = ""

do_install () {
install -d ${D}${libdir}
@@ -291,9 +291,9 @@ INSANE_SKIP_libgal-imx += "build-deps"

FILES_libvsc-imx = "${libdir}/libVSC${SOLIBS}"

-FILES_libgbm-imx_mx8 = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
-FILES_libgbm-imx-dev_mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
-RDEPENDS_libgbm-imx_append_mx8 = " libdrm"
+FILES_libgbm-imx:mx8 = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
+FILES_libgbm-imx-dev:mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
+RDEPENDS_libgbm-imx:append:mx8 = " libdrm"
INSANE_SKIP_libgbm-imx += "dev-so"

FILES_libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}"
@@ -358,10 +358,10 @@ INSANE_SKIP_libgc-wayland-protocol-imx += "dev-so"
FILES_libgc-wayland-protocol-imx = "${libdir}/libgc_wayland_protocol${REALSOLIBS} ${libdir}/libgc_wayland_protocol${SOLIBS}"
FILES_libgc-wayland-protocol-imx-dev = "${libdir}/libgc_wayland_protocol${SOLIBSDEV} ${libdir}/pkgconfig/gc_wayland_protocol.pc"

-FILES_imx-gpu-viv-tools = "${bindir}/gmem_info"
+FILES:imx-gpu-viv-tools = "${bindir}/gmem_info"

-FILES_imx-gpu-viv-demos = "/opt"
-INSANE_SKIP_imx-gpu-viv-demos += "rpaths dev-deps"
+FILES:imx-gpu-viv-demos = "/opt"
+INSANE_SKIP:imx-gpu-viv-demos += "rpaths dev-deps"

FILES_libnn-imx = "${libdir}/libNN*${SOLIBS} ${libdir}/libnn*${SOLIBS} ${libdir}/libneuralnetworks${SOLIBS}"
FILES_libnn-imx-dev = "${includedir}/nnrt"
diff --git a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
index 5b82b3f4639b..71baa53d82ef 100644
--- a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
+++ b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
@@ -1,5 +1,5 @@
# Append EGL_CFLAGS to CFLAGS
-CFLAGS_append_imxgpu = " \
+CFLAGS:append:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_API_FB', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-DWL_EGL_PLATFORM', '', d)} \
"
diff --git a/recipes-graphics/libsdl2/libsdl2_%.bbappend b/recipes-graphics/libsdl2/libsdl2_%.bbappend
index 303ea63a7cf2..af9c97bb6e97 100644
--- a/recipes-graphics/libsdl2/libsdl2_%.bbappend
+++ b/recipes-graphics/libsdl2/libsdl2_%.bbappend
@@ -1,8 +1,8 @@
# what vivante driver does libsdl2 mean? Anyway it fails with missing functions as
# VIVANTE_Create VIVANTE_GLES_GetProcAddress VIVANTE_GLES_UnloadLibrary ...
-EXTRA_OECONF_append_imxgpu2d = " --disable-video-vivante"
+EXTRA_OECONF:append:imxgpu2d = " --disable-video-vivante"

-CFLAGS_append_imxgpu = " -DLINUX \
+CFLAGS:append:imxgpu = " -DLINUX \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-DEGL_API_FB', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-DWL_EGL_PLATFORM', '', d)} \
"
diff --git a/recipes-graphics/mesa/mesa-demos_%.bbappend b/recipes-graphics/mesa/mesa-demos_%.bbappend
index 301f1b59f125..4b518185119b 100644
--- a/recipes-graphics/mesa/mesa-demos_%.bbappend
+++ b/recipes-graphics/mesa/mesa-demos_%.bbappend
@@ -1,26 +1,26 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = " file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
+SRC_URI:append:imxgpu = " file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
file://fix-clear-build-break.patch \
file://Add-OpenVG-demos-to-support-wayland.patch"

PACKAGECONFIG_REMOVE_IF_2D_ONLY = ""
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu2d = "gles1 gles2"
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu3d = ""
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu2d = "gles1 gles2"
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu3d = ""
PACKAGECONFIG_REMOVE_IF_GPU = ""
-PACKAGECONFIG_REMOVE_IF_GPU_imxgpu = " \
+PACKAGECONFIG_REMOVE_IF_GPU:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'glu x11', '', d)} \
"
-PACKAGECONFIG_remove = " \
+PACKAGECONFIG:remove = " \
${PACKAGECONFIG_REMOVE_IF_2D_ONLY} \
${PACKAGECONFIG_REMOVE_IF_GPU} \
"

PACKAGECONFIG_APPEND_IF_GPU = ""
-PACKAGECONFIG_APPEND_IF_GPU_imxgpu = " \
+PACKAGECONFIG_APPEND_IF_GPU:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland vg', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glut', '', d)} \
"
-PACKAGECONFIG_append = " \
+PACKAGECONFIG:append = " \
${PACKAGECONFIG_APPEND_IF_GPU} \
"
diff --git a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb b/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
index 2a32c448f436..c58c2cf30dc9 100644
--- a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
+++ b/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
@@ -12,7 +12,7 @@ SRC_URI = "\
do_configure[noexec] = "1"
do_compile[noexec] = "1"

-do_install_use-mainline-bsp() {
+do_install:use-mainline-bsp() {
# MESA global envirronment variables

# systemd
diff --git a/recipes-graphics/mesa/mesa-gl_%.bbappend b/recipes-graphics/mesa/mesa-gl_%.bbappend
index ca1c8f46d680..dafd27f0a68e 100644
--- a/recipes-graphics/mesa/mesa-gl_%.bbappend
+++ b/recipes-graphics/mesa/mesa-gl_%.bbappend
@@ -1 +1 @@
-COMPATIBLE_MACHINE_imxgpu = "(-)"
+COMPATIBLE_MACHINE:imxgpu = "(-)"
diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-graphics/mesa/mesa_%.bbappend
index 423ee63ec638..d0b55cacea4b 100644
--- a/recipes-graphics/mesa/mesa_%.bbappend
+++ b/recipes-graphics/mesa/mesa_%.bbappend
@@ -1,5 +1,5 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_use-mainline-bsp = " \
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:use-mainline-bsp = " \
file://0001-dri-add-createImageWithModifiers2-interface.patch \
file://0002-dri-add-loader_dri_create_image-helper.patch \
file://0003-loader-dri3-convert-to-loader_dri_create_image.patch \
@@ -11,11 +11,11 @@ SRC_URI_append_use-mainline-bsp = " \
file://0009-etnaviv-flush-used-render-buffers-on-context-flush-w.patch \
"

-PROVIDES_remove_imxgpu = "virtual/egl"
-PROVIDES_remove_imxgpu3d = "virtual/libgl virtual/libgles1 virtual/libgles2"
+PROVIDES:remove:imxgpu = "virtual/egl"
+PROVIDES:remove:imxgpu3d = "virtual/libgl virtual/libgles1 virtual/libgles2"

-PACKAGECONFIG_remove_imxgpu = "egl gbm"
-PACKAGECONFIG_remove_imxgpu3d = "gles"
+PACKAGECONFIG:remove:imxgpu = "egl gbm"
+PACKAGECONFIG:remove:imxgpu3d = "gles"

# FIXME: mesa should support 'x11-no-tls' option
python () {
@@ -28,13 +28,13 @@ python () {
}

# Enable Etnaviv and Freedreno support
-PACKAGECONFIG_append_use-mainline-bsp = " gallium etnaviv kmsro freedreno"
+PACKAGECONFIG:append:use-mainline-bsp = " gallium etnaviv kmsro freedreno"

# For NXP BSP, GPU drivers don't support dri
-PACKAGECONFIG_remove_imxgpu_use-nxp-bsp = "dri"
+PACKAGECONFIG:remove:imxgpu:use-nxp-bsp = "dri"

# mainline/etnaviv:
-RRECOMMENDS_${PN}-megadriver_append_use-mainline-bsp = " libdrm-etnaviv mesa-etnaviv-env"
+RRECOMMENDS_${PN}-megadriver:append:use-mainline-bsp = " libdrm-etnaviv mesa-etnaviv-env"

BACKEND = \
"${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -42,7 +42,7 @@ BACKEND = \
'fb', d), d)}"

# FIXME: Dirty hack to allow use of Vivante GPU libGL binary
-do_install_append_imxgpu3d () {
+do_install:append:imxgpu3d () {
rm -f ${D}${libdir}/libGL.* \
${D}${includedir}/GL/gl.h \
${D}${includedir}/GL/glcorearb.h \
@@ -54,6 +54,6 @@ do_install_append_imxgpu3d () {
fi
}

-do_install_append_imxgpu () {
+do_install:append:imxgpu () {
rm -rf ${D}${includedir}/KHR
}
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
index 28e1dc32fcce..1e4d181ce3e5 100644
--- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
+++ b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
@@ -1,3 +1,3 @@
# The i.MX implementation is dynamically loaded, so it requires an
# explicit runtime dependency.
-RRECOMMENDS_${PN}_append_imxgpu = " libvulkan-imx"
+RRECOMMENDS_${PN}:append:imxgpu = " libvulkan-imx"
diff --git a/recipes-graphics/waffle/waffle_%.bbappend b/recipes-graphics/waffle/waffle_%.bbappend
index 9d090bcfe2b0..380273a8c55c 100644
--- a/recipes-graphics/waffle/waffle_%.bbappend
+++ b/recipes-graphics/waffle/waffle_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

SRC_URI += " \
file://0001-meson-Add-missing-wayland-dependency-on-EGL.patch \
@@ -6,11 +6,11 @@ SRC_URI += " \
"

PACKAGECONFIG_IMXGPU_X11 = ""
-PACKAGECONFIG_IMXGPU_X11_imxgpu3d = "x11-egl glx"
+PACKAGECONFIG_IMXGPU_X11:imxgpu3d = "x11-egl glx"
PACKAGECONFIG_IMXGPU_GBM = "gbm"
-PACKAGECONFIG_IMXGPU_GBM_mx6 = ""
-PACKAGECONFIG_IMXGPU_GBM_mx7 = ""
-PACKAGECONFIG_imxgpu = " \
+PACKAGECONFIG_IMXGPU_GBM:mx6 = ""
+PACKAGECONFIG_IMXGPU_GBM:mx7 = ""
+PACKAGECONFIG:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11', '${PACKAGECONFIG_IMXGPU_X11}', \
'', d), d)} \
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend
index ebd982687b19..5710e9b5ecad 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -1,24 +1,24 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

# OpenGL is not required for parts with GPU support for 2D but not 3D
IMX_REQUIRED_DISTRO_FEATURES_REMOVE = ""
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu2d = "opengl"
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu3d = ""
-REQUIRED_DISTRO_FEATURES_remove = "${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu2d = "opengl"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu3d = ""
+REQUIRED_DISTRO_FEATURES:remove = "${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"

-SRC_URI_append_mx6sl = " file://weston.config"
+SRC_URI:append:mx6sl = " file://weston.config"

# To customize weston.ini, start by setting the desired assignment in weston.ini,
# commented out. For example:
# #xwayland=true
# Then add the assignment to INI_UNCOMMENT_ASSIGNMENTS.
-INI_UNCOMMENT_ASSIGNMENTS_append_imx = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:imx = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland=true', '', d)} \
"
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8 = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8 = " \
repaint-window=16 \
"
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8mq = " \
gbm-format=argb8888 \
\\[shell\\] \
size=1920x1080 \
@@ -27,10 +27,10 @@ INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
# FIXME: The 8QM and 8QXP SoCs have better performance without G2D so don't enable it
# Ideally, this should be seamless and Vivante ought to handle it internally and take the fastest
# rendering code.
-INI_UNCOMMENT_USE_G2D_imxgpu2d ?= "use-g2d=1"
-INI_UNCOMMENT_USE_G2D_mx8qm = ""
-INI_UNCOMMENT_USE_G2D_mx8qxp = ""
-INI_UNCOMMENT_ASSIGNMENTS_append_imxgpu2d = " \
+INI_UNCOMMENT_USE_G2D:imxgpu2d ?= "use-g2d=1"
+INI_UNCOMMENT_USE_G2D:mx8qm = ""
+INI_UNCOMMENT_USE_G2D:mx8qxp = ""
+INI_UNCOMMENT_ASSIGNMENTS:append:imxgpu2d = " \
${INI_UNCOMMENT_USE_G2D} \
"

@@ -41,7 +41,7 @@ uncomment() {
sed -i -e 's,^#'"$1"','"$1"',g' $2
}

-do_install_append() {
+do_install:append() {
if [ -f "${WORKDIR}/weston.config" ]; then
install -Dm0755 ${WORKDIR}/weston.config ${D}${sysconfdir}/default/weston
fi
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-graphics/wayland/weston_9.0.0.imx.bb
index 026f27cebe8b..16607a93c4d2 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_9.0.0.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \
"

-SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch "
+SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "

SRC_URI[sha256sum] = "5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe"

@@ -97,7 +97,7 @@ PACKAGECONFIG[shell-ivi] = "-Dshell-ivi=true,-Dshell-ivi=false"
# JPEG image loading support
PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg"

-do_install_append() {
+do_install:append() {
# Weston doesn't need the .la files to load modules, so wipe them
rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la

@@ -160,23 +160,23 @@ S = "${WORKDIR}/git"

# Disable OpenGL for parts with GPU support for 2D but not 3D
REQUIRED_DISTRO_FEATURES = "opengl"
-REQUIRED_DISTRO_FEATURES_imxgpu2d = ""
-REQUIRED_DISTRO_FEATURES_imxgpu3d = "opengl"
+REQUIRED_DISTRO_FEATURES:imxgpu2d = ""
+REQUIRED_DISTRO_FEATURES:imxgpu3d = "opengl"
PACKAGECONFIG_OPENGL = "opengl"
-PACKAGECONFIG_OPENGL_imxgpu2d = ""
-PACKAGECONFIG_OPENGL_imxgpu3d = "opengl"
+PACKAGECONFIG_OPENGL:imxgpu2d = ""
+PACKAGECONFIG_OPENGL:imxgpu3d = "opengl"

-PACKAGECONFIG_remove = "wayland x11"
-PACKAGECONFIG_append = " ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}"
+PACKAGECONFIG:remove = "wayland x11"
+PACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES', '${PACKAGECONFIG_OPENGL}', d)}"

-PACKAGECONFIG_remove_imxfbdev = "kms"
-PACKAGECONFIG_append_imxfbdev = " fbdev clients"
-PACKAGECONFIG_append_imxgpu = " imxgpu"
-PACKAGECONFIG_append_imxgpu2d = " imxg2d"
+PACKAGECONFIG:remove:imxfbdev = "kms"
+PACKAGECONFIG:append:imxfbdev = " fbdev clients"
+PACKAGECONFIG:append:imxgpu = " imxgpu"
+PACKAGECONFIG:append:imxgpu2d = " imxg2d"

# Clients support
SIMPLE_CLIENTS = "all"
-SIMPLE_CLIENTS_imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
+SIMPLE_CLIENTS:imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false,libxcursor"
PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLE_CLIENTS} -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false"
# Weston with i.MX GPU support
diff --git a/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend b/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
index a9c60f3ec4f9..d112b274a75d 100644
--- a/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
+++ b/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
@@ -1,2 +1,2 @@
# Append path for freescale layer to include bsp pointercal.xinput
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb b/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
index 069008c04479..836a16ba08cc 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
@@ -34,7 +34,7 @@ TARGET_CC_ARCH += "${LDFLAGS}"

PACKAGES =+ "xserver-xorg-extension-viv-autohdmi"

-do_install_append () {
+do_install:append () {
install -d ${D}${includedir}
cp -axr ${S}/EXA/src/vivante_gal/vivante_priv.h ${D}${includedir}
cp -axr ${S}/EXA/src/vivante_gal/vivante_gal.h ${D}${includedir}
diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
index ceb438e37115..3fe677b34770 100644
--- a/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
@@ -1,2 +1,2 @@
# Append path for freescale layer to include bsp xorg.conf
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
index 22d950c796cc..34e2ed82377b 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -1,7 +1,7 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
-SRC_URI_append_imxgpu = " \
+SRC_URI:append:use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
+SRC_URI:append:imxgpu = " \
file://0003-Remove-check-for-useSIGIO-option.patch \
file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch \
file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch \
@@ -10,7 +10,7 @@ SRC_URI_append_imxgpu = " \
"

IMX_OPENGL_PKGCONFIGS_REMOVE = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_imxdrm = "dri glx"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:imxdrm = "dri glx"
diff --git a/recipes-graphics/xwayland/xwayland_%.bbappend b/recipes-graphics/xwayland/xwayland_%.bbappend
index c26bb20d2caf..b3e79e09182f 100644
--- a/recipes-graphics/xwayland/xwayland_%.bbappend
+++ b/recipes-graphics/xwayland/xwayland_%.bbappend
@@ -1,4 +1,4 @@
IMX_OPENGL_PKGCONFIGS_REMOVE = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7 = "${IMX_OPENGL_PKGCONFIGS_REMOVE}"
diff --git a/recipes-kernel/ceetm/ceetm_git.bb b/recipes-kernel/ceetm/ceetm_git.bb
index 2e92ad49e5a4..45c3f19edc1a 100644
--- a/recipes-kernel/ceetm/ceetm_git.bb
+++ b/recipes-kernel/ceetm/ceetm_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=bac620b9883d38a84dfb73ca7122d915"

SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/ceetm;nobranch=1"
SRCREV = "6a7f2ec2091df2f4380cb8d25a36c399aed5af1b"
-SRC_URI_append = " file://0001-Makefile-update-CFLAGS.patch \
+SRC_URI:append = " file://0001-Makefile-update-CFLAGS.patch \
file://0001-use-new-api-tc_print_rate.patch \
"
DEPENDS = "iproute2"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
index feddc8faac80..36e2065db7c4 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
@@ -14,7 +14,7 @@ export KERNEL_PATH

INHIBIT_PACKAGE_STRIP = "1"

-do_compile_prepend() {
+do_compile:prepend() {
sed -i -e 's,EXTRA_CFLAGS += -I$(PWD),EXTRA_CFLAGS += -I${S},' ${S}/armodule/source/Makefile
}

diff --git a/recipes-kernel/kernel-modules/kernel-module-ipc.inc b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
index 350ba186aeb2..903c53a48731 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
@@ -11,7 +11,7 @@ SRCREV = "74d662707558290f070f9589177db730444bc435"
S = "${WORKDIR}/git"

do_configure[depends] += "virtual/kernel:do_shared_workdir"
-do_compile_prepend () {
+do_compile:prepend () {
cd ${S}/kernel
}

diff --git a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
index 0b23a47c04bb..a7b8a4e68ce7 100644
--- a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
@@ -20,4 +20,4 @@ EXTRA_OEMAKE += " \
"

COMPATIBLE_MACHINE = "(imx)"
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
index 63527d1324cc..95dd72fb894c 100644
--- a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by the Freescale Community \
that produces a Manufacturing Tool compatible Linux Kernel to be used in updater \
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
require linux-fslc-lts_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
index c155ebb969ed..09d35c9152ea 100644
--- a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
+++ b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by the Freescale Community \
that produces a Manufacturing Tool compatible Linux Kernel to be used in updater \
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
require linux-fslc_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-imx-headers_5.10.bb b/recipes-kernel/linux/linux-imx-headers_5.10.bb
index c656fa557e26..05e8b12c5bfe 100644
--- a/recipes-kernel/linux/linux-imx-headers_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-headers_5.10.bb
@@ -75,4 +75,4 @@ PACKAGE_ARCH = "${MACHINE_SOCARCH}"
# Restrict this recipe to NXP BSP only, this recipe is not compatible
# with mainline BSP
COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
index 0a9f5259ed94..311245b19b6d 100644
--- a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
@@ -5,7 +5,7 @@ SUMMARY = "Produces a Manufacturing Tool compatible Linux Kernel"
DESCRIPTION = "Linux Kernel provided and supported by Freescale that produces a \
Manufacturing Tool compatible Linux Kernel to be used in updater environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-imx:"
require linux-imx_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-qoriq.inc b/recipes-kernel/linux/linux-qoriq.inc
index 4d134b476599..2333990fb79c 100644
--- a/recipes-kernel/linux/linux-qoriq.inc
+++ b/recipes-kernel/linux/linux-qoriq.inc
@@ -7,12 +7,12 @@ LICENSE = "GPLv2"

S = "${WORKDIR}/git"

-DEPENDS_append = " libgcc"
+DEPENDS:append = " libgcc"
# not put Images into /boot of rootfs, install kernel-image if needed
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""

-KERNEL_CC_append = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_CC:append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append = " ${TOOLCHAIN_OPTIONS}"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"

ZIMAGE_BASE_NAME = "zImage-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}"
@@ -24,9 +24,9 @@ PV = "${LINUX_VERSION}+git${SRCPV}"
SCMVERSION ?= "y"
LOCALVERSION = ""
DELTA_KERNEL_DEFCONFIG ?= ""
-DELTA_KERNEL_DEFCONFIG_prepend_qoriq-arm64 = "lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_fsl-lsch2-32b = "multi_v7_lpae.config multi_v8.config lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_ls102xa = "multi_v7_lpae.config lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:qoriq-arm64 = "lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:fsl-lsch2-32b = "multi_v7_lpae.config multi_v8.config lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:ls102xa = "multi_v7_lpae.config lsdk.config "

do_merge_delta_config[depends] += "virtual/${TARGET_PREFIX}gcc:do_populate_sysroot bison-native:do_populate_sysroot"
do_merge_delta_config[dirs] = "${B}"
@@ -56,11 +56,11 @@ do_merge_delta_config() {
addtask merge_delta_config before do_kernel_localversion after do_patch

# The link of dts folder is needed for 32b compile of aarch64 targets(e.g. ls1043ardb-32b)
-do_compile_prepend_fsl-lsch2-32b() {
+do_compile:prepend:fsl-lsch2-32b() {
ln -sfT ${STAGING_KERNEL_DIR}/arch/arm64/boot/dts/freescale ${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
}

-do_install_prepend_fsl-lsch2-32b() {
+do_install:prepend:fsl-lsch2-32b() {
rm -f ${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
}

diff --git a/recipes-multimedia/alsa/alsa-lib_%.bbappend b/recipes-multimedia/alsa/alsa-lib_%.bbappend
index 80c11f33204f..d76c45d1e162 100644
--- a/recipes-multimedia/alsa/alsa-lib_%.bbappend
+++ b/recipes-multimedia/alsa/alsa-lib_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

IMX_PATCH = " \
file://0001-add-conf-for-multichannel-support-in-imx.patch \
@@ -6,6 +6,6 @@ IMX_PATCH = " \
file://0005-add-ak4458-conf-for-multichannel-support.patch \
file://0006-add-conf-for-iMX-XCVR-sound-card.patch \
"
-SRC_URI_append_imx = "${IMX_PATCH}"
+SRC_URI:append:imx = "${IMX_PATCH}"

-PACKAGE_ARCH_imx = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx = "${MACHINE_SOCARCH}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
index 3f1ec99d9560..cf640e13779e 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
@@ -50,8 +50,8 @@ LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
--cross-prefix='${HOST_PREFIX}'"

# Disable assembly optimizations for X32, as this libav lacks the support
-PACKAGECONFIG_remove_linux-gnux32 = "yasm"
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG_append_linux-gnux32 = " --disable-asm"
+PACKAGECONFIG:remove:linux-gnux32 = "yasm"
+LIBAV_EXTRA_CONFIGURE_COMMON_ARG:append:linux-gnux32 = " --disable-asm"

LIBAV_EXTRA_CONFIGURE_COMMON = \
'${LIBAV_EXTRA_CONFIGURE}="${LIBAV_EXTRA_CONFIGURE_COMMON_ARG}"'
@@ -63,8 +63,8 @@ FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"

# http://errors.yoctoproject.org/Errors/Details/20493/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

# ffmpeg/libav disables PIC on some platforms (e.g. x86-32)
INSANE_SKIP_${PN} = "textrel"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
index 6925611ac080..376764583179 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
@@ -1,14 +1,14 @@
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc

-DEPENDS_append_imxgpu2d = " virtual/libg2d"
-DEPENDS_append_mx8 = " libdrm"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"
+DEPENDS:append:mx8 = " libdrm"

-PACKAGECONFIG_append_mx8 = " kms"
+PACKAGECONFIG:append:mx8 = " kms"

DEFAULT_PREFERENCE = "-1"

-PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxpxp = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"

GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https"
SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
@@ -37,7 +37,7 @@ DEPENDS += "gstreamer1.0-plugins-base"
inherit gobject-introspection

PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)}"
-PACKAGECONFIG_GL_imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"
+PACKAGECONFIG_GL:imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"

PACKAGECONFIG ??= " \
${GSTREAMER_ORC} \
@@ -163,8 +163,8 @@ EXTRA_OEMESON += " \

export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
index d92bdf3ca3c2..1c62f31dc227 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
@@ -1,5 +1,5 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"

# For mainline BSP we need to enable 'gbm' Window system
-PACKAGECONFIG_GL_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm', '', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm', '', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
index db0b740fa22b..01db6125d67d 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} \
S = "${WORKDIR}/git"

DEPENDS += "iso-codes util-linux zlib"
-DEPENDS_append_imxgpu2d = " virtual/libg2d"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"

inherit use-imx-headers gobject-introspection gtk-doc

diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
index 8565c6a53377..7e72cdaa2273 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
@@ -1,3 +1,3 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
-PACKAGECONFIG_GL_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
index 7c6025dd900e..439c4430f407 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
@@ -28,22 +28,22 @@ inherit pkgconfig meson use-imx-headers
# is needed to improve performance.
LIBG2D_DPU_OPTION = "-Dg2d-based-on-dpu=false"
LIBG2D_DEPENDENCIES = "virtual/libg2d"
-LIBG2D_DPU_OPTION_imxdpu = "-Dg2d-based-on-dpu=true"
-LIBG2D_DEPENDENCIES_imxdpu = "virtual/libg2d libdrm"
+LIBG2D_DPU_OPTION:imxdpu = "-Dg2d-based-on-dpu=true"
+LIBG2D_DEPENDENCIES:imxdpu = "virtual/libg2d libdrm"

EXTRA_OEMESON += "-Dimx-headers-path=${STAGING_INCDIR_IMX}"

PACKAGECONFIG ?= "uniaudiodec"
-PACKAGECONFIG_append_imxgpu2d = " g2d"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_imxipu = " ipu"
-PACKAGECONFIG_append_imxpxp = " pxp"
+PACKAGECONFIG:append:imxgpu2d = " g2d"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:imxipu = " ipu"
+PACKAGECONFIG:append:imxpxp = " pxp"
# The custom imxv4l2 elements are only available on the i.MX6.
# The 2D blitter sinks require an MXC framebuffer, which
# is not available anymore on the i.MX8 (since these SoCs
# now use KMS instead of the old Linux framebuffer).
-PACKAGECONFIG_append_mx6 = " imx2dvideosink v4l2"
-PACKAGECONFIG_append_mx7 = " imx2dvideosink"
+PACKAGECONFIG:append:mx6 = " imx2dvideosink v4l2"
+PACKAGECONFIG:append:mx7 = " imx2dvideosink"

PACKAGECONFIG[g2d] = "-Dg2d=enabled ${LIBG2D_DPU_OPTION},-Dg2d=disabled,${LIBG2D_DEPENDENCIES}"
PACKAGECONFIG[pxp] = "-Dpxp=enabled,-Dpxp=disabled,"
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
index c8bb6cd8a45a..9f58aa64d5dc 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
@@ -8,9 +8,9 @@ LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
SECTION = "multimedia"

DEPENDS = "imx-codec imx-parser gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " imx-vpuwrap libdrm"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " imx-vpuwrap libdrm"

# For backwards compatibility
RREPLACES_${PN} = "gst1.0-fsl-plugin"
@@ -31,14 +31,14 @@ S = "${WORKDIR}/git"

inherit autotools pkgconfig use-imx-headers

-PLATFORM_mx6 = "MX6"
-PLATFORM_mx6sl = "MX6SL"
-PLATFORM_mx6sx = "MX6SX"
-PLATFORM_mx6ul = "MX6UL"
-PLATFORM_mx6sll = "MX6SLL"
-PLATFORM_mx7= "MX7D"
-PLATFORM_mx7ulp= "MX7ULP"
-PLATFORM_mx8 = "MX8"
+PLATFORM:mx6 = "MX6"
+PLATFORM:mx6sl = "MX6SL"
+PLATFORM:mx6sx = "MX6SX"
+PLATFORM:mx6ul = "MX6UL"
+PLATFORM:mx6sll = "MX6SLL"
+PLATFORM:mx7= "MX7D"
+PLATFORM:mx7ulp= "MX7ULP"
+PLATFORM:mx8 = "MX8"

# Todo add a mechanism to map possible build targets
EXTRA_OECONF = "PLATFORM=${PLATFORM} \
@@ -55,7 +55,7 @@ RDEPENDS_${PN} += "imx-parser ${BEEP_RDEPENDS} gstreamer1.0-plugins-good-id3demu
# overlaysink rely on G2D,
# cannot be supported on i.MX6SLL & i.MX6UL & i.MX6ULL & i.MX7D
PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxgpu2d = "overlaysink"
+PACKAGECONFIG:imxgpu2d = "overlaysink"


# FIXME: Add all features
diff --git a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
index 76a52f26cb64..4bb76030ed62 100644
--- a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
+++ b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
@@ -21,14 +21,14 @@ EXTRA_OECONF = "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8
bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '--enable-fhw', '', d), d)}"

PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxvpu = "vpu"
+PACKAGECONFIG:imxvpu = "vpu"

# We need to ensure we don't have '-src' package overrided
PACKAGE_DEBUG_SPLIT_STYLE = 'debug-without-src'

PACKAGECONFIG[vpu] = "--enable-vpu,--disable-vpu,virtual/imxvpu"

-do_install_append() {
+do_install:append() {
# LTIB move the files around or gst-fsl-plugin won't find them
for p in $(find ${D}${libdir}/imx-mm -mindepth 2 -maxdepth 2 -not -type d); do
mv $p ${D}${libdir}
@@ -85,7 +85,7 @@ python __set_metapkg_rdepends() {
codec_pkgs = oe.utils.packages_filter_out_system(d)
codec_pkgs = filter(lambda x: x not in ['imx-codec-test-bin', 'imx-codec-test-source'],
codec_pkgs)
- d.appendVar('RDEPENDS_imx-codec-meta', ' ' + ' '.join(codec_pkgs))
+ d.appendVar('RDEPENDS:imx-codec-meta', ' ' + ' '.join(codec_pkgs))
}

PACKAGESPLITFUNCS =+ "__split_libfslcodec_plugins __set_metapkg_rdepends"
diff --git a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
index 2b0282351840..f77e33f76d07 100644
--- a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
+++ b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
@@ -8,7 +8,7 @@ SECTION = "multimedia"
LIC_FILES_CHKSUM = "file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"

DEPENDS = "virtual/imxvpu"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

SRC_URI = "git://github.com/NXP/imx-vpuwrap.git;protocol=https;branch=${SRCBRANCH}"

@@ -19,7 +19,7 @@ S = "${WORKDIR}/git"

inherit autotools pkgconfig

-do_install_append() {
+do_install:append() {
# FIXME: Drop examples for now
rm -r ${D}${datadir}
}
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
index f66eff27568c..372d78dcb859 100644
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
+++ b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
@@ -15,10 +15,10 @@ S = "${WORKDIR}/git"

inherit waf pkgconfig use-imx-headers

-IMX_PLATFORM_mx6 = "imx6"
-IMX_PLATFORM_mx8mq = "imx8m"
-IMX_PLATFORM_mx8mm = "imx8mm"
-IMX_PLATFORM_mx8mp = "imx8mm"
+IMX_PLATFORM:mx6 = "imx6"
+IMX_PLATFORM:mx8mq = "imx8m"
+IMX_PLATFORM:mx8mm = "imx8mm"
+IMX_PLATFORM:mx8mp = "imx8mm"

EXTRA_OECONF = "--imx-platform=${IMX_PLATFORM} --libdir=${libdir} --imx-headers=${STAGING_INCDIR_IMX} --sysroot-path=${RECIPE_SYSROOT}"

diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index 78a17864724a..ae69be4c8601 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,21 +1,21 @@

-CACHED_CONFIGUREVARS_append_mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"
+CACHED_CONFIGUREVARS:append:mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}/imx:"

-SRC_URI_append_mx6 = " file://daemon.conf file://default.pa"
-SRC_URI_append_mx7 = " file://daemon.conf file://default.pa \
+SRC_URI:append:mx6 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx7 = " file://daemon.conf file://default.pa \
file://pulseaudio-remove-the-control-for-speaker-headphone-widge.patch \
"
-SRC_URI_append_mx8 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx8 = " file://daemon.conf file://default.pa"

-do_install_append() {
+do_install:append() {
if [ -e "${WORKDIR}/daemon.conf" ] && [ -e "${WORKDIR}/default.pa" ]; then
install -m 0644 ${WORKDIR}/daemon.conf ${D}${sysconfdir}/pulse/daemon.conf
install -m 0644 ${WORKDIR}/default.pa ${D}${sysconfdir}/pulse/default.pa
fi
}

-PACKAGE_ARCH_mx6 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"
diff --git a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
index 58b6b8a45b18..b2ac77483ef8 100644
--- a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
@@ -21,8 +21,8 @@ inherit python3native systemd
SYSTEMD_SERVICE_${PN} = "tee-supplicant.service"

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

EXTRA_OEMAKE = "ARCH=${OPTEE_ARCH} O=${B}"

diff --git a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
index 712b1aa69046..c0b3b7631269 100644
--- a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
@@ -22,23 +22,23 @@ inherit deploy python3native autotools

# The platform flavor corresponds to the Yocto machine without the leading 'i'.
PLATFORM_FLAVOR = "${@d.getVar('MACHINE')[1:]}"
-PLATFORM_FLAVOR_imx6qpdlsolox = "mx6qsabresd"
-PLATFORM_FLAVOR_imx6ul7d = "mx6ulevk"
-PLATFORM_FLAVOR_imx6ull14x14evk = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ull9x9evk = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ulz-14x14-evk = "mx6ulzevk"
-PLATFORM_FLAVOR_mx8mq = "mx8mqevk"
-PLATFORM_FLAVOR_mx8mm = "mx8mmevk"
-PLATFORM_FLAVOR_mx8mn = "mx8mnevk"
-PLATFORM_FLAVOR_mx8mp = "mx8mpevk"
-PLATFORM_FLAVOR_mx8qm = "mx8qmmek"
-PLATFORM_FLAVOR_mx8qxp = "mx8qxpmek"
-PLATFORM_FLAVOR_mx8dx = "mx8dxmek"
-PLATFORM_FLAVOR_mx8dxl = "mx8dxlevk"
+PLATFORM_FLAVOR:imx6qpdlsolox = "mx6qsabresd"
+PLATFORM_FLAVOR:imx6ul7d = "mx6ulevk"
+PLATFORM_FLAVOR:imx6ull14x14evk = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ull9x9evk = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ulz-14x14-evk = "mx6ulzevk"
+PLATFORM_FLAVOR:mx8mq = "mx8mqevk"
+PLATFORM_FLAVOR:mx8mm = "mx8mmevk"
+PLATFORM_FLAVOR:mx8mn = "mx8mnevk"
+PLATFORM_FLAVOR:mx8mp = "mx8mpevk"
+PLATFORM_FLAVOR:mx8qm = "mx8qmmek"
+PLATFORM_FLAVOR:mx8qxp = "mx8qxpmek"
+PLATFORM_FLAVOR:mx8dx = "mx8dxmek"
+PLATFORM_FLAVOR:mx8dxl = "mx8dxlevk"

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

# Optee-os can be built for 32 bits and 64 bits at the same time
# as long as the compilers are correctly defined.
diff --git a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
index a8a1b245e496..4a6aec56dd45 100644
--- a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
@@ -20,11 +20,11 @@ SRCREV = "0c998f42a3fb87b9f2929955cf4b0116cc515091"
inherit python3native

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

TA_DEV_KIT_DIR_arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32/"
-TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/"
+TA_DEV_KIT_DIR:aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/"

CFLAGS += "--sysroot=${STAGING_DIR_HOST}"
CXXFLAGS += "--sysroot=${STAGING_DIR_HOST}"
diff --git a/recipes-security/optee/optee-os-qoriq_3.8.0.bb b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
index b8d764ff5e12..556f13518d7e 100644
--- a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
+++ b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
@@ -19,9 +19,9 @@ SRCREV = "0cb01f7f6aee552ead49990c06f69f73f459cc65"
S = "${WORKDIR}/git"

OPTEEMACHINE ?= "${MACHINE}"
-OPTEEMACHINE_ls1088ardb-pb = "ls1088ardb"
-OPTEEMACHINE_ls1046afrwy = "ls1046ardb"
-OPTEEMACHINE_lx2162aqds = "lx2160aqds"
+OPTEEMACHINE:ls1088ardb-pb = "ls1088ardb"
+OPTEEMACHINE:ls1046afrwy = "ls1046ardb"
+OPTEEMACHINE:lx2162aqds = "lx2160aqds"

EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE} CFG_ARM64_core=y \
ARCH=arm \
@@ -31,10 +31,10 @@ EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE} CFG_ARM64_core=y \
LDFLAGS= \
LIBGCC_LOCATE_CFLAGS=--sysroot=${STAGING_DIR_HOST} \
"
-EXTRA_OEMAKE_append_lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-lx2160a-qds.dts CFG_EMBED_DT=y"
+EXTRA_OEMAKE:append:lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-lx2160a-qds.dts CFG_EMBED_DT=y"

-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

do_compile() {
unset LDFLAGS
diff --git a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch b/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
index c5a64387f525..7fdf1dd8a62b 100644
--- a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
+++ b/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
@@ -21,10 +21,10 @@ index 56ca9e310..99b7a33f6 100644

set(filter_srcs "${CMAKE_CURRENT_LIST_DIR}/src/tinyxml2/tinyxml2.cpp")
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override") # GCC
-+ ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override -Os") # GCC
+- ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override") # GCC
++ ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override -Os") # GCC
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-inconsistent-missing-override") # Clang
+ ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-inconsistent-missing-override") # Clang
endif()
--
2.28.0
diff --git a/recipes-support/opencv/opencv_4.5.2.imx.bb b/recipes-support/opencv/opencv_4.5.2.imx.bb
index a86fd3ecb3da..402eab9bb52d 100644
--- a/recipes-support/opencv/opencv_4.5.2.imx.bb
+++ b/recipes-support/opencv/opencv_4.5.2.imx.bb
@@ -11,8 +11,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"

@@ -59,7 +59,7 @@ SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \
file://0001-Make-ts-module-external.patch \
file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
"
-SRC_URI_append_riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
+SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"

S = "${WORKDIR}/git"

@@ -106,7 +106,7 @@ EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1", "", d)} \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \
"
-EXTRA_OECMAKE_append_x86 = " -DX86=ON"
+EXTRA_OECMAKE:append:x86 = " -DX86=ON"

PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
@@ -158,7 +158,7 @@ PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '
${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-${BPN}', '', d)} \
${PN}-apps"

-python populate_packages_prepend () {
+python populate_packages:prepend () {
cv_libdir = d.expand('${libdir}')
do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True)
do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
@@ -211,14 +211,14 @@ RDEPENDS_python3-opencv = "python3-core python3-numpy"

RDEPENDS_${PN}-apps = "bash"

-do_compile_prepend() {
+do_compile:prepend() {
# remove the build host info to improve reproducibility
if [ -f ${WORKDIR}/build/modules/core/version_string.inc ]; then
sed -i "s#${WORKDIR}#/workdir#g" ${WORKDIR}/build/modules/core/version_string.inc
fi
}

-do_install_append() {
+do_install:append() {
# Move Python files into correct library folder (for multilib build)
if [ "$libdir" != "/usr/lib" -a -d ${D}/usr/lib ]; then
mv ${D}/usr/lib/* ${D}/${libdir}/
@@ -245,7 +245,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRCREV_opencv = "5423d53ae0d116ee5bbe52f8b5503f0cd8586998"
OPENCV_SRC ?= "git://source.codeaurora.org/external/imx/opencv-imx.git;protocol=https"
SRCBRANCH = "4.5.2_imx"
-SRC_URI_remove = "git://github.com/opencv/opencv.git;name=opencv"
+SRC_URI:remove = "git://github.com/opencv/opencv.git;name=opencv"
SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv"

# Add opencv_extra
@@ -254,7 +254,7 @@ SRC_URI += " \
git://github.com/opencv/opencv_extra.git;destsuffix=extra;name=extra \
file://0001-Add-smaller-version-of-download_models.py.patch;patchdir=../extra \
"
-SRCREV_FORMAT_append = "_extra"
+SRCREV_FORMAT:append = "_extra"

# Add tiny-dnn
SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59"
@@ -264,25 +264,25 @@ SRC_URI += " \
file://OpenCV_DNN_examples.patch \
"

-PACKAGECONFIG_remove = "eigen"
-PACKAGECONFIG_append_mx8 = " dnn text"
+PACKAGECONFIG:remove = "eigen"
+PACKAGECONFIG:append:mx8 = " dnn text"
PACKAGECONFIG_OPENCL = ""
-PACKAGECONFIG_OPENCL_mx8 = "opencl"
-PACKAGECONFIG_OPENCL_mx8dxl = ""
-PACKAGECONFIG_OPENCL_mx8mm = ""
-PACKAGECONFIG_OPENCL_mx8mnlite = ""
-PACKAGECONFIG_append = " ${PACKAGECONFIG_OPENCL}"
+PACKAGECONFIG_OPENCL:mx8 = "opencl"
+PACKAGECONFIG_OPENCL:mx8dxl = ""
+PACKAGECONFIG_OPENCL:mx8mm = ""
+PACKAGECONFIG_OPENCL:mx8mnlite = ""
+PACKAGECONFIG:append = " ${PACKAGECONFIG_OPENCL}"

PACKAGECONFIG[openvx] = "-DWITH_OPENVX=ON -DOPENVX_ROOT=${STAGING_LIBDIR} -DOPENVX_LIB_CANDIDATES='OpenVX;OpenVXU',-DWITH_OPENVX=OFF,virtual/libopenvx,"
PACKAGECONFIG[qt5] = "-DWITH_QT=ON -DOE_QMAKE_PATH_EXTERNAL_HOST_BINS=${STAGING_BINDIR_NATIVE} -DCMAKE_PREFIX_PATH=${STAGING_BINDIR_NATIVE}/cmake,-DWITH_QT=OFF,qtbase qtbase-native,"
PACKAGECONFIG[tests-imx] = "-DINSTALL_TESTS=ON -DOPENCV_TEST_DATA_PATH=${S}/../extra/testdata, -DINSTALL_TESTS=OFF,"

-do_unpack_extra_append() {
+do_unpack_extra:append() {
mkdir -p ${S}/3rdparty/tinydnn/
tar xzf ${WORKDIR}/v1.0.0a3.tar.gz -C ${S}/3rdparty/tinydnn/
}

-do_install_append() {
+do_install:append() {
ln -sf opencv4/opencv2 ${D}${includedir}/opencv2
install -d ${D}${datadir}/OpenCV/samples/data
cp -r ${S}/samples/data/* ${D}${datadir}/OpenCV/samples/data
--
2.31.1



--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854 Mobile: +1 (347) 903-9750


Thomas Perrot
 

Hello Otavio,

On Sat, 2021-08-07 at 08:33 -0300, Otavio Salvador wrote:
Hello,

We have an onging PR for it; please try it out.
Thanks, I didn't know I had to do PR on github for this layer.

Do you need help speeding up the PR merge regarding the new syntax?

Best regards,
Thomas

Em sáb., 7 de ago. de 2021 às 04:09, Thomas Perrot
<thomas.perrot@...> escreveu:

Signed-off-by: Thomas Perrot <thomas.perrot@...>
---
 classes/fsl-eula-unpack.bbclass               |   4 +-
 classes/fsl-u-boot-localversion.bbclass       |   2 +-
 .../fsl-vivante-kernel-driver-handler.bbclass |   2 +-
 classes/image_types_fsl.bbclass               |   2 +-
 classes/imx-boot-container.bbclass            |   4 +-
 classes/kernel-imximage.bbclass               |   4 +-
 classes/kernel-itbimage.bbclass               |   2 +-
 classes/mfgtool-initramfs-image.bbclass       |   2 +-
 classes/qoriq_build_64bit_kernel.bbclass      |   4 +-
 classes/use-imx-headers.bbclass               |   6 +-
 ...e-imx-security-controller-firmware.bbclass |   6 +-
 conf/layer.conf                               |   2 +-
 conf/machine/imx6qdlsabreauto.conf            |  18 +-
 conf/machine/imx6qdlsabresd.conf              |  18 +-
 conf/machine/imx6slevk.conf                   |   2 +-
 conf/machine/imx6sllevk.conf                  |   2 +-
 conf/machine/imx6sxsabreauto.conf             |   4 +-
 conf/machine/imx6sxsabresd.conf               |   4 +-
 conf/machine/imx6ulevk.conf                   |  12 +-
 conf/machine/imx6ullevk.conf                  |   2 +-
 conf/machine/imx6ulz-14x14-evk.conf           |   2 +-
 conf/machine/imx7dsabresd.conf                |   2 +-
 conf/machine/imx7ulpevk.conf                  |   4 +-
 conf/machine/imx8dxl-lpddr4-evk.conf          |   2 +-
 conf/machine/imx8mm-ddr4-evk.conf             |   2 +-
 conf/machine/imx8mm-lpddr4-evk.conf           |   2 +-
 conf/machine/imx8mn-ddr4-evk.conf             |   2 +-
 conf/machine/imx8mn-lpddr4-evk.conf           |   2 +-
 conf/machine/imx8mp-ddr4-evk.conf             |   2 +-
 conf/machine/imx8mp-lpddr4-evk.conf           |   2 +-
 conf/machine/imx8mq-evk.conf                  |  12 +-
 conf/machine/imx8qm-mek.conf                  |   8 +-
 conf/machine/imx8qxp-mek.conf                 |   2 +-
 conf/machine/include/imx-base.inc             | 360 +++++++++-------
--
 conf/machine/include/imx8dxl-evk.inc          |   4 +-
 conf/machine/include/imx8mm-evk.inc           |  26 +-
 conf/machine/include/imx8mn-evk.inc           |  26 +-
 conf/machine/include/imx8mp-evk.inc           |  24 +-
 conf/machine/include/imx8x-mek.inc            |   6 +-
 conf/machine/include/qoriq-base.inc           |   8 +-
 conf/machine/include/utilities.inc            |   2 +-
 conf/machine/ls1028ardb.conf                  |   2 +-
 conf/machine/ls1043ardb.conf                  |   2 +-
 conf/machine/ls1046afrwy.conf                 |   2 +-
 conf/machine/ls1046ardb.conf                  |   2 +-
 .../wayland/weston-init.bbappend              |   2 +-
 .../recipes-browser/chromium/chromium-imx.inc |   4 +-
 .../clutter/clutter-1.0_%.bbappend            |   2 +-
 .../recipes-graphics/cogl/cogl-1.0_%.bbappend |   2 +-
 .../wayland/weston-init.bbappend              |   2 +-
 .../glmark2/glmark2_%.bbappend                |   8 +-
 .../recipes-devtools/luajit/luajit_%.bbappend |   4 +-
 .../recipes-dpaa/fmc/fmc_git.bb               |  18 +-
 .../xserver-common/xserver-common_%.bbappend  |   6 +-
 .../recipes-qt4/qt4/qt4-imx-support.inc       |  12 +-
 .../recipes-qt/qt5/qtbase_%.bbappend          |  26 +-
 .../recipes-qt/qt5/qtwayland_%.bbappend       |   8 +-
 .../libvirt/libvirt_%.bbappend                |   6 +-
 recipes-bsp/alsa-state/alsa-state.bbappend    |  16 +-
 recipes-bsp/atf/qoriq-atf_1.5.bb              |  18 +-
 recipes-bsp/atf/qoriq-atf_2.3.bb              |   2 +-
 .../firmware-imx/firmware-imx-8_8.12.bb       |   4 +-
 recipes-bsp/firmware-imx/firmware-imx_8.12.bb |   2 +-
 recipes-bsp/firmware-qca/qca-tools_3.0.2.bb   |   4 +-
 recipes-bsp/formfactor/formfactor_%.bbappend  |   2 +-
 recipes-bsp/imx-atf/imx-atf_2.4.bb            |   2 +-
 recipes-bsp/imx-lib/imx-lib_git.bb            |  18 +-
 recipes-bsp/imx-mkimage/imx-boot_1.0.bb       |  32 +-
 recipes-bsp/imx-mkimage/imx-mkimage_git.bb    |   6 +-
 .../imx-sc-firmware/imx-sc-firmware_1.9.0.bb  |   8 +-
 recipes-bsp/imx-test/imx-test_git.bb          |  28 +-
 .../imx-vpu-hantro-daemon_1.0.0.bb            |   8 +-
 .../imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb   |   6 +-
 recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb     |   2 +-
 .../libimxdmabuffer/libimxdmabuffer_1.0.1.bb  |  14 +-
 recipes-bsp/mc-utils/mc-utils_git.bb          |  10 +-
 recipes-bsp/rcw/rcw_git.bb                    |   6 +-
 recipes-bsp/u-boot/libubootenv_%.bbappend     |   4 +-
 .../u-boot/u-boot-fslc-mfgtool_2021.07.bb     |   2 +-
 recipes-bsp/u-boot/u-boot-fslc_2021.07.bb     |   4 +-
 .../u-boot/u-boot-imx-mfgtool_2021.04.bb      |   2 +-
 recipes-bsp/u-boot/u-boot-imx_2021.04.bb      |   2 +-
 recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb    |  18 +-
 .../iproute2/iproute2_%.bbappend              |   2 +-
 .../openssl/openssl_%.bbappend                |   6 +-
 .../init-ifupdown/init-ifupdown_%.bbappend    |   2 +-
 recipes-core/udev/udev-rules-qoriq.bb         |   6 +-
 recipes-devtools/qemu/qemu-qoriq_4.1.0.bb     |   8 +-
 recipes-devtools/qemu/qemu.inc                |  12 +-
 recipes-dpaa/fm-ucode/fm-ucode_git.bb         |  14 +-
 recipes-dpaa2/aiopsl/aiopsl_git.bb            |   4 +-
 .../management-complex_10.14.1.bb             |   8 +-
 .../management-complex_10.20.4.bb             |   8 +-
 .../management-complex_10.24.0.bb             |  10 +-
 recipes-extended/dpdk/dpdk.inc                |  18 +-
 recipes-extended/dpdk/dpdk_19.11-20.12.bb     |   2 +-
 recipes-extended/jailhouse/jailhouse_0.12.bb  |   6 +-
 recipes-extended/odp/odp-counters_git.bb      |   2 +-
 recipes-extended/odp/odp-module_git.bb        |   2 +-
 recipes-extended/odp/odp.inc                  |   2 +-
 recipes-extended/odp/odp_git.bb               |  18 +-
 recipes-extended/procps/procps_%.bbappend     |   2 +-
 recipes-extended/testfloat/testfloat_2a.bb    |   2 +-
 recipes-extended/tsntool/tsntool_git.bb       |   2 +-
 .../packagegroups/packagegroup-fsl-isp.bb     |   2 +-
 .../packagegroups/packagegroup-fsl-qca6174.bb |   2 +-
 .../packagegroups/packagegroup-fsl-qca9377.bb |   2 +-
 recipes-graphics/cairo/cairo_%.bbappend       |   4 +-
 recipes-graphics/drm/libdrm_2.4.102.imx.bb    |   6 +-
 recipes-graphics/gtk+/gtk+3_%.bbappend        |   4 +-
 .../images/core-image-weston.bbappend         |   2 +-
 .../imx-gpu-apitrace_9.0.0.bb                 |   8 +-
 .../imx-gpu-viv/imx-gpu-viv-6.inc             |  44 +--
 .../libepoxy/libepoxy_1.5.%.bbappend          |   2 +-
 recipes-graphics/libsdl2/libsdl2_%.bbappend   |   4 +-
 recipes-graphics/mesa/mesa-demos_%.bbappend   |  16 +-
 recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb |   2 +-
 recipes-graphics/mesa/mesa-gl_%.bbappend      |   2 +-
 recipes-graphics/mesa/mesa_%.bbappend         |  22 +-
 .../vulkan/vulkan-loader_%.bbappend           |   2 +-
 recipes-graphics/waffle/waffle_%.bbappend     |  10 +-
 recipes-graphics/wayland/weston-init.bbappend |  26 +-
 recipes-graphics/wayland/weston_9.0.0.imx.bb  |  26 +-
 .../pointercal-xinput_%.bbappend              |   2 +-
 .../xf86-video-imx-vivante_6.4.0.p0.0.bb      |   2 +-
 .../xserver-xf86-config_%.bbappend            |   2 +-
 .../xorg-xserver/xserver-xorg_%.bbappend      |  14 +-
 recipes-graphics/xwayland/xwayland_%.bbappend |   6 +-
 recipes-kernel/ceetm/ceetm_git.bb             |   2 +-
 .../kernel-modules/kernel-module-ar_git.bb    |   2 +-
 .../kernel-modules/kernel-module-ipc.inc      |   2 +-
 .../kernel-module-qcacld-lea.inc              |   2 +-
 .../linux/linux-fslc-lts-mfgtool_5.10.bb      |   2 +-
 .../linux/linux-fslc-mfgtool_5.12.bb          |   2 +-
 .../linux/linux-imx-headers_5.10.bb           |   2 +-
 .../linux/linux-imx-mfgtool_5.10.bb           |   2 +-
 recipes-kernel/linux/linux-qoriq.inc          |  16 +-
 recipes-multimedia/alsa/alsa-lib_%.bbappend   |   6 +-
 .../gstreamer/gstreamer1.0-libav_1.16.0.bb    |   8 +-
 .../gstreamer1.0-plugins-bad_1.16.3.imx.bb    |  16 +-
 .../gstreamer1.0-plugins-base_1.16.%.bbappend |   6 +-
 .../gstreamer1.0-plugins-base_1.16.2.imx.bb   |   2 +-
 .../gstreamer1.0-plugins-good_1.16.%.bbappend |   6 +-
 .../gstreamer1.0-plugins-imx_2.0.0.bb         |  16 +-
 .../gstreamer/imx-gst1.0-plugin_4.5.7.bb      |  24 +-
 .../imx-codec/imx-codec_4.5.7.bb              |   6 +-
 .../imx-vpuwrap/imx-vpuwrap_4.5.7.bb          |   4 +-
 .../libimxvpuapi/libimxvpuapi2_2.2.0.bb       |   8 +-
 .../pulseaudio/pulseaudio_%.bbappend          |  18 +-
 .../optee-imx/optee-client_3.10.0.imx.bb      |   4 +-
 .../optee-imx/optee-os_3.10.0.imx.bb          |  30 +-
 .../optee-imx/optee-test_3.10.0.imx.bb        |   6 +-
 .../optee/optee-os-qoriq_3.8.0.bb             |  12 +-
 .../0001-Use-Os-to-compile-tinyxml2.cpp.patch |   6 +-
 recipes-support/opencv/opencv_4.5.2.imx.bb    |  36 +-
 155 files changed, 762 insertions(+), 762 deletions(-)

diff --git a/classes/fsl-eula-unpack.bbclass b/classes/fsl-eula-
unpack.bbclass
index 498d7826d9cf..5690898c5a43 100644
--- a/classes/fsl-eula-unpack.bbclass
+++ b/classes/fsl-eula-unpack.bbclass
@@ -79,11 +79,11 @@ FSL_EULA_FILE_MD5SUM ?= \

 LIC_FILES_CHKSUM_LAYER ?=
"file://${FSL_EULA_FILE};md5=${FSL_EULA_FILE_MD5SUM}"
 LIC_FILES_CHKSUM_LAYER[vardepsexclude] += "FSL_EULA_FILE"
-LIC_FILES_CHKSUM_append = " ${LIC_FILES_CHKSUM_LAYER}"
+LIC_FILES_CHKSUM:append = " ${LIC_FILES_CHKSUM_LAYER}"

 LIC_FILES_CHKSUM[vardepsexclude] += "FSL_EULA_FILE"

-do_fetch_prepend() {
+do_fetch:prepend() {
     if "Proprietary" not in d.getVar("LICENSE"):
         bb.fatal("The recipe LICENSE should include Proprietary but
is " + d.getVar("LICENSE") + ".")
 }
diff --git a/classes/fsl-u-boot-localversion.bbclass b/classes/fsl-u-
boot-localversion.bbclass
index 617aae1de215..ebde8ea718f2 100644
--- a/classes/fsl-u-boot-localversion.bbclass
+++ b/classes/fsl-u-boot-localversion.bbclass
@@ -14,7 +14,7 @@ LOCALVERSION ??= "+fslc"

 UBOOT_LOCALVERSION = "${LOCALVERSION}"

-do_compile_prepend() {
+do_compile:prepend() {
        if [ "${SCMVERSION}" = "y" ]; then
                # Add GIT revision to the local version
                head=`cd ${S} ; git rev-parse --verify --short HEAD
2> /dev/null`
diff --git a/classes/fsl-vivante-kernel-driver-handler.bbclass
b/classes/fsl-vivante-kernel-driver-handler.bbclass
index 8ac8a33445d2..7ba597f1963e 100644
--- a/classes/fsl-vivante-kernel-driver-handler.bbclass
+++ b/classes/fsl-vivante-kernel-driver-handler.bbclass
@@ -49,7 +49,7 @@ python fsl_vivante_kernel_driver_handler () {
 addhandler fsl_vivante_kernel_driver_handler
 fsl_vivante_kernel_driver_handler[eventmask] =
"bb.event.RecipePreFinalise"

-do_configure_append () {
+do_configure:append () {
     if [ "${MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT}" = "1" ];
then
         config="${B}/.config"

diff --git a/classes/image_types_fsl.bbclass
b/classes/image_types_fsl.bbclass
index c49c51b7a348..d6d8da95fd3b 100644
--- a/classes/image_types_fsl.bbclass
+++ b/classes/image_types_fsl.bbclass
@@ -37,7 +37,7 @@ do_image_wic[depends] += " \
 "

 # We need to apply a fixup inside of the partition table
-IMAGE_CMD_wic_append_mxs() {
+IMAGE_CMD_wic:append:mxs() {
        # Change partition type for mxs processor family
        bbnote "Setting partition type to 0x53 as required for mxs'
SoC family."
        echo -n S | dd of=$out${IMAGE_NAME_SUFFIX}.wic bs=1 count=1
seek=450 conv=notrunc
diff --git a/classes/imx-boot-container.bbclass b/classes/imx-boot-
container.bbclass
index 41fe9cca739a..33de45c52b28 100644
--- a/classes/imx-boot-container.bbclass
+++ b/classes/imx-boot-container.bbclass
@@ -23,7 +23,7 @@

 # Define ATF binary file to be deployed to the U-Boot build folder
 ATF_MACHINE_NAME = "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"

 # This package aggregates output deployed by other packages, so set
the
 # appropriate dependencies for populate binaries task
@@ -76,7 +76,7 @@ addtask do_resolve_and_populate_binaries before
do_compile after do_configure
 # This effectively would allow the usage of the same WKS file for
those
 # derivatives that are using the boot container from U-Boot and
those
 # that are not yet have support for it enabled.
-do_deploy_append() {
+do_deploy:append() {
     # Deploy the resulted flash.bin for WIC to pick it up
     if [ -n "${UBOOT_CONFIG}" ]; then
         for config in ${UBOOT_MACHINE}; do
diff --git a/classes/kernel-imximage.bbclass b/classes/kernel-
imximage.bbclass
index 234cc00d3059..ccf7ec53bf45 100644
--- a/classes/kernel-imximage.bbclass
+++ b/classes/kernel-imximage.bbclass
@@ -17,7 +17,7 @@
 #
 # Copyright 2017 (C) O.S. Systems Software LTDA.

-DEPENDS_append = ' u-boot-mkimage-native'
+DEPENDS:append = ' u-boot-mkimage-native'

 IMXIMAGE_ENTRYPOINT ?= "${UBOOT_ENTRYPOINT}"

@@ -55,6 +55,6 @@ gen_imximage() {
        done
 }

-do_deploy_append() {
+do_deploy:append() {
        gen_imximage
 }
diff --git a/classes/kernel-itbimage.bbclass b/classes/kernel-
itbimage.bbclass
index 84262879c09b..51a87319ce94 100644
--- a/classes/kernel-itbimage.bbclass
+++ b/classes/kernel-itbimage.bbclass
@@ -459,7 +459,7 @@ addtask assemble_fitimage_initramfs before
do_deploy after do_install


 kernel_do_deploy[vardepsexclude] = "DATETIME"
-kernel_do_deploy_append() {
+kernel_do_deploy:append() {
        # Update deploy directory
        if echo ${KERNEL_IMAGETYPES} | grep -wq "itbImage"; then
                cd ${B}
diff --git a/classes/mfgtool-initramfs-image.bbclass
b/classes/mfgtool-initramfs-image.bbclass
index 65028b8faa88..1d4c55131d67 100644
--- a/classes/mfgtool-initramfs-image.bbclass
+++ b/classes/mfgtool-initramfs-image.bbclass
@@ -13,7 +13,7 @@ FEATURE_PACKAGES_extfs = "packagegroup-fsl-mfgtool-
extfs"
 FEATURE_PACKAGES_f2fs = "packagegroup-fsl-mfgtool-f2fs"

 IMAGE_FSTYPES = "cpio.gz.u-boot"
-IMAGE_FSTYPES_mxs = "cpio.gz.u-boot"
+IMAGE_FSTYPES:mxs = "cpio.gz.u-boot"
 IMAGE_ROOTFS_SIZE ?= "8192"

 # Filesystems enabled by default
diff --git a/classes/qoriq_build_64bit_kernel.bbclass
b/classes/qoriq_build_64bit_kernel.bbclass
index 93b4d412ff3c..7014be91cc1f 100644
--- a/classes/qoriq_build_64bit_kernel.bbclass
+++ b/classes/qoriq_build_64bit_kernel.bbclass
@@ -6,8 +6,8 @@ python () {
     if promote_kernel == "1":
         sys_multilib = 'powerpc64' + d.getVar('TARGET_VENDOR',
False) + 'mllib64-' + d.getVar('HOST_OS', False)
         tc_options = d.getVar('TOOLCHAIN_OPTIONS', False) +
'/../lib64-' + d.getVar("MACHINE", False)
-        d.setVar('DEPENDS_append', ' lib64-gcc-cross-powerpc64
lib64-libgcc')
-        d.setVar('PATH_append', ':' +
d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
+        d.setVar('DEPENDS:append', ' lib64-gcc-cross-powerpc64
lib64-libgcc')
+        d.setVar('PATH:append', ':' +
d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
         d.setVar('KERNEL_CC', d.getVar('CCACHE', False) +
sys_multilib + '-' + 'gcc' + d.getVar('HOST_CC_KERNEL_ARCH', False) +
tc_options)
         d.setVar('KERNEL_LD', d.getVar('CCACHE', False) +
sys_multilib + '-' + 'ld.bfd' + d.getVar('HOST_LD_KERNEL_ARCH',
False) + tc_options)
         d.setVar('KERNEL_AR', d.getVar('CCACHE', False) +
sys_multilib + '-' + 'ar' + d.getVar('HOST_AR_KERNEL_ARCH', False))
diff --git a/classes/use-imx-headers.bbclass b/classes/use-imx-
headers.bbclass
index fcec68c8b3e0..b03d37413504 100644
--- a/classes/use-imx-headers.bbclass
+++ b/classes/use-imx-headers.bbclass
@@ -13,14 +13,14 @@
 #
 # Copyright 2018 (C) O.S. Systems Software LTDA.

-DEPENDS_append_imx = " linux-imx-headers"
+DEPENDS:append:imx = " linux-imx-headers"

 # Set runtime dependency of -dev for package inheriting this class
to
 # linux-imx-headers-dev package. This is required in order to
propagate
 # headers into the SDK
 RDEPENDS_${PN}-dev += "linux-imx-headers-dev"

-PACKAGE_ARCH_imx ?= "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx ?= "${MACHINE_SOCARCH}"

 STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"

@@ -34,4 +34,4 @@ STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"
 # Typical example here would be imx-vpu-hantro recipe, which
requires NXP
 # BSP and is not compatible with mainline.
 COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/classes/use-imx-security-controller-firmware.bbclass
b/classes/use-imx-security-controller-firmware.bbclass
index 7c79fc62bbd5..9650059b5066 100644
--- a/classes/use-imx-security-controller-firmware.bbclass
+++ b/classes/use-imx-security-controller-firmware.bbclass
@@ -18,11 +18,11 @@

 SECO_FIRMWARE_NAME              ?= ""

-SECO_FIRMWARE_NAME_mx8qm         = "mx8qmb0-ahab-container.img"
-SECO_FIRMWARE_NAME_mx8qxp        = \
+SECO_FIRMWARE_NAME:mx8qm         = "mx8qmb0-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8qxp        = \
     "${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', 'mx8qxb0-
ahab-container.img', \
                                                            'mx8qxc0-
ahab-container.img', d)}"
-SECO_FIRMWARE_NAME_mx8dxl        = "mx8dxla1-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8dxl        = "mx8dxla1-ahab-container.img"

 python () {
     if "mx8m" in d.getVar('MACHINEOVERRIDES').split(":"):
diff --git a/conf/layer.conf b/conf/layer.conf
index e07b65ab77f4..4487de9cc445 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
 BBFILE_COLLECTIONS += "freescale-layer"
 BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/"
 BBFILE_PRIORITY_freescale-layer = "5"
-LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott honister"

 # Add the Freescale-specific licenses into the metadata
 LICENSE_PATH += "${LAYERDIR}/custom-licenses"
diff --git a/conf/machine/imx6qdlsabreauto.conf
b/conf/machine/imx6qdlsabreauto.conf
index b7aec8c257ee..0b5274cb8149 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE = " \
     imx6dl-sabreauto.dtb imx6dl-sabreauto-gpmi-weim.dtb imx6dl-
sabreauto-ecspi.dtb \
     imx6dl-sabreauto-flexcan1.dtb imx6dl-sabreauto-enetirq.dtb \
 "
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
     imx6qp-sabreauto.dtb \
     imx6q-sabreauto.dtb \
     imx6dl-sabreauto.dtb \
@@ -34,18 +34,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

 ### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

 ### u-boot-imx settings ###

 # The u-boot-imx does not provide unified functionality for DL/Q/QP
SoC
 # variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx = "mx6qsabreauto_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx = "mx6qsabreauto_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

 WKS_FILE = " \
     ${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -54,6 +54,6 @@ WKS_FILE = " \

 SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

 MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6qdlsabresd.conf
b/conf/machine/imx6qdlsabresd.conf
index b3d09e9397cb..27a2e9d7fa7f 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -35,7 +35,7 @@ KERNEL_DEVICETREE = " \
        imx6dl-sabresd-hdcp.dtb \
        imx6dl-sabresd-ldo.dtb \
 "
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
     imx6qp-sabresd.dtb \
     imx6q-sabresd.dtb \
     imx6dl-sabresd.dtb \
@@ -43,18 +43,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

 ### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

 ### u-boot-imx settings ###

 # The u-boot-imx does not provide unified functionality for DL/Q/QP
SoC
 # variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

 WKS_FILE = " \
     ${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -63,6 +63,6 @@ WKS_FILE = " \

 SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

 MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6slevk.conf
b/conf/machine/imx6slevk.conf
index 1e8c403b7cde..8bef21b680b4 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -10,7 +10,7 @@ include conf/machine/include/imx-base.inc
 include conf/machine/include/tune-cortexa9.inc

 KERNEL_DEVICETREE = "imx6sl-evk.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     imx6sl-evk-btwifi.dtb \
     imx6sl-evk-csi.dtb \
     imx6sl-evk-ldo.dtb \
diff --git a/conf/machine/imx6sllevk.conf
b/conf/machine/imx6sllevk.conf
index 30b537f18666..6282533aa4f1 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -23,7 +23,7 @@ UBOOT_CONFIG[sd-optee] =
"mx6sllevk_optee_config,sdcard"
 UBOOT_CONFIG[epdc]     = "mx6sllevk_epdc_config"
 UBOOT_CONFIG[mfgtool]  = "mx6sllevk_config"

-OPTEE_BIN_EXT_imx6sllevk = "6sllevk"
+OPTEE_BIN_EXT:imx6sllevk = "6sllevk"

 SERIAL_CONSOLES = "115200;ttymxc0"

diff --git a/conf/machine/imx6sxsabreauto.conf
b/conf/machine/imx6sxsabreauto.conf
index f7031ccb1134..2354635e2b33 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -10,7 +10,7 @@ require conf/machine/include/imx-base.inc
 require conf/machine/include/tune-cortexa9.inc

 KERNEL_DEVICETREE = "imx6sx-sabreauto.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sabreauto.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6sx-sabreauto.dtb"

 UBOOT_MAKE_TARGET = "u-boot.imx"
 UBOOT_SUFFIX = "imx"
@@ -29,6 +29,6 @@ OPTEE_BIN_EXT = "6sxauto"

 SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

 MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6sxsabresd.conf
b/conf/machine/imx6sxsabresd.conf
index ff7d6ae62d03..fcfcbd5f41c7 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -14,7 +14,7 @@ KERNEL_DEVICETREE = " \
     imx6sx-sdb-reva.dtb \
     imx6sx-sdb-sai.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     imx6sx-sdb-btwifi.dtb \
     imx6sx-sdb-emmc.dtb \
     imx6sx-sdb-lcdif1.dtb \
@@ -43,6 +43,6 @@ OPTEE_BIN_EXT = "6sxsdb"

 SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

 MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
diff --git a/conf/machine/imx6ulevk.conf
b/conf/machine/imx6ulevk.conf
index f7c5d8ae52df..6fd14456fb29 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -21,19 +21,19 @@ KERNEL_DEVICETREE = " \
        imx6ul-14x14-evk-emmc.dtb \
        imx6ul-14x14-evk-gpmi-weim.dtb \
 "
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6ul-14x14-evk.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6ul-14x14-evk.dtb"

 ### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

 ### u-boot-imx settings ###

 # The u-boot-imx does not provide SPL support
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

 WKS_FILE = " \
     ${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
diff --git a/conf/machine/imx6ullevk.conf
b/conf/machine/imx6ullevk.conf
index bd592a20bf43..f5b7309fbe6b 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -15,7 +15,7 @@ KERNEL_DEVICETREE = " \
        imx6ull-14x14-evk.dtb \
 "

-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        imx6ull-14x14-evk-btwifi.dtb \
        imx6ull-14x14-evk-btwifi-oob.dtb \
        imx6ull-14x14-evk-emmc.dtb \
diff --git a/conf/machine/imx6ulz-14x14-evk.conf
b/conf/machine/imx6ulz-14x14-evk.conf
index 7b794e7ccb13..a27f1ef11277 100644
--- a/conf/machine/imx6ulz-14x14-evk.conf
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -14,7 +14,7 @@ MACHINE_FEATURES += "wifi bluetooth bcm4339
bcm43455"
 KERNEL_DEVICETREE = " \
     imx6ulz-14x14-evk.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     imx6ulz-14x14-evk-btwifi.dtb \
     imx6ulz-14x14-evk-emmc.dtb \
     imx6ulz-14x14-evk-gpmi-weim.dtb \
diff --git a/conf/machine/imx7dsabresd.conf
b/conf/machine/imx7dsabresd.conf
index e848f294395f..860c8007f711 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -12,7 +12,7 @@ require conf/machine/include/tune-cortexa7.inc
 MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"

 KERNEL_DEVICETREE = "imx7d-sdb.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        imx7d-sdb-epdc.dtb \
        imx7d-sdb-gpmi-weim.dtb \
        imx7d-sdb-m4.dtb \
diff --git a/conf/machine/imx7ulpevk.conf
b/conf/machine/imx7ulpevk.conf
index a587f44b388c..d685a90caca2 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -14,10 +14,10 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
 KERNEL_DEVICETREE = " \
        imx7ulp-evk.dtb \
 "
-KERNEL_DEVICETREE_append_use-mainline-bsp = " \
+KERNEL_DEVICETREE:append:use-mainline-bsp = " \
        imx7ulp-com.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        imx7ulp-evk-ft5416.dtb \
        imx7ulp-evk-mipi.dtb \
        imx7ulp-evkb.dtb \
diff --git a/conf/machine/imx8dxl-lpddr4-evk.conf
b/conf/machine/imx8dxl-lpddr4-evk.conf
index 1ea5260bb2c9..d44a4732128a 100644
--- a/conf/machine/imx8dxl-lpddr4-evk.conf
+++ b/conf/machine/imx8dxl-lpddr4-evk.conf
@@ -5,7 +5,7 @@

 require conf/machine/include/imx8dxl-evk.inc
 KERNEL_DEVICETREE_BASENAME = "imx8dxl-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}-enet0.dtb \
     freescale/${KERNEL_DEVICETREE_BASENAME}-enet0-tja1100.dtb \
     freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-
ddr4-evk.conf
index 3901bb92c3a0..f21cc38148b9 100644
--- a/conf/machine/imx8mm-ddr4-evk.conf
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -7,7 +7,7 @@
 require include/imx8mm-evk.inc

 KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
     freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
 "
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf
b/conf/machine/imx8mm-lpddr4-evk.conf
index 6007c5404fc1..0a85ed20ac81 100644
--- a/conf/machine/imx8mm-lpddr4-evk.conf
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mm-evk.inc

 # The device tree name is implicit for LPDDR4, so can't use MACHINE
here
 KERNEL_DEVICETREE_BASENAME = "imx8mm-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
diff --git a/conf/machine/imx8mn-ddr4-evk.conf b/conf/machine/imx8mn-
ddr4-evk.conf
index 442afdbd0547..d004d2aecb3b 100644
--- a/conf/machine/imx8mn-ddr4-evk.conf
+++ b/conf/machine/imx8mn-ddr4-evk.conf
@@ -7,7 +7,7 @@
 require include/imx8mn-evk.inc

 KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
 "
 UBOOT_CONFIG_BASENAME = "imx8mn_ddr4_evk"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf
b/conf/machine/imx8mn-lpddr4-evk.conf
index 7c58bc19f8a2..2e5e6be9aa21 100644
--- a/conf/machine/imx8mn-lpddr4-evk.conf
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mn-evk.inc

 # The device tree name is implicit for LPDDR4, so can't use MACHINE
here
 KERNEL_DEVICETREE_BASENAME = "imx8mn-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
 "
 UBOOT_CONFIG_BASENAME = "imx8mn_evk"
diff --git a/conf/machine/imx8mp-ddr4-evk.conf b/conf/machine/imx8mp-
ddr4-evk.conf
index 09517769f00b..78e0c1608152 100644
--- a/conf/machine/imx8mp-ddr4-evk.conf
+++ b/conf/machine/imx8mp-ddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mp-evk.inc

 # FIXME: This machine is not yet supported by u-boot-fslc, so for
now
 # use u-boot-imx for mainline.
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-imx"

 KERNEL_DEVICETREE_BASENAME = "${MACHINE}"

diff --git a/conf/machine/imx8mp-lpddr4-evk.conf
b/conf/machine/imx8mp-lpddr4-evk.conf
index cf926c08d0a1..76a1f44990fe 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -11,7 +11,7 @@ KERNEL_DEVICETREE_BASENAME = "imx8mp-evk"

 # NXP kernel has additional DTB files for various board
configuration and
 # derivates. Include them here for NXP BSP only
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        freescale/imx8mp-ab2.dtb \
        freescale/imx8mp-evk-basler.dtb \
        freescale/imx8mp-evk-basler-ov2775.dtb \
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-
evk.conf
index 9907ef4b26c2..b6dcd89026bb 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -12,14 +12,14 @@ require conf/machine/include/tune-cortexa53.inc
 IMX_DEFAULT_BSP = "nxp"

 MACHINE_FEATURES += "pci wifi bluetooth optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

-MACHINE_SOCARCH_FILTER_append_mx8mq = " virtual/libopenvg
virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa
virtual/libgl virtual/libg2d"
+MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg
virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa
virtual/libgl virtual/libg2d"

 KERNEL_DEVICETREE = " \
        freescale/imx8mq-evk.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        freescale/imx8mq-evk-ak4497.dtb \
        freescale/imx8mq-evk-audio-tdm.dtb \
        freescale/imx8mq-evk-dcss-adv7535.dtb \
@@ -40,8 +40,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
        freescale/imx8mq-evk-usdhc2-m2.dtb \
 "

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

 UBOOT_SUFFIX = "bin"

@@ -77,7 +77,7 @@ IMX_BOOT_SEEK = "33"
 OPTEE_BIN_EXT = "8mq"

 # Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"

 # Use gstreamer 1.16 from meta-freescale
 PREFERRED_VERSION_gstreamer1.0 ?= "1.16.imx"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-
mek.conf
index 5ceb6b8bb2f7..655c453f6262 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -11,7 +11,7 @@ require conf/machine/include/tune-cortexa72-
cortexa53.inc
 IMX_DEFAULT_BSP = "nxp"

 MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

 # Don't include kernels in standard images
 RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -55,8 +55,8 @@ UBOOT_MAKE_TARGET = \
 SPL_BINARY = \
     "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'spl/u-boot-
spl.bin', \
                                                        '', d)}"
-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

 UBOOT_SUFFIX = "bin"

@@ -86,4 +86,4 @@ IMX_BOOT_SOC_TARGET = "iMX8QM"
 BOARD_TYPE = "mek"

 # Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-
mek.conf
index 5b29138fc3fd..29412cc35bc9 100644
--- a/conf/machine/imx8qxp-mek.conf
+++ b/conf/machine/imx8qxp-mek.conf
@@ -8,7 +8,7 @@ MACHINEOVERRIDES =. "mx8qxp:"
 require include/imx8x-mek.inc

 KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-dom0.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
diff --git a/conf/machine/include/imx-base.inc
b/conf/machine/include/imx-base.inc
index f92a08af1c00..78f815d1310d 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -13,8 +13,8 @@ require conf/machine/include/utilities.inc
 IMX_DEFAULT_BSP ?= "mainline"

 # Those are SoC families we'd like to force the use of mainline BSP.
-IMX_DEFAULT_BSP_mxs ?= "mainline"
-IMX_DEFAULT_BSP_mx5 ?= "mainline"
+IMX_DEFAULT_BSP:mxs ?= "mainline"
+IMX_DEFAULT_BSP:mx5 ?= "mainline"

 MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"

@@ -32,16 +32,16 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
 # ,----[ imx6qdlsabresd.conf ]
 # | ### u-boot-fslc settings ###
 # |
-# | SPL_BINARY_pn-u-boot-fslc = "SPL"
-# | UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+# | SPL_BINARY:pn-u-boot-fslc = "SPL"
+# | UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-fslc = "img"
 # |
 # | ### u-boot-imx settings ###
 # |
 # | # The u-boot-imx does not provide unified functionality for
DL/Q/QP SoC
 # | # variants. Change the defconfig to the targeted SoC variant.
-# | UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+# | UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-imx = "imx"
 # `----
 #
 # As result, the 'UBOOT_SUFFIX' is dynamically set based on the
preferred U-Boot
@@ -61,7 +61,7 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
 # | UBOOT_MACHINE = "mx53loco_config"
 # `----
 IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
-UBOOT_SUFFIX ?= "${UBOOT_SUFFIX_pn-${IMX_DEFAULT_BOOTLOADER}}"
+UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}"

 # We need to export the original variable to allow it to be used
when generating
 # wic based images.
@@ -75,33 +75,33 @@ PREFERRED_PROVIDER_virtual/bootloader ??=
"${IMX_DEFAULT_BOOTLOADER}"

 PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-
native"

-UBOOT_ENTRYPOINT_mxs    = "0x40008000"
-UBOOT_ENTRYPOINT_mx51   = "0x90008000"
-UBOOT_ENTRYPOINT_mx53   = "0x70008000"
-UBOOT_ENTRYPOINT_mx6    = "0x10008000"
-UBOOT_ENTRYPOINT_mx6sl  = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sll = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sx  = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ul  = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ull = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ulz = "0x80008000"
-UBOOT_ENTRYPOINT_mx7    = "0x80008000"
-UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
-UBOOT_ENTRYPOINT_mx8m   = "0x40480000"
-UBOOT_ENTRYPOINT_vf = "0x80008000"
+UBOOT_ENTRYPOINT:mxs    = "0x40008000"
+UBOOT_ENTRYPOINT:mx51   = "0x90008000"
+UBOOT_ENTRYPOINT:mx53   = "0x70008000"
+UBOOT_ENTRYPOINT:mx6    = "0x10008000"
+UBOOT_ENTRYPOINT:mx6sl  = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sll = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sx  = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ul  = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ull = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ulz = "0x80008000"
+UBOOT_ENTRYPOINT:mx7    = "0x80008000"
+UBOOT_ENTRYPOINT:mx7ulp = "0x60008000"
+UBOOT_ENTRYPOINT:mx8m   = "0x40480000"
+UBOOT_ENTRYPOINT:vf = "0x80008000"

 # Some derivates can utilize the boot container provided by U-Boot,
 # below variable sets that those machines which have a imx-boot-
container
 # in their MACHINEOVERRIDES can inherit a imx-boot-container class
 UBOOT_PROVIDES_BOOT_CONTAINER = "0"
-UBOOT_PROVIDES_BOOT_CONTAINER_imx-boot-container = "1"
+UBOOT_PROVIDES_BOOT_CONTAINER:imx-boot-container = "1"

 PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
 XSERVER_DRIVER                  = "xf86-video-fbdev"
-XSERVER_DRIVER_imxgpu2d         = "xf86-video-imx-vivante"
-XSERVER_DRIVER_vf               = "xf86-video-modesetting"
-XSERVER_DRIVER_append_mx8       = " xf86-video-modesetting"
-XSERVER_DRIVER_use-mainline-bsp = " \
+XSERVER_DRIVER:imxgpu2d         = "xf86-video-imx-vivante"
+XSERVER_DRIVER:vf               = "xf86-video-modesetting"
+XSERVER_DRIVER:append:mx8       = " xf86-video-modesetting"
+XSERVER_DRIVER:use-mainline-bsp = " \
     xf86-video-fbdev \
     xf86-video-modesetting \
     xserver-xorg-extension-glx \
@@ -118,41 +118,41 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
 # ARM_INSTRUCTION_SET = "thumb"
 #
 # handled by software
-# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
+# DEFAULTTUNE:mx6 ?= "cortexa9t-neon"
 # handled by hardware
-DEFAULTTUNE_mx6    ?= "cortexa9thf-neon"
-DEFAULTTUNE_mx6ul  ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ulz ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx7    ?= "cortexa7thf-neon"
-DEFAULTTUNE_vf     ?= "cortexa5thf-neon"
+DEFAULTTUNE:mx6    ?= "cortexa9thf-neon"
+DEFAULTTUNE:mx6ul  ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ull ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ulz ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx7    ?= "cortexa7thf-neon"
+DEFAULTTUNE:vf     ?= "cortexa5thf-neon"

-DEFAULTTUNE_mx8m   ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8qm  ?= "cortexa72-cortexa53-crypto"
-DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx8m   ?= "cortexa53-crypto"
+DEFAULTTUNE:mx8qm  ?= "cortexa72-cortexa53-crypto"
+DEFAULTTUNE:mx8qxp ?= "cortexa35-crypto"

 INHERIT += "machine-overrides-extender"

-MACHINEOVERRIDES_EXTENDER_mx25   = "use-mainline-bsp"
-MACHINEOVERRIDES_EXTENDER_mx6q   =
"imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6dl  =
"imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sx  =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6sl  =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sll = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ul  = "imxfbdev:imxpxp"
-MACHINEOVERRIDES_EXTENDER_mx6ull = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ulz = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7d   = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7ulp =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qm  =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mm  =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mn  = "imxdrm:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mp  =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mq  = "imxdrm:imxvpu:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qxp =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8dxl = "imxfbdev"
-
-MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
+MACHINEOVERRIDES_EXTENDER:mx25   = "use-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6q   =
"imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6dl  =
"imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sx  =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6sl  =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sll = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ul  = "imxfbdev:imxpxp"
+MACHINEOVERRIDES_EXTENDER:mx6ull = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ulz = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7d   = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7ulp =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qm  =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mm  =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mn  = "imxdrm:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mp  =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mq  = "imxdrm:imxvpu:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qxp =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8dxl = "imxfbdev"
+
+MACHINEOVERRIDES_EXTENDER_FILTER_OUT:use-mainline-bsp = " \
     imx \
     \
     mx6 \
@@ -182,40 +182,40 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-
mainline-bsp = " \

 # Sub-architecture support
 MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
-MACHINE_SOCARCH_SUFFIX_mx6sl = "-mx6sl"
-MACHINE_SOCARCH_SUFFIX_mx6sll= "-mx6sll"
-MACHINE_SOCARCH_SUFFIX_mx7d = "-mx7d"
-MACHINE_SOCARCH_SUFFIX_mx7ulp = "-mx7ulp"
-MACHINE_SOCARCH_SUFFIX_vf60 = "-vf60"
-MACHINE_SOCARCH_SUFFIX_vf50 = "-vf50"
-MACHINE_SOCARCH_SUFFIX_mx6ul  = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ulz = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx8qm  = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8mm  = "-mx8mm"
-MACHINE_SOCARCH_SUFFIX_mx8mn  = "-mx8mn"
-MACHINE_SOCARCH_SUFFIX_mx8mp  = "-mx8mp"
-MACHINE_SOCARCH_SUFFIX_mx8mq  = "-mx8m"
-MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8dxl = "-mx8dxl"
-MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
+MACHINE_SOCARCH_SUFFIX:mx6q = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6dl = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6sx = "-mx6sx"
+MACHINE_SOCARCH_SUFFIX:mx6sl = "-mx6sl"
+MACHINE_SOCARCH_SUFFIX:mx6sll= "-mx6sll"
+MACHINE_SOCARCH_SUFFIX:mx7d = "-mx7d"
+MACHINE_SOCARCH_SUFFIX:mx7ulp = "-mx7ulp"
+MACHINE_SOCARCH_SUFFIX:vf60 = "-vf60"
+MACHINE_SOCARCH_SUFFIX:vf50 = "-vf50"
+MACHINE_SOCARCH_SUFFIX:mx6ul  = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ull = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ulz = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx8qm  = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8mm  = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX:mx8mn  = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX:mx8mp  = "-mx8mp"
+MACHINE_SOCARCH_SUFFIX:mx8mq  = "-mx8m"
+MACHINE_SOCARCH_SUFFIX:mx8qxp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dxl = "-mx8dxl"
+MACHINE_SOCARCH_SUFFIX:use-mainline-bsp = "-imx"

 MACHINE_ARCH_FILTER = "virtual/kernel"
-MACHINE_SOCARCH_FILTER_append_imx = " \
+MACHINE_SOCARCH_FILTER:append:imx = " \
     alsa-lib \
     gstreamer1.0 \
     weston \
 "
-MACHINE_SOCARCH_FILTER_append_imxvpu = " \
+MACHINE_SOCARCH_FILTER:append:imxvpu = " \
     imx-codec \
     imx-vpuwrap \
     libimxvpuapi \
     virtual/imxvpu \
 "
-MACHINE_SOCARCH_FILTER_append_imxgpu = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu = " \
     virtual/egl \
     virtual/mesa \
     virtual/libopenvg \
@@ -225,15 +225,15 @@ MACHINE_SOCARCH_FILTER_append_imxgpu = " \
     opencv \
     pango \
 "
-MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu2d = " \
     virtual/libg2d \
 "
-MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu3d = " \
     virtual/libgl \
     virtual/libgles1 \
     virtual/libgles2 \
 "
-MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
+MACHINE_SOCARCH_FILTER:append:use-mainline-bsp = " \
     virtual/egl \
     virtual/libopenvg \
     virtual/libg2d \
@@ -245,23 +245,23 @@ MACHINE_SOCARCH_FILTER_append_use-mainline-bsp
= " \
     pango \
     qtbase \
 "
-MACHINE_SOCARCH_FILTER_append_mx6q = " \
+MACHINE_SOCARCH_FILTER:append:mx6q = " \
     opencl-icd-loader \
     opencl-clhpp \
     opencl-headers \
 "
-MACHINE_SOCARCH_FILTER_append_mx8 = " \
+MACHINE_SOCARCH_FILTER:append:mx8 = " \
     opencl-icd-loader \
     opencl-clhpp \
     opencl-headers \
 "
-MACHINE_SOCARCH_FILTER_append_mx8qm = " \
+MACHINE_SOCARCH_FILTER:append:mx8qm = " \
     virtual/libopenvx \
 "

 INHERIT += "fsl-dynamic-packagearch"

-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \
     imx-gpu-viv->kernel-module-imx-gpu-viv \
     libimxvpuapi->virtual/imxvpu \
     imx-vpuwrap->virtual/imxvpu \
@@ -271,44 +271,44 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \

 # Firmware
 MACHINE_FIRMWARE ?= ""
-MACHINE_FIRMWARE_append_mx25 = " firmware-imx-sdma-imx25"
-MACHINE_FIRMWARE_append_mx27 = " firmware-imx-vpu-imx27"
-MACHINE_FIRMWARE_append_mx7d = " linux-firmware-imx-sdma-imx7d
firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-imx-sdma-imx6q"
-MACHINE_FIRMWARE_append_mx6q = " firmware-imx-vpu-imx6q"
-MACHINE_FIRMWARE_append_mx6dl = " firmware-imx-vpu-imx6d firmware-
imx-epdc"
-MACHINE_FIRMWARE_append_mx6sl = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sll = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6ull = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx53 = " firmware-imx-vpu-imx53 firmware-
imx-sdma-imx53"
-MACHINE_FIRMWARE_append_mx51 = " firmware-imx-vpu-imx51 firmware-
imx-sdma-imx51"
-MACHINE_FIRMWARE_append_mx8mm  = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mn  = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mp  = " linux-firmware-imx-sdma-imx7d
firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
-MACHINE_FIRMWARE_append_mx8mq  = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8qm  = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-
sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q
firmware-imx-vpu-imx6d"
+MACHINE_FIRMWARE:append:mx25 = " firmware-imx-sdma-imx25"
+MACHINE_FIRMWARE:append:mx27 = " firmware-imx-vpu-imx27"
+MACHINE_FIRMWARE:append:mx7d = " linux-firmware-imx-sdma-imx7d
firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE:append:mx6q = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE:append:mx6dl = " firmware-imx-vpu-imx6d firmware-
imx-epdc"
+MACHINE_FIRMWARE:append:mx6sl = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sll = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6ull = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx53 = " firmware-imx-vpu-imx53 firmware-
imx-sdma-imx53"
+MACHINE_FIRMWARE:append:mx51 = " firmware-imx-vpu-imx51 firmware-
imx-sdma-imx51"
+MACHINE_FIRMWARE:append:mx8mm  = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mn  = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mp  = " linux-firmware-imx-sdma-imx7d
firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE:append:mx8mq  = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8qm  = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8qxp = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:use-mainline-bsp = " linux-firmware-imx-
sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q
firmware-imx-vpu-imx6d"

 MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"

 # Extra audio support
 IMX_ALSA_EXTRA = ""
-IMX_ALSA_EXTRA_use-nxp-bsp = "imx-alsa-plugins"
-MACHINE_EXTRA_RRECOMMENDS_append_mx6 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx7 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx8 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
+IMX_ALSA_EXTRA:use-nxp-bsp = "imx-alsa-plugins"
+MACHINE_EXTRA_RRECOMMENDS:append:mx6 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx7 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx8 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"

 # Extra Cypress Wi-Fi and BTW firmware (Murata)
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4339', 'linux-firmware-bcm4339', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43430', 'linux-firmware-bcm43430', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43455', 'linux-firmware-bcm43455', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4339', 'linux-firmware-bcm4339', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43430', 'linux-firmware-bcm43430', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43455', 'linux-firmware-bcm43455', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"

 # Extra QCA Wi-Fi & BTE driver and firmware
-MACHINE_EXTRA_RRECOMMENDS_append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-
fsl-qca6174', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-
fsl-qca9377', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-
fsl-qca6174', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-
fsl-qca9377', '', d)}"

 # Extra udev rules
 MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
@@ -320,29 +320,29 @@ MACHINE_EXTRA_RRECOMMENDS += " \

 # GStreamer 1.0 plugins
 MACHINE_GSTREAMER_1_0_PLUGIN        ?= ""
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl  ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6q   ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl  ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx  ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul  ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ull ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx7d   ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mm  ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mn  ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mp  ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mq  ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qm  ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qxp ?= "imx-gst1.0-plugin"
-
-PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.16.0"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6dl  ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6q   ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sl  ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sx  ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ul  ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ull ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx7d   ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mm  ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mn  ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mp  ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mq  ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qm  ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qxp ?= "imx-gst1.0-plugin"
+
+PREFERRED_VERSION_gstreamer1.0:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-libav:mx8 ?= "1.16.0"

 # Determines if the SoC has support for Vivante kernel driver
 SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT        = "0"
-SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1"
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT:imxgpu = "1"

 # Handle Vivante kernel driver setting:
 #   0 - machine does not have Vivante GPU driver support
@@ -355,59 +355,59 @@ PREFERRED_PROVIDER_virtual/libgl    ?= "mesa"
 PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
 PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"

-PREFERRED_PROVIDER_virtual/egl_imxgpu        ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgl_imxgpu3d    ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/egl:imxgpu        ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgl:imxgpu3d    ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles1:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles2:imxgpu3d ?= "imx-gpu-viv"
 PREFERRED_PROVIDER_virtual/libg2d            ?= "imx-gpu-g2d"
-PREFERRED_PROVIDER_virtual/libg2d_imxdpu     ?= "imx-dpu-g2d"
-PREFERRED_PROVIDER_opencl-clhpp_imxgpu       ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-headers_imxgpu     ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-icd-loader_imxgpu  ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libg2d:imxdpu     ?= "imx-dpu-g2d"
+PREFERRED_PROVIDER_opencl-clhpp:imxgpu       ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-headers:imxgpu     ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-icd-loader:imxgpu  ?= "imx-gpu-viv"

-PREFERRED_VERSION_weston_imx ?= "9.0.0.imx"
-PREFERRED_VERSION_weston_use-mainline-bsp = ""
+PREFERRED_VERSION_weston:imx ?= "9.0.0.imx"
+PREFERRED_VERSION_weston:use-mainline-bsp = ""

-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx6 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx7 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx8 ?= "1.20.imx"

 # Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx6 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx7 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx8 ?= "2.4.102.imx"

 # Use i.MX optee Version
-PREFERRED_VERSION_optee-os_mx8     ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-client_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-test_mx8   ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-os:mx8     ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-client:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-test:mx8   ?= "3.10.0.imx"

 #Use i.MX opencv Version for mx8
-PREFERRED_VERSION_opencv_mx8 ?= "4.5.2.imx"
+PREFERRED_VERSION_opencv:mx8 ?= "4.5.2.imx"

 # Handle default kernel
 IMX_DEFAULT_KERNEL = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx8 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7ulp = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6sll = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
+IMX_DEFAULT_KERNEL:mxs = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx5 = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx6 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx8 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7ulp = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6sll = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ul = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ull = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:use-mainline-bsp = "linux-fslc"

 PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"

 SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.bmap
wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES:mxs = "uboot-mxsboot-sdcard wic.bmap
wic.gz"

 # Do not update fstab file when using wic images
 WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"

 OPTEE_BOOT_IMAGE         = "uTee"
-OPTEE_BOOT_IMAGE_aarch64 = ""
+OPTEE_BOOT_IMAGE:aarch64 = ""

 IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

@@ -419,7 +419,7 @@ IMAGE_BOOT_FILES ?= " \

 ### wic default support
 OPTEE_WKS_FILE_DEPENDS         = "optee-os"
-OPTEE_WKS_FILE_DEPENDS_aarch64 = ""
+OPTEE_WKS_FILE_DEPENDS:aarch64 = ""

 WKS_FILE_DEPENDS ?= " \
     virtual/bootloader \
@@ -429,8 +429,8 @@ WKS_FILE_DEPENDS ?= " \
     ${@bb.utils.contains('MACHINE_FEATURES', 'optee',
'${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
 "

-WKS_FILE_DEPENDS_append_mx8 = " imx-boot"
-WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8 = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8m = " imx-boot"

 # We need to restrict the append so we don't add this for other i.MX
SoC's.
 # Derivatives that are not yet adopted the usage of boot container
provided
@@ -444,15 +444,15 @@ WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
 # deployment task extesion execution defined in imx-boot-container
class.
 # For NXP BSP: rename is done in 'imx-boot' recipe at the execution
of compile
 # task.
-WKS_FILE_DEPENDS_append_use-mainline-bsp_aarch64 = " \
+WKS_FILE_DEPENDS:append:use-mainline-bsp:aarch64 = " \
     ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') ==
'0', 'imx-boot', '')} \
 "

 SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8m ?= "imx-imx-boot-bootpart.wks.in"

-SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8 ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mxs ?= "imx-uboot-mxs-bootpart.wks.in"

 # Boot container built as a part of mainline U-Boot uses different
WKS
 # file as the entire mx8m series, as U-Boot versions later than
2021.04 are
@@ -462,19 +462,19 @@ SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-
bootpart.wks.in"
 # replacement of imx-boot from NXP.
 # Creation of those binary files is controlled by
UBOOT_PROVIDES_BOOT_CONTAINER
 # variable defined above.
-SOC_DEFAULT_WKS_FILE_imx-boot-container ?= "imx-boot-container-
bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:imx-boot-container ?= "imx-boot-container-
bootpart.wks.in"

 WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

 SERIAL_CONSOLES = "115200;ttymxc0"
-SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
+SERIAL_CONSOLES:mxs = "115200;ttyAMA0"

 KERNEL_IMAGETYPE = "zImage"
-KERNEL_IMAGETYPE_aarch64 = "Image"
+KERNEL_IMAGETYPE:aarch64 = "Image"

 MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"

-# Add the ability to specify _imx machines
+# Add the ability to specify :imx machines
 MACHINEOVERRIDES =. "imx:"

-HOSTTOOLS_NONFATAL_append_mx8 = " sha384sum"
+HOSTTOOLS_NONFATAL:append:mx8 = " sha384sum"
diff --git a/conf/machine/include/imx8dxl-evk.inc
b/conf/machine/include/imx8dxl-evk.inc
index 2868b4d6c1c3..4e75f8c4bbd3 100644
--- a/conf/machine/include/imx8dxl-evk.inc
+++ b/conf/machine/include/imx8dxl-evk.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
 IMX_DEFAULT_BSP = "nxp"

 MACHINE_FEATURES += "pci bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

 # Don't include kernels in standard images
 RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
 KERNEL_DEVICETREE = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
 "

diff --git a/conf/machine/include/imx8mm-evk.inc
b/conf/machine/include/imx8mm-evk.inc
index f458c56de9b7..1295de1d8271 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -11,19 +11,19 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43455
bcm4356"
 # and pin it to NXP BSP only
 # OP-TEE is also applicable to NXP BSP, mainline BSP seems not to
have
 # a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359
qca9377"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359
qca9377"

 KERNEL_DEVICETREE = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
 "
 UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

 UBOOT_SUFFIX = "bin"

@@ -51,18 +51,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
 # to be used to define the boot process.
 # We opt-in for Syslinux, since it is designated as a preferred
 # distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Mini EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M
Mini EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp     =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp =
"console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp    =
"root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M
Mini EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp     =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp =
"console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp    =
"root=/dev/mmcblk1p2"

 # Add extlinux.conf to the lis of files, which are deployed onto the
 # boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"

 LOADADDR = ""
 UBOOT_SUFFIX = "bin"
@@ -73,4 +73,4 @@ OPTEE_BIN_EXT = "8mm"
 TEE_LOAD_ADDR = "0xbe000000"

 # Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mn-evk.inc
b/conf/machine/include/imx8mn-evk.inc
index a0e39857c770..411004000b66 100644
--- a/conf/machine/include/imx8mn-evk.inc
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -8,12 +8,12 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455
bcm4356"
 # NXP BSP can consume proprietary jailhouse and Broadcom drivers
 # OP-TEE is also applicable to NXP BSP, mainline BSP seems not to
have
 # a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"

 KERNEL_DEVICETREE = " \
        freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
        freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
        freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
@@ -22,8 +22,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
 "
 UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

 UBOOT_SUFFIX = "bin"

@@ -52,18 +52,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
 # to be used to define the boot process.
 # We opt-in for Syslinux, since it is designated as a preferred
 # distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Nano EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M
Nano EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp     =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp =
"console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp    =
"root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M
Nano EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp     =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp =
"console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp    =
"root=/dev/mmcblk1p2"

 # Add extlinux.conf to the lis of files, which are deployed onto the
 # boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"

 BOOT_SPACE = "65536"
 LOADADDR = ""
@@ -79,4 +79,4 @@ OPTEE_BIN_EXT = "8mn"
 TEE_LOAD_ADDR = "0x56000000"

 # Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mp-evk.inc
b/conf/machine/include/imx8mp-evk.inc
index d070831ff3d3..bc2c038f0076 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -8,7 +8,7 @@ MACHINE_FEATURES += "pci wifi bluetooth"
 # NXP BSP can consume proprietary jailhouse and Marvell drivers
 # OP-TEE is also applicable to NXP BSP, mainline BSP seems not to
have
 # a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse mrvl8997"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse mrvl8997"

 # Mainline kernel contains only one DTB file for
 # imx8mpevk machine
@@ -18,8 +18,8 @@ KERNEL_DEVICETREE = " \

 UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

 UBOOT_SUFFIX = "bin"

@@ -50,18 +50,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
 # to be used to define the boot process.
 # We opt-in for Syslinux, since it is designated as a preferred
 # distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Plus EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M
Plus EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp     =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp =
"console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp    =
"root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M
Plus EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp     =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp =
"console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp    =
"root=/dev/mmcblk1p2"

 # Add extlinux.conf to the lis of files, which are deployed onto the
 # boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"

 LOADADDR = ""
 UBOOT_SUFFIX = "bin"
@@ -72,4 +72,4 @@ OPTEE_BIN_EXT = "8mp"
 TEE_LOAD_ADDR = "0x56000000"

 # Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8x-mek.inc
b/conf/machine/include/imx8x-mek.inc
index 55a28c877e60..0682fbc1be21 100644
--- a/conf/machine/include/imx8x-mek.inc
+++ b/conf/machine/include/imx8x-mek.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
 IMX_DEFAULT_BSP = "nxp"

 MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

 # Don't include kernels in standard images
 RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
 KERNEL_DEVICETREE = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
 "
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
     freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191.dtb \
     freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191-rpmsg.dtb \
     freescale/${KERNEL_DEVICETREE_BASENAME}-dsp.dtb \
@@ -71,4 +71,4 @@ IMXBOOT_TARGETS = \
 BOARD_TYPE = "mek"

 # Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/qoriq-base.inc
b/conf/machine/include/qoriq-base.inc
index 0a42160f0f30..9bc3ee76c756 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -9,8 +9,8 @@ PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??=
"nativesdk-u-boot-tools"
 PREFERRED_VERSION_testfloat = "2a"

 SOC_DEFAULT_IMAGE_FSTYPES = "tar.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1043a = " wic.bz2"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1046a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1043a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1046a = " wic.bz2"
 IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

 # Composite Image Layout (in KBytes)
@@ -31,8 +31,8 @@ IMAGE_BOOT_FILES ?= " \
 "

 SOC_DEFAULT_WKS_FILE ?= ""
-SOC_DEFAULT_WKS_FILE_ls1043a ?= "ls104x-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_ls1046a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1043a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1046a ?= "ls104x-uboot-bootpart.wks.in"

 WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

diff --git a/conf/machine/include/utilities.inc
b/conf/machine/include/utilities.inc
index f11b588bbe5d..34ce7abcb6d7 100644
--- a/conf/machine/include/utilities.inc
+++ b/conf/machine/include/utilities.inc
@@ -23,6 +23,6 @@ def make_dtb_boot_files(d):

 def get_spl_binary(d):
     imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER')
-    spl_binary = d.getVar("SPL_BINARY_pn-%s" %
imx_default_bootloader)
+    spl_binary = d.getVar("SPL_BINARY:pn-%s" %
imx_default_bootloader)

     return spl_binary or ""
diff --git a/conf/machine/ls1028ardb.conf
b/conf/machine/ls1028ardb.conf
index 63f3802f7959..d70a5a619f9b 100644
--- a/conf/machine/ls1028ardb.conf
+++ b/conf/machine/ls1028ardb.conf
@@ -22,7 +22,7 @@ UBOOT_CONFIG[tfa-secure-boot] =
"ls1028ardb_tfa_SECURE_BOOT_defconfig"
 UBOOT_CONFIG[tfa] = "ls1028ardb_tfa_defconfig"

 KERNEL_DEVICETREE ?= "freescale/fsl-ls1028a-rdb.dtb freescale/fsl-
ls1028a-qds.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = "\
+KERNEL_DEVICETREE:append:use-nxp-bsp = "\
     freescale/fsl-ls1028a-rdb-dpdk.dtb \
 "
 KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1043ardb.conf
b/conf/machine/ls1043ardb.conf
index fa8ab61566c7..4ff3c0acb913 100644
--- a/conf/machine/ls1043ardb.conf
+++ b/conf/machine/ls1043ardb.conf
@@ -27,7 +27,7 @@ KERNEL_DEVICETREE ?= "\
     freescale/fsl-ls1043a-qds.dtb \
 "
 # usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
     freescale/fsl-ls1043a-rdb-sdk.dtb \
     freescale/fsl-ls1043a-rdb-usdpaa.dtb \
     freescale/fsl-ls1043a-qds-sdk.dtb \
diff --git a/conf/machine/ls1046afrwy.conf
b/conf/machine/ls1046afrwy.conf
index e6eabc0f36df..eb3c0bb6f4a5 100644
--- a/conf/machine/ls1046afrwy.conf
+++ b/conf/machine/ls1046afrwy.conf
@@ -25,7 +25,7 @@ KERNEL_DEVICETREE ?= "\
     freescale/fsl-ls1046a-frwy.dtb \
 "
 # usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
     freescale/fsl-ls1046a-frwy-sdk.dtb \
     freescale/fsl-ls1046a-frwy-usdpaa.dtb \
 "
diff --git a/conf/machine/ls1046ardb.conf
b/conf/machine/ls1046ardb.conf
index 97fb1e29e36a..8e815295ad4c 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE ?= "\
     freescale/fsl-ls1046a-qds.dtb \
 "
 # usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
     freescale/fsl-ls1046a-rdb-sdk.dtb \
     freescale/fsl-ls1046a-rdb-usdpaa.dtb \
     freescale/fsl-ls1046a-qds-sdk.dtb \
diff --git a/dynamic-layers/aglprofilegraphical/recipes-
graphics/wayland/weston-init.bbappend b/dynamic-
layers/aglprofilegraphical/recipes-graphics/wayland/weston-
init.bbappend
index 10b66c0e4adc..b7bf3298f6ff 100644
--- a/dynamic-layers/aglprofilegraphical/recipes-
graphics/wayland/weston-init.bbappend
+++ b/dynamic-layers/aglprofilegraphical/recipes-
graphics/wayland/weston-init.bbappend
@@ -1,3 +1,3 @@
-do_install_append() {
+do_install:append() {
     rm -f ${D}${sysconfdir}/xdg/weston/weston.ini
 }
diff --git a/dynamic-layers/chromium-browser-layer/recipes-
browser/chromium/chromium-imx.inc b/dynamic-layers/chromium-browser-
layer/recipes-browser/chromium/chromium-imx.inc
index cdd0f08fde77..7d8065f9db46 100644
--- a/dynamic-layers/chromium-browser-layer/recipes-
browser/chromium/chromium-imx.inc
+++ b/dynamic-layers/chromium-browser-layer/recipes-
browser/chromium/chromium-imx.inc
@@ -1,4 +1,4 @@
-DEPENDS_append_imxvpu = " imx-vpuwrap"
+DEPENDS:append:imxvpu = " imx-vpuwrap"

 # Additional imx code and patches are included in the chromium-imx
git repository.
 # The code below fetches this repository, copies the extra source
over to the main
@@ -26,7 +26,7 @@ do_patch[prefuncs] =+ "add_chromium_imx_patches"
 # * Lost context problems are not known to happen with Vivante GPUs,
 #   so it is safe to use ignore-lost-context
 # * Proprietary codecs need to be enabled for h.264 and MP4 support
-PACKAGECONFIG_append = " ignore-lost-context proprietary-codecs"
+PACKAGECONFIG:append = " ignore-lost-context proprietary-codecs"

 copy_chromium_imx_files() {
        # sources in src/ are already organized in a manner
diff --git a/dynamic-layers/gnome-layer/recipes-
graphics/clutter/clutter-1.0_%.bbappend b/dynamic-layers/gnome-
layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
index 0b4c4861b6e3..fb90c73e1d1f 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-
1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-
1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland
egl', \
        bb.utils.contains('DISTRO_FEATURES',     'x11', 'glx x11', \
                                                        '', d), d)} \
diff --git a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-
1.0_%.bbappend b/dynamic-layers/gnome-layer/recipes-
graphics/cogl/cogl-1.0_%.bbappend
index afbaee4323ad..e07d0d54235a 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-
1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-
1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
     cogl-pango gles2 \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'egl-
wayland', \
        bb.utils.contains('DISTRO_FEATURES',     'x11', 'egl-x11', \
diff --git a/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend b/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend
index 72d991c7e590..4fc41d058011 100644
--- a/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend
+++ b/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend
@@ -1 +1 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/dynamic-layers/openembedded-layer/recipes-
benchmark/glmark2/glmark2_%.bbappend b/dynamic-layers/openembedded-
layer/recipes-benchmark/glmark2/glmark2_%.bbappend
index 2e648ba34914..06661133569f 100644
--- a/dynamic-layers/openembedded-layer/recipes-
benchmark/glmark2/glmark2_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-
benchmark/glmark2/glmark2_%.bbappend
@@ -1,4 +1,4 @@
-# Only _mx8 machine do provide virtual/libgbm required for any drm*
flavour
-DRM-REMOVE_imxgpu = "drm-gl drm-gles2"
-DRM-REMOVE_imxgpu_mx8 = ""
-PACKAGECONFIG_remove = "${DRM-REMOVE}"
+# Only :mx8 machine do provide virtual/libgbm required for any drm*
flavour
+DRM-REMOVE:imxgpu = "drm-gl drm-gles2"
+DRM-REMOVE:imxgpu:mx8 = ""
+PACKAGECONFIG:remove = "${DRM-REMOVE}"
diff --git a/dynamic-layers/openembedded-layer/recipes-
devtools/luajit/luajit_%.bbappend b/dynamic-layers/openembedded-
layer/recipes-devtools/luajit/luajit_%.bbappend
index 8c6138c54aae..d07f8ae14d2c 100644
--- a/dynamic-layers/openembedded-layer/recipes-
devtools/luajit/luajit_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-
devtools/luajit/luajit_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_qoriq-ppc = " file://ppc-fixplt.patch "
+SRC_URI:append:qoriq-ppc = " file://ppc-fixplt.patch "

diff --git a/dynamic-layers/openembedded-layer/recipes-
dpaa/fmc/fmc_git.bb b/dynamic-layers/openembedded-layer/recipes-
dpaa/fmc/fmc_git.bb
index 1793ec06fb4e..9c6be782d6d0 100644
--- a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
@@ -19,15 +19,15 @@ EXTRA_OEMAKE_virtclass-native = 'FMCHOSTMODE=1
FMD_USPACE_HEADER_PATH="${STAGING
     TCLAP_HEADER_PATH="${STAGING_INCDIR}" '

 EXTRA_OEMAKE_PLATFORM ?= ""
-EXTRA_OEMAKE_PLATFORM_ls1043a = "ls1043"
-EXTRA_OEMAKE_PLATFORM_ls1046a = "ls1046"
-EXTRA_OEMAKE_PLATFORM_ls1088a = "ls1088"
-EXTRA_OEMAKE_PLATFORM_p1020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p3041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p4080 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p5040 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:ls1043a = "ls1043"
+EXTRA_OEMAKE_PLATFORM:ls1046a = "ls1046"
+EXTRA_OEMAKE_PLATFORM:ls1088a = "ls1088"
+EXTRA_OEMAKE_PLATFORM:p1020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p3041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p4080 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p5040 = "p4080ds"


 do_compile () {
diff --git a/dynamic-layers/openembedded-layer/recipes-
graphics/xserver-common/xserver-common_%.bbappend b/dynamic-
layers/openembedded-layer/recipes-graphics/xserver-common/xserver-
common_%.bbappend
index f4f4350489cf..be6945744efa 100644
--- a/dynamic-layers/openembedded-layer/recipes-graphics/xserver-
common/xserver-common_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-graphics/xserver-
common/xserver-common_%.bbappend
@@ -1,8 +1,8 @@
 # i.MX extra configuration
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu3d = " \
+SRC_URI:append:imxgpu3d = " \
     file://0016-xserver-common-enable-iglx-module.patch \
 "

-PACKAGE_ARCH_imxgpu3d = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxgpu3d = "${MACHINE_SOCARCH}"
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-
support.inc b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-
support.inc
index 187681a8b123..8950c151bd77 100644
--- a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/qt4:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/qt4:"

 python __anonymous () {
     families = ['mx6']
@@ -8,21 +8,21 @@ python __anonymous () {
         d.appendVarFlag('do_configure', 'depends', '
virtual/kernel:do_shared_workdir')
 }

-SRC_URI_append_imxgpu2d += " \
+SRC_URI:append:imxgpu2d += " \
        file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \
       
file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch
 \
        file://0003-i.MX6-force-egl-visual-ID-33.patch \
 "

-DEPENDS_append_imxgpu2d = " virtual/kernel virtual/libgles2"
-QT_GLFLAGS_imxgpu2d = "-opengl es2 -openvg"
-QT_CONFIG_FLAGS_append_imxgpu2d = " -
I${STAGING_KERNEL_DIR}/include/uapi \
+DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2"
+QT_GLFLAGS:imxgpu2d = "-opengl es2 -openvg"
+QT_CONFIG_FLAGS:append:imxgpu2d = " -
I${STAGING_KERNEL_DIR}/include/uapi \
                                -I${STAGING_KERNEL_DIR}/include/ \
                                -DLINUX=1 -DEGL_API_FB=1 \
                                -DQT_QPA_EXPERIMENTAL_TOUCHEVENT=1"

 # The QT_CONFIG_FLAGS can pollute *.la files with -Dxxx
-do_compile_append_mx6 () {
+do_compile:append:mx6 () {
     find lib -name "*.la" | xargs -n1 sed -i 's/-D.*=1//g'
 }

diff --git a/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtbase_%.bbappend b/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtbase_%.bbappend
index bf3fb66eeb72..0d5897adc7f9 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
@@ -3,35 +3,35 @@
 # Copyright (C) 2016, 2017 O.S. Systems Software LTDA.
 # Copyright (C) 2017-2018 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = " \
+SRC_URI:append:imxgpu = " \
     file://0014-Add-IMX-GPU-support.patch \
    
file://0001-egl.prf-Fix-build-error-when-egl-headers-need-platfo.patch
 \
 "

 PACKAGECONFIG_GL_IMX_GPU     = ""
-PACKAGECONFIG_GL_IMX_GPU_mx8 = "gbm kms"
+PACKAGECONFIG_GL_IMX_GPU:mx8 = "gbm kms"

-PACKAGECONFIG_GL_imxpxp   = "gles2"
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'x11', ' gl', '', d)} \
+PACKAGECONFIG_GL:imxpxp   = "gles2"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'x11', ' gl', '', d)} \
                              ${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_imxgpu3d = "gles2 \
+PACKAGECONFIG_GL:imxgpu3d = "gles2 \
                              ${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_use-mainline-bsp ?= "gles2 gbm kms"
+PACKAGECONFIG_GL:use-mainline-bsp ?= "gles2 gbm kms"

 PACKAGECONFIG_PLATFORM          = ""
-PACKAGECONFIG_PLATFORM_imxgpu2d = "no-opengl linuxfb"
-PACKAGECONFIG_PLATFORM_imxgpu3d = " \
+PACKAGECONFIG_PLATFORM:imxgpu2d = "no-opengl linuxfb"
+PACKAGECONFIG_PLATFORM:imxgpu3d = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11',     '', \
        bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
                                                        'eglfs', d),
d)}"
-PACKAGECONFIG_PLATFORM_use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
+PACKAGECONFIG_PLATFORM:use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
 PACKAGECONFIG += "${PACKAGECONFIG_PLATFORM}"

 PACKAGECONFIG_VULKAN_IMX_GPU       = ""
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8   = "vulkan"
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8mm = ""
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8   = "vulkan"
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8mm = ""
 PACKAGECONFIG_VULKAN               = ""
-PACKAGECONFIG_VULKAN_imxgpu        =
"${PACKAGECONFIG_VULKAN_IMX_GPU}"
+PACKAGECONFIG_VULKAN:imxgpu        =
"${PACKAGECONFIG_VULKAN_IMX_GPU}"
 PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'vulkan',
'${PACKAGECONFIG_VULKAN}', '', d)}"
diff --git a/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtwayland_%.bbappend b/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtwayland_%.bbappend
index 168db09548ab..c1594e0571b4 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
@@ -1,8 +1,8 @@
 # etnaviv mesa does not have glx
-PACKAGECONFIG_remove_use-mainline-bsp = "xcomposite-glx"
+PACKAGECONFIG:remove:use-mainline-bsp = "xcomposite-glx"

-PACKAGECONFIG_remove_mx6 = "xcomposite-egl xcomposite-glx"
-PACKAGECONFIG_remove_mx7 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx6 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx7 = "xcomposite-egl xcomposite-glx"

 # i.MX8 does never provide native x11, so required dependencies are
not met
-PACKAGECONFIG_remove_mx8 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx8 = "xcomposite-egl xcomposite-glx"
diff --git a/dynamic-layers/virtualization-layer/recipes-
extended/libvirt/libvirt_%.bbappend b/dynamic-layers/virtualization-
layer/recipes-extended/libvirt/libvirt_%.bbappend
index c7e6d32e4213..7aecf1e466c6 100644
--- a/dynamic-layers/virtualization-layer/recipes-
extended/libvirt/libvirt_%.bbappend
+++ b/dynamic-layers/virtualization-layer/recipes-
extended/libvirt/libvirt_%.bbappend
@@ -1,9 +1,9 @@
 PACKAGECONFIG_qoriq-ppc = "qemu yajl lxc test remote macvtap
libvirtd netcf udev python"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_qoriq-ppc = " file://qemu.conf"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:qoriq-ppc = " file://qemu.conf"

-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
        install -m 0644 ${WORKDIR}/qemu.conf
${D}${sysconfdir}/libvirt/qemu.conf
 }

diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-
bsp/alsa-state/alsa-state.bbappend
index 3a398b2210fc..9433130725d5 100644
--- a/recipes-bsp/alsa-state/alsa-state.bbappend
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -1,10 +1,10 @@
 # Append path for freescale layer to include alsa-state asound.conf
-FILESEXTRAPATHS_prepend_mx6 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx7 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx8 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_use-mainline-bsp := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx6 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx7 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx8 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:use-mainline-bsp := "${THISDIR}/${PN}/imx:"

-PACKAGE_ARCH_mx6 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_use-mainline-bsp = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:use-mainline-bsp = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/atf/qoriq-atf_1.5.bb b/recipes-
bsp/atf/qoriq-atf_1.5.bb
index 192083348ea9..b03a6bcb95f5 100644
--- a/recipes-bsp/atf/qoriq-atf_1.5.bb
+++ b/recipes-bsp/atf/qoriq-atf_1.5.bb
@@ -8,7 +8,7 @@ PV = "1.5+git${SRCPV}"
 inherit deploy

 DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native
mbedtls rcw cst-native"
-DEPENDS_append_lx2160a = " ddr-phy"
+DEPENDS:append:lx2160a = " ddr-phy"
 do_compile[depends] += "u-boot:do_deploy rcw:do_deploy
uefi:do_deploy"

 S = "${WORKDIR}/git"
@@ -21,12 +21,12 @@ COMPATIBLE_MACHINE = "(qoriq)"
 PACKAGE_ARCH = "${MACHINE_ARCH}"

 PLATFORM = "${MACHINE}"
-PLATFORM_ls1088ardb-pb = "ls1088ardb"
+PLATFORM:ls1088ardb-pb = "ls1088ardb"
 PLATFORM_ADDITIONAL_TARGET ??= ""
-PLATFORM_ADDITIONAL_TARGET_ls1012afrwy = "ls1012afrwy_512mb"
+PLATFORM_ADDITIONAL_TARGET:ls1012afrwy = "ls1012afrwy_512mb"

 RCW_FOLDER ?= "${MACHINE}"
-RCW_FOLDER_ls1088ardb-pb = "ls1088ardb"
+RCW_FOLDER:ls1088ardb-pb = "ls1088ardb"

 # requires CROSS_COMPILE set by hand as there is no configure script
 export CROSS_COMPILE="${TARGET_PREFIX}"
@@ -56,16 +56,16 @@ PACKAGECONFIG[optee] = ",,optee-os-qoriq"
 uboot_boot_sec ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa-secure-boot"
 uboot_boot ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa"
 rcw ?= ""
-rcw_ls1012a = "_default"
+rcw:ls1012a = "_default"
 rcwsec ?= "_sben"

 chassistype ?= "ls2088_1088"
-chassistype_ls1012a = "ls104x_1012"
-chassistype_ls1043a = "ls104x_1012"
-chassistype_ls1046a = "ls104x_1012"
+chassistype:ls1012a = "ls104x_1012"
+chassistype:ls1043a = "ls104x_1012"
+chassistype:ls1046a = "ls104x_1012"

 ddrphyopt ?= ""
-ddrphyopt_lx2160a = "fip_ddr_sec"
+ddrphyopt:lx2160a = "fip_ddr_sec"

 do_configure[noexec] = "1"

diff --git a/recipes-bsp/atf/qoriq-atf_2.3.bb b/recipes-
bsp/atf/qoriq-atf_2.3.bb
index aed32851bc42..2698bd32a99c 100644
--- a/recipes-bsp/atf/qoriq-atf_2.3.bb
+++ b/recipes-bsp/atf/qoriq-atf_2.3.bb
@@ -47,7 +47,7 @@ do_compile() {
     if [ "${NXP_COT}" = "true" -a "${ARM_COT}" = "true" ]; then
         bbfatal " \
         Error!, Both ARM CoT and NXP CoT are enabled. Only one CoT
is built in a yocto build, \
-        Don't add nxp-cot and arm-cot into DISTRO_FEATURES_append at
the same time."
+        Don't add nxp-cot and arm-cot into DISTRO_FEATURES:append at
the same time."
     fi

     if [ "${NXP_COT}" = "true" ]; then
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
index 650c1cfded61..6ea16d5be67a 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
@@ -19,5 +19,5 @@ addtask deploy after do_install before do_build
 PACKAGE_ARCH = "${MACHINE_SOCARCH}"

 COMPATIBLE_MACHINE      = "(mx8)"
-COMPATIBLE_MACHINE_mx8m = "(^$)"
-COMPATIBLE_MACHINE_mx8x = "(^$)"
+COMPATIBLE_MACHINE:mx8m = "(^$)"
+COMPATIBLE_MACHINE:mx8x = "(^$)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb b/recipes-
bsp/firmware-imx/firmware-imx_8.12.bb
index 8ff4a3216060..34040b287de7 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
@@ -65,7 +65,7 @@ do_install() {
 # as second one, and for every file match - it creates a separate
package,
 # which contains only files that matches the pattern.
 #
-python populate_packages_prepend() {
+python populate_packages:prepend() {
     easrcdir =
bb.data.expand('${nonarch_base_libdir}/firmware/imx/easrc', d)
     do_split_packages(d, easrcdir, '^easrc-([^_]*).*\.bin',
                       output_pattern='firmware-imx-easrc-%s',
diff --git a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb b/recipes-
bsp/firmware-qca/qca-tools_3.0.2.bb
index e996c62de957..fd0c2e742265 100644
--- a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
+++ b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
@@ -9,7 +9,7 @@ LICENSE = "Proprietary"
 DEPENDS = "libnl zlib"

 FCC_TOOLS_FOLDER ?= "qca9377_qca6174_arm32"
-FCC_TOOLS_FOLDER_aarch64 = "qca9377_qca6174_arm64"
+FCC_TOOLS_FOLDER:aarch64 = "qca9377_qca6174_arm64"

 do_install() {
     install -d ${D}${sbindir}/fcc_tools
@@ -17,4 +17,4 @@ do_install() {
 }

 COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-bsp/formfactor/formfactor_%.bbappend b/recipes-
bsp/formfactor/formfactor_%.bbappend
index 15f8f4e8c2d4..83cce1310fbb 100644
--- a/recipes-bsp/formfactor/formfactor_%.bbappend
+++ b/recipes-bsp/formfactor/formfactor_%.bbappend
@@ -1,2 +1,2 @@
 # Append path for i.MX custom matchconfig
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-
atf/imx-atf_2.4.bb
index f4db002be302..536a0a737cab 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.4.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.4.bb
@@ -27,7 +27,7 @@ EXTRA_OEMAKE += " \

 BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee',
'true', 'false', d)}"

-CFLAGS_remove_mx8mq = "-O2"
+CFLAGS:remove:mx8mq = "-O2"

 do_compile() {
     # Clear LDFLAGS to avoid the option -Wl recognize issue
diff --git a/recipes-bsp/imx-lib/imx-lib_git.bb b/recipes-bsp/imx-
lib/imx-lib_git.bb
index c56190702be9..a296b185da94 100644
--- a/recipes-bsp/imx-lib/imx-lib_git.bb
+++ b/recipes-bsp/imx-lib/imx-lib_git.bb
@@ -20,15 +20,15 @@ S = "${WORKDIR}/git"

 inherit use-imx-headers

-PLATFORM_mx6q  = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6S"
-PLATFORM_mx6sll = "IMX6UL"
-PLATFORM_mx6sx = "IMX6S"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx6ull = "IMX6UL"
-PLATFORM_mx7d  = "IMX7"
-PLATFORM_mx7ulp = "IMX7"
+PLATFORM:mx6q  = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6S"
+PLATFORM:mx6sll = "IMX6UL"
+PLATFORM:mx6sx = "IMX6S"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx6ull = "IMX6UL"
+PLATFORM:mx7d  = "IMX7"
+PLATFORM:mx7ulp = "IMX7"

 PARALLEL_MAKE="-j 1"
 EXTRA_OEMAKE = ""
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-
bsp/imx-mkimage/imx-boot_1.0.bb
index 422670bed322..484db354a75b 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
@@ -10,8 +10,8 @@ SECTION = "BSP"
 inherit use-imx-security-controller-firmware

 IMX_EXTRA_FIRMWARE      = "firmware-imx-8 imx-sc-firmware imx-seco"
-IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m"
-IMX_EXTRA_FIRMWARE_mx8x = "imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8m = "firmware-imx-8m"
+IMX_EXTRA_FIRMWARE:mx8x = "imx-sc-firmware imx-seco"
 DEPENDS += " \
     u-boot \
     ${IMX_EXTRA_FIRMWARE} \
@@ -20,7 +20,7 @@ DEPENDS += " \
 "
 # xxd is a dependency of fspi_packer.sh
 DEPENDS += "xxd-native"
-DEPENDS_append_mx8m = " u-boot-mkimage-native dtc-native"
+DEPENDS:append:mx8m = " u-boot-mkimage-native dtc-native"
 BOOT_NAME = "imx-boot"
 PROVIDES = "${BOOT_NAME}"

@@ -41,7 +41,7 @@ do_compile[depends] += " \
 SC_FIRMWARE_NAME ?= "scfw_tcm.bin"

 ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"

 UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
 BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
@@ -58,20 +58,20 @@ IMXBOOT_TARGETS ?= \
                                                   'flash_multi_cores
flash_dcd', d), d)}"

 BOOT_STAGING       = "${S}/${IMX_BOOT_SOC_TARGET}"
-BOOT_STAGING_mx8m  = "${S}/iMX8M"
-BOOT_STAGING_mx8dx = "${S}/iMX8QX"
+BOOT_STAGING:mx8m  = "${S}/iMX8M"
+BOOT_STAGING:mx8dx = "${S}/iMX8QX"

 SOC_FAMILY      = "INVALID"
-SOC_FAMILY_mx8  = "mx8"
-SOC_FAMILY_mx8m = "mx8m"
-SOC_FAMILY_mx8x = "mx8x"
+SOC_FAMILY:mx8  = "mx8"
+SOC_FAMILY:mx8m = "mx8m"
+SOC_FAMILY:mx8x = "mx8x"

 REV_OPTION ?= ""
-REV_OPTION_mx8qxp = \
+REV_OPTION:mx8qxp = \
     "${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', '', \
                                                            'REV=C0',
d)}"

-compile_mx8m() {
+compile:mx8m() {
     bbnote 8MQ/8MM/8MN/8MP boot binary build
     for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
         bbnote "Copy ddr_firmware: ${ddr_firmware} from
${DEPLOY_DIR_IMAGE} -> ${BOOT_STAGING} "
@@ -88,7 +88,7 @@ compile_mx8m() {
     cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME}
${BOOT_STAGING}/bl31.bin
     cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME}                    
${BOOT_STAGING}/u-boot.bin
 }
-compile_mx8() {
+compile:mx8() {
     bbnote 8QM boot binary build
     cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME}
${BOOT_STAGING}/scfw_tcm.bin
     cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME}
${BOOT_STAGING}/bl31.bin
@@ -100,7 +100,7 @@ compile_mx8() {
     fi
 }

-compile_mx8x() {
+compile:mx8x() {
     bbnote 8QX boot binary build
     cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME}            
${BOOT_STAGING}
     cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME}
${BOOT_STAGING}/scfw_tcm.bin
@@ -140,7 +140,7 @@ do_install () {
     done
 }

-deploy_mx8m() {
+deploy:mx8m() {
     install -d ${DEPLOYDIR}/${BOOT_TOOLS}
     install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-
${UBOOT_CONFIG} \
                                                             
${DEPLOYDIR}/${BOOT_TOOLS}
@@ -153,7 +153,7 @@ deploy_mx8m() {
     install -m 0755 ${BOOT_STAGING}/mkimage_fit_atf.sh      
${DEPLOYDIR}/${BOOT_TOOLS}
     install -m 0755 ${BOOT_STAGING}/mkimage_uboot           
${DEPLOYDIR}/${BOOT_TOOLS}
 }
-deploy_mx8() {
+deploy:mx8() {
     install -d ${DEPLOYDIR}/${BOOT_TOOLS}
     install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME}   
${DEPLOYDIR}/${BOOT_TOOLS}
     install -m 0755 ${S}/${TOOLS_NAME}                      
${DEPLOYDIR}/${BOOT_TOOLS}
@@ -162,7 +162,7 @@ deploy_mx8() {
                                                             
${DEPLOYDIR}/${BOOT_TOOLS}
     fi
 }
-deploy_mx8x() {
+deploy:mx8x() {
     install -d ${DEPLOYDIR}/${BOOT_TOOLS}
     install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME}   
${DEPLOYDIR}/${BOOT_TOOLS}
     install -m 0755 ${S}/${TOOLS_NAME}                      
${DEPLOYDIR}/${BOOT_TOOLS}
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-
bsp/imx-mkimage/imx-mkimage_git.bb
index f9943342962e..90e3ebf13ce7 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
@@ -16,12 +16,12 @@ do_compile () {
     cd ${S}
     oe_runmake clean
     oe_runmake bin
-    oe_runmake -C iMX8M -f soc.mak mkimage_imx8
+    oe_runmake -C iMX8M -f soc.mak mkimage:imx8
 }

 do_install () {
     cd ${S}
     install -d ${D}${bindir}
-    install -m 0755 iMX8M/mkimage_imx8 ${D}${bindir}/mkimage_imx8m
-    install -m 0755 mkimage_imx8 ${D}${bindir}/mkimage_imx8
+    install -m 0755 iMX8M/mkimage:imx8 ${D}${bindir}/mkimage_imx8m
+    install -m 0755 mkimage:imx8 ${D}${bindir}/mkimage_imx8
 }
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
index b8c3d3c3cf4f..6eb65b811aa2 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
@@ -15,10 +15,10 @@ SRC_URI[sha256sum] =
"df0fe17c93e4c2835542d6b1b2557524f034e378b643100cd838225e82

 BOARD_TYPE ?= "mek"
 SC_FIRMWARE_NAME ?= "INVALID"
-SC_FIRMWARE_NAME_mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"

 symlink_name = "scfw_tcm.bin"

diff --git a/recipes-bsp/imx-test/imx-test_git.bb b/recipes-bsp/imx-
test/imx-test_git.bb
index 118590d5a93b..ad072c5f4d71 100644
--- a/recipes-bsp/imx-test/imx-test_git.bb
+++ b/recipes-bsp/imx-test/imx-test_git.bb
@@ -9,9 +9,9 @@ LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-
licenses/GPL-2.0-or-later;md5=fed54355545ffd980b814dab4a3b312c"

 DEPENDS = "alsa-lib libdrm"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " virtual/imxvpu"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " virtual/imxvpu"

 PE = "1"
 PV = "7.0+${SRCPV}"
@@ -29,22 +29,22 @@ inherit module-base use-imx-headers
 INHIBIT_PACKAGE_STRIP = "1"
 INHIBIT_PACKAGE_DEBUG_SPLIT = "1"

-PLATFORM_mx6q  = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6SL"
-PLATFORM_mx6sll = "IMX6SL"
-PLATFORM_mx6sx = "IMX6SX"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx7d  = "IMX7D"
-PLATFORM_mx7ulp = "IMX7D"
-PLATFORM_mx8 = "IMX8"
+PLATFORM:mx6q  = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6SL"
+PLATFORM:mx6sll = "IMX6SL"
+PLATFORM:mx6sx = "IMX6SX"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx7d  = "IMX7D"
+PLATFORM:mx7ulp = "IMX7D"
+PLATFORM:mx8 = "IMX8"

 PARALLEL_MAKE = "-j 1"
 EXTRA_OEMAKE += "${PACKAGECONFIG_CONFARGS}"

 PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'x11',
'x11', '', d)}"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_mx8m   = " swpdm"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:mx8m   = " swpdm"

 PACKAGECONFIG[x11] = ",,libx11 libxdamage libxrender libxrandr"
 PACKAGECONFIG[vpu] = "HAS_VPU=true,HAS_VPU=false,virtual/imxvpu"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-
daemon_1.0.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-
daemon_1.0.0.bb
index 88b9ee0ef218..d362fce3b83e 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = "
file://LICENSE.txt;md5=cd8bc2a79509c22fc9c1782a151210b1"

 DEPENDS = "imx-vpu-hantro"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

 SRC_URI = " \
     ${FSL_MIRROR}/${BP}.tar.gz \
@@ -13,9 +13,9 @@ SRC_URI = " \
 SRC_URI[md5sum] = "65417710ef22214523c37f50f34b6ab2"
 SRC_URI[sha256sum] =
"897d174c4c0818f31012d8a60ed51fc83fdfc55fca2d2b0fc24a0db3e9f3b6e8"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

 EXTRA_OEMAKE = " \
     CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
index 20ac87c747db..d2fc8a1123ac 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
@@ -14,9 +14,9 @@ inherit fsl-eula-unpack use-imx-headers

 PARALLEL_MAKE="-j 1"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

 EXTRA_OEMAKE = " \
     CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb b/recipes-
bsp/isp-imx/isp-imx_4.2.2.13.0.bb
index ad44065ae576..36c3fee3a7a7 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
@@ -42,7 +42,7 @@ EXTRA_OECMAKE += " \
     -Wno-dev \
 "

-do_configure_prepend() {
+do_configure:prepend() {
     export SDKTARGETSYSROOT=${STAGING_DIR_HOST}
 }

diff --git a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
index 726b1e16d84e..e57a4273bd36 100644
--- a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
+++ b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
@@ -26,15 +26,15 @@ EXTRA_OECONF = "--imx-linux-headers-
path=${STAGING_INCDIR_IMX} \
 # libg2d. However, that implementation's g2d_alloc() function
 # is broken, so we cannot use it.
 LIBG2D_PACKAGECONFIG = "g2d"
-LIBG2D_PACKAGECONFIG_imxdpu = ""
+LIBG2D_PACKAGECONFIG:imxdpu = ""

 PACKAGECONFIG ?= " "
-PACKAGECONFIG_append_imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
-PACKAGECONFIG_append_imxipu   = " ipu"
-PACKAGECONFIG_append_imxpxp   = " pxp"
-PACKAGECONFIG_append_mx8m     = " ion dwl"
-PACKAGECONFIG_append_mx8qm    = " ion"
-PACKAGECONFIG_append_mx8qxp   = " ion"
+PACKAGECONFIG:append:imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
+PACKAGECONFIG:append:imxipu   = " ipu"
+PACKAGECONFIG:append:imxpxp   = " pxp"
+PACKAGECONFIG:append:mx8m     = " ion dwl"
+PACKAGECONFIG:append:mx8qm    = " ion"
+PACKAGECONFIG:append:mx8qxp   = " ion"

 HANTRO_CONF = "--hantro-headers-path=${STAGING_INCDIR}/hantro_dec --
hantro-decoder-version=G2"

diff --git a/recipes-bsp/mc-utils/mc-utils_git.bb b/recipes-bsp/mc-
utils/mc-utils_git.bb
index b3c79b99138e..a2f81fe0dc0a 100644
--- a/recipes-bsp/mc-utils/mc-utils_git.bb
+++ b/recipes-bsp/mc-utils/mc-utils_git.bb
@@ -15,13 +15,13 @@ SRCREV =
"8e0b863693fc2ccbc62a62c79b4e3db6da88c16e"
 S = "${WORKDIR}/git"

 MC_CFG ?= ""
-MC_CFG_ls1088a = "ls1088a"
-MC_CFG_ls2088a = "ls2088a"
-MC_CFG_lx2160a = "lx2160a"
-MC_CFG_lx2162aqds = "lx2162aqds"
+MC_CFG:ls1088a = "ls1088a"
+MC_CFG:ls2088a = "ls2088a"
+MC_CFG:lx2160a = "lx2160a"
+MC_CFG:lx2162aqds = "lx2162aqds"

 MC_FLAVOUR ?= "RDB"
-MC_FLAVOUR_lx2162a = ""
+MC_FLAVOUR:lx2162a = ""

 do_compile () {
        oe_runmake -C config
diff --git a/recipes-bsp/rcw/rcw_git.bb b/recipes-bsp/rcw/rcw_git.bb
index 693506157188..637035b2064c 100644
--- a/recipes-bsp/rcw/rcw_git.bb
+++ b/recipes-bsp/rcw/rcw_git.bb
@@ -17,9 +17,9 @@ export PYTHON = "${USRBINPATH}/python3"
 M="${@d.getVar('MACHINE').replace('-64b','').replace('-
32b','').replace('-${SITEINFO_ENDIANNESS}','')}"

 BOARD_TARGETS="${M}"
-BOARD_TARGETS_ls2088ardb="${M} ${M}_rev1.1"
-BOARD_TARGETS_ls1088ardb-pb="ls1088ardb"
-BOARD_TARGETS_lx2160ardb = "${M} ${M}_rev2"
+BOARD_TARGETS:ls2088ardb="${M} ${M}_rev1.1"
+BOARD_TARGETS:ls1088ardb-pb="ls1088ardb"
+BOARD_TARGETS:lx2160ardb = "${M} ${M}_rev2"

 do_compile () {
     oe_runmake BOARDS="${BOARD_TARGETS}" DESTDIR=${D}/boot/rcw/
diff --git a/recipes-bsp/u-boot/libubootenv_%.bbappend b/recipes-
bsp/u-boot/libubootenv_%.bbappend
index 2633c344739b..619b510e1e1c 100644
--- a/recipes-bsp/u-boot/libubootenv_%.bbappend
+++ b/recipes-bsp/u-boot/libubootenv_%.bbappend
@@ -29,8 +29,8 @@ def fixup_uboot_config_dependency(d):
        # |     Signed-off-by: Ming Liu <liu.ming50@...>
        # |     Signed-off-by: Richard Purdie <
richard.purdie@...>
        # `----
-       ubootmachine = d.getVar("UBOOT_MACHINE_pn-%s" %
imx_default_bootloader)
-       ubootconfig = (d.getVar("UBOOT_CONFIG_pn-%s" %
imx_default_bootloader) or "").split()
+       ubootmachine = d.getVar("UBOOT_MACHINE:pn-%s" %
imx_default_bootloader)
+       ubootconfig = (d.getVar("UBOOT_CONFIG:pn-%s" %
imx_default_bootloader) or "").split()

        d.setVar("UBOOT_CONFIG", ubootconfig)
        d.setVar("UBOOT_MACHINE", ubootmachine)
diff --git a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
index 7f02746b060f..2e79166b279a 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
@@ -2,7 +2,7 @@
 # Copyright (C) 2014-2016 Freescale Semiconductor
 # Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-fslc:"

 require u-boot-fslc_${PV}.bb
 require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb b/recipes-
bsp/u-boot/u-boot-fslc_2021.07.bb
index 4f97c722dd6f..2e7bde3838f9 100644
--- a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
@@ -12,7 +12,7 @@ DEPENDS += "bc-native dtc-native python3-
setuptools-native"

 # Location known to imx-boot component, where U-Boot artifacts
 # should be additionally deployed.
-# See below note above do_deploy_append_mx8m for the purpose of
+# See below note above do_deploy:append:mx8m for the purpose of
 # this delopyment location
 BOOT_TOOLS = "imx-boot-tools"

@@ -48,7 +48,7 @@ EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC}
${BUILD_CPPFLAGS}" \
 # starts to use it - below append would not be necessary.
 # Once all mx8m derivatives are migrated to use the 'flash.bin' boot
 # container - this append can be dropped completely.
-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
     # Deploy the mkimage, u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for
mkimage to generate boot binary
     if [ -n "${UBOOT_CONFIG}" ]; then
         for config in ${UBOOT_MACHINE}; do
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
index 2b296c192909..af5028896a34 100644
--- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
@@ -2,7 +2,7 @@
 # Copyright (C) 2014-2016 Freescale Semiconductor
 # Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-imx:"

 require u-boot-imx_${PV}.bb
 require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb b/recipes-
bsp/u-boot/u-boot-imx_2021.04.bb
index 6a279a12533d..bb5809e2a179 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
@@ -7,7 +7,7 @@ require u-boot-imx-common_${PV}.inc

 PROVIDES += "u-boot"

-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
     # Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to
generate boot binary
     if [ -n "${UBOOT_CONFIG}" ]
     then
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb b/recipes-
bsp/u-boot/u-boot-qoriq_2020.04.bb
index 57f2780314c8..b6eee1d931a2 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
@@ -19,14 +19,14 @@ SRCREV=
"f46a944f715f284aff1d42c009680ffe0be4058f"

 S = "${WORKDIR}/git"
 B = "${WORKDIR}/build"
-PV_append = "+fslgit"
+PV:append = "+fslgit"
 LOCALVERSION = "+fsl"

 INHIBIT_DEFAULT_DEPS = "1"
 DEPENDS = "libgcc virtual/${TARGET_PREFIX}gcc bison-native bc-native
swig-native python3-native"
-DEPENDS_append_qoriq-arm64 = " dtc-native"
-DEPENDS_append_qoriq-arm = " dtc-native"
-DEPENDS_append_qoriq-ppc = " boot-format-native"
+DEPENDS:append:qoriq-arm64 = " dtc-native"
+DEPENDS:append:qoriq-arm = " dtc-native"
+DEPENDS:append:qoriq-ppc = " boot-format-native"

 python () {
     if d.getVar("TCMODE") == "external-fsl":
@@ -41,8 +41,8 @@ python () {
         sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib32-linux'
         sys_original = d.getVar('TARGET_VENDOR') + '-' +
d.getVar('TARGET_OS')
         workdir = d.getVar('WORKDIR')
-        d.setVar('DEPENDS_append', ' lib32-gcc-cross-powerpc lib32-
libgcc')
-        d.setVar('PATH_append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
+        d.setVar('DEPENDS:append', ' lib32-gcc-cross-powerpc lib32-
libgcc')
+        d.setVar('PATH:append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
         d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir +
'/lib32-recipe-sysroot')
         d.setVar("WRAP_TARGET_PREFIX", 'powerpc' + sys_multilib + '-
')
     elif "fsl-lsch2-32b:" in arch:
@@ -51,8 +51,8 @@ python () {
         sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib64-linux'
         sys_original = d.getVar('TARGET_VENDOR') + '-' +
d.getVar('TARGET_OS')
         workdir = d.getVar('WORKDIR')
-        d.setVar('DEPENDS_append', ' lib64-gcc-cross-aarch64 lib64-
libgcc')
-        d.setVar('PATH_append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
+        d.setVar('DEPENDS:append', ' lib64-gcc-cross-aarch64 lib64-
libgcc')
+        d.setVar('PATH:append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
         d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir +
'/lib64-recipe-sysroot')
         d.setVar("WRAP_TARGET_PREFIX", 'aarch64' + sys_multilib + '-
')
 }
@@ -66,7 +66,7 @@ EXTRA_OEMAKE = 'CROSS_COMPILE=${WRAP_TARGET_PREFIX}
CC="${WRAP_TARGET_PREFIX}gcc
 EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS}
${BUILD_LDFLAGS}"'
 EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE}
STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'

-do_compile_append_qoriq() {
+do_compile:append:qoriq() {
     unset i j k
     for config in ${UBOOT_MACHINE}; do
         i=`expr $i + 1`;
diff --git a/recipes-connectivity/iproute2/iproute2_%.bbappend
b/recipes-connectivity/iproute2/iproute2_%.bbappend
index 4426eca57f1a..0f9b5a87defd 100644
--- a/recipes-connectivity/iproute2/iproute2_%.bbappend
+++ b/recipes-connectivity/iproute2/iproute2_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append () {
+do_install:append () {
     install -d ${D}/usr/include/tc
     cp -a ${B}/include  ${D}/usr/include
     cp -a ${B}/tc/*.h    ${D}/usr/include/tc
diff --git a/recipes-connectivity/openssl/openssl_%.bbappend
b/recipes-connectivity/openssl/openssl_%.bbappend
index ce4ff276e633..e88de3618243 100644
--- a/recipes-connectivity/openssl/openssl_%.bbappend
+++ b/recipes-connectivity/openssl/openssl_%.bbappend
@@ -1,8 +1,8 @@
-FILESEXTRAPATHS_append := "${THISDIR}/${PN}-qoriq:"
+FILESEXTRAPATHS:append := "${THISDIR}/${PN}-qoriq:"

-SRC_URI_append_qoriq = " \
+SRC_URI:append:qoriq = " \
       
file://0001-eng_devcrypto-add-support-for-TLS-algorithms-offload.patch
 \
       
file://0002-eng_devcrypto-add-support-for-TLS1.2-algorithms-offl.patch
 \
 "

-PACKAGECONFIG_append_qoriq = " cryptodev-linux"
+PACKAGECONFIG:append:qoriq = " cryptodev-linux"
diff --git a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
index 000578744ac2..46dfc1245600 100644
--- a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
+++ b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
@@ -1,2 +1,2 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

diff --git a/recipes-core/udev/udev-rules-qoriq.bb b/recipes-
core/udev/udev-rules-qoriq.bb
index c328f4ccbd97..e39da44ce7f3 100644
--- a/recipes-core/udev/udev-rules-qoriq.bb
+++ b/recipes-core/udev/udev-rules-qoriq.bb
@@ -18,11 +18,11 @@ RULE_t1024 = "72-fsl-dpaa-persistent-
networking.rules"
 RULE_qoriq-arm64 = "73-fsl-dpaa-persistent-networking.rules \
     73-fsl-enetc-networking.rules \
 "
-RULE_ls1046a = "73-fsl-dpaa-persistent-networking.rules \
+RULE:ls1046a = "73-fsl-dpaa-persistent-networking.rules \
     74-ls1046a-xfi2-networking.rules \
 "
-RULE_ls1012a = ""
-RULE_ls2080a = ""
+RULE:ls1012a = ""
+RULE:ls2080a = ""

 do_install () {
     install -d ${D}${sysconfdir}/udev/rules.d/
diff --git a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb b/recipes-
devtools/qemu/qemu-qoriq_4.1.0.bb
index dfd7fdcfcd20..fe43a5e1883e 100644
--- a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
+++ b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
@@ -32,11 +32,11 @@ python() {

 RDEPENDS_${PN}_class-target += "bash"

-EXTRA_OECONF_append_class-target = "
--target-list=${@get_qemu_target_list(d)}"
-EXTRA_OECONF_append_class-target_mipsarcho32 = "
${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-
capstone', '', d)}"
-EXTRA_OECONF_append_class-nativesdk = "
--target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target = "
--target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target_mipsarcho32 = "
${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-
capstone', '', d)}"
+EXTRA_OECONF:append:class-nativesdk = "
--target-list=${@get_qemu_target_list(d)}"

-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
      ${@bb.utils.contains('PACKAGECONFIG', 'gtk+',
'make_qemu_wrapper', '', d)}
 }

diff --git a/recipes-devtools/qemu/qemu.inc b/recipes-
devtools/qemu/qemu.inc
index bf05da9a4c3a..77d067da7ab2 100644
--- a/recipes-devtools/qemu/qemu.inc
+++ b/recipes-devtools/qemu/qemu.inc
@@ -52,7 +52,7 @@ COMPATIBLE_HOST_mipsarchn64 = "null"
 # upstream states qemu doesn't work without optimization
 DEBUG_BUILD = "0"

-do_install_append() {
+do_install:append() {
     # Prevent QA warnings about installed ${localstatedir}/run
     if [ -d ${D}${localstatedir}/run ]; then rmdir
${D}${localstatedir}/run; fi
 }
@@ -101,9 +101,9 @@ export LIBTOOL="${HOST_SYS}-libtool"

 B = "${WORKDIR}/build"

-EXTRA_OECONF_append = " --python=${HOSTTOOLS_DIR}/python3"
+EXTRA_OECONF:append = " --python=${HOSTTOOLS_DIR}/python3"

-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
        # Append build host pkg-config paths for native target since
the host may provide sdl
        BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --
variable pc_path pkg-config || echo "")
        if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
@@ -127,7 +127,7 @@ do_install () {
 # This will trigger a MMU access fault in the virtual CPU. With this
change,
 # the qemu-mips works fine.
 # IMPORTANT: This piece needs to be removed once the root cause is
fixed!
-do_install_append() {
+do_install:append() {
        if [ -e "${D}/${bindir}/qemu-mips" ]; then
                create_wrapper ${D}/${bindir}/qemu-mips \
                        QEMU_RESERVED_VA=0x0
@@ -147,8 +147,8 @@ make_qemu_wrapper() {
 }

 # Disable kvm/virgl/mesa on targets that do not support it
-PACKAGECONFIG_remove_darwin = "kvm virglrenderer glx gtk+"
-PACKAGECONFIG_remove_mingw32 = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:darwin = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer glx gtk+"

 PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
 PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-
ng,--disable-virtfs,libcap-ng attr,"
diff --git a/recipes-dpaa/fm-ucode/fm-ucode_git.bb b/recipes-dpaa/fm-
ucode/fm-ucode_git.bb
index 39e4f9d0febb..319a56b33568 100644
--- a/recipes-dpaa/fm-ucode/fm-ucode_git.bb
+++ b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
@@ -13,13 +13,13 @@ SRCREV =
"c275e91392e2adab1ed22f3867b8269ca3c54014"
 S = "${WORKDIR}/git"

 REGLEX ?= "${MACHINE}"
-REGLEX_t1023 = "t1024"
-REGLEX_t1040 = "t1040"
-REGLEX_t1042 = "t1040"
-REGLEX_b4420 = "b4860"
-REGLEX_t4160 = "t4240"
-REGLEX_ls1043a = "ls1043"
-REGLEX_ls1046a = "ls1046"
+REGLEX:t1023 = "t1024"
+REGLEX:t1040 = "t1040"
+REGLEX:t1042 = "t1040"
+REGLEX:b4420 = "b4860"
+REGLEX:t4160 = "t4240"
+REGLEX:ls1043a = "ls1043"
+REGLEX:ls1046a = "ls1046"

 do_install () {
     UCODE=`echo ${REGLEX} | sed -e 's,-.*$,,' -e 's,[a-zA-Z]*$,,'`
diff --git a/recipes-dpaa2/aiopsl/aiopsl_git.bb b/recipes-
dpaa2/aiopsl/aiopsl_git.bb
index a1b0028938e5..794d013c5c2b 100644
--- a/recipes-dpaa2/aiopsl/aiopsl_git.bb
+++ b/recipes-dpaa2/aiopsl/aiopsl_git.bb
@@ -13,8 +13,8 @@ SRCREV = "87d83d8e99770325cc7ad9e10965c9959e7cb828"
 do_configure[noexec] = "1"
 do_compile[noexec] = "1"

-DEMOS_PATH_ls2088a = "LS2088A"
-DEMOS_PATH_ls1088a = "LS1088A"
+DEMOS_PATH:ls2088a = "LS2088A"
+DEMOS_PATH:ls1088a = "LS1088A"

 do_install () {
     install -d ${D}/usr/aiop/bin
diff --git a/recipes-dpaa2/management-complex/management-
complex_10.14.1.bb b/recipes-dpaa2/management-complex/management-
complex_10.14.1.bb
index ddb305c1a36c..69804e9fa68e 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
@@ -11,10 +11,10 @@ SRCREV =
"408110ee632f6291545b0b156cd74e7e3b4612cc"

 S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

 do_install () {
     install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-
complex_10.20.4.bb b/recipes-dpaa2/management-complex/management-
complex_10.20.4.bb
index 3e14a26eabeb..7e0059703738 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
@@ -11,10 +11,10 @@ SRCREV =
"f73683596a7b72124d67b62e64f3dc2bb36b9321"

 S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

 do_install () {
     install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-
complex_10.24.0.bb b/recipes-dpaa2/management-complex/management-
complex_10.24.0.bb
index 17049a15e7c8..12c1a4d89dff 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
@@ -11,11 +11,11 @@ SRCREV =
"324817697a4c89a9a940fb7dba1b18909913ee20"

 S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx216xa"
-REGLEX_lx2162a = "lx216xa"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx216xa"
+REGLEX:lx2162a = "lx216xa"

 do_install () {
     install -d ${D}/boot
diff --git a/recipes-extended/dpdk/dpdk.inc b/recipes-
extended/dpdk/dpdk.inc
index 61c02ae75f90..2d07187d14fd 100644
--- a/recipes-extended/dpdk/dpdk.inc
+++ b/recipes-extended/dpdk/dpdk.inc
@@ -3,23 +3,23 @@ HOMEPAGE = "http://dpdk.org"

 RDEPENDS_${PN} += "python3-core"
 DEPENDS = "virtual/kernel openssl"
-DEPENDS_append_x86-64 = " numactl"
+DEPENDS:append:x86-64 = " numactl"
 do_configure[depends] += "virtual/kernel:do_shared_workdir"

 inherit module

 COMPATIBLE_HOST = '(aarch64|arm|i.86|x86_64).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
-COMPATIBLE_HOST_armv4 = 'null'
-COMPATIBLE_HOST_armv5 = 'null'
-COMPATIBLE_HOST_armv6 = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
+COMPATIBLE_HOST:armv4 = 'null'
+COMPATIBLE_HOST:armv5 = 'null'
+COMPATIBLE_HOST:armv6 = 'null'

 COMPATIBLE_MACHINE = "(imx|qoriq)"

-DPDK_RTE_TARGET_x86-64 = "x86_64-native-linuxapp-gcc"
-DPDK_RTE_TARGET_x86 = "i686-native-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7a = "${ARCH}-armv7a-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:x86-64 = "x86_64-native-linuxapp-gcc"
+DPDK_RTE_TARGET:x86 = "i686-native-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7a = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
 DPDK_RTE_TARGET ?= "${ARCH}-dpaa-linuxapp-gcc"

 export RTE_TARGET = "${DPDK_RTE_TARGET}"
diff --git a/recipes-extended/dpdk/dpdk_19.11-20.12.bb b/recipes-
extended/dpdk/dpdk_19.11-20.12.bb
index 426713c2d1d7..37582124b021 100644
--- a/recipes-extended/dpdk/dpdk_19.11-20.12.bb
+++ b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
@@ -13,7 +13,7 @@ SRCREV = "7071c27f6f5aefb57de1cffab3484707b1e82e2b"

 include dpdk.inc

-do_install_append () {
+do_install:append () {
     # Remove the unneeded dir
     rm -rf ${D}/${datadir}/${RTE_TARGET}/app
 }
diff --git a/recipes-extended/jailhouse/jailhouse_0.12.bb b/recipes-
extended/jailhouse/jailhouse_0.12.bb
index c49d7f5b194e..a83592d24f1f 100644
--- a/recipes-extended/jailhouse/jailhouse_0.12.bb
+++ b/recipes-extended/jailhouse/jailhouse_0.12.bb
@@ -39,9 +39,9 @@ CELLCONF_DIR ?= "${JH_DATADIR}/configs"
 INMATES_DIR ?= "${JH_DATADIR}/inmates"

 JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_arm ?= "${S}/ci/jailhouse-config-banana-pi.h"
+JH_CONFIG:x86 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:arm ?= "${S}/ci/jailhouse-config-banana-pi.h"

 do_configure() {
    if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ];
diff --git a/recipes-extended/odp/odp-counters_git.bb b/recipes-
extended/odp/odp-counters_git.bb
index 860dd5faf450..9d88ea43edee 100644
--- a/recipes-extended/odp/odp-counters_git.bb
+++ b/recipes-extended/odp/odp-counters_git.bb
@@ -2,7 +2,7 @@ require odp.inc

 inherit module

-do_compile_prepend () {
+do_compile:prepend () {
     export KERNEL_PATH="${STAGING_KERNEL_DIR}"
     export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
     cd ${S}/test/debug/perf_counters
diff --git a/recipes-extended/odp/odp-module_git.bb b/recipes-
extended/odp/odp-module_git.bb
index 46b896547a91..8bcdcd81573d 100644
--- a/recipes-extended/odp/odp-module_git.bb
+++ b/recipes-extended/odp/odp-module_git.bb
@@ -2,7 +2,7 @@ require odp.inc

 inherit module

-do_compile_prepend () {
+do_compile:prepend () {
     export KERNEL_PATH="${STAGING_KERNEL_DIR}"
     export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
     cd ${S}/kern
diff --git a/recipes-extended/odp/odp.inc b/recipes-
extended/odp/odp.inc
index 129f77ae108b..d1e10b0f94d4 100644
--- a/recipes-extended/odp/odp.inc
+++ b/recipes-extended/odp/odp.inc
@@ -6,7 +6,7 @@ SECTION = "console/network"
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "
file://LICENSE;md5=ca6103dc75397fb6bec596187d6b7829"

-FILESEXTRAPATHS_prepend := "${THISDIR}/odp:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/odp:"

 SRC_URI = " \
 git://source.codeaurora.org/external/qoriq/qoriq-
components/odp;nobranch=1 \
diff --git a/recipes-extended/odp/odp_git.bb b/recipes-
extended/odp/odp_git.bb
index 00575e24d5a8..bfe251ed6bda 100644
--- a/recipes-extended/odp/odp_git.bb
+++ b/recipes-extended/odp/odp_git.bb
@@ -9,14 +9,14 @@ DEPENDS = "openssl cunit libxml2"
 RDEPENDS_${PN} = "bash libcrypto libssl odp-module odp-counters"

 ODP_SOC ?= ""
-ODP_SOC_ls1043ardb = "LS1043"
-ODP_SOC_ls1046ardb = "LS1046"
+ODP_SOC:ls1043ardb = "LS1043"
+ODP_SOC:ls1046ardb = "LS1046"
 ODP_PLATFORM ?= "linux-dpaa2"
 ODP_BUILD_TYPE ?= "ls2088"
-ODP_BUILD_TYPE_ls1043ardb = "ls1043"
-ODP_BUILD_TYPE_ls1046ardb = "ls1046"
-ODP_BUILD_TYPE_ls2080ardb = "ls2080"
-ODP_BUILD_TYPE_ls1088ardb = "ls1088"
+ODP_BUILD_TYPE:ls1043ardb = "ls1043"
+ODP_BUILD_TYPE:ls1046ardb = "ls1046"
+ODP_BUILD_TYPE:ls2080ardb = "ls2080"
+ODP_BUILD_TYPE:ls1088ardb = "ls1088"

 EXTRA_OECONF = "--with-platform=${ODP_PLATFORM} \
                 --enable-test-vald \
@@ -34,17 +34,17 @@ CFLAGS += "-Wno-format-truncation -Wno-maybe-
uninitialized -Wno-implicit-fallthr

 PACKAGECONFIG[perf] = "--enable-test-perf,,,"

-do_configure_prepend () {
+do_configure:prepend () {
     export SOC=${ODP_SOC}
     ${S}/bootstrap
 }

-do_compile_prepend () {
+do_compile:prepend () {
     export SOC=${ODP_SOC}
     export ARCH=${TUNE_ARCH}
 }

-do_install_append () {
+do_install:append () {
     install -d ${D}${includedir}/odp/kni
     install -d ${D}${includedir}/odp/kern
     install -d ${D}${includedir}/odp/flib/mc
diff --git a/recipes-extended/procps/procps_%.bbappend b/recipes-
extended/procps/procps_%.bbappend
index face0ccc0f61..43fb349b8de2 100644
--- a/recipes-extended/procps/procps_%.bbappend
+++ b/recipes-extended/procps/procps_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
     for keyword in \
         net.ipv4.conf.default.rp_filter \
         net.ipv4.conf.all.rp_filter \
diff --git a/recipes-extended/testfloat/testfloat_2a.bb b/recipes-
extended/testfloat/testfloat_2a.bb
index 800cef3d172e..6777249f39e3 100644
--- a/recipes-extended/testfloat/testfloat_2a.bb
+++ b/recipes-extended/testfloat/testfloat_2a.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "
file://testfloat/testfloat.txt;beginline=87;endline=95;md5=b
 SRC_URI = "
http://www.jhauser.us/arithmetic/TestFloat-2a.tar.Z;name=TestFloat \
            
http://www.jhauser.us/arithmetic/SoftFloat-2b.tar.Z;name=SoftFloat \
           "
-SRC_URI_append_qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
+SRC_URI:append:qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
                              
file://TestFloat-powerpc-E500v2-SPE-1.patch \
                              
file://Yocto-replace-COMPILE_PREFIX-gcc.patch \
                             "
diff --git a/recipes-extended/tsntool/tsntool_git.bb b/recipes-
extended/tsntool/tsntool_git.bb
index 8ef79d27c8bd..ea452f7c82f3 100644
--- a/recipes-extended/tsntool/tsntool_git.bb
+++ b/recipes-extended/tsntool/tsntool_git.bb
@@ -14,7 +14,7 @@ S = "${WORKDIR}/git"

 do_configure[depends] += "virtual/kernel:do_shared_workdir"

-do_compile_prepend() {
+do_compile:prepend() {
         mkdir -p ${S}/include/linux
         cp -r ${STAGING_KERNEL_DIR}/include/uapi/linux/tsn.h
${S}/include/linux
 }
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
index 4ad257ee9364..9229e26683a6 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Add packages for ISP build"
 inherit packagegroup

 ISP_PKGS      ?= ""
-ISP_PKGS_mx8mp = " \
+ISP_PKGS:mx8mp = " \
     isp-imx \
     basler-camera \
     basler-camera-dev \
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
index aeba762386f3..acadd526bc61 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
@@ -10,4 +10,4 @@ RDEPENDS_${PN} = " \
 "

 COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
index 43df5a70e670..233e3d00fa92 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
@@ -9,4 +9,4 @@ RDEPENDS_${PN} = " \
     firmware-qca9377 \
 "
 COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-graphics/cairo/cairo_%.bbappend b/recipes-
graphics/cairo/cairo_%.bbappend
index 5b1562ab8b4d..2c73c7f32f25 100644
--- a/recipes-graphics/cairo/cairo_%.bbappend
+++ b/recipes-graphics/cairo/cairo_%.bbappend
@@ -1,2 +1,2 @@
-PACKAGECONFIG_append_imxgpu3d = " egl glesv2"
-PACKAGECONFIG_remove_imxgpu3d = "opengl"
+PACKAGECONFIG:append:imxgpu3d = " egl glesv2"
+PACKAGECONFIG:remove:imxgpu3d = "opengl"
diff --git a/recipes-graphics/drm/libdrm_2.4.102.imx.bb b/recipes-
graphics/drm/libdrm_2.4.102.imx.bb
index 6935b7822b63..371d2e1775d8 100644
--- a/recipes-graphics/drm/libdrm_2.4.102.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
@@ -64,10 +64,10 @@ FILES_${PN}-etnaviv =
"${libdir}/libdrm_etnaviv.so.*"

 BBCLASSEXTEND = "native nativesdk"

-PACKAGES_prepend_imxgpu = "${PN}-vivante "
-RRECOMMENDS_${PN}-drivers_append_imxgpu = " ${PN}-vivante"
+PACKAGES:prepend:imxgpu = "${PN}-vivante "
+RRECOMMENDS_${PN}-drivers:append:imxgpu = " ${PN}-vivante"
 FILES_${PN}-vivante = "${libdir}/libdrm_vivante.so.*"
-PACKAGECONFIG_append_imxgpu = " vivante"
+PACKAGECONFIG:append:imxgpu = " vivante"
 PACKAGECONFIG[vivante] = "-Dvivante=true,-Dvivante=false"

 PACKAGE_ARCH = "${MACHINE_SOCARCH}"
diff --git a/recipes-graphics/gtk+/gtk+3_%.bbappend b/recipes-
graphics/gtk+/gtk+3_%.bbappend
index be2bac75fbf8..2f108a274b0f 100644
--- a/recipes-graphics/gtk+/gtk+3_%.bbappend
+++ b/recipes-graphics/gtk+/gtk+3_%.bbappend
@@ -1,5 +1,5 @@
-DEPENDS_append_imxgpu2d = " virtual/egl"
+DEPENDS:append:imxgpu2d = " virtual/egl"

-PACKAGECONFIG_remove_imxgpu2d = " \
+PACKAGECONFIG:remove:imxgpu2d = " \
     ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "x11", "",
d)} \
 "
diff --git a/recipes-graphics/images/core-image-weston.bbappend
b/recipes-graphics/images/core-image-weston.bbappend
index 2a3cde69a8cd..77d2fe747801 100644
--- a/recipes-graphics/images/core-image-weston.bbappend
+++ b/recipes-graphics/images/core-image-weston.bbappend
@@ -1,3 +1,3 @@
 # FIXME: i.MX6SL cannot use mesa for Graphics and it lacks GL
support,
 #        so for now we skip it.
-CORE_IMAGE_BASE_INSTALL_remove_mx6sl = "clutter-1.0-examples"
+CORE_IMAGE_BASE_INSTALL:remove:mx6sl = "clutter-1.0-examples"
diff --git a/recipes-graphics/imx-gpu-apitrace/imx-gpu-
apitrace_9.0.0.bb b/recipes-graphics/imx-gpu-apitrace/imx-gpu-
apitrace_9.0.0.bb
index 65ce9cd567b4..d0ac10bdb9a2 100644
--- a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
+++ b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
@@ -11,16 +11,16 @@ S = "${WORKDIR}/git"

 inherit cmake pkgconfig perlnative python3native

-PACKAGECONFIG_BACKEND_mx6 = " \
+PACKAGECONFIG_BACKEND:mx6 = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'waffle', \
        bb.utils.contains('DISTRO_FEATURES',     'x11',    'x11', \
                                                              '', d),
d)} \
 "
-PACKAGECONFIG_BACKEND_mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
-PACKAGECONFIG_BACKEND_mx8 = "waffle"
+PACKAGECONFIG_BACKEND:mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
+PACKAGECONFIG_BACKEND:mx8 = "waffle"

 PACKAGECONFIG_GPU2D          = ""
-PACKAGECONFIG_GPU2D_imxgpu2d = "vivante"
+PACKAGECONFIG_GPU2D:imxgpu2d = "vivante"

 PACKAGECONFIG ??= " \
     egl \
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
index 91a5542bd7a4..4c732ff2feb0 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -17,8 +17,8 @@ DEPENDS += " \
     ${@bb.utils.contains('DISTRO_FEATURES',     'x11', 'libxcb
libxshmfence libxxf86vm', \
                                                        '', d)} \
 "
-DEPENDS_append_imxdrm = " libdrm wayland"
-DEPENDS_append_mx8 = " patchelf-native"
+DEPENDS:append:imxdrm = " libdrm wayland"
+DEPENDS:append:mx8 = " patchelf-native"

 # imx-gpu-viv does not provide everything it needs to for
virtual/libgl
 # on x11 backend or on Wayland backend with XWayland support.
@@ -26,19 +26,19 @@ DEPENDS_append_mx8 = " patchelf-native"
 DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa',
'', d)}"

 EXTRA_PROVIDES = ""
-EXTRA_PROVIDES_append_imxgpu3d = " \
+EXTRA_PROVIDES:append:imxgpu3d = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland',
'virtual/libgl', \
        bb.utils.contains('DISTRO_FEATURES',     'x11',
'virtual/libgl', \
                                                        '', d), d)} \
     virtual/libgles1 \
     virtual/libgles2 \
 "
-EXTRA_PROVIDES_append_mx8 = " \
+EXTRA_PROVIDES:append:mx8 = " \
     virtual/libgbm \
 "
 PROVIDES_OPENVX       = ""
-PROVIDES_OPENVX_mx8   = "virtual/libopenvx"
-PROVIDES_OPENVX_mx8mm = ""
+PROVIDES_OPENVX:mx8   = "virtual/libopenvx"
+PROVIDES_OPENVX:mx8mm = ""
 PROVIDES += " \
     imx-gpu-viv \
     libgal-imx \
@@ -52,13 +52,13 @@ PROVIDES += " \
     ${EXTRA_PROVIDES} \
 "

-RPROVIDES_${PN}_imxgpu3d += "imx-gpu-viv"
+RPROVIDES_${PN}:imxgpu3d += "imx-gpu-viv"

 PE = "1"

 inherit fsl-eula-unpack features_check

-REQUIRED_DISTRO_FEATURES_mx8 = "wayland"
+REQUIRED_DISTRO_FEATURES:mx8 = "wayland"

 SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"

@@ -69,7 +69,7 @@ PACKAGECONFIG[valgrind] = ""

 # Note : If you add a package here, to prevent a naming conflict see
the python_anonymous() futher below
 IMX_PACKAGES_GBM     = ""
-IMX_PACKAGES_GBM_mx8 = "libgbm-imx libgbm-imx-dev"
+IMX_PACKAGES_GBM:mx8 = "libgbm-imx libgbm-imx-dev"
 PACKAGES =+ "libclc-imx libclc-imx-dev \
        libgl-imx libgl-imx-dev \
        libgles1-imx libgles1-imx-dev \
@@ -140,21 +140,21 @@ python __anonymous() {
 }

 IS_MX6SL = "0"
-IS_MX6SL_mx6sl = "1"
+IS_MX6SL:mx6sl = "1"

 IS_MX8 = "0"
-IS_MX8_mx8 = "1"
+IS_MX8:mx8 = "1"

 PACKAGE_FP_TYPE = "hardfp"

 HAS_GBM     = "false"
-HAS_GBM_mx8 = "true"
+HAS_GBM:mx8 = "true"

 GLES3_HEADER_REMOVALS        = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8m   = "gl32.h"
-GLES3_HEADER_REMOVALS_mx8mm  = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8qxp = ""
-GLES3_HEADER_REMOVALS_mx8qm  = ""
+GLES3_HEADER_REMOVALS:mx8m   = "gl32.h"
+GLES3_HEADER_REMOVALS:mx8mm  = "gl31.h gl32.h"
+GLES3_HEADER_REMOVALS:mx8qxp = ""
+GLES3_HEADER_REMOVALS:mx8qm  = ""

 do_install () {
     install -d ${D}${libdir}
@@ -291,9 +291,9 @@ INSANE_SKIP_libgal-imx += "build-deps"

 FILES_libvsc-imx = "${libdir}/libVSC${SOLIBS}"

-FILES_libgbm-imx_mx8           = "${libdir}/libgbm*${REALSOLIBS}
${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
-FILES_libgbm-imx-dev_mx8       = "${libdir}/pkgconfig/gbm.pc
${includedir}/gbm.h"
-RDEPENDS_libgbm-imx_append_mx8 = " libdrm"
+FILES_libgbm-imx:mx8           = "${libdir}/libgbm*${REALSOLIBS}
${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
+FILES_libgbm-imx-dev:mx8       = "${libdir}/pkgconfig/gbm.pc
${includedir}/gbm.h"
+RDEPENDS_libgbm-imx:append:mx8 = " libdrm"
 INSANE_SKIP_libgbm-imx += "dev-so"

 FILES_libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS}
${libdir}/libSPIRV_viv${SOLIBS}"
@@ -358,10 +358,10 @@ INSANE_SKIP_libgc-wayland-protocol-imx += "dev-
so"
 FILES_libgc-wayland-protocol-imx =
"${libdir}/libgc_wayland_protocol${REALSOLIBS}
${libdir}/libgc_wayland_protocol${SOLIBS}"
 FILES_libgc-wayland-protocol-imx-dev =
"${libdir}/libgc_wayland_protocol${SOLIBSDEV}
${libdir}/pkgconfig/gc_wayland_protocol.pc"

-FILES_imx-gpu-viv-tools = "${bindir}/gmem_info"
+FILES:imx-gpu-viv-tools = "${bindir}/gmem_info"

-FILES_imx-gpu-viv-demos = "/opt"
-INSANE_SKIP_imx-gpu-viv-demos += "rpaths dev-deps"
+FILES:imx-gpu-viv-demos = "/opt"
+INSANE_SKIP:imx-gpu-viv-demos += "rpaths dev-deps"

 FILES_libnn-imx = "${libdir}/libNN*${SOLIBS}
${libdir}/libnn*${SOLIBS} ${libdir}/libneuralnetworks${SOLIBS}"
 FILES_libnn-imx-dev = "${includedir}/nnrt"
diff --git a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
index 5b82b3f4639b..71baa53d82ef 100644
--- a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
+++ b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
@@ -1,5 +1,5 @@
 # Append EGL_CFLAGS to CFLAGS
-CFLAGS_append_imxgpu = " \
+CFLAGS:append:imxgpu = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-
DEGL_API_FB', d)} \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-
DWL_EGL_PLATFORM', '', d)} \
 "
diff --git a/recipes-graphics/libsdl2/libsdl2_%.bbappend b/recipes-
graphics/libsdl2/libsdl2_%.bbappend
index 303ea63a7cf2..af9c97bb6e97 100644
--- a/recipes-graphics/libsdl2/libsdl2_%.bbappend
+++ b/recipes-graphics/libsdl2/libsdl2_%.bbappend
@@ -1,8 +1,8 @@
 # what vivante driver does libsdl2 mean? Anyway it fails with
missing functions as
 # VIVANTE_Create VIVANTE_GLES_GetProcAddress
VIVANTE_GLES_UnloadLibrary ...
-EXTRA_OECONF_append_imxgpu2d = " --disable-video-vivante"
+EXTRA_OECONF:append:imxgpu2d = " --disable-video-vivante"

-CFLAGS_append_imxgpu = " -DLINUX \
+CFLAGS:append:imxgpu = " -DLINUX \
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-
DEGL_API_FB', d)} \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-
DWL_EGL_PLATFORM', '', d)} \
 "
diff --git a/recipes-graphics/mesa/mesa-demos_%.bbappend b/recipes-
graphics/mesa/mesa-demos_%.bbappend
index 301f1b59f125..4b518185119b 100644
--- a/recipes-graphics/mesa/mesa-demos_%.bbappend
+++ b/recipes-graphics/mesa/mesa-demos_%.bbappend
@@ -1,26 +1,26 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = "
file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
+SRC_URI:append:imxgpu = "
file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
                     file://fix-clear-build-break.patch \
                    
file://Add-OpenVG-demos-to-support-wayland.patch"

 PACKAGECONFIG_REMOVE_IF_2D_ONLY          = ""
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu2d = "gles1 gles2"
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu3d = ""
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu2d = "gles1 gles2"
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu3d = ""
 PACKAGECONFIG_REMOVE_IF_GPU              = ""
-PACKAGECONFIG_REMOVE_IF_GPU_imxgpu       = " \
+PACKAGECONFIG_REMOVE_IF_GPU:imxgpu       = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'glu x11',
'', d)} \
 "
-PACKAGECONFIG_remove = " \
+PACKAGECONFIG:remove = " \
     ${PACKAGECONFIG_REMOVE_IF_2D_ONLY} \
     ${PACKAGECONFIG_REMOVE_IF_GPU} \
 "

 PACKAGECONFIG_APPEND_IF_GPU        = ""
-PACKAGECONFIG_APPEND_IF_GPU_imxgpu = " \
+PACKAGECONFIG_APPEND_IF_GPU:imxgpu = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland vg',
'', d)} \
     ${@bb.utils.contains('DISTRO_FEATURES',     'x11',       'glut',
'', d)} \
 "
-PACKAGECONFIG_append = " \
+PACKAGECONFIG:append = " \
     ${PACKAGECONFIG_APPEND_IF_GPU} \
 "
diff --git a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb b/recipes-
graphics/mesa/mesa-etnaviv-env_0.1.bb
index 2a32c448f436..c58c2cf30dc9 100644
--- a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
+++ b/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
@@ -12,7 +12,7 @@ SRC_URI = "\
 do_configure[noexec] = "1"
 do_compile[noexec] = "1"

-do_install_use-mainline-bsp() {
+do_install:use-mainline-bsp() {
     # MESA global envirronment variables

     # systemd
diff --git a/recipes-graphics/mesa/mesa-gl_%.bbappend b/recipes-
graphics/mesa/mesa-gl_%.bbappend
index ca1c8f46d680..dafd27f0a68e 100644
--- a/recipes-graphics/mesa/mesa-gl_%.bbappend
+++ b/recipes-graphics/mesa/mesa-gl_%.bbappend
@@ -1 +1 @@
-COMPATIBLE_MACHINE_imxgpu = "(-)"
+COMPATIBLE_MACHINE:imxgpu = "(-)"
diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-
graphics/mesa/mesa_%.bbappend
index 423ee63ec638..d0b55cacea4b 100644
--- a/recipes-graphics/mesa/mesa_%.bbappend
+++ b/recipes-graphics/mesa/mesa_%.bbappend
@@ -1,5 +1,5 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_use-mainline-bsp = " \
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:use-mainline-bsp = " \
     file://0001-dri-add-createImageWithModifiers2-interface.patch \
     file://0002-dri-add-loader_dri_create_image-helper.patch \
    
file://0003-loader-dri3-convert-to-loader_dri_create_image.patch \
@@ -11,11 +11,11 @@ SRC_URI_append_use-mainline-bsp = " \
    
file://0009-etnaviv-flush-used-render-buffers-on-context-flush-w.patch
 \
 "

-PROVIDES_remove_imxgpu   = "virtual/egl"
-PROVIDES_remove_imxgpu3d = "virtual/libgl virtual/libgles1
virtual/libgles2"
+PROVIDES:remove:imxgpu   = "virtual/egl"
+PROVIDES:remove:imxgpu3d = "virtual/libgl virtual/libgles1
virtual/libgles2"

-PACKAGECONFIG_remove_imxgpu   = "egl gbm"
-PACKAGECONFIG_remove_imxgpu3d = "gles"
+PACKAGECONFIG:remove:imxgpu   = "egl gbm"
+PACKAGECONFIG:remove:imxgpu3d = "gles"

 # FIXME: mesa should support 'x11-no-tls' option
 python () {
@@ -28,13 +28,13 @@ python () {
 }

 # Enable Etnaviv and Freedreno support
-PACKAGECONFIG_append_use-mainline-bsp = " gallium etnaviv kmsro
freedreno"
+PACKAGECONFIG:append:use-mainline-bsp = " gallium etnaviv kmsro
freedreno"

 # For NXP BSP, GPU drivers don't support dri
-PACKAGECONFIG_remove_imxgpu_use-nxp-bsp = "dri"
+PACKAGECONFIG:remove:imxgpu:use-nxp-bsp = "dri"

 # mainline/etnaviv:
-RRECOMMENDS_${PN}-megadriver_append_use-mainline-bsp = " libdrm-
etnaviv mesa-etnaviv-env"
+RRECOMMENDS_${PN}-megadriver:append:use-mainline-bsp = " libdrm-
etnaviv mesa-etnaviv-env"

 BACKEND = \
     "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -42,7 +42,7 @@ BACKEND = \
                                                              'fb',
d), d)}"

 # FIXME: Dirty hack to allow use of Vivante GPU libGL binary
-do_install_append_imxgpu3d () {
+do_install:append:imxgpu3d () {
     rm -f ${D}${libdir}/libGL.* \
           ${D}${includedir}/GL/gl.h \
           ${D}${includedir}/GL/glcorearb.h \
@@ -54,6 +54,6 @@ do_install_append_imxgpu3d () {
     fi
 }

-do_install_append_imxgpu () {
+do_install:append:imxgpu () {
     rm -rf ${D}${includedir}/KHR
 }
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
index 28e1dc32fcce..1e4d181ce3e5 100644
--- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
+++ b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
@@ -1,3 +1,3 @@
 # The i.MX implementation is dynamically loaded, so it requires an
 # explicit runtime dependency.
-RRECOMMENDS_${PN}_append_imxgpu = " libvulkan-imx"
+RRECOMMENDS_${PN}:append:imxgpu = " libvulkan-imx"
diff --git a/recipes-graphics/waffle/waffle_%.bbappend b/recipes-
graphics/waffle/waffle_%.bbappend
index 9d090bcfe2b0..380273a8c55c 100644
--- a/recipes-graphics/waffle/waffle_%.bbappend
+++ b/recipes-graphics/waffle/waffle_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

 SRC_URI += " \
     file://0001-meson-Add-missing-wayland-dependency-on-EGL.patch \
@@ -6,11 +6,11 @@ SRC_URI += " \
 "

 PACKAGECONFIG_IMXGPU_X11          = ""
-PACKAGECONFIG_IMXGPU_X11_imxgpu3d = "x11-egl glx"
+PACKAGECONFIG_IMXGPU_X11:imxgpu3d = "x11-egl glx"
 PACKAGECONFIG_IMXGPU_GBM          = "gbm"
-PACKAGECONFIG_IMXGPU_GBM_mx6      = ""
-PACKAGECONFIG_IMXGPU_GBM_mx7      = ""
-PACKAGECONFIG_imxgpu = " \
+PACKAGECONFIG_IMXGPU_GBM:mx6      = ""
+PACKAGECONFIG_IMXGPU_GBM:mx7      = ""
+PACKAGECONFIG:imxgpu = " \
     ${@bb.utils.contains('DISTRO_FEATURES',
'wayland',                     'wayland', \
        bb.utils.contains('DISTRO_FEATURES',     'x11',
'${PACKAGECONFIG_IMXGPU_X11}', \
                                                                     
              '', d), d)} \
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-
graphics/wayland/weston-init.bbappend
index ebd982687b19..5710e9b5ecad 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -1,24 +1,24 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

 # OpenGL is not required for parts with GPU support for 2D but not
3D
 IMX_REQUIRED_DISTRO_FEATURES_REMOVE          = ""
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu2d = "opengl"
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu3d = ""
-REQUIRED_DISTRO_FEATURES_remove =
"${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu2d = "opengl"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu3d = ""
+REQUIRED_DISTRO_FEATURES:remove =
"${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"

-SRC_URI_append_mx6sl = " file://weston.config"
+SRC_URI:append:mx6sl = " file://weston.config"

 # To customize weston.ini, start by setting the desired assignment
in weston.ini,
 # commented out. For example:
 #     #xwayland=true
 # Then add the assignment to INI_UNCOMMENT_ASSIGNMENTS.
-INI_UNCOMMENT_ASSIGNMENTS_append_imx = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:imx = " \
     ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland',
'xwayland=true', '', d)} \
 "
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8 = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8 = " \
     repaint-window=16 \
 "
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8mq = " \
     gbm-format=argb8888 \
     \\[shell\\] \
     size=1920x1080 \
@@ -27,10 +27,10 @@ INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
 # FIXME: The 8QM and 8QXP SoCs have better performance without G2D
so don't enable it
 # Ideally, this should be seamless and Vivante ought to handle it
internally and take the fastest
 # rendering code.
-INI_UNCOMMENT_USE_G2D_imxgpu2d ?= "use-g2d=1"
-INI_UNCOMMENT_USE_G2D_mx8qm = ""
-INI_UNCOMMENT_USE_G2D_mx8qxp = ""
-INI_UNCOMMENT_ASSIGNMENTS_append_imxgpu2d = " \
+INI_UNCOMMENT_USE_G2D:imxgpu2d ?= "use-g2d=1"
+INI_UNCOMMENT_USE_G2D:mx8qm = ""
+INI_UNCOMMENT_USE_G2D:mx8qxp = ""
+INI_UNCOMMENT_ASSIGNMENTS:append:imxgpu2d = " \
     ${INI_UNCOMMENT_USE_G2D} \
 "

@@ -41,7 +41,7 @@ uncomment() {
     sed -i -e 's,^#'"$1"','"$1"',g' $2
 }

-do_install_append() {
+do_install:append() {
     if [ -f "${WORKDIR}/weston.config" ]; then
         install -Dm0755 ${WORKDIR}/weston.config
${D}${sysconfdir}/default/weston
     fi
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-
graphics/wayland/weston_9.0.0.imx.bb
index 026f27cebe8b..16607a93c4d2 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_9.0.0.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "
https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
           
file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch
 \
 "

-SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch "
+SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "

 SRC_URI[sha256sum] =
"5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe"

@@ -97,7 +97,7 @@ PACKAGECONFIG[shell-ivi] = "-Dshell-ivi=true,-
Dshell-ivi=false"
 # JPEG image loading support
 PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false,
jpeg"

-do_install_append() {
+do_install:append() {
        # Weston doesn't need the .la files to load modules, so wipe
them
        rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la

@@ -160,23 +160,23 @@ S = "${WORKDIR}/git"

 # Disable OpenGL for parts with GPU support for 2D but not 3D
 REQUIRED_DISTRO_FEATURES          = "opengl"
-REQUIRED_DISTRO_FEATURES_imxgpu2d = ""
-REQUIRED_DISTRO_FEATURES_imxgpu3d = "opengl"
+REQUIRED_DISTRO_FEATURES:imxgpu2d = ""
+REQUIRED_DISTRO_FEATURES:imxgpu3d = "opengl"
 PACKAGECONFIG_OPENGL              = "opengl"
-PACKAGECONFIG_OPENGL_imxgpu2d     = ""
-PACKAGECONFIG_OPENGL_imxgpu3d     = "opengl"
+PACKAGECONFIG_OPENGL:imxgpu2d     = ""
+PACKAGECONFIG_OPENGL:imxgpu3d     = "opengl"

-PACKAGECONFIG_remove = "wayland x11"
-PACKAGECONFIG_append = " ${@bb.utils.filter('DISTRO_FEATURES',
'${PACKAGECONFIG_OPENGL}', d)}"
+PACKAGECONFIG:remove = "wayland x11"
+PACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES',
'${PACKAGECONFIG_OPENGL}', d)}"

-PACKAGECONFIG_remove_imxfbdev = "kms"
-PACKAGECONFIG_append_imxfbdev = " fbdev clients"
-PACKAGECONFIG_append_imxgpu   = " imxgpu"
-PACKAGECONFIG_append_imxgpu2d = " imxg2d"
+PACKAGECONFIG:remove:imxfbdev = "kms"
+PACKAGECONFIG:append:imxfbdev = " fbdev clients"
+PACKAGECONFIG:append:imxgpu   = " imxgpu"
+PACKAGECONFIG:append:imxgpu2d = " imxg2d"

 # Clients support
 SIMPLE_CLIENTS = "all"
-SIMPLE_CLIENTS_imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
+SIMPLE_CLIENTS:imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
 PACKAGECONFIG[xwayland] = "-Dxwayland=true,-
Dxwayland=false,libxcursor"
 PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLE_CLIENTS} -Ddemo-
clients=true,-Dsimple-clients= -Ddemo-clients=false"
 # Weston with i.MX GPU support
diff --git a/recipes-graphics/xinput-calibrator/pointercal-
xinput_%.bbappend b/recipes-graphics/xinput-calibrator/pointercal-
xinput_%.bbappend
index a9c60f3ec4f9..d112b274a75d 100644
--- a/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
+++ b/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
@@ -1,2 +1,2 @@
 # Append path for freescale layer to include bsp pointercal.xinput
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb b/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb
index 069008c04479..836a16ba08cc 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb
@@ -34,7 +34,7 @@ TARGET_CC_ARCH += "${LDFLAGS}"

 PACKAGES =+ "xserver-xorg-extension-viv-autohdmi"

-do_install_append () {
+do_install:append () {
     install -d ${D}${includedir}
     cp -axr ${S}/EXA/src/vivante_gal/vivante_priv.h
${D}${includedir}
     cp -axr ${S}/EXA/src/vivante_gal/vivante_gal.h ${D}${includedir}
diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-
config_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xf86-
config_%.bbappend
index ceb438e37115..3fe677b34770 100644
--- a/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
@@ -1,2 +1,2 @@
 # Append path for freescale layer to include bsp xorg.conf
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
index 22d950c796cc..34e2ed82377b 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -1,7 +1,7 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_use-mainline-bsp = "
file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
-SRC_URI_append_imxgpu = " \
+SRC_URI:append:use-mainline-bsp = "
file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
+SRC_URI:append:imxgpu = " \
     file://0003-Remove-check-for-useSIGIO-option.patch \
    
file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch
 \
    
file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch
 \
@@ -10,7 +10,7 @@ SRC_URI_append_imxgpu = " \
 "

 IMX_OPENGL_PKGCONFIGS_REMOVE        = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_imxdrm     = "dri glx"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:imxdrm     = "dri glx"
diff --git a/recipes-graphics/xwayland/xwayland_%.bbappend b/recipes-
graphics/xwayland/xwayland_%.bbappend
index c26bb20d2caf..b3e79e09182f 100644
--- a/recipes-graphics/xwayland/xwayland_%.bbappend
+++ b/recipes-graphics/xwayland/xwayland_%.bbappend
@@ -1,4 +1,4 @@
 IMX_OPENGL_PKGCONFIGS_REMOVE        = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7        =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
diff --git a/recipes-kernel/ceetm/ceetm_git.bb b/recipes-
kernel/ceetm/ceetm_git.bb
index 2e92ad49e5a4..45c3f19edc1a 100644
--- a/recipes-kernel/ceetm/ceetm_git.bb
+++ b/recipes-kernel/ceetm/ceetm_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "
file://COPYING;md5=bac620b9883d38a84dfb73ca7122d915"

 SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-
components/ceetm;nobranch=1"
 SRCREV = "6a7f2ec2091df2f4380cb8d25a36c399aed5af1b"
-SRC_URI_append = " file://0001-Makefile-update-CFLAGS.patch \
+SRC_URI:append = " file://0001-Makefile-update-CFLAGS.patch \
     file://0001-use-new-api-tc_print_rate.patch \
 "
 DEPENDS = "iproute2"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
index feddc8faac80..36e2065db7c4 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
@@ -14,7 +14,7 @@ export KERNEL_PATH

 INHIBIT_PACKAGE_STRIP = "1"

-do_compile_prepend() {
+do_compile:prepend() {
     sed -i -e 's,EXTRA_CFLAGS += -I$(PWD),EXTRA_CFLAGS += -I${S},'
${S}/armodule/source/Makefile
 }

diff --git a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
index 350ba186aeb2..903c53a48731 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
@@ -11,7 +11,7 @@ SRCREV = "74d662707558290f070f9589177db730444bc435"
 S = "${WORKDIR}/git"

 do_configure[depends] += "virtual/kernel:do_shared_workdir"
-do_compile_prepend () {
+do_compile:prepend () {
     cd ${S}/kernel
 }

diff --git a/recipes-kernel/kernel-modules/kernel-module-qcacld-
lea.inc b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
index 0b23a47c04bb..a7b8a4e68ce7 100644
--- a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
@@ -20,4 +20,4 @@ EXTRA_OEMAKE += " \
 "

 COMPATIBLE_MACHINE = "(imx)"
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
index 63527d1324cc..95dd72fb894c 100644
--- a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by
the Freescale Community \
 that produces a Manufacturing Tool compatible Linux Kernel to be
used in updater \
 environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
 require linux-fslc-lts_${PV}.bb
 require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
index c155ebb969ed..09d35c9152ea 100644
--- a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
+++ b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by
the Freescale Community \
 that produces a Manufacturing Tool compatible Linux Kernel to be
used in updater \
 environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
 require linux-fslc_${PV}.bb
 require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-imx-headers_5.10.bb
b/recipes-kernel/linux/linux-imx-headers_5.10.bb
index c656fa557e26..05e8b12c5bfe 100644
--- a/recipes-kernel/linux/linux-imx-headers_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-headers_5.10.bb
@@ -75,4 +75,4 @@ PACKAGE_ARCH = "${MACHINE_SOCARCH}"
 # Restrict this recipe to NXP BSP only, this recipe is not
compatible
 # with mainline BSP
 COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
index 0a9f5259ed94..311245b19b6d 100644
--- a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
@@ -5,7 +5,7 @@ SUMMARY = "Produces a Manufacturing Tool compatible
Linux Kernel"
 DESCRIPTION = "Linux Kernel provided and supported by Freescale that
produces a \
 Manufacturing Tool compatible Linux Kernel to be used in updater
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-imx:"
 require linux-imx_${PV}.bb
 require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-qoriq.inc b/recipes-
kernel/linux/linux-qoriq.inc
index 4d134b476599..2333990fb79c 100644
--- a/recipes-kernel/linux/linux-qoriq.inc
+++ b/recipes-kernel/linux/linux-qoriq.inc
@@ -7,12 +7,12 @@ LICENSE = "GPLv2"

 S = "${WORKDIR}/git"

-DEPENDS_append = " libgcc"
+DEPENDS:append = " libgcc"
 # not put Images into /boot of rootfs, install kernel-image if
needed
 RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""

-KERNEL_CC_append = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_CC:append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append = " ${TOOLCHAIN_OPTIONS}"
 KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"

 ZIMAGE_BASE_NAME = "zImage-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-
${DATETIME}"
@@ -24,9 +24,9 @@ PV = "${LINUX_VERSION}+git${SRCPV}"
 SCMVERSION ?= "y"
 LOCALVERSION = ""
 DELTA_KERNEL_DEFCONFIG ?= ""
-DELTA_KERNEL_DEFCONFIG_prepend_qoriq-arm64 = "lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_fsl-lsch2-32b = "multi_v7_lpae.config
multi_v8.config lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_ls102xa = "multi_v7_lpae.config
lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:qoriq-arm64 = "lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:fsl-lsch2-32b = "multi_v7_lpae.config
multi_v8.config lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:ls102xa = "multi_v7_lpae.config
lsdk.config "

 do_merge_delta_config[depends] +=
"virtual/${TARGET_PREFIX}gcc:do_populate_sysroot bison-
native:do_populate_sysroot"
 do_merge_delta_config[dirs] = "${B}"
@@ -56,11 +56,11 @@ do_merge_delta_config() {
 addtask merge_delta_config before do_kernel_localversion after
do_patch

 # The link of dts folder is needed for 32b compile of aarch64
targets(e.g. ls1043ardb-32b)
-do_compile_prepend_fsl-lsch2-32b() {
+do_compile:prepend:fsl-lsch2-32b() {
     ln -sfT ${STAGING_KERNEL_DIR}/arch/arm64/boot/dts/freescale
${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
 }

-do_install_prepend_fsl-lsch2-32b() {
+do_install:prepend:fsl-lsch2-32b() {
     rm -f ${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
 }

diff --git a/recipes-multimedia/alsa/alsa-lib_%.bbappend b/recipes-
multimedia/alsa/alsa-lib_%.bbappend
index 80c11f33204f..d76c45d1e162 100644
--- a/recipes-multimedia/alsa/alsa-lib_%.bbappend
+++ b/recipes-multimedia/alsa/alsa-lib_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

 IMX_PATCH = " \
     file://0001-add-conf-for-multichannel-support-in-imx.patch \
@@ -6,6 +6,6 @@ IMX_PATCH = " \
     file://0005-add-ak4458-conf-for-multichannel-support.patch \
     file://0006-add-conf-for-iMX-XCVR-sound-card.patch \
 "
-SRC_URI_append_imx = "${IMX_PATCH}"
+SRC_URI:append:imx = "${IMX_PATCH}"

-PACKAGE_ARCH_imx = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx = "${MACHINE_SOCARCH}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-
libav_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-
libav_1.16.0.bb
index 3f1ec99d9560..cf640e13779e 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
@@ -50,8 +50,8 @@ LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-
os=linux \
   --cross-prefix='${HOST_PREFIX}'"

 # Disable assembly optimizations for X32, as this libav lacks the
support
-PACKAGECONFIG_remove_linux-gnux32 = "yasm"
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG_append_linux-gnux32 = " --disable-
asm"
+PACKAGECONFIG:remove:linux-gnux32 = "yasm"
+LIBAV_EXTRA_CONFIGURE_COMMON_ARG:append:linux-gnux32 = " --disable-
asm"

 LIBAV_EXTRA_CONFIGURE_COMMON = \
 '${LIBAV_EXTRA_CONFIGURE}="${LIBAV_EXTRA_CONFIGURE_COMMON_ARG}"'
@@ -63,8 +63,8 @@ FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
 FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"

 # http://errors.yoctoproject.org/Errors/Details/20493/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

 # ffmpeg/libav disables PIC on some platforms (e.g. x86-32)
 INSANE_SKIP_${PN} = "textrel"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
bad_1.16.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-bad_1.16.3.imx.bb
index 6925611ac080..376764583179 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
bad_1.16.3.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
bad_1.16.3.imx.bb
@@ -1,14 +1,14 @@
 require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc

-DEPENDS_append_imxgpu2d = " virtual/libg2d"
-DEPENDS_append_mx8 = " libdrm"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"
+DEPENDS:append:mx8 = " libdrm"

-PACKAGECONFIG_append_mx8 = " kms"
+PACKAGECONFIG:append:mx8 = " kms"

 DEFAULT_PREFERENCE = "-1"

-PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxpxp = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"

 GST1.0-PLUGINS-BAD_SRC ?=
"gitsm://source.codeaurora.org/external/imx/gst-plugins-
bad.git;protocol=https"
 SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
@@ -37,7 +37,7 @@ DEPENDS += "gstreamer1.0-plugins-base"
 inherit gobject-introspection

 PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gl', '', d)}"
-PACKAGECONFIG_GL_imxpxp = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2', '', d)}"
+PACKAGECONFIG_GL:imxpxp = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2', '', d)}"

 PACKAGECONFIG ??= " \
     ${GSTREAMER_ORC} \
@@ -163,8 +163,8 @@ EXTRA_OEMESON += " \

 export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

 FILES_${PN}-freeverb += "${datadir}/gstreamer-
1.0/presets/GstFreeverb.prs"
 FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-base_1.16.%.bbappend
index d92bdf3ca3c2..1c62f31dc227 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.%.bbappend
@@ -1,5 +1,5 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"

 # For mainline BSP we need to enable 'gbm' Window system
-PACKAGECONFIG_GL_use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm',
'', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm',
'', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.2.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-base_1.16.2.imx.bb
index db0b740fa22b..01db6125d67d 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.2.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.2.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "${GST1.0-PLUGINS-
BASE_SRC};branch=${SRCBRANCH} \
 S = "${WORKDIR}/git"

 DEPENDS += "iso-codes util-linux zlib"
-DEPENDS_append_imxgpu2d = " virtual/libg2d"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"

 inherit use-imx-headers gobject-introspection gtk-doc

diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
good_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-good_1.16.%.bbappend
index 8565c6a53377..7e72cdaa2273 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
good_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
good_1.16.%.bbappend
@@ -1,3 +1,3 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"
-PACKAGECONFIG_GL_use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '',
d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '',
d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
imx_2.0.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
imx_2.0.0.bb
index 7c6025dd900e..439c4430f407 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
@@ -28,22 +28,22 @@ inherit pkgconfig meson use-imx-headers
 # is needed to improve performance.
 LIBG2D_DPU_OPTION = "-Dg2d-based-on-dpu=false"
 LIBG2D_DEPENDENCIES = "virtual/libg2d"
-LIBG2D_DPU_OPTION_imxdpu = "-Dg2d-based-on-dpu=true"
-LIBG2D_DEPENDENCIES_imxdpu = "virtual/libg2d libdrm"
+LIBG2D_DPU_OPTION:imxdpu = "-Dg2d-based-on-dpu=true"
+LIBG2D_DEPENDENCIES:imxdpu = "virtual/libg2d libdrm"

 EXTRA_OEMESON += "-Dimx-headers-path=${STAGING_INCDIR_IMX}"

 PACKAGECONFIG ?= "uniaudiodec"
-PACKAGECONFIG_append_imxgpu2d = " g2d"
-PACKAGECONFIG_append_imxvpu   = " vpu"
-PACKAGECONFIG_append_imxipu   = " ipu"
-PACKAGECONFIG_append_imxpxp   = " pxp"
+PACKAGECONFIG:append:imxgpu2d = " g2d"
+PACKAGECONFIG:append:imxvpu   = " vpu"
+PACKAGECONFIG:append:imxipu   = " ipu"
+PACKAGECONFIG:append:imxpxp   = " pxp"
 # The custom imxv4l2 elements are only available on the i.MX6.
 # The 2D blitter sinks require an MXC framebuffer, which
 # is not available anymore on the i.MX8 (since these SoCs
 # now use KMS instead of the old Linux framebuffer).
-PACKAGECONFIG_append_mx6      = " imx2dvideosink v4l2"
-PACKAGECONFIG_append_mx7      = " imx2dvideosink"
+PACKAGECONFIG:append:mx6      = " imx2dvideosink v4l2"
+PACKAGECONFIG:append:mx7      = " imx2dvideosink"

 PACKAGECONFIG[g2d] = "-Dg2d=enabled ${LIBG2D_DPU_OPTION},-
Dg2d=disabled,${LIBG2D_DEPENDENCIES}"
 PACKAGECONFIG[pxp] = "-Dpxp=enabled,-Dpxp=disabled,"
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
index c8bb6cd8a45a..9f58aa64d5dc 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
@@ -8,9 +8,9 @@ LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
 SECTION = "multimedia"

 DEPENDS = "imx-codec imx-parser gstreamer1.0 gstreamer1.0-plugins-
base gstreamer1.0-plugins-bad"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " imx-vpuwrap libdrm"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " imx-vpuwrap libdrm"

 # For backwards compatibility
 RREPLACES_${PN} = "gst1.0-fsl-plugin"
@@ -31,14 +31,14 @@ S = "${WORKDIR}/git"

 inherit autotools pkgconfig use-imx-headers

-PLATFORM_mx6 = "MX6"
-PLATFORM_mx6sl = "MX6SL"
-PLATFORM_mx6sx = "MX6SX"
-PLATFORM_mx6ul = "MX6UL"
-PLATFORM_mx6sll = "MX6SLL"
-PLATFORM_mx7= "MX7D"
-PLATFORM_mx7ulp= "MX7ULP"
-PLATFORM_mx8 = "MX8"
+PLATFORM:mx6 = "MX6"
+PLATFORM:mx6sl = "MX6SL"
+PLATFORM:mx6sx = "MX6SX"
+PLATFORM:mx6ul = "MX6UL"
+PLATFORM:mx6sll = "MX6SLL"
+PLATFORM:mx7= "MX7D"
+PLATFORM:mx7ulp= "MX7ULP"
+PLATFORM:mx8 = "MX8"

 # Todo add a mechanism to map possible build targets
 EXTRA_OECONF = "PLATFORM=${PLATFORM} \
@@ -55,7 +55,7 @@ RDEPENDS_${PN} += "imx-parser ${BEEP_RDEPENDS}
gstreamer1.0-plugins-good-id3demu
 # overlaysink rely on G2D,
 # cannot be supported on i.MX6SLL & i.MX6UL & i.MX6ULL & i.MX7D
 PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxgpu2d = "overlaysink"
+PACKAGECONFIG:imxgpu2d = "overlaysink"


 # FIXME: Add all features
diff --git a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
index 76a52f26cb64..4bb76030ed62 100644
--- a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
+++ b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
@@ -21,14 +21,14 @@ EXTRA_OECONF =
"${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8
                    bb.utils.contains('TUNE_FEATURES',
'callconvention-hard', '--enable-fhw', '', d), d)}"

 PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxvpu = "vpu"
+PACKAGECONFIG:imxvpu = "vpu"

 # We need to ensure we don't have '-src' package overrided
 PACKAGE_DEBUG_SPLIT_STYLE = 'debug-without-src'

 PACKAGECONFIG[vpu] = "--enable-vpu,--disable-vpu,virtual/imxvpu"

-do_install_append() {
+do_install:append() {
     # LTIB move the files around or gst-fsl-plugin won't find them
     for p in $(find ${D}${libdir}/imx-mm -mindepth 2 -maxdepth 2 -
not -type d); do
             mv $p ${D}${libdir}
@@ -85,7 +85,7 @@ python __set_metapkg_rdepends() {
     codec_pkgs = oe.utils.packages_filter_out_system(d)
     codec_pkgs = filter(lambda x: x not in ['imx-codec-test-bin',
'imx-codec-test-source'],
                         codec_pkgs)
-    d.appendVar('RDEPENDS_imx-codec-meta', ' ' + '
'.join(codec_pkgs))
+    d.appendVar('RDEPENDS:imx-codec-meta', ' ' + '
'.join(codec_pkgs))
 }

 PACKAGESPLITFUNCS =+ "__split_libfslcodec_plugins
__set_metapkg_rdepends"
diff --git a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
index 2b0282351840..f77e33f76d07 100644
--- a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
+++ b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
@@ -8,7 +8,7 @@ SECTION = "multimedia"
 LIC_FILES_CHKSUM = "
file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"

 DEPENDS = "virtual/imxvpu"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

 SRC_URI = "git://github.com/NXP/imx-
vpuwrap.git;protocol=https;branch=${SRCBRANCH}"

@@ -19,7 +19,7 @@ S = "${WORKDIR}/git"

 inherit autotools pkgconfig

-do_install_append() {
+do_install:append() {
     # FIXME: Drop examples for now
     rm -r ${D}${datadir}
 }
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
index f66eff27568c..372d78dcb859 100644
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
+++ b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
@@ -15,10 +15,10 @@ S = "${WORKDIR}/git"

 inherit waf pkgconfig use-imx-headers

-IMX_PLATFORM_mx6 = "imx6"
-IMX_PLATFORM_mx8mq = "imx8m"
-IMX_PLATFORM_mx8mm = "imx8mm"
-IMX_PLATFORM_mx8mp = "imx8mm"
+IMX_PLATFORM:mx6 = "imx6"
+IMX_PLATFORM:mx8mq = "imx8m"
+IMX_PLATFORM:mx8mm = "imx8mm"
+IMX_PLATFORM:mx8mp = "imx8mm"

 EXTRA_OECONF = "--imx-platform=${IMX_PLATFORM} --libdir=${libdir} --
imx-headers=${STAGING_INCDIR_IMX} --sysroot-path=${RECIPE_SYSROOT}"

diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index 78a17864724a..ae69be4c8601 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,21 +1,21 @@

-CACHED_CONFIGUREVARS_append_mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"
+CACHED_CONFIGUREVARS:append:mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}/imx:"

-SRC_URI_append_mx6 = " file://daemon.conf file://default.pa"
-SRC_URI_append_mx7 = " file://daemon.conf file://default.pa \
+SRC_URI:append:mx6 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx7 = " file://daemon.conf file://default.pa \
                       
file://pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
 \
 "
-SRC_URI_append_mx8 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx8 = " file://daemon.conf file://default.pa"

-do_install_append() {
+do_install:append() {
     if [ -e "${WORKDIR}/daemon.conf" ] && [ -e
"${WORKDIR}/default.pa" ]; then
         install -m 0644 ${WORKDIR}/daemon.conf
${D}${sysconfdir}/pulse/daemon.conf
         install -m 0644 ${WORKDIR}/default.pa
${D}${sysconfdir}/pulse/default.pa
     fi
 }

-PACKAGE_ARCH_mx6 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"
diff --git a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
index 58b6b8a45b18..b2ac77483ef8 100644
--- a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
@@ -21,8 +21,8 @@ inherit python3native systemd
 SYSTEMD_SERVICE_${PN} = "tee-supplicant.service"

 OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

 EXTRA_OEMAKE = "ARCH=${OPTEE_ARCH} O=${B}"

diff --git a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
index 712b1aa69046..c0b3b7631269 100644
--- a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
@@ -22,23 +22,23 @@ inherit deploy python3native autotools

 # The platform flavor corresponds to the Yocto machine without the
leading 'i'.
 PLATFORM_FLAVOR                   = "${@d.getVar('MACHINE')[1:]}"
-PLATFORM_FLAVOR_imx6qpdlsolox     = "mx6qsabresd"
-PLATFORM_FLAVOR_imx6ul7d          = "mx6ulevk"
-PLATFORM_FLAVOR_imx6ull14x14evk   = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ull9x9evk     = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ulz-14x14-evk = "mx6ulzevk"
-PLATFORM_FLAVOR_mx8mq             = "mx8mqevk"
-PLATFORM_FLAVOR_mx8mm             = "mx8mmevk"
-PLATFORM_FLAVOR_mx8mn             = "mx8mnevk"
-PLATFORM_FLAVOR_mx8mp             = "mx8mpevk"
-PLATFORM_FLAVOR_mx8qm             = "mx8qmmek"
-PLATFORM_FLAVOR_mx8qxp            = "mx8qxpmek"
-PLATFORM_FLAVOR_mx8dx             = "mx8dxmek"
-PLATFORM_FLAVOR_mx8dxl            = "mx8dxlevk"
+PLATFORM_FLAVOR:imx6qpdlsolox     = "mx6qsabresd"
+PLATFORM_FLAVOR:imx6ul7d          = "mx6ulevk"
+PLATFORM_FLAVOR:imx6ull14x14evk   = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ull9x9evk     = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ulz-14x14-evk = "mx6ulzevk"
+PLATFORM_FLAVOR:mx8mq             = "mx8mqevk"
+PLATFORM_FLAVOR:mx8mm             = "mx8mmevk"
+PLATFORM_FLAVOR:mx8mn             = "mx8mnevk"
+PLATFORM_FLAVOR:mx8mp             = "mx8mpevk"
+PLATFORM_FLAVOR:mx8qm             = "mx8qmmek"
+PLATFORM_FLAVOR:mx8qxp            = "mx8qxpmek"
+PLATFORM_FLAVOR:mx8dx             = "mx8dxmek"
+PLATFORM_FLAVOR:mx8dxl            = "mx8dxlevk"

 OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

 # Optee-os can be built for 32 bits and 64 bits at the same time
 # as long as the compilers are correctly defined.
diff --git a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
index a8a1b245e496..4a6aec56dd45 100644
--- a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
@@ -20,11 +20,11 @@ SRCREV =
"0c998f42a3fb87b9f2929955cf4b0116cc515091"
 inherit python3native

 OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

 TA_DEV_KIT_DIR_arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32/"
-TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-
user_ta_arm64/"
+TA_DEV_KIT_DIR:aarch64 = "${STAGING_INCDIR}/optee/export-
user_ta_arm64/"

 CFLAGS += "--sysroot=${STAGING_DIR_HOST}"
 CXXFLAGS += "--sysroot=${STAGING_DIR_HOST}"
diff --git a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
index b8d764ff5e12..556f13518d7e 100644
--- a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
+++ b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
@@ -19,9 +19,9 @@ SRCREV = "0cb01f7f6aee552ead49990c06f69f73f459cc65"
 S = "${WORKDIR}/git"

 OPTEEMACHINE ?= "${MACHINE}"
-OPTEEMACHINE_ls1088ardb-pb = "ls1088ardb"
-OPTEEMACHINE_ls1046afrwy = "ls1046ardb"
-OPTEEMACHINE_lx2162aqds = "lx2160aqds"
+OPTEEMACHINE:ls1088ardb-pb = "ls1088ardb"
+OPTEEMACHINE:ls1046afrwy = "ls1046ardb"
+OPTEEMACHINE:lx2162aqds = "lx2160aqds"

 EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE} CFG_ARM64_core=y \
                 ARCH=arm \
@@ -31,10 +31,10 @@ EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE}
CFG_ARM64_core=y \
                 LDFLAGS= \
                 LIBGCC_LOCATE_CFLAGS=--sysroot=${STAGING_DIR_HOST} \
         "
-EXTRA_OEMAKE_append_lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-
lx2160a-qds.dts CFG_EMBED_DT=y"
+EXTRA_OEMAKE:append:lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-
lx2160a-qds.dts CFG_EMBED_DT=y"

-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

 do_compile() {
     unset LDFLAGS
diff --git a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-
tinyxml2.cpp.patch b/recipes-support/opencv/opencv/0001-Use-Os-to-
compile-tinyxml2.cpp.patch
index c5a64387f525..7fdf1dd8a62b 100644
--- a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-
tinyxml2.cpp.patch
+++ b/recipes-support/opencv/opencv/0001-Use-Os-to-compile-
tinyxml2.cpp.patch
@@ -21,10 +21,10 @@ index 56ca9e310..99b7a33f6 100644

  set(filter_srcs
"${CMAKE_CURRENT_LIST_DIR}/src/tinyxml2/tinyxml2.cpp")
  if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
--  ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override")  # GCC
-+  ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override -Os")  # GCC
+-  ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override")  # GCC
++  ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override -Os")  # GCC
  elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
-   ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-
inconsistent-missing-override")  # Clang
+   ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-
inconsistent-missing-override")  # Clang
  endif()
 --
 2.28.0
diff --git a/recipes-support/opencv/opencv_4.5.2.imx.bb b/recipes-
support/opencv/opencv_4.5.2.imx.bb
index a86fd3ecb3da..402eab9bb52d 100644
--- a/recipes-support/opencv/opencv_4.5.2.imx.bb
+++ b/recipes-support/opencv/opencv_4.5.2.imx.bb
@@ -11,8 +11,8 @@ SECTION = "libs"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "
file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

 DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"

@@ -59,7 +59,7 @@ SRC_URI =
"git://github.com/opencv/opencv.git;name=opencv \
            file://0001-Make-ts-module-external.patch \
           
file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
            "
-SRC_URI_append_riscv64 = "
file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
+SRC_URI:append:riscv64 = "
file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"

 S = "${WORKDIR}/git"

@@ -106,7 +106,7 @@ EXTRA_OECMAKE = "-
DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
     ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-
DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -
DENABLE_SSE41=1", "", d)} \
     ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-
DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -
DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \
 "
-EXTRA_OECMAKE_append_x86 = " -DX86=ON"
+EXTRA_OECMAKE:append:x86 = " -DX86=ON"

 PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l
gstreamer samples tbb gphoto2 \
     ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
@@ -158,7 +158,7 @@ PACKAGES +=
"${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '
     ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-
${BPN}', '', d)} \
     ${PN}-apps"

-python populate_packages_prepend () {
+python populate_packages:prepend () {
     cv_libdir = d.expand('${libdir}')
     do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev',
'OpenCV %s development package', extra_depends='${PN}-dev',
allow_links=True)
     do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev',
'OpenCV %s development package', extra_depends='${PN}-dev')
@@ -211,14 +211,14 @@ RDEPENDS_python3-opencv = "python3-core
python3-numpy"

 RDEPENDS_${PN}-apps  = "bash"

-do_compile_prepend() {
+do_compile:prepend() {
     # remove the build host info to improve reproducibility
     if [ -f ${WORKDIR}/build/modules/core/version_string.inc ]; then
         sed -i "s#${WORKDIR}#/workdir#g"
${WORKDIR}/build/modules/core/version_string.inc
     fi
 }

-do_install_append() {
+do_install:append() {
     # Move Python files into correct library folder (for multilib
build)
     if [ "$libdir" != "/usr/lib" -a -d ${D}/usr/lib ]; then
         mv ${D}/usr/lib/* ${D}/${libdir}/
@@ -245,7 +245,7 @@ LIC_FILES_CHKSUM = "
file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
 SRCREV_opencv = "5423d53ae0d116ee5bbe52f8b5503f0cd8586998"
 OPENCV_SRC ?= "git://source.codeaurora.org/external/imx/opencv-
imx.git;protocol=https"
 SRCBRANCH = "4.5.2_imx"
-SRC_URI_remove = "git://github.com/opencv/opencv.git;name=opencv"
+SRC_URI:remove = "git://github.com/opencv/opencv.git;name=opencv"
 SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv"

 # Add opencv_extra
@@ -254,7 +254,7 @@ SRC_URI += " \
    
git://github.com/opencv/opencv_extra.git;destsuffix=extra;name=extra
\
    
file://0001-Add-smaller-version-of-download_models.py.patch;patchdir=../extra
 \
 "
-SRCREV_FORMAT_append = "_extra"
+SRCREV_FORMAT:append = "_extra"

 # Add tiny-dnn
 SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59"
@@ -264,25 +264,25 @@ SRC_URI += " \
     file://OpenCV_DNN_examples.patch \
 "

-PACKAGECONFIG_remove        = "eigen"
-PACKAGECONFIG_append_mx8    = " dnn text"
+PACKAGECONFIG:remove        = "eigen"
+PACKAGECONFIG:append:mx8    = " dnn text"
 PACKAGECONFIG_OPENCL        = ""
-PACKAGECONFIG_OPENCL_mx8    = "opencl"
-PACKAGECONFIG_OPENCL_mx8dxl = ""
-PACKAGECONFIG_OPENCL_mx8mm  = ""
-PACKAGECONFIG_OPENCL_mx8mnlite  = ""
-PACKAGECONFIG_append        = " ${PACKAGECONFIG_OPENCL}"
+PACKAGECONFIG_OPENCL:mx8    = "opencl"
+PACKAGECONFIG_OPENCL:mx8dxl = ""
+PACKAGECONFIG_OPENCL:mx8mm  = ""
+PACKAGECONFIG_OPENCL:mx8mnlite  = ""
+PACKAGECONFIG:append        = " ${PACKAGECONFIG_OPENCL}"

 PACKAGECONFIG[openvx] = "-DWITH_OPENVX=ON -
DOPENVX_ROOT=${STAGING_LIBDIR} -
DOPENVX_LIB_CANDIDATES='OpenVX;OpenVXU',-
DWITH_OPENVX=OFF,virtual/libopenvx,"
 PACKAGECONFIG[qt5] = "-DWITH_QT=ON -
DOE_QMAKE_PATH_EXTERNAL_HOST_BINS=${STAGING_BINDIR_NATIVE} -
DCMAKE_PREFIX_PATH=${STAGING_BINDIR_NATIVE}/cmake,-
DWITH_QT=OFF,qtbase qtbase-native,"
 PACKAGECONFIG[tests-imx] = "-DINSTALL_TESTS=ON -
DOPENCV_TEST_DATA_PATH=${S}/../extra/testdata, -DINSTALL_TESTS=OFF,"

-do_unpack_extra_append() {
+do_unpack_extra:append() {
     mkdir -p ${S}/3rdparty/tinydnn/
     tar xzf ${WORKDIR}/v1.0.0a3.tar.gz -C ${S}/3rdparty/tinydnn/
 }

-do_install_append() {
+do_install:append() {
     ln -sf opencv4/opencv2 ${D}${includedir}/opencv2
     install -d ${D}${datadir}/OpenCV/samples/data
     cp -r ${S}/samples/data/* ${D}${datadir}/OpenCV/samples/data
--
2.31.1






--
Thomas Perrot, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com


Otavio Salvador
 

Em ter., 10 de ago. de 2021 às 13:03, Thomas Perrot
<thomas.perrot@...> escreveu:
On Sat, 2021-08-07 at 08:33 -0300, Otavio Salvador wrote:
We have an onging PR for it; please try it out.
Thanks, I didn't know I had to do PR on github for this layer.

Do you need help speeding up the PR merge regarding the new syntax?
We need help testing.


Best regards,
Thomas

Em sáb., 7 de ago. de 2021 às 04:09, Thomas Perrot
<thomas.perrot@...> escreveu:

Signed-off-by: Thomas Perrot <thomas.perrot@...>
---
classes/fsl-eula-unpack.bbclass | 4 +-
classes/fsl-u-boot-localversion.bbclass | 2 +-
.../fsl-vivante-kernel-driver-handler.bbclass | 2 +-
classes/image_types_fsl.bbclass | 2 +-
classes/imx-boot-container.bbclass | 4 +-
classes/kernel-imximage.bbclass | 4 +-
classes/kernel-itbimage.bbclass | 2 +-
classes/mfgtool-initramfs-image.bbclass | 2 +-
classes/qoriq_build_64bit_kernel.bbclass | 4 +-
classes/use-imx-headers.bbclass | 6 +-
...e-imx-security-controller-firmware.bbclass | 6 +-
conf/layer.conf | 2 +-
conf/machine/imx6qdlsabreauto.conf | 18 +-
conf/machine/imx6qdlsabresd.conf | 18 +-
conf/machine/imx6slevk.conf | 2 +-
conf/machine/imx6sllevk.conf | 2 +-
conf/machine/imx6sxsabreauto.conf | 4 +-
conf/machine/imx6sxsabresd.conf | 4 +-
conf/machine/imx6ulevk.conf | 12 +-
conf/machine/imx6ullevk.conf | 2 +-
conf/machine/imx6ulz-14x14-evk.conf | 2 +-
conf/machine/imx7dsabresd.conf | 2 +-
conf/machine/imx7ulpevk.conf | 4 +-
conf/machine/imx8dxl-lpddr4-evk.conf | 2 +-
conf/machine/imx8mm-ddr4-evk.conf | 2 +-
conf/machine/imx8mm-lpddr4-evk.conf | 2 +-
conf/machine/imx8mn-ddr4-evk.conf | 2 +-
conf/machine/imx8mn-lpddr4-evk.conf | 2 +-
conf/machine/imx8mp-ddr4-evk.conf | 2 +-
conf/machine/imx8mp-lpddr4-evk.conf | 2 +-
conf/machine/imx8mq-evk.conf | 12 +-
conf/machine/imx8qm-mek.conf | 8 +-
conf/machine/imx8qxp-mek.conf | 2 +-
conf/machine/include/imx-base.inc | 360 +++++++++-------
--
conf/machine/include/imx8dxl-evk.inc | 4 +-
conf/machine/include/imx8mm-evk.inc | 26 +-
conf/machine/include/imx8mn-evk.inc | 26 +-
conf/machine/include/imx8mp-evk.inc | 24 +-
conf/machine/include/imx8x-mek.inc | 6 +-
conf/machine/include/qoriq-base.inc | 8 +-
conf/machine/include/utilities.inc | 2 +-
conf/machine/ls1028ardb.conf | 2 +-
conf/machine/ls1043ardb.conf | 2 +-
conf/machine/ls1046afrwy.conf | 2 +-
conf/machine/ls1046ardb.conf | 2 +-
.../wayland/weston-init.bbappend | 2 +-
.../recipes-browser/chromium/chromium-imx.inc | 4 +-
.../clutter/clutter-1.0_%.bbappend | 2 +-
.../recipes-graphics/cogl/cogl-1.0_%.bbappend | 2 +-
.../wayland/weston-init.bbappend | 2 +-
.../glmark2/glmark2_%.bbappend | 8 +-
.../recipes-devtools/luajit/luajit_%.bbappend | 4 +-
.../recipes-dpaa/fmc/fmc_git.bb | 18 +-
.../xserver-common/xserver-common_%.bbappend | 6 +-
.../recipes-qt4/qt4/qt4-imx-support.inc | 12 +-
.../recipes-qt/qt5/qtbase_%.bbappend | 26 +-
.../recipes-qt/qt5/qtwayland_%.bbappend | 8 +-
.../libvirt/libvirt_%.bbappend | 6 +-
recipes-bsp/alsa-state/alsa-state.bbappend | 16 +-
recipes-bsp/atf/qoriq-atf_1.5.bb | 18 +-
recipes-bsp/atf/qoriq-atf_2.3.bb | 2 +-
.../firmware-imx/firmware-imx-8_8.12.bb | 4 +-
recipes-bsp/firmware-imx/firmware-imx_8.12.bb | 2 +-
recipes-bsp/firmware-qca/qca-tools_3.0.2.bb | 4 +-
recipes-bsp/formfactor/formfactor_%.bbappend | 2 +-
recipes-bsp/imx-atf/imx-atf_2.4.bb | 2 +-
recipes-bsp/imx-lib/imx-lib_git.bb | 18 +-
recipes-bsp/imx-mkimage/imx-boot_1.0.bb | 32 +-
recipes-bsp/imx-mkimage/imx-mkimage_git.bb | 6 +-
.../imx-sc-firmware/imx-sc-firmware_1.9.0.bb | 8 +-
recipes-bsp/imx-test/imx-test_git.bb | 28 +-
.../imx-vpu-hantro-daemon_1.0.0.bb | 8 +-
.../imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb | 6 +-
recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb | 2 +-
.../libimxdmabuffer/libimxdmabuffer_1.0.1.bb | 14 +-
recipes-bsp/mc-utils/mc-utils_git.bb | 10 +-
recipes-bsp/rcw/rcw_git.bb | 6 +-
recipes-bsp/u-boot/libubootenv_%.bbappend | 4 +-
.../u-boot/u-boot-fslc-mfgtool_2021.07.bb | 2 +-
recipes-bsp/u-boot/u-boot-fslc_2021.07.bb | 4 +-
.../u-boot/u-boot-imx-mfgtool_2021.04.bb | 2 +-
recipes-bsp/u-boot/u-boot-imx_2021.04.bb | 2 +-
recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb | 18 +-
.../iproute2/iproute2_%.bbappend | 2 +-
.../openssl/openssl_%.bbappend | 6 +-
.../init-ifupdown/init-ifupdown_%.bbappend | 2 +-
recipes-core/udev/udev-rules-qoriq.bb | 6 +-
recipes-devtools/qemu/qemu-qoriq_4.1.0.bb | 8 +-
recipes-devtools/qemu/qemu.inc | 12 +-
recipes-dpaa/fm-ucode/fm-ucode_git.bb | 14 +-
recipes-dpaa2/aiopsl/aiopsl_git.bb | 4 +-
.../management-complex_10.14.1.bb | 8 +-
.../management-complex_10.20.4.bb | 8 +-
.../management-complex_10.24.0.bb | 10 +-
recipes-extended/dpdk/dpdk.inc | 18 +-
recipes-extended/dpdk/dpdk_19.11-20.12.bb | 2 +-
recipes-extended/jailhouse/jailhouse_0.12.bb | 6 +-
recipes-extended/odp/odp-counters_git.bb | 2 +-
recipes-extended/odp/odp-module_git.bb | 2 +-
recipes-extended/odp/odp.inc | 2 +-
recipes-extended/odp/odp_git.bb | 18 +-
recipes-extended/procps/procps_%.bbappend | 2 +-
recipes-extended/testfloat/testfloat_2a.bb | 2 +-
recipes-extended/tsntool/tsntool_git.bb | 2 +-
.../packagegroups/packagegroup-fsl-isp.bb | 2 +-
.../packagegroups/packagegroup-fsl-qca6174.bb | 2 +-
.../packagegroups/packagegroup-fsl-qca9377.bb | 2 +-
recipes-graphics/cairo/cairo_%.bbappend | 4 +-
recipes-graphics/drm/libdrm_2.4.102.imx.bb | 6 +-
recipes-graphics/gtk+/gtk+3_%.bbappend | 4 +-
.../images/core-image-weston.bbappend | 2 +-
.../imx-gpu-apitrace_9.0.0.bb | 8 +-
.../imx-gpu-viv/imx-gpu-viv-6.inc | 44 +--
.../libepoxy/libepoxy_1.5.%.bbappend | 2 +-
recipes-graphics/libsdl2/libsdl2_%.bbappend | 4 +-
recipes-graphics/mesa/mesa-demos_%.bbappend | 16 +-
recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb | 2 +-
recipes-graphics/mesa/mesa-gl_%.bbappend | 2 +-
recipes-graphics/mesa/mesa_%.bbappend | 22 +-
.../vulkan/vulkan-loader_%.bbappend | 2 +-
recipes-graphics/waffle/waffle_%.bbappend | 10 +-
recipes-graphics/wayland/weston-init.bbappend | 26 +-
recipes-graphics/wayland/weston_9.0.0.imx.bb | 26 +-
.../pointercal-xinput_%.bbappend | 2 +-
.../xf86-video-imx-vivante_6.4.0.p0.0.bb | 2 +-
.../xserver-xf86-config_%.bbappend | 2 +-
.../xorg-xserver/xserver-xorg_%.bbappend | 14 +-
recipes-graphics/xwayland/xwayland_%.bbappend | 6 +-
recipes-kernel/ceetm/ceetm_git.bb | 2 +-
.../kernel-modules/kernel-module-ar_git.bb | 2 +-
.../kernel-modules/kernel-module-ipc.inc | 2 +-
.../kernel-module-qcacld-lea.inc | 2 +-
.../linux/linux-fslc-lts-mfgtool_5.10.bb | 2 +-
.../linux/linux-fslc-mfgtool_5.12.bb | 2 +-
.../linux/linux-imx-headers_5.10.bb | 2 +-
.../linux/linux-imx-mfgtool_5.10.bb | 2 +-
recipes-kernel/linux/linux-qoriq.inc | 16 +-
recipes-multimedia/alsa/alsa-lib_%.bbappend | 6 +-
.../gstreamer/gstreamer1.0-libav_1.16.0.bb | 8 +-
.../gstreamer1.0-plugins-bad_1.16.3.imx.bb | 16 +-
.../gstreamer1.0-plugins-base_1.16.%.bbappend | 6 +-
.../gstreamer1.0-plugins-base_1.16.2.imx.bb | 2 +-
.../gstreamer1.0-plugins-good_1.16.%.bbappend | 6 +-
.../gstreamer1.0-plugins-imx_2.0.0.bb | 16 +-
.../gstreamer/imx-gst1.0-plugin_4.5.7.bb | 24 +-
.../imx-codec/imx-codec_4.5.7.bb | 6 +-
.../imx-vpuwrap/imx-vpuwrap_4.5.7.bb | 4 +-
.../libimxvpuapi/libimxvpuapi2_2.2.0.bb | 8 +-
.../pulseaudio/pulseaudio_%.bbappend | 18 +-
.../optee-imx/optee-client_3.10.0.imx.bb | 4 +-
.../optee-imx/optee-os_3.10.0.imx.bb | 30 +-
.../optee-imx/optee-test_3.10.0.imx.bb | 6 +-
.../optee/optee-os-qoriq_3.8.0.bb | 12 +-
.../0001-Use-Os-to-compile-tinyxml2.cpp.patch | 6 +-
recipes-support/opencv/opencv_4.5.2.imx.bb | 36 +-
155 files changed, 762 insertions(+), 762 deletions(-)

diff --git a/classes/fsl-eula-unpack.bbclass b/classes/fsl-eula-
unpack.bbclass
index 498d7826d9cf..5690898c5a43 100644
--- a/classes/fsl-eula-unpack.bbclass
+++ b/classes/fsl-eula-unpack.bbclass
@@ -79,11 +79,11 @@ FSL_EULA_FILE_MD5SUM ?= \

LIC_FILES_CHKSUM_LAYER ?=
"file://${FSL_EULA_FILE};md5=${FSL_EULA_FILE_MD5SUM}"
LIC_FILES_CHKSUM_LAYER[vardepsexclude] += "FSL_EULA_FILE"
-LIC_FILES_CHKSUM_append = " ${LIC_FILES_CHKSUM_LAYER}"
+LIC_FILES_CHKSUM:append = " ${LIC_FILES_CHKSUM_LAYER}"

LIC_FILES_CHKSUM[vardepsexclude] += "FSL_EULA_FILE"

-do_fetch_prepend() {
+do_fetch:prepend() {
if "Proprietary" not in d.getVar("LICENSE"):
bb.fatal("The recipe LICENSE should include Proprietary but
is " + d.getVar("LICENSE") + ".")
}
diff --git a/classes/fsl-u-boot-localversion.bbclass b/classes/fsl-u-
boot-localversion.bbclass
index 617aae1de215..ebde8ea718f2 100644
--- a/classes/fsl-u-boot-localversion.bbclass
+++ b/classes/fsl-u-boot-localversion.bbclass
@@ -14,7 +14,7 @@ LOCALVERSION ??= "+fslc"

UBOOT_LOCALVERSION = "${LOCALVERSION}"

-do_compile_prepend() {
+do_compile:prepend() {
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
head=`cd ${S} ; git rev-parse --verify --short HEAD
2> /dev/null`
diff --git a/classes/fsl-vivante-kernel-driver-handler.bbclass
b/classes/fsl-vivante-kernel-driver-handler.bbclass
index 8ac8a33445d2..7ba597f1963e 100644
--- a/classes/fsl-vivante-kernel-driver-handler.bbclass
+++ b/classes/fsl-vivante-kernel-driver-handler.bbclass
@@ -49,7 +49,7 @@ python fsl_vivante_kernel_driver_handler () {
addhandler fsl_vivante_kernel_driver_handler
fsl_vivante_kernel_driver_handler[eventmask] =
"bb.event.RecipePreFinalise"

-do_configure_append () {
+do_configure:append () {
if [ "${MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT}" = "1" ];
then
config="${B}/.config"

diff --git a/classes/image_types_fsl.bbclass
b/classes/image_types_fsl.bbclass
index c49c51b7a348..d6d8da95fd3b 100644
--- a/classes/image_types_fsl.bbclass
+++ b/classes/image_types_fsl.bbclass
@@ -37,7 +37,7 @@ do_image_wic[depends] += " \
"

# We need to apply a fixup inside of the partition table
-IMAGE_CMD_wic_append_mxs() {
+IMAGE_CMD_wic:append:mxs() {
# Change partition type for mxs processor family
bbnote "Setting partition type to 0x53 as required for mxs'
SoC family."
echo -n S | dd of=$out${IMAGE_NAME_SUFFIX}.wic bs=1 count=1
seek=450 conv=notrunc
diff --git a/classes/imx-boot-container.bbclass b/classes/imx-boot-
container.bbclass
index 41fe9cca739a..33de45c52b28 100644
--- a/classes/imx-boot-container.bbclass
+++ b/classes/imx-boot-container.bbclass
@@ -23,7 +23,7 @@

# Define ATF binary file to be deployed to the U-Boot build folder
ATF_MACHINE_NAME = "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"

# This package aggregates output deployed by other packages, so set
the
# appropriate dependencies for populate binaries task
@@ -76,7 +76,7 @@ addtask do_resolve_and_populate_binaries before
do_compile after do_configure
# This effectively would allow the usage of the same WKS file for
those
# derivatives that are using the boot container from U-Boot and
those
# that are not yet have support for it enabled.
-do_deploy_append() {
+do_deploy:append() {
# Deploy the resulted flash.bin for WIC to pick it up
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
diff --git a/classes/kernel-imximage.bbclass b/classes/kernel-
imximage.bbclass
index 234cc00d3059..ccf7ec53bf45 100644
--- a/classes/kernel-imximage.bbclass
+++ b/classes/kernel-imximage.bbclass
@@ -17,7 +17,7 @@
#
# Copyright 2017 (C) O.S. Systems Software LTDA.

-DEPENDS_append = ' u-boot-mkimage-native'
+DEPENDS:append = ' u-boot-mkimage-native'

IMXIMAGE_ENTRYPOINT ?= "${UBOOT_ENTRYPOINT}"

@@ -55,6 +55,6 @@ gen_imximage() {
done
}

-do_deploy_append() {
+do_deploy:append() {
gen_imximage
}
diff --git a/classes/kernel-itbimage.bbclass b/classes/kernel-
itbimage.bbclass
index 84262879c09b..51a87319ce94 100644
--- a/classes/kernel-itbimage.bbclass
+++ b/classes/kernel-itbimage.bbclass
@@ -459,7 +459,7 @@ addtask assemble_fitimage_initramfs before
do_deploy after do_install


kernel_do_deploy[vardepsexclude] = "DATETIME"
-kernel_do_deploy_append() {
+kernel_do_deploy:append() {
# Update deploy directory
if echo ${KERNEL_IMAGETYPES} | grep -wq "itbImage"; then
cd ${B}
diff --git a/classes/mfgtool-initramfs-image.bbclass
b/classes/mfgtool-initramfs-image.bbclass
index 65028b8faa88..1d4c55131d67 100644
--- a/classes/mfgtool-initramfs-image.bbclass
+++ b/classes/mfgtool-initramfs-image.bbclass
@@ -13,7 +13,7 @@ FEATURE_PACKAGES_extfs = "packagegroup-fsl-mfgtool-
extfs"
FEATURE_PACKAGES_f2fs = "packagegroup-fsl-mfgtool-f2fs"

IMAGE_FSTYPES = "cpio.gz.u-boot"
-IMAGE_FSTYPES_mxs = "cpio.gz.u-boot"
+IMAGE_FSTYPES:mxs = "cpio.gz.u-boot"
IMAGE_ROOTFS_SIZE ?= "8192"

# Filesystems enabled by default
diff --git a/classes/qoriq_build_64bit_kernel.bbclass
b/classes/qoriq_build_64bit_kernel.bbclass
index 93b4d412ff3c..7014be91cc1f 100644
--- a/classes/qoriq_build_64bit_kernel.bbclass
+++ b/classes/qoriq_build_64bit_kernel.bbclass
@@ -6,8 +6,8 @@ python () {
if promote_kernel == "1":
sys_multilib = 'powerpc64' + d.getVar('TARGET_VENDOR',
False) + 'mllib64-' + d.getVar('HOST_OS', False)
tc_options = d.getVar('TOOLCHAIN_OPTIONS', False) +
'/../lib64-' + d.getVar("MACHINE", False)
- d.setVar('DEPENDS_append', ' lib64-gcc-cross-powerpc64
lib64-libgcc')
- d.setVar('PATH_append', ':' +
d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib64-gcc-cross-powerpc64
lib64-libgcc')
+ d.setVar('PATH:append', ':' +
d.getVar('STAGING_BINDIR_NATIVE', False) + '/' + sys_multilib)
d.setVar('KERNEL_CC', d.getVar('CCACHE', False) +
sys_multilib + '-' + 'gcc' + d.getVar('HOST_CC_KERNEL_ARCH', False) +
tc_options)
d.setVar('KERNEL_LD', d.getVar('CCACHE', False) +
sys_multilib + '-' + 'ld.bfd' + d.getVar('HOST_LD_KERNEL_ARCH',
False) + tc_options)
d.setVar('KERNEL_AR', d.getVar('CCACHE', False) +
sys_multilib + '-' + 'ar' + d.getVar('HOST_AR_KERNEL_ARCH', False))
diff --git a/classes/use-imx-headers.bbclass b/classes/use-imx-
headers.bbclass
index fcec68c8b3e0..b03d37413504 100644
--- a/classes/use-imx-headers.bbclass
+++ b/classes/use-imx-headers.bbclass
@@ -13,14 +13,14 @@
#
# Copyright 2018 (C) O.S. Systems Software LTDA.

-DEPENDS_append_imx = " linux-imx-headers"
+DEPENDS:append:imx = " linux-imx-headers"

# Set runtime dependency of -dev for package inheriting this class
to
# linux-imx-headers-dev package. This is required in order to
propagate
# headers into the SDK
RDEPENDS_${PN}-dev += "linux-imx-headers-dev"

-PACKAGE_ARCH_imx ?= "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx ?= "${MACHINE_SOCARCH}"

STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"

@@ -34,4 +34,4 @@ STAGING_INCDIR_IMX = "${STAGING_INCDIR}/imx"
# Typical example here would be imx-vpu-hantro recipe, which
requires NXP
# BSP and is not compatible with mainline.
COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/classes/use-imx-security-controller-firmware.bbclass
b/classes/use-imx-security-controller-firmware.bbclass
index 7c79fc62bbd5..9650059b5066 100644
--- a/classes/use-imx-security-controller-firmware.bbclass
+++ b/classes/use-imx-security-controller-firmware.bbclass
@@ -18,11 +18,11 @@

SECO_FIRMWARE_NAME ?= ""

-SECO_FIRMWARE_NAME_mx8qm = "mx8qmb0-ahab-container.img"
-SECO_FIRMWARE_NAME_mx8qxp = \
+SECO_FIRMWARE_NAME:mx8qm = "mx8qmb0-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8qxp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', 'mx8qxb0-
ahab-container.img', \
'mx8qxc0-
ahab-container.img', d)}"
-SECO_FIRMWARE_NAME_mx8dxl = "mx8dxla1-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8dxl = "mx8dxla1-ahab-container.img"

python () {
if "mx8m" in d.getVar('MACHINEOVERRIDES').split(":"):
diff --git a/conf/layer.conf b/conf/layer.conf
index e07b65ab77f4..4487de9cc445 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -8,7 +8,7 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
BBFILE_COLLECTIONS += "freescale-layer"
BBFILE_PATTERN_freescale-layer := "^${LAYERDIR}/"
BBFILE_PRIORITY_freescale-layer = "5"
-LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott"
+LAYERSERIES_COMPAT_freescale-layer = "gatesgarth hardknott honister"

# Add the Freescale-specific licenses into the metadata
LICENSE_PATH += "${LAYERDIR}/custom-licenses"
diff --git a/conf/machine/imx6qdlsabreauto.conf
b/conf/machine/imx6qdlsabreauto.conf
index b7aec8c257ee..0b5274cb8149 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE = " \
imx6dl-sabreauto.dtb imx6dl-sabreauto-gpmi-weim.dtb imx6dl-
sabreauto-ecspi.dtb \
imx6dl-sabreauto-flexcan1.dtb imx6dl-sabreauto-enetirq.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
imx6qp-sabreauto.dtb \
imx6q-sabreauto.dtb \
imx6dl-sabreauto.dtb \
@@ -34,18 +34,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabreauto_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide unified functionality for DL/Q/QP
SoC
# variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx = "mx6qsabreauto_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx = "mx6qsabreauto_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -54,6 +54,6 @@ WKS_FILE = " \

SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6qdlsabresd.conf
b/conf/machine/imx6qdlsabresd.conf
index b3d09e9397cb..27a2e9d7fa7f 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -35,7 +35,7 @@ KERNEL_DEVICETREE = " \
imx6dl-sabresd-hdcp.dtb \
imx6dl-sabresd-ldo.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = " \
+KERNEL_DEVICETREE:use-mainline-bsp = " \
imx6qp-sabresd.dtb \
imx6q-sabresd.dtb \
imx6dl-sabresd.dtb \
@@ -43,18 +43,18 @@ KERNEL_DEVICETREE_use-mainline-bsp = " \

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide unified functionality for DL/Q/QP
SoC
# variants. Change the defconfig to the targeted SoC variant.
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -63,6 +63,6 @@ WKS_FILE = " \

SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6slevk.conf
b/conf/machine/imx6slevk.conf
index 1e8c403b7cde..8bef21b680b4 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -10,7 +10,7 @@ include conf/machine/include/imx-base.inc
include conf/machine/include/tune-cortexa9.inc

KERNEL_DEVICETREE = "imx6sl-evk.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6sl-evk-btwifi.dtb \
imx6sl-evk-csi.dtb \
imx6sl-evk-ldo.dtb \
diff --git a/conf/machine/imx6sllevk.conf
b/conf/machine/imx6sllevk.conf
index 30b537f18666..6282533aa4f1 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -23,7 +23,7 @@ UBOOT_CONFIG[sd-optee] =
"mx6sllevk_optee_config,sdcard"
UBOOT_CONFIG[epdc] = "mx6sllevk_epdc_config"
UBOOT_CONFIG[mfgtool] = "mx6sllevk_config"

-OPTEE_BIN_EXT_imx6sllevk = "6sllevk"
+OPTEE_BIN_EXT:imx6sllevk = "6sllevk"

SERIAL_CONSOLES = "115200;ttymxc0"

diff --git a/conf/machine/imx6sxsabreauto.conf
b/conf/machine/imx6sxsabreauto.conf
index f7031ccb1134..2354635e2b33 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -10,7 +10,7 @@ require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa9.inc

KERNEL_DEVICETREE = "imx6sx-sabreauto.dtb"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6sx-sabreauto.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6sx-sabreauto.dtb"

UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_SUFFIX = "imx"
@@ -29,6 +29,6 @@ OPTEE_BIN_EXT = "6sxauto"

SERIAL_CONSOLES = "115200;ttymxc3"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += " pci wifi bluetooth"
diff --git a/conf/machine/imx6sxsabresd.conf
b/conf/machine/imx6sxsabresd.conf
index ff7d6ae62d03..fcfcbd5f41c7 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -14,7 +14,7 @@ KERNEL_DEVICETREE = " \
imx6sx-sdb-reva.dtb \
imx6sx-sdb-sai.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6sx-sdb-btwifi.dtb \
imx6sx-sdb-emmc.dtb \
imx6sx-sdb-lcdif1.dtb \
@@ -43,6 +43,6 @@ OPTEE_BIN_EXT = "6sxsdb"

SERIAL_CONSOLES = "115200;ttymxc0"

-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-ath6k"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"

MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
diff --git a/conf/machine/imx6ulevk.conf
b/conf/machine/imx6ulevk.conf
index f7c5d8ae52df..6fd14456fb29 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -21,19 +21,19 @@ KERNEL_DEVICETREE = " \
imx6ul-14x14-evk-emmc.dtb \
imx6ul-14x14-evk-gpmi-weim.dtb \
"
-KERNEL_DEVICETREE_use-mainline-bsp = "imx6ul-14x14-evk.dtb"
+KERNEL_DEVICETREE:use-mainline-bsp = "imx6ul-14x14-evk.dtb"

### u-boot-fslc settings ###

-SPL_BINARY_pn-u-boot-fslc = "SPL"
-UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+SPL_BINARY:pn-u-boot-fslc = "SPL"
+UBOOT_SUFFIX:pn-u-boot-fslc = "img"

### u-boot-imx settings ###

# The u-boot-imx does not provide SPL support
-SPL_BINARY_pn-u-boot-imx = ""
-UBOOT_MAKE_TARGET_pn-u-boot-imx = "u-boot.imx"
-UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+SPL_BINARY:pn-u-boot-imx = ""
+UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx = "imx"

WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
diff --git a/conf/machine/imx6ullevk.conf
b/conf/machine/imx6ullevk.conf
index bd592a20bf43..f5b7309fbe6b 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -15,7 +15,7 @@ KERNEL_DEVICETREE = " \
imx6ull-14x14-evk.dtb \
"

-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ull-14x14-evk-btwifi.dtb \
imx6ull-14x14-evk-btwifi-oob.dtb \
imx6ull-14x14-evk-emmc.dtb \
diff --git a/conf/machine/imx6ulz-14x14-evk.conf
b/conf/machine/imx6ulz-14x14-evk.conf
index 7b794e7ccb13..a27f1ef11277 100644
--- a/conf/machine/imx6ulz-14x14-evk.conf
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -14,7 +14,7 @@ MACHINE_FEATURES += "wifi bluetooth bcm4339
bcm43455"
KERNEL_DEVICETREE = " \
imx6ulz-14x14-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ulz-14x14-evk-btwifi.dtb \
imx6ulz-14x14-evk-emmc.dtb \
imx6ulz-14x14-evk-gpmi-weim.dtb \
diff --git a/conf/machine/imx7dsabresd.conf
b/conf/machine/imx7dsabresd.conf
index e848f294395f..860c8007f711 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -12,7 +12,7 @@ require conf/machine/include/tune-cortexa7.inc
MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"

KERNEL_DEVICETREE = "imx7d-sdb.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx7d-sdb-epdc.dtb \
imx7d-sdb-gpmi-weim.dtb \
imx7d-sdb-m4.dtb \
diff --git a/conf/machine/imx7ulpevk.conf
b/conf/machine/imx7ulpevk.conf
index a587f44b388c..d685a90caca2 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -14,10 +14,10 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
KERNEL_DEVICETREE = " \
imx7ulp-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-mainline-bsp = " \
+KERNEL_DEVICETREE:append:use-mainline-bsp = " \
imx7ulp-com.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx7ulp-evk-ft5416.dtb \
imx7ulp-evk-mipi.dtb \
imx7ulp-evkb.dtb \
diff --git a/conf/machine/imx8dxl-lpddr4-evk.conf
b/conf/machine/imx8dxl-lpddr4-evk.conf
index 1ea5260bb2c9..d44a4732128a 100644
--- a/conf/machine/imx8dxl-lpddr4-evk.conf
+++ b/conf/machine/imx8dxl-lpddr4-evk.conf
@@ -5,7 +5,7 @@

require conf/machine/include/imx8dxl-evk.inc
KERNEL_DEVICETREE_BASENAME = "imx8dxl-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0-tja1100.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-
ddr4-evk.conf
index 3901bb92c3a0..f21cc38148b9 100644
--- a/conf/machine/imx8mm-ddr4-evk.conf
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -7,7 +7,7 @@
require include/imx8mm-evk.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
"
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf
b/conf/machine/imx8mm-lpddr4-evk.conf
index 6007c5404fc1..0a85ed20ac81 100644
--- a/conf/machine/imx8mm-lpddr4-evk.conf
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mm-evk.inc

# The device tree name is implicit for LPDDR4, so can't use MACHINE
here
KERNEL_DEVICETREE_BASENAME = "imx8mm-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
diff --git a/conf/machine/imx8mn-ddr4-evk.conf b/conf/machine/imx8mn-
ddr4-evk.conf
index 442afdbd0547..d004d2aecb3b 100644
--- a/conf/machine/imx8mn-ddr4-evk.conf
+++ b/conf/machine/imx8mn-ddr4-evk.conf
@@ -7,7 +7,7 @@
require include/imx8mn-evk.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_ddr4_evk"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf
b/conf/machine/imx8mn-lpddr4-evk.conf
index 7c58bc19f8a2..2e5e6be9aa21 100644
--- a/conf/machine/imx8mn-lpddr4-evk.conf
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mn-evk.inc

# The device tree name is implicit for LPDDR4, so can't use MACHINE
here
KERNEL_DEVICETREE_BASENAME = "imx8mn-evk"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_evk"
diff --git a/conf/machine/imx8mp-ddr4-evk.conf b/conf/machine/imx8mp-
ddr4-evk.conf
index 09517769f00b..78e0c1608152 100644
--- a/conf/machine/imx8mp-ddr4-evk.conf
+++ b/conf/machine/imx8mp-ddr4-evk.conf
@@ -8,7 +8,7 @@ require include/imx8mp-evk.inc

# FIXME: This machine is not yet supported by u-boot-fslc, so for
now
# use u-boot-imx for mainline.
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-imx"

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"

diff --git a/conf/machine/imx8mp-lpddr4-evk.conf
b/conf/machine/imx8mp-lpddr4-evk.conf
index cf926c08d0a1..76a1f44990fe 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -11,7 +11,7 @@ KERNEL_DEVICETREE_BASENAME = "imx8mp-evk"

# NXP kernel has additional DTB files for various board
configuration and
# derivates. Include them here for NXP BSP only
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mp-ab2.dtb \
freescale/imx8mp-evk-basler.dtb \
freescale/imx8mp-evk-basler-ov2775.dtb \
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-
evk.conf
index 9907ef4b26c2..b6dcd89026bb 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -12,14 +12,14 @@ require conf/machine/include/tune-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci wifi bluetooth optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

-MACHINE_SOCARCH_FILTER_append_mx8mq = " virtual/libopenvg
virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa
virtual/libgl virtual/libg2d"
+MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg
virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa
virtual/libgl virtual/libg2d"

KERNEL_DEVICETREE = " \
freescale/imx8mq-evk.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/imx8mq-evk-ak4497.dtb \
freescale/imx8mq-evk-audio-tdm.dtb \
freescale/imx8mq-evk-dcss-adv7535.dtb \
@@ -40,8 +40,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
freescale/imx8mq-evk-usdhc2-m2.dtb \
"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -77,7 +77,7 @@ IMX_BOOT_SEEK = "33"
OPTEE_BIN_EXT = "8mq"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"

# Use gstreamer 1.16 from meta-freescale
PREFERRED_VERSION_gstreamer1.0 ?= "1.16.imx"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-
mek.conf
index 5ceb6b8bb2f7..655c453f6262 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -11,7 +11,7 @@ require conf/machine/include/tune-cortexa72-
cortexa53.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -55,8 +55,8 @@ UBOOT_MAKE_TARGET = \
SPL_BINARY = \
"${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'spl/u-boot-
spl.bin', \
'', d)}"
-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -86,4 +86,4 @@ IMX_BOOT_SOC_TARGET = "iMX8QM"
BOARD_TYPE = "mek"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-
mek.conf
index 5b29138fc3fd..29412cc35bc9 100644
--- a/conf/machine/imx8qxp-mek.conf
+++ b/conf/machine/imx8qxp-mek.conf
@@ -8,7 +8,7 @@ MACHINEOVERRIDES =. "mx8qxp:"
require include/imx8x-mek.inc

KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dom0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
diff --git a/conf/machine/include/imx-base.inc
b/conf/machine/include/imx-base.inc
index f92a08af1c00..78f815d1310d 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -13,8 +13,8 @@ require conf/machine/include/utilities.inc
IMX_DEFAULT_BSP ?= "mainline"

# Those are SoC families we'd like to force the use of mainline BSP.
-IMX_DEFAULT_BSP_mxs ?= "mainline"
-IMX_DEFAULT_BSP_mx5 ?= "mainline"
+IMX_DEFAULT_BSP:mxs ?= "mainline"
+IMX_DEFAULT_BSP:mx5 ?= "mainline"

MACHINEOVERRIDES =. "use-${IMX_DEFAULT_BSP}-bsp:"

@@ -32,16 +32,16 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# ,----[ imx6qdlsabresd.conf ]
# | ### u-boot-fslc settings ###
# |
-# | SPL_BINARY_pn-u-boot-fslc = "SPL"
-# | UBOOT_MACHINE_pn-u-boot-fslc ?= "mx6sabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-fslc = "img"
+# | SPL_BINARY:pn-u-boot-fslc = "SPL"
+# | UBOOT_MACHINE:pn-u-boot-fslc ?= "mx6sabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-fslc = "img"
# |
# | ### u-boot-imx settings ###
# |
# | # The u-boot-imx does not provide unified functionality for
DL/Q/QP SoC
# | # variants. Change the defconfig to the targeted SoC variant.
-# | UBOOT_MACHINE_pn-u-boot-imx ?= "mx6qsabresd_defconfig"
-# | UBOOT_SUFFIX_pn-u-boot-imx = "imx"
+# | UBOOT_MACHINE:pn-u-boot-imx ?= "mx6qsabresd_defconfig"
+# | UBOOT_SUFFIX:pn-u-boot-imx = "imx"
# `----
#
# As result, the 'UBOOT_SUFFIX' is dynamically set based on the
preferred U-Boot
@@ -61,7 +61,7 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# | UBOOT_MACHINE = "mx53loco_config"
# `----
IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
-UBOOT_SUFFIX ?= "${UBOOT_SUFFIX_pn-${IMX_DEFAULT_BOOTLOADER}}"
+UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}"

# We need to export the original variable to allow it to be used
when generating
# wic based images.
@@ -75,33 +75,33 @@ PREFERRED_PROVIDER_virtual/bootloader ??=
"${IMX_DEFAULT_BOOTLOADER}"

PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-
native"

-UBOOT_ENTRYPOINT_mxs = "0x40008000"
-UBOOT_ENTRYPOINT_mx51 = "0x90008000"
-UBOOT_ENTRYPOINT_mx53 = "0x70008000"
-UBOOT_ENTRYPOINT_mx6 = "0x10008000"
-UBOOT_ENTRYPOINT_mx6sl = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sll = "0x80008000"
-UBOOT_ENTRYPOINT_mx6sx = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ul = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ull = "0x80008000"
-UBOOT_ENTRYPOINT_mx6ulz = "0x80008000"
-UBOOT_ENTRYPOINT_mx7 = "0x80008000"
-UBOOT_ENTRYPOINT_mx7ulp = "0x60008000"
-UBOOT_ENTRYPOINT_mx8m = "0x40480000"
-UBOOT_ENTRYPOINT_vf = "0x80008000"
+UBOOT_ENTRYPOINT:mxs = "0x40008000"
+UBOOT_ENTRYPOINT:mx51 = "0x90008000"
+UBOOT_ENTRYPOINT:mx53 = "0x70008000"
+UBOOT_ENTRYPOINT:mx6 = "0x10008000"
+UBOOT_ENTRYPOINT:mx6sl = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sll = "0x80008000"
+UBOOT_ENTRYPOINT:mx6sx = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ul = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ull = "0x80008000"
+UBOOT_ENTRYPOINT:mx6ulz = "0x80008000"
+UBOOT_ENTRYPOINT:mx7 = "0x80008000"
+UBOOT_ENTRYPOINT:mx7ulp = "0x60008000"
+UBOOT_ENTRYPOINT:mx8m = "0x40480000"
+UBOOT_ENTRYPOINT:vf = "0x80008000"

# Some derivates can utilize the boot container provided by U-Boot,
# below variable sets that those machines which have a imx-boot-
container
# in their MACHINEOVERRIDES can inherit a imx-boot-container class
UBOOT_PROVIDES_BOOT_CONTAINER = "0"
-UBOOT_PROVIDES_BOOT_CONTAINER_imx-boot-container = "1"
+UBOOT_PROVIDES_BOOT_CONTAINER:imx-boot-container = "1"

PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER_DRIVER = "xf86-video-fbdev"
-XSERVER_DRIVER_imxgpu2d = "xf86-video-imx-vivante"
-XSERVER_DRIVER_vf = "xf86-video-modesetting"
-XSERVER_DRIVER_append_mx8 = " xf86-video-modesetting"
-XSERVER_DRIVER_use-mainline-bsp = " \
+XSERVER_DRIVER:imxgpu2d = "xf86-video-imx-vivante"
+XSERVER_DRIVER:vf = "xf86-video-modesetting"
+XSERVER_DRIVER:append:mx8 = " xf86-video-modesetting"
+XSERVER_DRIVER:use-mainline-bsp = " \
xf86-video-fbdev \
xf86-video-modesetting \
xserver-xorg-extension-glx \
@@ -118,41 +118,41 @@ MACHINE_EXTRA_RRECOMMENDS = "kernel-modules"
# ARM_INSTRUCTION_SET = "thumb"
#
# handled by software
-# DEFAULTTUNE_mx6 ?= "cortexa9t-neon"
+# DEFAULTTUNE:mx6 ?= "cortexa9t-neon"
# handled by hardware
-DEFAULTTUNE_mx6 ?= "cortexa9thf-neon"
-DEFAULTTUNE_mx6ul ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ull ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx6ulz ?= "cortexa7thf-neon"
-DEFAULTTUNE_mx7 ?= "cortexa7thf-neon"
-DEFAULTTUNE_vf ?= "cortexa5thf-neon"
+DEFAULTTUNE:mx6 ?= "cortexa9thf-neon"
+DEFAULTTUNE:mx6ul ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ull ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx6ulz ?= "cortexa7thf-neon"
+DEFAULTTUNE:mx7 ?= "cortexa7thf-neon"
+DEFAULTTUNE:vf ?= "cortexa5thf-neon"

-DEFAULTTUNE_mx8m ?= "cortexa53-crypto"
-DEFAULTTUNE_mx8qm ?= "cortexa72-cortexa53-crypto"
-DEFAULTTUNE_mx8qxp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx8m ?= "cortexa53-crypto"
+DEFAULTTUNE:mx8qm ?= "cortexa72-cortexa53-crypto"
+DEFAULTTUNE:mx8qxp ?= "cortexa35-crypto"

INHERIT += "machine-overrides-extender"

-MACHINEOVERRIDES_EXTENDER_mx25 = "use-mainline-bsp"
-MACHINEOVERRIDES_EXTENDER_mx6q =
"imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6dl =
"imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sx =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx6sl =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6sll = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp"
-MACHINEOVERRIDES_EXTENDER_mx6ull = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx6ulz = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7d = "imxfbdev:imxpxp:imxepdc"
-MACHINEOVERRIDES_EXTENDER_mx7ulp =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qm =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mm =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mn = "imxdrm:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mp =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8qxp =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
-MACHINEOVERRIDES_EXTENDER_mx8dxl = "imxfbdev"
-
-MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-mainline-bsp = " \
+MACHINEOVERRIDES_EXTENDER:mx25 = "use-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx6q =
"imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6dl =
"imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sx =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx6sl =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6sll = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ul = "imxfbdev:imxpxp"
+MACHINEOVERRIDES_EXTENDER:mx6ull = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx6ulz = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7d = "imxfbdev:imxpxp:imxepdc"
+MACHINEOVERRIDES_EXTENDER:mx7ulp =
"imxfbdev:imxpxp:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qm =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mm =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mn = "imxdrm:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mp =
"imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8mq = "imxdrm:imxvpu:imxgpu:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8qxp =
"imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d"
+MACHINEOVERRIDES_EXTENDER:mx8dxl = "imxfbdev"
+
+MACHINEOVERRIDES_EXTENDER_FILTER_OUT:use-mainline-bsp = " \
imx \
\
mx6 \
@@ -182,40 +182,40 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT_use-
mainline-bsp = " \

# Sub-architecture support
MACHINE_SOCARCH_SUFFIX ?= ""
-MACHINE_SOCARCH_SUFFIX_mx6q = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6dl = "-mx6qdl"
-MACHINE_SOCARCH_SUFFIX_mx6sx = "-mx6sx"
-MACHINE_SOCARCH_SUFFIX_mx6sl = "-mx6sl"
-MACHINE_SOCARCH_SUFFIX_mx6sll= "-mx6sll"
-MACHINE_SOCARCH_SUFFIX_mx7d = "-mx7d"
-MACHINE_SOCARCH_SUFFIX_mx7ulp = "-mx7ulp"
-MACHINE_SOCARCH_SUFFIX_vf60 = "-vf60"
-MACHINE_SOCARCH_SUFFIX_vf50 = "-vf50"
-MACHINE_SOCARCH_SUFFIX_mx6ul = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ull = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx6ulz = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX_mx8qm = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm"
-MACHINE_SOCARCH_SUFFIX_mx8mn = "-mx8mn"
-MACHINE_SOCARCH_SUFFIX_mx8mp = "-mx8mp"
-MACHINE_SOCARCH_SUFFIX_mx8mq = "-mx8m"
-MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8"
-MACHINE_SOCARCH_SUFFIX_mx8dxl = "-mx8dxl"
-MACHINE_SOCARCH_SUFFIX_use-mainline-bsp = "-imx"
+MACHINE_SOCARCH_SUFFIX:mx6q = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6dl = "-mx6qdl"
+MACHINE_SOCARCH_SUFFIX:mx6sx = "-mx6sx"
+MACHINE_SOCARCH_SUFFIX:mx6sl = "-mx6sl"
+MACHINE_SOCARCH_SUFFIX:mx6sll= "-mx6sll"
+MACHINE_SOCARCH_SUFFIX:mx7d = "-mx7d"
+MACHINE_SOCARCH_SUFFIX:mx7ulp = "-mx7ulp"
+MACHINE_SOCARCH_SUFFIX:vf60 = "-vf60"
+MACHINE_SOCARCH_SUFFIX:vf50 = "-vf50"
+MACHINE_SOCARCH_SUFFIX:mx6ul = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ull = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx6ulz = "-mx6ul"
+MACHINE_SOCARCH_SUFFIX:mx8qm = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8mm = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX:mx8mn = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX:mx8mp = "-mx8mp"
+MACHINE_SOCARCH_SUFFIX:mx8mq = "-mx8m"
+MACHINE_SOCARCH_SUFFIX:mx8qxp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dxl = "-mx8dxl"
+MACHINE_SOCARCH_SUFFIX:use-mainline-bsp = "-imx"

MACHINE_ARCH_FILTER = "virtual/kernel"
-MACHINE_SOCARCH_FILTER_append_imx = " \
+MACHINE_SOCARCH_FILTER:append:imx = " \
alsa-lib \
gstreamer1.0 \
weston \
"
-MACHINE_SOCARCH_FILTER_append_imxvpu = " \
+MACHINE_SOCARCH_FILTER:append:imxvpu = " \
imx-codec \
imx-vpuwrap \
libimxvpuapi \
virtual/imxvpu \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu = " \
virtual/egl \
virtual/mesa \
virtual/libopenvg \
@@ -225,15 +225,15 @@ MACHINE_SOCARCH_FILTER_append_imxgpu = " \
opencv \
pango \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu2d = " \
virtual/libg2d \
"
-MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \
+MACHINE_SOCARCH_FILTER:append:imxgpu3d = " \
virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
-MACHINE_SOCARCH_FILTER_append_use-mainline-bsp = " \
+MACHINE_SOCARCH_FILTER:append:use-mainline-bsp = " \
virtual/egl \
virtual/libopenvg \
virtual/libg2d \
@@ -245,23 +245,23 @@ MACHINE_SOCARCH_FILTER_append_use-mainline-bsp
= " \
pango \
qtbase \
"
-MACHINE_SOCARCH_FILTER_append_mx6q = " \
+MACHINE_SOCARCH_FILTER:append:mx6q = " \
opencl-icd-loader \
opencl-clhpp \
opencl-headers \
"
-MACHINE_SOCARCH_FILTER_append_mx8 = " \
+MACHINE_SOCARCH_FILTER:append:mx8 = " \
opencl-icd-loader \
opencl-clhpp \
opencl-headers \
"
-MACHINE_SOCARCH_FILTER_append_mx8qm = " \
+MACHINE_SOCARCH_FILTER:append:mx8qm = " \
virtual/libopenvx \
"

INHERIT += "fsl-dynamic-packagearch"

-SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \
+SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \
imx-gpu-viv->kernel-module-imx-gpu-viv \
libimxvpuapi->virtual/imxvpu \
imx-vpuwrap->virtual/imxvpu \
@@ -271,44 +271,44 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \

# Firmware
MACHINE_FIRMWARE ?= ""
-MACHINE_FIRMWARE_append_mx25 = " firmware-imx-sdma-imx25"
-MACHINE_FIRMWARE_append_mx27 = " firmware-imx-vpu-imx27"
-MACHINE_FIRMWARE_append_mx7d = " linux-firmware-imx-sdma-imx7d
firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6 = " linux-firmware-imx-sdma-imx6q"
-MACHINE_FIRMWARE_append_mx6q = " firmware-imx-vpu-imx6q"
-MACHINE_FIRMWARE_append_mx6dl = " firmware-imx-vpu-imx6d firmware-
imx-epdc"
-MACHINE_FIRMWARE_append_mx6sl = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6sll = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx6ull = " firmware-imx-epdc"
-MACHINE_FIRMWARE_append_mx53 = " firmware-imx-vpu-imx53 firmware-
imx-sdma-imx53"
-MACHINE_FIRMWARE_append_mx51 = " firmware-imx-vpu-imx51 firmware-
imx-sdma-imx51"
-MACHINE_FIRMWARE_append_mx8mm = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mn = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8mp = " linux-firmware-imx-sdma-imx7d
firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
-MACHINE_FIRMWARE_append_mx8mq = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE_append_mx8qm = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_mx8qxp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE_append_use-mainline-bsp = " linux-firmware-imx-
sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q
firmware-imx-vpu-imx6d"
+MACHINE_FIRMWARE:append:mx25 = " firmware-imx-sdma-imx25"
+MACHINE_FIRMWARE:append:mx27 = " firmware-imx-vpu-imx27"
+MACHINE_FIRMWARE:append:mx7d = " linux-firmware-imx-sdma-imx7d
firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6 = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE:append:mx6q = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE:append:mx6dl = " firmware-imx-vpu-imx6d firmware-
imx-epdc"
+MACHINE_FIRMWARE:append:mx6sl = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sll = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6ull = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx53 = " firmware-imx-vpu-imx53 firmware-
imx-sdma-imx53"
+MACHINE_FIRMWARE:append:mx51 = " firmware-imx-vpu-imx51 firmware-
imx-sdma-imx51"
+MACHINE_FIRMWARE:append:mx8mm = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mn = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mp = " linux-firmware-imx-sdma-imx7d
firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE:append:mx8mq = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8qm = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8qxp = " firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:use-mainline-bsp = " linux-firmware-imx-
sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q
firmware-imx-vpu-imx6d"

MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"

# Extra audio support
IMX_ALSA_EXTRA = ""
-IMX_ALSA_EXTRA_use-nxp-bsp = "imx-alsa-plugins"
-MACHINE_EXTRA_RRECOMMENDS_append_mx6 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx7 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append_mx8 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
+IMX_ALSA_EXTRA:use-nxp-bsp = "imx-alsa-plugins"
+MACHINE_EXTRA_RRECOMMENDS:append:mx6 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx7 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append:mx8 = "
${@bb.utils.contains('DISTRO_FEATURES', 'alsa', '${IMX_ALSA_EXTRA}',
'', d)}"

# Extra Cypress Wi-Fi and BTW firmware (Murata)
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4339', 'linux-firmware-bcm4339', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43430', 'linux-firmware-bcm43430', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43455', 'linux-firmware-bcm43455', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
-MACHINE_FIRMWARE_append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4339', 'linux-firmware-bcm4339', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43430', 'linux-firmware-bcm43430', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm43455', 'linux-firmware-bcm43455', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES',
'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"

# Extra QCA Wi-Fi & BTE driver and firmware
-MACHINE_EXTRA_RRECOMMENDS_append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-
fsl-qca6174', '', d)}"
-MACHINE_EXTRA_RRECOMMENDS_append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-
fsl-qca9377', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-
fsl-qca6174', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = "
${@bb.utils.contains('MACHINE_FEATURES', 'qca9377', 'packagegroup-
fsl-qca9377', '', d)}"

# Extra udev rules
MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
@@ -320,29 +320,29 @@ MACHINE_EXTRA_RRECOMMENDS += " \

# GStreamer 1.0 plugins
MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6dl ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6q ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sl ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6sx ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx6ull ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx7d ?= "gstreamer1.0-plugins-imx-
meta"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mm ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mn ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mp ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8mq ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qm ?= "imx-gst1.0-plugin"
-MACHINE_GSTREAMER_1_0_PLUGIN_mx8qxp ?= "imx-gst1.0-plugin"
-
-PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.16.0"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6dl ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6q ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sl ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6sx ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ul ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx6ull ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx7d ?= "gstreamer1.0-plugins-imx-
meta"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mn ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8mq ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qm ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8qxp ?= "imx-gst1.0-plugin"
+
+PREFERRED_VERSION_gstreamer1.0:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8 ?= "1.16.2.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8 ?= "1.16.3.imx"
+PREFERRED_VERSION_gstreamer1.0-libav:mx8 ?= "1.16.0"

# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
-SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1"
+SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT:imxgpu = "1"

# Handle Vivante kernel driver setting:
# 0 - machine does not have Vivante GPU driver support
@@ -355,59 +355,59 @@ PREFERRED_PROVIDER_virtual/libgl ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa"
PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa"

-PREFERRED_PROVIDER_virtual/egl_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgl_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/egl:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgl:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles1:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles2:imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d"
-PREFERRED_PROVIDER_virtual/libg2d_imxdpu ?= "imx-dpu-g2d"
-PREFERRED_PROVIDER_opencl-clhpp_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-headers_imxgpu ?= "imx-gpu-viv"
-PREFERRED_PROVIDER_opencl-icd-loader_imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libg2d:imxdpu ?= "imx-dpu-g2d"
+PREFERRED_PROVIDER_opencl-clhpp:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-headers:imxgpu ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_opencl-icd-loader:imxgpu ?= "imx-gpu-viv"

-PREFERRED_VERSION_weston_imx ?= "9.0.0.imx"
-PREFERRED_VERSION_weston_use-mainline-bsp = ""
+PREFERRED_VERSION_weston:imx ?= "9.0.0.imx"
+PREFERRED_VERSION_weston:use-mainline-bsp = ""

-PREFERRED_VERSION_wayland-protocols_mx6 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx7 ?= "1.20.imx"
-PREFERRED_VERSION_wayland-protocols_mx8 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx6 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx7 ?= "1.20.imx"
+PREFERRED_VERSION_wayland-protocols:mx8 ?= "1.20.imx"

# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm_mx6 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx7 ?= "2.4.102.imx"
-PREFERRED_VERSION_libdrm_mx8 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx6 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx7 ?= "2.4.102.imx"
+PREFERRED_VERSION_libdrm:mx8 ?= "2.4.102.imx"

# Use i.MX optee Version
-PREFERRED_VERSION_optee-os_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-client_mx8 ?= "3.10.0.imx"
-PREFERRED_VERSION_optee-test_mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-os:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-client:mx8 ?= "3.10.0.imx"
+PREFERRED_VERSION_optee-test:mx8 ?= "3.10.0.imx"

#Use i.MX opencv Version for mx8
-PREFERRED_VERSION_opencv_mx8 ?= "4.5.2.imx"
+PREFERRED_VERSION_opencv:mx8 ?= "4.5.2.imx"

# Handle default kernel
IMX_DEFAULT_KERNEL = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mxs = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx5 = "linux-fslc"
-IMX_DEFAULT_KERNEL_mx6 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx8 = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx7ulp = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6sll = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ul = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_mx6ull = "linux-fslc-imx"
-IMX_DEFAULT_KERNEL_use-mainline-bsp = "linux-fslc"
+IMX_DEFAULT_KERNEL:mxs = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx5 = "linux-fslc"
+IMX_DEFAULT_KERNEL:mx6 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx8 = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx7ulp = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6sll = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ul = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:mx6ull = "linux-fslc-imx"
+IMX_DEFAULT_KERNEL:use-mainline-bsp = "linux-fslc"

PREFERRED_PROVIDER_virtual/kernel ??= "${IMX_DEFAULT_KERNEL}"

SOC_DEFAULT_IMAGE_FSTYPES = "wic.bmap wic.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_mxs = "uboot-mxsboot-sdcard wic.bmap
wic.gz"
+SOC_DEFAULT_IMAGE_FSTYPES:mxs = "uboot-mxsboot-sdcard wic.bmap
wic.gz"

# Do not update fstab file when using wic images
WIC_CREATE_EXTRA_ARGS ?= "--no-fstab-update"

OPTEE_BOOT_IMAGE = "uTee"
-OPTEE_BOOT_IMAGE_aarch64 = ""
+OPTEE_BOOT_IMAGE:aarch64 = ""

IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

@@ -419,7 +419,7 @@ IMAGE_BOOT_FILES ?= " \

### wic default support
OPTEE_WKS_FILE_DEPENDS = "optee-os"
-OPTEE_WKS_FILE_DEPENDS_aarch64 = ""
+OPTEE_WKS_FILE_DEPENDS:aarch64 = ""

WKS_FILE_DEPENDS ?= " \
virtual/bootloader \
@@ -429,8 +429,8 @@ WKS_FILE_DEPENDS ?= " \
${@bb.utils.contains('MACHINE_FEATURES', 'optee',
'${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"

-WKS_FILE_DEPENDS_append_mx8 = " imx-boot"
-WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8 = " imx-boot"
+WKS_FILE_DEPENDS:append:mx8m = " imx-boot"

# We need to restrict the append so we don't add this for other i.MX
SoC's.
# Derivatives that are not yet adopted the usage of boot container
provided
@@ -444,15 +444,15 @@ WKS_FILE_DEPENDS_append_mx8m = " imx-boot"
# deployment task extesion execution defined in imx-boot-container
class.
# For NXP BSP: rename is done in 'imx-boot' recipe at the execution
of compile
# task.
-WKS_FILE_DEPENDS_append_use-mainline-bsp_aarch64 = " \
+WKS_FILE_DEPENDS:append:use-mainline-bsp:aarch64 = " \
${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') ==
'0', 'imx-boot', '')} \
"

SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mx8m ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8m ?= "imx-imx-boot-bootpart.wks.in"

-SOC_DEFAULT_WKS_FILE_mx8 ?= "imx-imx-boot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8 ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mxs ?= "imx-uboot-mxs-bootpart.wks.in"

# Boot container built as a part of mainline U-Boot uses different
WKS
# file as the entire mx8m series, as U-Boot versions later than
2021.04 are
@@ -462,19 +462,19 @@ SOC_DEFAULT_WKS_FILE_mxs ?= "imx-uboot-mxs-
bootpart.wks.in"
# replacement of imx-boot from NXP.
# Creation of those binary files is controlled by
UBOOT_PROVIDES_BOOT_CONTAINER
# variable defined above.
-SOC_DEFAULT_WKS_FILE_imx-boot-container ?= "imx-boot-container-
bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:imx-boot-container ?= "imx-boot-container-
bootpart.wks.in"

WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

SERIAL_CONSOLES = "115200;ttymxc0"
-SERIAL_CONSOLES_mxs = "115200;ttyAMA0"
+SERIAL_CONSOLES:mxs = "115200;ttyAMA0"

KERNEL_IMAGETYPE = "zImage"
-KERNEL_IMAGETYPE_aarch64 = "Image"
+KERNEL_IMAGETYPE:aarch64 = "Image"

MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"

-# Add the ability to specify _imx machines
+# Add the ability to specify :imx machines
MACHINEOVERRIDES =. "imx:"

-HOSTTOOLS_NONFATAL_append_mx8 = " sha384sum"
+HOSTTOOLS_NONFATAL:append:mx8 = " sha384sum"
diff --git a/conf/machine/include/imx8dxl-evk.inc
b/conf/machine/include/imx8dxl-evk.inc
index 2868b4d6c1c3..4e75f8c4bbd3 100644
--- a/conf/machine/include/imx8dxl-evk.inc
+++ b/conf/machine/include/imx8dxl-evk.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
"

diff --git a/conf/machine/include/imx8mm-evk.inc
b/conf/machine/include/imx8mm-evk.inc
index f458c56de9b7..1295de1d8271 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -11,19 +11,19 @@ MACHINE_FEATURES += "pci wifi bluetooth bcm43455
bcm4356"
# and pin it to NXP BSP only
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to
have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359
qca9377"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359
qca9377"

KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -51,18 +51,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Mini EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Mini EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M
Mini EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp =
"console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp =
"root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M
Mini EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp =
"console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp =
"root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"

LOADADDR = ""
UBOOT_SUFFIX = "bin"
@@ -73,4 +73,4 @@ OPTEE_BIN_EXT = "8mm"
TEE_LOAD_ADDR = "0xbe000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mn-evk.inc
b/conf/machine/include/imx8mn-evk.inc
index a0e39857c770..411004000b66 100644
--- a/conf/machine/include/imx8mn-evk.inc
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -8,12 +8,12 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455
bcm4356"
# NXP BSP can consume proprietary jailhouse and Broadcom drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to
have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"

KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
@@ -22,8 +22,8 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -52,18 +52,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Nano EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Nano EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M
Nano EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp =
"console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp =
"root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M
Nano EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp =
"console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp =
"root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"

BOOT_SPACE = "65536"
LOADADDR = ""
@@ -79,4 +79,4 @@ OPTEE_BIN_EXT = "8mn"
TEE_LOAD_ADDR = "0x56000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8mp-evk.inc
b/conf/machine/include/imx8mp-evk.inc
index d070831ff3d3..bc2c038f0076 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -8,7 +8,7 @@ MACHINE_FEATURES += "pci wifi bluetooth"
# NXP BSP can consume proprietary jailhouse and Marvell drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to
have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse mrvl8997"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse mrvl8997"

# Mainline kernel contains only one DTB file for
# imx8mpevk machine
@@ -18,8 +18,8 @@ KERNEL_DEVICETREE = " \

UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"

-IMX_DEFAULT_BOOTLOADER_use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER_use-mainline-bsp = "u-boot-fslc"
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"

UBOOT_SUFFIX = "bin"

@@ -50,18 +50,18 @@ SERIAL_CONSOLES = "115200;ttymxc1"
# to be used to define the boot process.
# We opt-in for Syslinux, since it is designated as a preferred
# distro boot mode according to the U-Boot documentation.
-UBOOT_EXTLINUX_use-mainline-bsp = "1"
-UBOOT_EXTLINUX_LABELS_use-mainline-bsp = "default"
-UBOOT_EXTLINUX_DEFAULT_LABEL_use-mainline-bsp = "i.MX8M Plus EVK"
+UBOOT_EXTLINUX:use-mainline-bsp = "1"
+UBOOT_EXTLINUX_LABELS:use-mainline-bsp = "default"
+UBOOT_EXTLINUX_DEFAULT_LABEL:use-mainline-bsp = "i.MX8M Plus EVK"

-UBOOT_EXTLINUX_MENU_DESCRIPTION_default_use-mainline-bsp = "i.MX8M
Plus EVK"
-UBOOT_EXTLINUX_FDT_default_use-mainline-bsp =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
-UBOOT_EXTLINUX_CONSOLE_default_use-mainline-bsp =
"console=${console}"
-UBOOT_EXTLINUX_ROOT_default_use-mainline-bsp =
"root=/dev/mmcblk1p2"
+UBOOT_EXTLINUX_MENU_DESCRIPTION_default:use-mainline-bsp = "i.MX8M
Plus EVK"
+UBOOT_EXTLINUX_FDT_default:use-mainline-bsp =
"../${KERNEL_DEVICETREE_BASENAME}.dtb"
+UBOOT_EXTLINUX_CONSOLE_default:use-mainline-bsp =
"console=${console}"
+UBOOT_EXTLINUX_ROOT_default:use-mainline-bsp =
"root=/dev/mmcblk1p2"

# Add extlinux.conf to the lis of files, which are deployed onto the
# boot partition
-IMAGE_BOOT_FILES_append_use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"
+IMAGE_BOOT_FILES:append:use-mainline-bsp = "
extlinux.conf;extlinux/extlinux.conf"

LOADADDR = ""
UBOOT_SUFFIX = "bin"
@@ -72,4 +72,4 @@ OPTEE_BIN_EXT = "8mp"
TEE_LOAD_ADDR = "0x56000000"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/imx8x-mek.inc
b/conf/machine/include/imx8x-mek.inc
index 55a28c877e60..0682fbc1be21 100644
--- a/conf/machine/include/imx8x-mek.inc
+++ b/conf/machine/include/imx8x-mek.inc
@@ -6,7 +6,7 @@ require conf/machine/include/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"

MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
-MACHINE_FEATURES_append_use-nxp-bsp = " bcm4359"
+MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"

# Don't include kernels in standard images
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
@@ -23,7 +23,7 @@ USE_VT = "0"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
-KERNEL_DEVICETREE_append_use-nxp-bsp = " \
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsi-rm67191-rpmsg.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-dsp.dtb \
@@ -71,4 +71,4 @@ IMXBOOT_TARGETS = \
BOARD_TYPE = "mek"

# Add additional firmware
-MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k"
diff --git a/conf/machine/include/qoriq-base.inc
b/conf/machine/include/qoriq-base.inc
index 0a42160f0f30..9bc3ee76c756 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -9,8 +9,8 @@ PREFERRED_PROVIDER_nativesdk-u-boot-mkimage ??=
"nativesdk-u-boot-tools"
PREFERRED_VERSION_testfloat = "2a"

SOC_DEFAULT_IMAGE_FSTYPES = "tar.gz"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1043a = " wic.bz2"
-SOC_DEFAULT_IMAGE_FSTYPES_append_ls1046a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1043a = " wic.bz2"
+SOC_DEFAULT_IMAGE_FSTYPES:append:ls1046a = " wic.bz2"
IMAGE_FSTYPES ?= "${SOC_DEFAULT_IMAGE_FSTYPES}"

# Composite Image Layout (in KBytes)
@@ -31,8 +31,8 @@ IMAGE_BOOT_FILES ?= " \
"

SOC_DEFAULT_WKS_FILE ?= ""
-SOC_DEFAULT_WKS_FILE_ls1043a ?= "ls104x-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE_ls1046a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1043a ?= "ls104x-uboot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:ls1046a ?= "ls104x-uboot-bootpart.wks.in"

WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"

diff --git a/conf/machine/include/utilities.inc
b/conf/machine/include/utilities.inc
index f11b588bbe5d..34ce7abcb6d7 100644
--- a/conf/machine/include/utilities.inc
+++ b/conf/machine/include/utilities.inc
@@ -23,6 +23,6 @@ def make_dtb_boot_files(d):

def get_spl_binary(d):
imx_default_bootloader = d.get('IMX_DEFAULT_BOOTLOADER')
- spl_binary = d.getVar("SPL_BINARY_pn-%s" %
imx_default_bootloader)
+ spl_binary = d.getVar("SPL_BINARY:pn-%s" %
imx_default_bootloader)

return spl_binary or ""
diff --git a/conf/machine/ls1028ardb.conf
b/conf/machine/ls1028ardb.conf
index 63f3802f7959..d70a5a619f9b 100644
--- a/conf/machine/ls1028ardb.conf
+++ b/conf/machine/ls1028ardb.conf
@@ -22,7 +22,7 @@ UBOOT_CONFIG[tfa-secure-boot] =
"ls1028ardb_tfa_SECURE_BOOT_defconfig"
UBOOT_CONFIG[tfa] = "ls1028ardb_tfa_defconfig"

KERNEL_DEVICETREE ?= "freescale/fsl-ls1028a-rdb.dtb freescale/fsl-
ls1028a-qds.dtb"
-KERNEL_DEVICETREE_append_use-nxp-bsp = "\
+KERNEL_DEVICETREE:append:use-nxp-bsp = "\
freescale/fsl-ls1028a-rdb-dpdk.dtb \
"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls1043ardb.conf
b/conf/machine/ls1043ardb.conf
index fa8ab61566c7..4ff3c0acb913 100644
--- a/conf/machine/ls1043ardb.conf
+++ b/conf/machine/ls1043ardb.conf
@@ -27,7 +27,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1043a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1043a-rdb-sdk.dtb \
freescale/fsl-ls1043a-rdb-usdpaa.dtb \
freescale/fsl-ls1043a-qds-sdk.dtb \
diff --git a/conf/machine/ls1046afrwy.conf
b/conf/machine/ls1046afrwy.conf
index e6eabc0f36df..eb3c0bb6f4a5 100644
--- a/conf/machine/ls1046afrwy.conf
+++ b/conf/machine/ls1046afrwy.conf
@@ -25,7 +25,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-frwy.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-frwy-sdk.dtb \
freescale/fsl-ls1046a-frwy-usdpaa.dtb \
"
diff --git a/conf/machine/ls1046ardb.conf
b/conf/machine/ls1046ardb.conf
index 97fb1e29e36a..8e815295ad4c 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -26,7 +26,7 @@ KERNEL_DEVICETREE ?= "\
freescale/fsl-ls1046a-qds.dtb \
"
# usdpaa dtb is used for dpdk. TODO: rename in kernel
-KERNEL_DEVICETREE_prepend_use-nxp-bsp = "\
+KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-rdb-sdk.dtb \
freescale/fsl-ls1046a-rdb-usdpaa.dtb \
freescale/fsl-ls1046a-qds-sdk.dtb \
diff --git a/dynamic-layers/aglprofilegraphical/recipes-
graphics/wayland/weston-init.bbappend b/dynamic-
layers/aglprofilegraphical/recipes-graphics/wayland/weston-
init.bbappend
index 10b66c0e4adc..b7bf3298f6ff 100644
--- a/dynamic-layers/aglprofilegraphical/recipes-
graphics/wayland/weston-init.bbappend
+++ b/dynamic-layers/aglprofilegraphical/recipes-
graphics/wayland/weston-init.bbappend
@@ -1,3 +1,3 @@
-do_install_append() {
+do_install:append() {
rm -f ${D}${sysconfdir}/xdg/weston/weston.ini
}
diff --git a/dynamic-layers/chromium-browser-layer/recipes-
browser/chromium/chromium-imx.inc b/dynamic-layers/chromium-browser-
layer/recipes-browser/chromium/chromium-imx.inc
index cdd0f08fde77..7d8065f9db46 100644
--- a/dynamic-layers/chromium-browser-layer/recipes-
browser/chromium/chromium-imx.inc
+++ b/dynamic-layers/chromium-browser-layer/recipes-
browser/chromium/chromium-imx.inc
@@ -1,4 +1,4 @@
-DEPENDS_append_imxvpu = " imx-vpuwrap"
+DEPENDS:append:imxvpu = " imx-vpuwrap"

# Additional imx code and patches are included in the chromium-imx
git repository.
# The code below fetches this repository, copies the extra source
over to the main
@@ -26,7 +26,7 @@ do_patch[prefuncs] =+ "add_chromium_imx_patches"
# * Lost context problems are not known to happen with Vivante GPUs,
# so it is safe to use ignore-lost-context
# * Proprietary codecs need to be enabled for h.264 and MP4 support
-PACKAGECONFIG_append = " ignore-lost-context proprietary-codecs"
+PACKAGECONFIG:append = " ignore-lost-context proprietary-codecs"

copy_chromium_imx_files() {
# sources in src/ are already organized in a manner
diff --git a/dynamic-layers/gnome-layer/recipes-
graphics/clutter/clutter-1.0_%.bbappend b/dynamic-layers/gnome-
layer/recipes-graphics/clutter/clutter-1.0_%.bbappend
index 0b4c4861b6e3..fb90c73e1d1f 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-
1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/clutter/clutter-
1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland
egl', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11', \
'', d), d)} \
diff --git a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-
1.0_%.bbappend b/dynamic-layers/gnome-layer/recipes-
graphics/cogl/cogl-1.0_%.bbappend
index afbaee4323ad..e07d0d54235a 100644
--- a/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-
1.0_%.bbappend
+++ b/dynamic-layers/gnome-layer/recipes-graphics/cogl/cogl-
1.0_%.bbappend
@@ -1,4 +1,4 @@
-PACKAGECONFIG_imxgpu3d ??= " \
+PACKAGECONFIG:imxgpu3d ??= " \
cogl-pango gles2 \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'egl-
wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'egl-x11', \
diff --git a/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend b/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend
index 72d991c7e590..4fc41d058011 100644
--- a/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend
+++ b/dynamic-layers/ivi/recipes-graphics/wayland/weston-
init.bbappend
@@ -1 +1 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/dynamic-layers/openembedded-layer/recipes-
benchmark/glmark2/glmark2_%.bbappend b/dynamic-layers/openembedded-
layer/recipes-benchmark/glmark2/glmark2_%.bbappend
index 2e648ba34914..06661133569f 100644
--- a/dynamic-layers/openembedded-layer/recipes-
benchmark/glmark2/glmark2_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-
benchmark/glmark2/glmark2_%.bbappend
@@ -1,4 +1,4 @@
-# Only _mx8 machine do provide virtual/libgbm required for any drm*
flavour
-DRM-REMOVE_imxgpu = "drm-gl drm-gles2"
-DRM-REMOVE_imxgpu_mx8 = ""
-PACKAGECONFIG_remove = "${DRM-REMOVE}"
+# Only :mx8 machine do provide virtual/libgbm required for any drm*
flavour
+DRM-REMOVE:imxgpu = "drm-gl drm-gles2"
+DRM-REMOVE:imxgpu:mx8 = ""
+PACKAGECONFIG:remove = "${DRM-REMOVE}"
diff --git a/dynamic-layers/openembedded-layer/recipes-
devtools/luajit/luajit_%.bbappend b/dynamic-layers/openembedded-
layer/recipes-devtools/luajit/luajit_%.bbappend
index 8c6138c54aae..d07f8ae14d2c 100644
--- a/dynamic-layers/openembedded-layer/recipes-
devtools/luajit/luajit_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-
devtools/luajit/luajit_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_qoriq-ppc = " file://ppc-fixplt.patch "
+SRC_URI:append:qoriq-ppc = " file://ppc-fixplt.patch "

diff --git a/dynamic-layers/openembedded-layer/recipes-
dpaa/fmc/fmc_git.bb b/dynamic-layers/openembedded-layer/recipes-
dpaa/fmc/fmc_git.bb
index 1793ec06fb4e..9c6be782d6d0 100644
--- a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
@@ -19,15 +19,15 @@ EXTRA_OEMAKE_virtclass-native = 'FMCHOSTMODE=1
FMD_USPACE_HEADER_PATH="${STAGING
TCLAP_HEADER_PATH="${STAGING_INCDIR}" '

EXTRA_OEMAKE_PLATFORM ?= ""
-EXTRA_OEMAKE_PLATFORM_ls1043a = "ls1043"
-EXTRA_OEMAKE_PLATFORM_ls1046a = "ls1046"
-EXTRA_OEMAKE_PLATFORM_ls1088a = "ls1088"
-EXTRA_OEMAKE_PLATFORM_p1020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2020 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p2041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p3041 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p4080 = "p4080ds"
-EXTRA_OEMAKE_PLATFORM_p5040 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:ls1043a = "ls1043"
+EXTRA_OEMAKE_PLATFORM:ls1046a = "ls1046"
+EXTRA_OEMAKE_PLATFORM:ls1088a = "ls1088"
+EXTRA_OEMAKE_PLATFORM:p1020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2020 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p2041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p3041 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p4080 = "p4080ds"
+EXTRA_OEMAKE_PLATFORM:p5040 = "p4080ds"


do_compile () {
diff --git a/dynamic-layers/openembedded-layer/recipes-
graphics/xserver-common/xserver-common_%.bbappend b/dynamic-
layers/openembedded-layer/recipes-graphics/xserver-common/xserver-
common_%.bbappend
index f4f4350489cf..be6945744efa 100644
--- a/dynamic-layers/openembedded-layer/recipes-graphics/xserver-
common/xserver-common_%.bbappend
+++ b/dynamic-layers/openembedded-layer/recipes-graphics/xserver-
common/xserver-common_%.bbappend
@@ -1,8 +1,8 @@
# i.MX extra configuration
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu3d = " \
+SRC_URI:append:imxgpu3d = " \
file://0016-xserver-common-enable-iglx-module.patch \
"

-PACKAGE_ARCH_imxgpu3d = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxgpu3d = "${MACHINE_SOCARCH}"
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-
support.inc b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-
support.inc
index 187681a8b123..8950c151bd77 100644
--- a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/qt4:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/qt4:"

python __anonymous () {
families = ['mx6']
@@ -8,21 +8,21 @@ python __anonymous () {
d.appendVarFlag('do_configure', 'depends', '
virtual/kernel:do_shared_workdir')
}

-SRC_URI_append_imxgpu2d += " \
+SRC_URI:append:imxgpu2d += " \
file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \

file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch
\
file://0003-i.MX6-force-egl-visual-ID-33.patch \
"

-DEPENDS_append_imxgpu2d = " virtual/kernel virtual/libgles2"
-QT_GLFLAGS_imxgpu2d = "-opengl es2 -openvg"
-QT_CONFIG_FLAGS_append_imxgpu2d = " -
I${STAGING_KERNEL_DIR}/include/uapi \
+DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2"
+QT_GLFLAGS:imxgpu2d = "-opengl es2 -openvg"
+QT_CONFIG_FLAGS:append:imxgpu2d = " -
I${STAGING_KERNEL_DIR}/include/uapi \
-I${STAGING_KERNEL_DIR}/include/ \
-DLINUX=1 -DEGL_API_FB=1 \
-DQT_QPA_EXPERIMENTAL_TOUCHEVENT=1"

# The QT_CONFIG_FLAGS can pollute *.la files with -Dxxx
-do_compile_append_mx6 () {
+do_compile:append:mx6 () {
find lib -name "*.la" | xargs -n1 sed -i 's/-D.*=1//g'
}

diff --git a/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtbase_%.bbappend b/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtbase_%.bbappend
index bf3fb66eeb72..0d5897adc7f9 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtbase_%.bbappend
@@ -3,35 +3,35 @@
# Copyright (C) 2016, 2017 O.S. Systems Software LTDA.
# Copyright (C) 2017-2018 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = " \
+SRC_URI:append:imxgpu = " \
file://0014-Add-IMX-GPU-support.patch \

file://0001-egl.prf-Fix-build-error-when-egl-headers-need-platfo.patch
\
"

PACKAGECONFIG_GL_IMX_GPU = ""
-PACKAGECONFIG_GL_IMX_GPU_mx8 = "gbm kms"
+PACKAGECONFIG_GL_IMX_GPU:mx8 = "gbm kms"

-PACKAGECONFIG_GL_imxpxp = "gles2"
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'x11', ' gl', '', d)} \
+PACKAGECONFIG_GL:imxpxp = "gles2"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'x11', ' gl', '', d)} \
${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_imxgpu3d = "gles2 \
+PACKAGECONFIG_GL:imxgpu3d = "gles2 \
${PACKAGECONFIG_GL_IMX_GPU}"
-PACKAGECONFIG_GL_use-mainline-bsp ?= "gles2 gbm kms"
+PACKAGECONFIG_GL:use-mainline-bsp ?= "gles2 gbm kms"

PACKAGECONFIG_PLATFORM = ""
-PACKAGECONFIG_PLATFORM_imxgpu2d = "no-opengl linuxfb"
-PACKAGECONFIG_PLATFORM_imxgpu3d = " \
+PACKAGECONFIG_PLATFORM:imxgpu2d = "no-opengl linuxfb"
+PACKAGECONFIG_PLATFORM:imxgpu3d = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', \
bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
'eglfs', d),
d)}"
-PACKAGECONFIG_PLATFORM_use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
+PACKAGECONFIG_PLATFORM:use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'eglfs', d)}"
PACKAGECONFIG += "${PACKAGECONFIG_PLATFORM}"

PACKAGECONFIG_VULKAN_IMX_GPU = ""
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8 = "vulkan"
-PACKAGECONFIG_VULKAN_IMX_GPU_mx8mm = ""
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8 = "vulkan"
+PACKAGECONFIG_VULKAN_IMX_GPU:mx8mm = ""
PACKAGECONFIG_VULKAN = ""
-PACKAGECONFIG_VULKAN_imxgpu =
"${PACKAGECONFIG_VULKAN_IMX_GPU}"
+PACKAGECONFIG_VULKAN:imxgpu =
"${PACKAGECONFIG_VULKAN_IMX_GPU}"
PACKAGECONFIG += "${@bb.utils.contains('DISTRO_FEATURES', 'vulkan',
'${PACKAGECONFIG_VULKAN}', '', d)}"
diff --git a/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtwayland_%.bbappend b/dynamic-layers/qt5-layer/recipes-
qt/qt5/qtwayland_%.bbappend
index 168db09548ab..c1594e0571b4 100644
--- a/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
+++ b/dynamic-layers/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
@@ -1,8 +1,8 @@
# etnaviv mesa does not have glx
-PACKAGECONFIG_remove_use-mainline-bsp = "xcomposite-glx"
+PACKAGECONFIG:remove:use-mainline-bsp = "xcomposite-glx"

-PACKAGECONFIG_remove_mx6 = "xcomposite-egl xcomposite-glx"
-PACKAGECONFIG_remove_mx7 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx6 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx7 = "xcomposite-egl xcomposite-glx"

# i.MX8 does never provide native x11, so required dependencies are
not met
-PACKAGECONFIG_remove_mx8 = "xcomposite-egl xcomposite-glx"
+PACKAGECONFIG:remove:mx8 = "xcomposite-egl xcomposite-glx"
diff --git a/dynamic-layers/virtualization-layer/recipes-
extended/libvirt/libvirt_%.bbappend b/dynamic-layers/virtualization-
layer/recipes-extended/libvirt/libvirt_%.bbappend
index c7e6d32e4213..7aecf1e466c6 100644
--- a/dynamic-layers/virtualization-layer/recipes-
extended/libvirt/libvirt_%.bbappend
+++ b/dynamic-layers/virtualization-layer/recipes-
extended/libvirt/libvirt_%.bbappend
@@ -1,9 +1,9 @@
PACKAGECONFIG_qoriq-ppc = "qemu yajl lxc test remote macvtap
libvirtd netcf udev python"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_qoriq-ppc = " file://qemu.conf"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:qoriq-ppc = " file://qemu.conf"

-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
install -m 0644 ${WORKDIR}/qemu.conf
${D}${sysconfdir}/libvirt/qemu.conf
}

diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-
bsp/alsa-state/alsa-state.bbappend
index 3a398b2210fc..9433130725d5 100644
--- a/recipes-bsp/alsa-state/alsa-state.bbappend
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -1,10 +1,10 @@
# Append path for freescale layer to include alsa-state asound.conf
-FILESEXTRAPATHS_prepend_mx6 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx7 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_mx8 := "${THISDIR}/${PN}/imx:"
-FILESEXTRAPATHS_prepend_use-mainline-bsp := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx6 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx7 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:mx8 := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend:use-mainline-bsp := "${THISDIR}/${PN}/imx:"

-PACKAGE_ARCH_mx6 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_ARCH}"
-PACKAGE_ARCH_use-mainline-bsp = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_ARCH}"
+PACKAGE_ARCH:use-mainline-bsp = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/atf/qoriq-atf_1.5.bb b/recipes-
bsp/atf/qoriq-atf_1.5.bb
index 192083348ea9..b03a6bcb95f5 100644
--- a/recipes-bsp/atf/qoriq-atf_1.5.bb
+++ b/recipes-bsp/atf/qoriq-atf_1.5.bb
@@ -8,7 +8,7 @@ PV = "1.5+git${SRCPV}"
inherit deploy

DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native
mbedtls rcw cst-native"
-DEPENDS_append_lx2160a = " ddr-phy"
+DEPENDS:append:lx2160a = " ddr-phy"
do_compile[depends] += "u-boot:do_deploy rcw:do_deploy
uefi:do_deploy"

S = "${WORKDIR}/git"
@@ -21,12 +21,12 @@ COMPATIBLE_MACHINE = "(qoriq)"
PACKAGE_ARCH = "${MACHINE_ARCH}"

PLATFORM = "${MACHINE}"
-PLATFORM_ls1088ardb-pb = "ls1088ardb"
+PLATFORM:ls1088ardb-pb = "ls1088ardb"
PLATFORM_ADDITIONAL_TARGET ??= ""
-PLATFORM_ADDITIONAL_TARGET_ls1012afrwy = "ls1012afrwy_512mb"
+PLATFORM_ADDITIONAL_TARGET:ls1012afrwy = "ls1012afrwy_512mb"

RCW_FOLDER ?= "${MACHINE}"
-RCW_FOLDER_ls1088ardb-pb = "ls1088ardb"
+RCW_FOLDER:ls1088ardb-pb = "ls1088ardb"

# requires CROSS_COMPILE set by hand as there is no configure script
export CROSS_COMPILE="${TARGET_PREFIX}"
@@ -56,16 +56,16 @@ PACKAGECONFIG[optee] = ",,optee-os-qoriq"
uboot_boot_sec ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa-secure-boot"
uboot_boot ?= "${DEPLOY_DIR_IMAGE}/u-boot.bin-tfa"
rcw ?= ""
-rcw_ls1012a = "_default"
+rcw:ls1012a = "_default"
rcwsec ?= "_sben"

chassistype ?= "ls2088_1088"
-chassistype_ls1012a = "ls104x_1012"
-chassistype_ls1043a = "ls104x_1012"
-chassistype_ls1046a = "ls104x_1012"
+chassistype:ls1012a = "ls104x_1012"
+chassistype:ls1043a = "ls104x_1012"
+chassistype:ls1046a = "ls104x_1012"

ddrphyopt ?= ""
-ddrphyopt_lx2160a = "fip_ddr_sec"
+ddrphyopt:lx2160a = "fip_ddr_sec"

do_configure[noexec] = "1"

diff --git a/recipes-bsp/atf/qoriq-atf_2.3.bb b/recipes-
bsp/atf/qoriq-atf_2.3.bb
index aed32851bc42..2698bd32a99c 100644
--- a/recipes-bsp/atf/qoriq-atf_2.3.bb
+++ b/recipes-bsp/atf/qoriq-atf_2.3.bb
@@ -47,7 +47,7 @@ do_compile() {
if [ "${NXP_COT}" = "true" -a "${ARM_COT}" = "true" ]; then
bbfatal " \
Error!, Both ARM CoT and NXP CoT are enabled. Only one CoT
is built in a yocto build, \
- Don't add nxp-cot and arm-cot into DISTRO_FEATURES_append at
the same time."
+ Don't add nxp-cot and arm-cot into DISTRO_FEATURES:append at
the same time."
fi

if [ "${NXP_COT}" = "true" ]; then
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
index 650c1cfded61..6ea16d5be67a 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
@@ -19,5 +19,5 @@ addtask deploy after do_install before do_build
PACKAGE_ARCH = "${MACHINE_SOCARCH}"

COMPATIBLE_MACHINE = "(mx8)"
-COMPATIBLE_MACHINE_mx8m = "(^$)"
-COMPATIBLE_MACHINE_mx8x = "(^$)"
+COMPATIBLE_MACHINE:mx8m = "(^$)"
+COMPATIBLE_MACHINE:mx8x = "(^$)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb b/recipes-
bsp/firmware-imx/firmware-imx_8.12.bb
index 8ff4a3216060..34040b287de7 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
@@ -65,7 +65,7 @@ do_install() {
# as second one, and for every file match - it creates a separate
package,
# which contains only files that matches the pattern.
#
-python populate_packages_prepend() {
+python populate_packages:prepend() {
easrcdir =
bb.data.expand('${nonarch_base_libdir}/firmware/imx/easrc', d)
do_split_packages(d, easrcdir, '^easrc-([^_]*).*\.bin',
output_pattern='firmware-imx-easrc-%s',
diff --git a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb b/recipes-
bsp/firmware-qca/qca-tools_3.0.2.bb
index e996c62de957..fd0c2e742265 100644
--- a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
+++ b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
@@ -9,7 +9,7 @@ LICENSE = "Proprietary"
DEPENDS = "libnl zlib"

FCC_TOOLS_FOLDER ?= "qca9377_qca6174_arm32"
-FCC_TOOLS_FOLDER_aarch64 = "qca9377_qca6174_arm64"
+FCC_TOOLS_FOLDER:aarch64 = "qca9377_qca6174_arm64"

do_install() {
install -d ${D}${sbindir}/fcc_tools
@@ -17,4 +17,4 @@ do_install() {
}

COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-bsp/formfactor/formfactor_%.bbappend b/recipes-
bsp/formfactor/formfactor_%.bbappend
index 15f8f4e8c2d4..83cce1310fbb 100644
--- a/recipes-bsp/formfactor/formfactor_%.bbappend
+++ b/recipes-bsp/formfactor/formfactor_%.bbappend
@@ -1,2 +1,2 @@
# Append path for i.MX custom matchconfig
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-
atf/imx-atf_2.4.bb
index f4db002be302..536a0a737cab 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.4.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.4.bb
@@ -27,7 +27,7 @@ EXTRA_OEMAKE += " \

BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee',
'true', 'false', d)}"

-CFLAGS_remove_mx8mq = "-O2"
+CFLAGS:remove:mx8mq = "-O2"

do_compile() {
# Clear LDFLAGS to avoid the option -Wl recognize issue
diff --git a/recipes-bsp/imx-lib/imx-lib_git.bb b/recipes-bsp/imx-
lib/imx-lib_git.bb
index c56190702be9..a296b185da94 100644
--- a/recipes-bsp/imx-lib/imx-lib_git.bb
+++ b/recipes-bsp/imx-lib/imx-lib_git.bb
@@ -20,15 +20,15 @@ S = "${WORKDIR}/git"

inherit use-imx-headers

-PLATFORM_mx6q = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6S"
-PLATFORM_mx6sll = "IMX6UL"
-PLATFORM_mx6sx = "IMX6S"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx6ull = "IMX6UL"
-PLATFORM_mx7d = "IMX7"
-PLATFORM_mx7ulp = "IMX7"
+PLATFORM:mx6q = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6S"
+PLATFORM:mx6sll = "IMX6UL"
+PLATFORM:mx6sx = "IMX6S"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx6ull = "IMX6UL"
+PLATFORM:mx7d = "IMX7"
+PLATFORM:mx7ulp = "IMX7"

PARALLEL_MAKE="-j 1"
EXTRA_OEMAKE = ""
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-
bsp/imx-mkimage/imx-boot_1.0.bb
index 422670bed322..484db354a75b 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
@@ -10,8 +10,8 @@ SECTION = "BSP"
inherit use-imx-security-controller-firmware

IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware imx-seco"
-IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m"
-IMX_EXTRA_FIRMWARE_mx8x = "imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8m = "firmware-imx-8m"
+IMX_EXTRA_FIRMWARE:mx8x = "imx-sc-firmware imx-seco"
DEPENDS += " \
u-boot \
${IMX_EXTRA_FIRMWARE} \
@@ -20,7 +20,7 @@ DEPENDS += " \
"
# xxd is a dependency of fspi_packer.sh
DEPENDS += "xxd-native"
-DEPENDS_append_mx8m = " u-boot-mkimage-native dtc-native"
+DEPENDS:append:mx8m = " u-boot-mkimage-native dtc-native"
BOOT_NAME = "imx-boot"
PROVIDES = "${BOOT_NAME}"

@@ -41,7 +41,7 @@ do_compile[depends] += " \
SC_FIRMWARE_NAME ?= "scfw_tcm.bin"

ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"
+ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES',
'optee', '-optee', '', d)}"

UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
@@ -58,20 +58,20 @@ IMXBOOT_TARGETS ?= \
'flash_multi_cores
flash_dcd', d), d)}"

BOOT_STAGING = "${S}/${IMX_BOOT_SOC_TARGET}"
-BOOT_STAGING_mx8m = "${S}/iMX8M"
-BOOT_STAGING_mx8dx = "${S}/iMX8QX"
+BOOT_STAGING:mx8m = "${S}/iMX8M"
+BOOT_STAGING:mx8dx = "${S}/iMX8QX"

SOC_FAMILY = "INVALID"
-SOC_FAMILY_mx8 = "mx8"
-SOC_FAMILY_mx8m = "mx8m"
-SOC_FAMILY_mx8x = "mx8x"
+SOC_FAMILY:mx8 = "mx8"
+SOC_FAMILY:mx8m = "mx8m"
+SOC_FAMILY:mx8x = "mx8x"

REV_OPTION ?= ""
-REV_OPTION_mx8qxp = \
+REV_OPTION:mx8qxp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', '', \
'REV=C0',
d)}"

-compile_mx8m() {
+compile:mx8m() {
bbnote 8MQ/8MM/8MN/8MP boot binary build
for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
bbnote "Copy ddr_firmware: ${ddr_firmware} from
${DEPLOY_DIR_IMAGE} -> ${BOOT_STAGING} "
@@ -88,7 +88,7 @@ compile_mx8m() {
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME}
${BOOT_STAGING}/bl31.bin
cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME}
${BOOT_STAGING}/u-boot.bin
}
-compile_mx8() {
+compile:mx8() {
bbnote 8QM boot binary build
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME}
${BOOT_STAGING}/scfw_tcm.bin
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME}
${BOOT_STAGING}/bl31.bin
@@ -100,7 +100,7 @@ compile_mx8() {
fi
}

-compile_mx8x() {
+compile:mx8x() {
bbnote 8QX boot binary build
cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME}
${BOOT_STAGING}
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME}
${BOOT_STAGING}/scfw_tcm.bin
@@ -140,7 +140,7 @@ do_install () {
done
}

-deploy_mx8m() {
+deploy:mx8m() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-
${UBOOT_CONFIG} \

${DEPLOYDIR}/${BOOT_TOOLS}
@@ -153,7 +153,7 @@ deploy_mx8m() {
install -m 0755 ${BOOT_STAGING}/mkimage_fit_atf.sh
${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${BOOT_STAGING}/mkimage_uboot
${DEPLOYDIR}/${BOOT_TOOLS}
}
-deploy_mx8() {
+deploy:mx8() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME}
${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME}
${DEPLOYDIR}/${BOOT_TOOLS}
@@ -162,7 +162,7 @@ deploy_mx8() {

${DEPLOYDIR}/${BOOT_TOOLS}
fi
}
-deploy_mx8x() {
+deploy:mx8x() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME}
${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME}
${DEPLOYDIR}/${BOOT_TOOLS}
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-
bsp/imx-mkimage/imx-mkimage_git.bb
index f9943342962e..90e3ebf13ce7 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
@@ -16,12 +16,12 @@ do_compile () {
cd ${S}
oe_runmake clean
oe_runmake bin
- oe_runmake -C iMX8M -f soc.mak mkimage_imx8
+ oe_runmake -C iMX8M -f soc.mak mkimage:imx8
}

do_install () {
cd ${S}
install -d ${D}${bindir}
- install -m 0755 iMX8M/mkimage_imx8 ${D}${bindir}/mkimage_imx8m
- install -m 0755 mkimage_imx8 ${D}${bindir}/mkimage_imx8
+ install -m 0755 iMX8M/mkimage:imx8 ${D}${bindir}/mkimage_imx8m
+ install -m 0755 mkimage:imx8 ${D}${bindir}/mkimage_imx8
}
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
index b8c3d3c3cf4f..6eb65b811aa2 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
@@ -15,10 +15,10 @@ SRC_URI[sha256sum] =
"df0fe17c93e4c2835542d6b1b2557524f034e378b643100cd838225e82

BOARD_TYPE ?= "mek"
SC_FIRMWARE_NAME ?= "INVALID"
-SC_FIRMWARE_NAME_mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME_mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dxl = "mx8dxl-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8dx = "mx8dx-${BOARD_TYPE}-scfw-tcm.bin"

symlink_name = "scfw_tcm.bin"

diff --git a/recipes-bsp/imx-test/imx-test_git.bb b/recipes-bsp/imx-
test/imx-test_git.bb
index 118590d5a93b..ad072c5f4d71 100644
--- a/recipes-bsp/imx-test/imx-test_git.bb
+++ b/recipes-bsp/imx-test/imx-test_git.bb
@@ -9,9 +9,9 @@ LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-
licenses/GPL-2.0-or-later;md5=fed54355545ffd980b814dab4a3b312c"

DEPENDS = "alsa-lib libdrm"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " virtual/imxvpu"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " virtual/imxvpu"

PE = "1"
PV = "7.0+${SRCPV}"
@@ -29,22 +29,22 @@ inherit module-base use-imx-headers
INHIBIT_PACKAGE_STRIP = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"

-PLATFORM_mx6q = "IMX6Q"
-PLATFORM_mx6dl = "IMX6Q"
-PLATFORM_mx6sl = "IMX6SL"
-PLATFORM_mx6sll = "IMX6SL"
-PLATFORM_mx6sx = "IMX6SX"
-PLATFORM_mx6ul = "IMX6UL"
-PLATFORM_mx7d = "IMX7D"
-PLATFORM_mx7ulp = "IMX7D"
-PLATFORM_mx8 = "IMX8"
+PLATFORM:mx6q = "IMX6Q"
+PLATFORM:mx6dl = "IMX6Q"
+PLATFORM:mx6sl = "IMX6SL"
+PLATFORM:mx6sll = "IMX6SL"
+PLATFORM:mx6sx = "IMX6SX"
+PLATFORM:mx6ul = "IMX6UL"
+PLATFORM:mx7d = "IMX7D"
+PLATFORM:mx7ulp = "IMX7D"
+PLATFORM:mx8 = "IMX8"

PARALLEL_MAKE = "-j 1"
EXTRA_OEMAKE += "${PACKAGECONFIG_CONFARGS}"

PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'x11',
'x11', '', d)}"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_mx8m = " swpdm"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:mx8m = " swpdm"

PACKAGECONFIG[x11] = ",,libx11 libxdamage libxrender libxrandr"
PACKAGECONFIG[vpu] = "HAS_VPU=true,HAS_VPU=false,virtual/imxvpu"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-
daemon_1.0.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-
daemon_1.0.0.bb
index 88b9ee0ef218..d362fce3b83e 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "
file://LICENSE.txt;md5=cd8bc2a79509c22fc9c1782a151210b1"

DEPENDS = "imx-vpu-hantro"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

SRC_URI = " \
${FSL_MIRROR}/${BP}.tar.gz \
@@ -13,9 +13,9 @@ SRC_URI = " \
SRC_URI[md5sum] = "65417710ef22214523c37f50f34b6ab2"
SRC_URI[sha256sum] =
"897d174c4c0818f31012d8a60ed51fc83fdfc55fca2d2b0fc24a0db3e9f3b6e8"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

EXTRA_OEMAKE = " \
CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
index 20ac87c747db..d2fc8a1123ac 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
@@ -14,9 +14,9 @@ inherit fsl-eula-unpack use-imx-headers

PARALLEL_MAKE="-j 1"

-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
+PLATFORM:mx8mm = "IMX8MM"
+PLATFORM:mx8mq = "IMX8MQ"
+PLATFORM:mx8mp = "IMX8MP"

EXTRA_OEMAKE = " \
CROSS_COMPILE="${HOST_PREFIX}" \
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb b/recipes-
bsp/isp-imx/isp-imx_4.2.2.13.0.bb
index ad44065ae576..36c3fee3a7a7 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
@@ -42,7 +42,7 @@ EXTRA_OECMAKE += " \
-Wno-dev \
"

-do_configure_prepend() {
+do_configure:prepend() {
export SDKTARGETSYSROOT=${STAGING_DIR_HOST}
}

diff --git a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
index 726b1e16d84e..e57a4273bd36 100644
--- a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
+++ b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.0.1.bb
@@ -26,15 +26,15 @@ EXTRA_OECONF = "--imx-linux-headers-
path=${STAGING_INCDIR_IMX} \
# libg2d. However, that implementation's g2d_alloc() function
# is broken, so we cannot use it.
LIBG2D_PACKAGECONFIG = "g2d"
-LIBG2D_PACKAGECONFIG_imxdpu = ""
+LIBG2D_PACKAGECONFIG:imxdpu = ""

PACKAGECONFIG ?= " "
-PACKAGECONFIG_append_imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
-PACKAGECONFIG_append_imxipu = " ipu"
-PACKAGECONFIG_append_imxpxp = " pxp"
-PACKAGECONFIG_append_mx8m = " ion dwl"
-PACKAGECONFIG_append_mx8qm = " ion"
-PACKAGECONFIG_append_mx8qxp = " ion"
+PACKAGECONFIG:append:imxgpu2d = " ${LIBG2D_PACKAGECONFIG}"
+PACKAGECONFIG:append:imxipu = " ipu"
+PACKAGECONFIG:append:imxpxp = " pxp"
+PACKAGECONFIG:append:mx8m = " ion dwl"
+PACKAGECONFIG:append:mx8qm = " ion"
+PACKAGECONFIG:append:mx8qxp = " ion"

HANTRO_CONF = "--hantro-headers-path=${STAGING_INCDIR}/hantro_dec --
hantro-decoder-version=G2"

diff --git a/recipes-bsp/mc-utils/mc-utils_git.bb b/recipes-bsp/mc-
utils/mc-utils_git.bb
index b3c79b99138e..a2f81fe0dc0a 100644
--- a/recipes-bsp/mc-utils/mc-utils_git.bb
+++ b/recipes-bsp/mc-utils/mc-utils_git.bb
@@ -15,13 +15,13 @@ SRCREV =
"8e0b863693fc2ccbc62a62c79b4e3db6da88c16e"
S = "${WORKDIR}/git"

MC_CFG ?= ""
-MC_CFG_ls1088a = "ls1088a"
-MC_CFG_ls2088a = "ls2088a"
-MC_CFG_lx2160a = "lx2160a"
-MC_CFG_lx2162aqds = "lx2162aqds"
+MC_CFG:ls1088a = "ls1088a"
+MC_CFG:ls2088a = "ls2088a"
+MC_CFG:lx2160a = "lx2160a"
+MC_CFG:lx2162aqds = "lx2162aqds"

MC_FLAVOUR ?= "RDB"
-MC_FLAVOUR_lx2162a = ""
+MC_FLAVOUR:lx2162a = ""

do_compile () {
oe_runmake -C config
diff --git a/recipes-bsp/rcw/rcw_git.bb b/recipes-bsp/rcw/rcw_git.bb
index 693506157188..637035b2064c 100644
--- a/recipes-bsp/rcw/rcw_git.bb
+++ b/recipes-bsp/rcw/rcw_git.bb
@@ -17,9 +17,9 @@ export PYTHON = "${USRBINPATH}/python3"
M="${@d.getVar('MACHINE').replace('-64b','').replace('-
32b','').replace('-${SITEINFO_ENDIANNESS}','')}"

BOARD_TARGETS="${M}"
-BOARD_TARGETS_ls2088ardb="${M} ${M}_rev1.1"
-BOARD_TARGETS_ls1088ardb-pb="ls1088ardb"
-BOARD_TARGETS_lx2160ardb = "${M} ${M}_rev2"
+BOARD_TARGETS:ls2088ardb="${M} ${M}_rev1.1"
+BOARD_TARGETS:ls1088ardb-pb="ls1088ardb"
+BOARD_TARGETS:lx2160ardb = "${M} ${M}_rev2"

do_compile () {
oe_runmake BOARDS="${BOARD_TARGETS}" DESTDIR=${D}/boot/rcw/
diff --git a/recipes-bsp/u-boot/libubootenv_%.bbappend b/recipes-
bsp/u-boot/libubootenv_%.bbappend
index 2633c344739b..619b510e1e1c 100644
--- a/recipes-bsp/u-boot/libubootenv_%.bbappend
+++ b/recipes-bsp/u-boot/libubootenv_%.bbappend
@@ -29,8 +29,8 @@ def fixup_uboot_config_dependency(d):
# | Signed-off-by: Ming Liu <liu.ming50@...>
# | Signed-off-by: Richard Purdie <
richard.purdie@...>
# `----
- ubootmachine = d.getVar("UBOOT_MACHINE_pn-%s" %
imx_default_bootloader)
- ubootconfig = (d.getVar("UBOOT_CONFIG_pn-%s" %
imx_default_bootloader) or "").split()
+ ubootmachine = d.getVar("UBOOT_MACHINE:pn-%s" %
imx_default_bootloader)
+ ubootconfig = (d.getVar("UBOOT_CONFIG:pn-%s" %
imx_default_bootloader) or "").split()

d.setVar("UBOOT_CONFIG", ubootconfig)
d.setVar("UBOOT_MACHINE", ubootmachine)
diff --git a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
index 7f02746b060f..2e79166b279a 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2021.07.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-fslc:"

require u-boot-fslc_${PV}.bb
require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb b/recipes-
bsp/u-boot/u-boot-fslc_2021.07.bb
index 4f97c722dd6f..2e7bde3838f9 100644
--- a/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc_2021.07.bb
@@ -12,7 +12,7 @@ DEPENDS += "bc-native dtc-native python3-
setuptools-native"

# Location known to imx-boot component, where U-Boot artifacts
# should be additionally deployed.
-# See below note above do_deploy_append_mx8m for the purpose of
+# See below note above do_deploy:append:mx8m for the purpose of
# this delopyment location
BOOT_TOOLS = "imx-boot-tools"

@@ -48,7 +48,7 @@ EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC}
${BUILD_CPPFLAGS}" \
# starts to use it - below append would not be necessary.
# Once all mx8m derivatives are migrated to use the 'flash.bin' boot
# container - this append can be dropped completely.
-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
# Deploy the mkimage, u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for
mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]; then
for config in ${UBOOT_MACHINE}; do
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
index 2b296c192909..af5028896a34 100644
--- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP

-FILESEXTRAPATHS_prepend := "${THISDIR}/u-boot-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-imx:"

require u-boot-imx_${PV}.bb
require u-boot-mfgtool.inc
diff --git a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb b/recipes-
bsp/u-boot/u-boot-imx_2021.04.bb
index 6a279a12533d..bb5809e2a179 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
@@ -7,7 +7,7 @@ require u-boot-imx-common_${PV}.inc

PROVIDES += "u-boot"

-do_deploy_append_mx8m() {
+do_deploy:append:mx8m() {
# Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to
generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb b/recipes-
bsp/u-boot/u-boot-qoriq_2020.04.bb
index 57f2780314c8..b6eee1d931a2 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
@@ -19,14 +19,14 @@ SRCREV=
"f46a944f715f284aff1d42c009680ffe0be4058f"

S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
-PV_append = "+fslgit"
+PV:append = "+fslgit"
LOCALVERSION = "+fsl"

INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = "libgcc virtual/${TARGET_PREFIX}gcc bison-native bc-native
swig-native python3-native"
-DEPENDS_append_qoriq-arm64 = " dtc-native"
-DEPENDS_append_qoriq-arm = " dtc-native"
-DEPENDS_append_qoriq-ppc = " boot-format-native"
+DEPENDS:append:qoriq-arm64 = " dtc-native"
+DEPENDS:append:qoriq-arm = " dtc-native"
+DEPENDS:append:qoriq-ppc = " boot-format-native"

python () {
if d.getVar("TCMODE") == "external-fsl":
@@ -41,8 +41,8 @@ python () {
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib32-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' +
d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
- d.setVar('DEPENDS_append', ' lib32-gcc-cross-powerpc lib32-
libgcc')
- d.setVar('PATH_append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib32-gcc-cross-powerpc lib32-
libgcc')
+ d.setVar('PATH:append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/powerpc' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir +
'/lib32-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'powerpc' + sys_multilib + '-
')
elif "fsl-lsch2-32b:" in arch:
@@ -51,8 +51,8 @@ python () {
sys_multilib = d.getVar('TARGET_VENDOR') + 'mllib64-linux'
sys_original = d.getVar('TARGET_VENDOR') + '-' +
d.getVar('TARGET_OS')
workdir = d.getVar('WORKDIR')
- d.setVar('DEPENDS_append', ' lib64-gcc-cross-aarch64 lib64-
libgcc')
- d.setVar('PATH_append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
+ d.setVar('DEPENDS:append', ' lib64-gcc-cross-aarch64 lib64-
libgcc')
+ d.setVar('PATH:append', ':' +
d.getVar('STAGING_BINDIR_NATIVE') + '/aarch64' + sys_multilib)
d.setVar('TOOLCHAIN_OPTIONS', '--sysroot=' + workdir +
'/lib64-recipe-sysroot')
d.setVar("WRAP_TARGET_PREFIX", 'aarch64' + sys_multilib + '-
')
}
@@ -66,7 +66,7 @@ EXTRA_OEMAKE = 'CROSS_COMPILE=${WRAP_TARGET_PREFIX}
CC="${WRAP_TARGET_PREFIX}gcc
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS}
${BUILD_LDFLAGS}"'
EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE}
STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'

-do_compile_append_qoriq() {
+do_compile:append:qoriq() {
unset i j k
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
diff --git a/recipes-connectivity/iproute2/iproute2_%.bbappend
b/recipes-connectivity/iproute2/iproute2_%.bbappend
index 4426eca57f1a..0f9b5a87defd 100644
--- a/recipes-connectivity/iproute2/iproute2_%.bbappend
+++ b/recipes-connectivity/iproute2/iproute2_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append () {
+do_install:append () {
install -d ${D}/usr/include/tc
cp -a ${B}/include ${D}/usr/include
cp -a ${B}/tc/*.h ${D}/usr/include/tc
diff --git a/recipes-connectivity/openssl/openssl_%.bbappend
b/recipes-connectivity/openssl/openssl_%.bbappend
index ce4ff276e633..e88de3618243 100644
--- a/recipes-connectivity/openssl/openssl_%.bbappend
+++ b/recipes-connectivity/openssl/openssl_%.bbappend
@@ -1,8 +1,8 @@
-FILESEXTRAPATHS_append := "${THISDIR}/${PN}-qoriq:"
+FILESEXTRAPATHS:append := "${THISDIR}/${PN}-qoriq:"

-SRC_URI_append_qoriq = " \
+SRC_URI:append:qoriq = " \

file://0001-eng_devcrypto-add-support-for-TLS-algorithms-offload.patch
\

file://0002-eng_devcrypto-add-support-for-TLS1.2-algorithms-offl.patch
\
"

-PACKAGECONFIG_append_qoriq = " cryptodev-linux"
+PACKAGECONFIG:append:qoriq = " cryptodev-linux"
diff --git a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
index 000578744ac2..46dfc1245600 100644
--- a/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
+++ b/recipes-core/init-ifupdown/init-ifupdown_%.bbappend
@@ -1,2 +1,2 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

diff --git a/recipes-core/udev/udev-rules-qoriq.bb b/recipes-
core/udev/udev-rules-qoriq.bb
index c328f4ccbd97..e39da44ce7f3 100644
--- a/recipes-core/udev/udev-rules-qoriq.bb
+++ b/recipes-core/udev/udev-rules-qoriq.bb
@@ -18,11 +18,11 @@ RULE_t1024 = "72-fsl-dpaa-persistent-
networking.rules"
RULE_qoriq-arm64 = "73-fsl-dpaa-persistent-networking.rules \
73-fsl-enetc-networking.rules \
"
-RULE_ls1046a = "73-fsl-dpaa-persistent-networking.rules \
+RULE:ls1046a = "73-fsl-dpaa-persistent-networking.rules \
74-ls1046a-xfi2-networking.rules \
"
-RULE_ls1012a = ""
-RULE_ls2080a = ""
+RULE:ls1012a = ""
+RULE:ls2080a = ""

do_install () {
install -d ${D}${sysconfdir}/udev/rules.d/
diff --git a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb b/recipes-
devtools/qemu/qemu-qoriq_4.1.0.bb
index dfd7fdcfcd20..fe43a5e1883e 100644
--- a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
+++ b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
@@ -32,11 +32,11 @@ python() {

RDEPENDS_${PN}_class-target += "bash"

-EXTRA_OECONF_append_class-target = "
--target-list=${@get_qemu_target_list(d)}"
-EXTRA_OECONF_append_class-target_mipsarcho32 = "
${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-
capstone', '', d)}"
-EXTRA_OECONF_append_class-nativesdk = "
--target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target = "
--target-list=${@get_qemu_target_list(d)}"
+EXTRA_OECONF:append:class-target_mipsarcho32 = "
${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-
capstone', '', d)}"
+EXTRA_OECONF:append:class-nativesdk = "
--target-list=${@get_qemu_target_list(d)}"

-do_install_append_class-nativesdk() {
+do_install:append:class-nativesdk() {
${@bb.utils.contains('PACKAGECONFIG', 'gtk+',
'make_qemu_wrapper', '', d)}
}

diff --git a/recipes-devtools/qemu/qemu.inc b/recipes-
devtools/qemu/qemu.inc
index bf05da9a4c3a..77d067da7ab2 100644
--- a/recipes-devtools/qemu/qemu.inc
+++ b/recipes-devtools/qemu/qemu.inc
@@ -52,7 +52,7 @@ COMPATIBLE_HOST_mipsarchn64 = "null"
# upstream states qemu doesn't work without optimization
DEBUG_BUILD = "0"

-do_install_append() {
+do_install:append() {
# Prevent QA warnings about installed ${localstatedir}/run
if [ -d ${D}${localstatedir}/run ]; then rmdir
${D}${localstatedir}/run; fi
}
@@ -101,9 +101,9 @@ export LIBTOOL="${HOST_SYS}-libtool"

B = "${WORKDIR}/build"

-EXTRA_OECONF_append = " --python=${HOSTTOOLS_DIR}/python3"
+EXTRA_OECONF:append = " --python=${HOSTTOOLS_DIR}/python3"

-do_configure_prepend_class-native() {
+do_configure:prepend:class-native() {
# Append build host pkg-config paths for native target since
the host may provide sdl
BHOST_PKGCONFIG_PATH=$(PATH=/usr/bin:/bin pkg-config --
variable pc_path pkg-config || echo "")
if [ ! -z "$BHOST_PKGCONFIG_PATH" ]; then
@@ -127,7 +127,7 @@ do_install () {
# This will trigger a MMU access fault in the virtual CPU. With this
change,
# the qemu-mips works fine.
# IMPORTANT: This piece needs to be removed once the root cause is
fixed!
-do_install_append() {
+do_install:append() {
if [ -e "${D}/${bindir}/qemu-mips" ]; then
create_wrapper ${D}/${bindir}/qemu-mips \
QEMU_RESERVED_VA=0x0
@@ -147,8 +147,8 @@ make_qemu_wrapper() {
}

# Disable kvm/virgl/mesa on targets that do not support it
-PACKAGECONFIG_remove_darwin = "kvm virglrenderer glx gtk+"
-PACKAGECONFIG_remove_mingw32 = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:darwin = "kvm virglrenderer glx gtk+"
+PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer glx gtk+"

PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-
ng,--disable-virtfs,libcap-ng attr,"
diff --git a/recipes-dpaa/fm-ucode/fm-ucode_git.bb b/recipes-dpaa/fm-
ucode/fm-ucode_git.bb
index 39e4f9d0febb..319a56b33568 100644
--- a/recipes-dpaa/fm-ucode/fm-ucode_git.bb
+++ b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
@@ -13,13 +13,13 @@ SRCREV =
"c275e91392e2adab1ed22f3867b8269ca3c54014"
S = "${WORKDIR}/git"

REGLEX ?= "${MACHINE}"
-REGLEX_t1023 = "t1024"
-REGLEX_t1040 = "t1040"
-REGLEX_t1042 = "t1040"
-REGLEX_b4420 = "b4860"
-REGLEX_t4160 = "t4240"
-REGLEX_ls1043a = "ls1043"
-REGLEX_ls1046a = "ls1046"
+REGLEX:t1023 = "t1024"
+REGLEX:t1040 = "t1040"
+REGLEX:t1042 = "t1040"
+REGLEX:b4420 = "b4860"
+REGLEX:t4160 = "t4240"
+REGLEX:ls1043a = "ls1043"
+REGLEX:ls1046a = "ls1046"

do_install () {
UCODE=`echo ${REGLEX} | sed -e 's,-.*$,,' -e 's,[a-zA-Z]*$,,'`
diff --git a/recipes-dpaa2/aiopsl/aiopsl_git.bb b/recipes-
dpaa2/aiopsl/aiopsl_git.bb
index a1b0028938e5..794d013c5c2b 100644
--- a/recipes-dpaa2/aiopsl/aiopsl_git.bb
+++ b/recipes-dpaa2/aiopsl/aiopsl_git.bb
@@ -13,8 +13,8 @@ SRCREV = "87d83d8e99770325cc7ad9e10965c9959e7cb828"
do_configure[noexec] = "1"
do_compile[noexec] = "1"

-DEMOS_PATH_ls2088a = "LS2088A"
-DEMOS_PATH_ls1088a = "LS1088A"
+DEMOS_PATH:ls2088a = "LS2088A"
+DEMOS_PATH:ls1088a = "LS1088A"

do_install () {
install -d ${D}/usr/aiop/bin
diff --git a/recipes-dpaa2/management-complex/management-
complex_10.14.1.bb b/recipes-dpaa2/management-complex/management-
complex_10.14.1.bb
index ddb305c1a36c..69804e9fa68e 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.14.1.bb
@@ -11,10 +11,10 @@ SRCREV =
"408110ee632f6291545b0b156cd74e7e3b4612cc"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

do_install () {
install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-
complex_10.20.4.bb b/recipes-dpaa2/management-complex/management-
complex_10.20.4.bb
index 3e14a26eabeb..7e0059703738 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.20.4.bb
@@ -11,10 +11,10 @@ SRCREV =
"f73683596a7b72124d67b62e64f3dc2bb36b9321"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx2160a"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx2160a"

do_install () {
install -d ${D}/boot
diff --git a/recipes-dpaa2/management-complex/management-
complex_10.24.0.bb b/recipes-dpaa2/management-complex/management-
complex_10.24.0.bb
index 17049a15e7c8..12c1a4d89dff 100644
--- a/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
+++ b/recipes-dpaa2/management-complex/management-complex_10.24.0.bb
@@ -11,11 +11,11 @@ SRCREV =
"324817697a4c89a9a940fb7dba1b18909913ee20"

S = "${WORKDIR}/git"

-REGLEX_ls2088a = "ls2088a"
-REGLEX_ls2080a = "ls2080a"
-REGLEX_ls1088a = "ls1088a"
-REGLEX_lx2160a = "lx216xa"
-REGLEX_lx2162a = "lx216xa"
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx216xa"
+REGLEX:lx2162a = "lx216xa"

do_install () {
install -d ${D}/boot
diff --git a/recipes-extended/dpdk/dpdk.inc b/recipes-
extended/dpdk/dpdk.inc
index 61c02ae75f90..2d07187d14fd 100644
--- a/recipes-extended/dpdk/dpdk.inc
+++ b/recipes-extended/dpdk/dpdk.inc
@@ -3,23 +3,23 @@ HOMEPAGE = "http://dpdk.org"

RDEPENDS_${PN} += "python3-core"
DEPENDS = "virtual/kernel openssl"
-DEPENDS_append_x86-64 = " numactl"
+DEPENDS:append:x86-64 = " numactl"
do_configure[depends] += "virtual/kernel:do_shared_workdir"

inherit module

COMPATIBLE_HOST = '(aarch64|arm|i.86|x86_64).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
-COMPATIBLE_HOST_armv4 = 'null'
-COMPATIBLE_HOST_armv5 = 'null'
-COMPATIBLE_HOST_armv6 = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
+COMPATIBLE_HOST:armv4 = 'null'
+COMPATIBLE_HOST:armv5 = 'null'
+COMPATIBLE_HOST:armv6 = 'null'

COMPATIBLE_MACHINE = "(imx|qoriq)"

-DPDK_RTE_TARGET_x86-64 = "x86_64-native-linuxapp-gcc"
-DPDK_RTE_TARGET_x86 = "i686-native-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7a = "${ARCH}-armv7a-linuxapp-gcc"
-DPDK_RTE_TARGET_armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:x86-64 = "x86_64-native-linuxapp-gcc"
+DPDK_RTE_TARGET:x86 = "i686-native-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7a = "${ARCH}-armv7a-linuxapp-gcc"
+DPDK_RTE_TARGET:armv7ve = "${ARCH}-armv7a-linuxapp-gcc"
DPDK_RTE_TARGET ?= "${ARCH}-dpaa-linuxapp-gcc"

export RTE_TARGET = "${DPDK_RTE_TARGET}"
diff --git a/recipes-extended/dpdk/dpdk_19.11-20.12.bb b/recipes-
extended/dpdk/dpdk_19.11-20.12.bb
index 426713c2d1d7..37582124b021 100644
--- a/recipes-extended/dpdk/dpdk_19.11-20.12.bb
+++ b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
@@ -13,7 +13,7 @@ SRCREV = "7071c27f6f5aefb57de1cffab3484707b1e82e2b"

include dpdk.inc

-do_install_append () {
+do_install:append () {
# Remove the unneeded dir
rm -rf ${D}/${datadir}/${RTE_TARGET}/app
}
diff --git a/recipes-extended/jailhouse/jailhouse_0.12.bb b/recipes-
extended/jailhouse/jailhouse_0.12.bb
index c49d7f5b194e..a83592d24f1f 100644
--- a/recipes-extended/jailhouse/jailhouse_0.12.bb
+++ b/recipes-extended/jailhouse/jailhouse_0.12.bb
@@ -39,9 +39,9 @@ CELLCONF_DIR ?= "${JH_DATADIR}/configs"
INMATES_DIR ?= "${JH_DATADIR}/inmates"

JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG_arm ?= "${S}/ci/jailhouse-config-banana-pi.h"
+JH_CONFIG:x86 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
+JH_CONFIG:arm ?= "${S}/ci/jailhouse-config-banana-pi.h"

do_configure() {
if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ];
diff --git a/recipes-extended/odp/odp-counters_git.bb b/recipes-
extended/odp/odp-counters_git.bb
index 860dd5faf450..9d88ea43edee 100644
--- a/recipes-extended/odp/odp-counters_git.bb
+++ b/recipes-extended/odp/odp-counters_git.bb
@@ -2,7 +2,7 @@ require odp.inc

inherit module

-do_compile_prepend () {
+do_compile:prepend () {
export KERNEL_PATH="${STAGING_KERNEL_DIR}"
export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
cd ${S}/test/debug/perf_counters
diff --git a/recipes-extended/odp/odp-module_git.bb b/recipes-
extended/odp/odp-module_git.bb
index 46b896547a91..8bcdcd81573d 100644
--- a/recipes-extended/odp/odp-module_git.bb
+++ b/recipes-extended/odp/odp-module_git.bb
@@ -2,7 +2,7 @@ require odp.inc

inherit module

-do_compile_prepend () {
+do_compile:prepend () {
export KERNEL_PATH="${STAGING_KERNEL_DIR}"
export KERNEL_CFG_PATH="${STAGING_KERNEL_BUILDDIR}"
cd ${S}/kern
diff --git a/recipes-extended/odp/odp.inc b/recipes-
extended/odp/odp.inc
index 129f77ae108b..d1e10b0f94d4 100644
--- a/recipes-extended/odp/odp.inc
+++ b/recipes-extended/odp/odp.inc
@@ -6,7 +6,7 @@ SECTION = "console/network"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "
file://LICENSE;md5=ca6103dc75397fb6bec596187d6b7829"

-FILESEXTRAPATHS_prepend := "${THISDIR}/odp:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/odp:"

SRC_URI = " \
git://source.codeaurora.org/external/qoriq/qoriq-
components/odp;nobranch=1 \
diff --git a/recipes-extended/odp/odp_git.bb b/recipes-
extended/odp/odp_git.bb
index 00575e24d5a8..bfe251ed6bda 100644
--- a/recipes-extended/odp/odp_git.bb
+++ b/recipes-extended/odp/odp_git.bb
@@ -9,14 +9,14 @@ DEPENDS = "openssl cunit libxml2"
RDEPENDS_${PN} = "bash libcrypto libssl odp-module odp-counters"

ODP_SOC ?= ""
-ODP_SOC_ls1043ardb = "LS1043"
-ODP_SOC_ls1046ardb = "LS1046"
+ODP_SOC:ls1043ardb = "LS1043"
+ODP_SOC:ls1046ardb = "LS1046"
ODP_PLATFORM ?= "linux-dpaa2"
ODP_BUILD_TYPE ?= "ls2088"
-ODP_BUILD_TYPE_ls1043ardb = "ls1043"
-ODP_BUILD_TYPE_ls1046ardb = "ls1046"
-ODP_BUILD_TYPE_ls2080ardb = "ls2080"
-ODP_BUILD_TYPE_ls1088ardb = "ls1088"
+ODP_BUILD_TYPE:ls1043ardb = "ls1043"
+ODP_BUILD_TYPE:ls1046ardb = "ls1046"
+ODP_BUILD_TYPE:ls2080ardb = "ls2080"
+ODP_BUILD_TYPE:ls1088ardb = "ls1088"

EXTRA_OECONF = "--with-platform=${ODP_PLATFORM} \
--enable-test-vald \
@@ -34,17 +34,17 @@ CFLAGS += "-Wno-format-truncation -Wno-maybe-
uninitialized -Wno-implicit-fallthr

PACKAGECONFIG[perf] = "--enable-test-perf,,,"

-do_configure_prepend () {
+do_configure:prepend () {
export SOC=${ODP_SOC}
${S}/bootstrap
}

-do_compile_prepend () {
+do_compile:prepend () {
export SOC=${ODP_SOC}
export ARCH=${TUNE_ARCH}
}

-do_install_append () {
+do_install:append () {
install -d ${D}${includedir}/odp/kni
install -d ${D}${includedir}/odp/kern
install -d ${D}${includedir}/odp/flib/mc
diff --git a/recipes-extended/procps/procps_%.bbappend b/recipes-
extended/procps/procps_%.bbappend
index face0ccc0f61..43fb349b8de2 100644
--- a/recipes-extended/procps/procps_%.bbappend
+++ b/recipes-extended/procps/procps_%.bbappend
@@ -1,4 +1,4 @@
-do_install_append_qoriq-ppc() {
+do_install:append:qoriq-ppc() {
for keyword in \
net.ipv4.conf.default.rp_filter \
net.ipv4.conf.all.rp_filter \
diff --git a/recipes-extended/testfloat/testfloat_2a.bb b/recipes-
extended/testfloat/testfloat_2a.bb
index 800cef3d172e..6777249f39e3 100644
--- a/recipes-extended/testfloat/testfloat_2a.bb
+++ b/recipes-extended/testfloat/testfloat_2a.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "
file://testfloat/testfloat.txt;beginline=87;endline=95;md5=b
SRC_URI = "
http://www.jhauser.us/arithmetic/TestFloat-2a.tar.Z;name=TestFloat \

http://www.jhauser.us/arithmetic/SoftFloat-2b.tar.Z;name=SoftFloat \
"
-SRC_URI_append_qoriq-ppc = " file://SoftFloat-powerpc-1.patch \
+SRC_URI:append:qoriq-ppc = " file://SoftFloat-powerpc-1.patch \

file://TestFloat-powerpc-E500v2-SPE-1.patch \

file://Yocto-replace-COMPILE_PREFIX-gcc.patch \
"
diff --git a/recipes-extended/tsntool/tsntool_git.bb b/recipes-
extended/tsntool/tsntool_git.bb
index 8ef79d27c8bd..ea452f7c82f3 100644
--- a/recipes-extended/tsntool/tsntool_git.bb
+++ b/recipes-extended/tsntool/tsntool_git.bb
@@ -14,7 +14,7 @@ S = "${WORKDIR}/git"

do_configure[depends] += "virtual/kernel:do_shared_workdir"

-do_compile_prepend() {
+do_compile:prepend() {
mkdir -p ${S}/include/linux
cp -r ${STAGING_KERNEL_DIR}/include/uapi/linux/tsn.h
${S}/include/linux
}
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
index 4ad257ee9364..9229e26683a6 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-isp.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "Add packages for ISP build"
inherit packagegroup

ISP_PKGS ?= ""
-ISP_PKGS_mx8mp = " \
+ISP_PKGS:mx8mp = " \
isp-imx \
basler-camera \
basler-camera-dev \
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
index aeba762386f3..acadd526bc61 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
@@ -10,4 +10,4 @@ RDEPENDS_${PN} = " \
"

COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
index 43df5a70e670..233e3d00fa92 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
@@ -9,4 +9,4 @@ RDEPENDS_${PN} = " \
firmware-qca9377 \
"
COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-graphics/cairo/cairo_%.bbappend b/recipes-
graphics/cairo/cairo_%.bbappend
index 5b1562ab8b4d..2c73c7f32f25 100644
--- a/recipes-graphics/cairo/cairo_%.bbappend
+++ b/recipes-graphics/cairo/cairo_%.bbappend
@@ -1,2 +1,2 @@
-PACKAGECONFIG_append_imxgpu3d = " egl glesv2"
-PACKAGECONFIG_remove_imxgpu3d = "opengl"
+PACKAGECONFIG:append:imxgpu3d = " egl glesv2"
+PACKAGECONFIG:remove:imxgpu3d = "opengl"
diff --git a/recipes-graphics/drm/libdrm_2.4.102.imx.bb b/recipes-
graphics/drm/libdrm_2.4.102.imx.bb
index 6935b7822b63..371d2e1775d8 100644
--- a/recipes-graphics/drm/libdrm_2.4.102.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
@@ -64,10 +64,10 @@ FILES_${PN}-etnaviv =
"${libdir}/libdrm_etnaviv.so.*"

BBCLASSEXTEND = "native nativesdk"

-PACKAGES_prepend_imxgpu = "${PN}-vivante "
-RRECOMMENDS_${PN}-drivers_append_imxgpu = " ${PN}-vivante"
+PACKAGES:prepend:imxgpu = "${PN}-vivante "
+RRECOMMENDS_${PN}-drivers:append:imxgpu = " ${PN}-vivante"
FILES_${PN}-vivante = "${libdir}/libdrm_vivante.so.*"
-PACKAGECONFIG_append_imxgpu = " vivante"
+PACKAGECONFIG:append:imxgpu = " vivante"
PACKAGECONFIG[vivante] = "-Dvivante=true,-Dvivante=false"

PACKAGE_ARCH = "${MACHINE_SOCARCH}"
diff --git a/recipes-graphics/gtk+/gtk+3_%.bbappend b/recipes-
graphics/gtk+/gtk+3_%.bbappend
index be2bac75fbf8..2f108a274b0f 100644
--- a/recipes-graphics/gtk+/gtk+3_%.bbappend
+++ b/recipes-graphics/gtk+/gtk+3_%.bbappend
@@ -1,5 +1,5 @@
-DEPENDS_append_imxgpu2d = " virtual/egl"
+DEPENDS:append:imxgpu2d = " virtual/egl"

-PACKAGECONFIG_remove_imxgpu2d = " \
+PACKAGECONFIG:remove:imxgpu2d = " \
${@bb.utils.contains("DISTRO_FEATURES", "wayland", "x11", "",
d)} \
"
diff --git a/recipes-graphics/images/core-image-weston.bbappend
b/recipes-graphics/images/core-image-weston.bbappend
index 2a3cde69a8cd..77d2fe747801 100644
--- a/recipes-graphics/images/core-image-weston.bbappend
+++ b/recipes-graphics/images/core-image-weston.bbappend
@@ -1,3 +1,3 @@
# FIXME: i.MX6SL cannot use mesa for Graphics and it lacks GL
support,
# so for now we skip it.
-CORE_IMAGE_BASE_INSTALL_remove_mx6sl = "clutter-1.0-examples"
+CORE_IMAGE_BASE_INSTALL:remove:mx6sl = "clutter-1.0-examples"
diff --git a/recipes-graphics/imx-gpu-apitrace/imx-gpu-
apitrace_9.0.0.bb b/recipes-graphics/imx-gpu-apitrace/imx-gpu-
apitrace_9.0.0.bb
index 65ce9cd567b4..d0ac10bdb9a2 100644
--- a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
+++ b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
@@ -11,16 +11,16 @@ S = "${WORKDIR}/git"

inherit cmake pkgconfig perlnative python3native

-PACKAGECONFIG_BACKEND_mx6 = " \
+PACKAGECONFIG_BACKEND:mx6 = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'waffle', \
bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', \
'', d),
d)} \
"
-PACKAGECONFIG_BACKEND_mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
-PACKAGECONFIG_BACKEND_mx8 = "waffle"
+PACKAGECONFIG_BACKEND:mx7 = "${PACKAGECONFIG_BACKEND_mx6}"
+PACKAGECONFIG_BACKEND:mx8 = "waffle"

PACKAGECONFIG_GPU2D = ""
-PACKAGECONFIG_GPU2D_imxgpu2d = "vivante"
+PACKAGECONFIG_GPU2D:imxgpu2d = "vivante"

PACKAGECONFIG ??= " \
egl \
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
index 91a5542bd7a4..4c732ff2feb0 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -17,8 +17,8 @@ DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'libxcb
libxshmfence libxxf86vm', \
'', d)} \
"
-DEPENDS_append_imxdrm = " libdrm wayland"
-DEPENDS_append_mx8 = " patchelf-native"
+DEPENDS:append:imxdrm = " libdrm wayland"
+DEPENDS:append:mx8 = " patchelf-native"

# imx-gpu-viv does not provide everything it needs to for
virtual/libgl
# on x11 backend or on Wayland backend with XWayland support.
@@ -26,19 +26,19 @@ DEPENDS_append_mx8 = " patchelf-native"
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa',
'', d)}"

EXTRA_PROVIDES = ""
-EXTRA_PROVIDES_append_imxgpu3d = " \
+EXTRA_PROVIDES:append:imxgpu3d = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland',
'virtual/libgl', \
bb.utils.contains('DISTRO_FEATURES', 'x11',
'virtual/libgl', \
'', d), d)} \
virtual/libgles1 \
virtual/libgles2 \
"
-EXTRA_PROVIDES_append_mx8 = " \
+EXTRA_PROVIDES:append:mx8 = " \
virtual/libgbm \
"
PROVIDES_OPENVX = ""
-PROVIDES_OPENVX_mx8 = "virtual/libopenvx"
-PROVIDES_OPENVX_mx8mm = ""
+PROVIDES_OPENVX:mx8 = "virtual/libopenvx"
+PROVIDES_OPENVX:mx8mm = ""
PROVIDES += " \
imx-gpu-viv \
libgal-imx \
@@ -52,13 +52,13 @@ PROVIDES += " \
${EXTRA_PROVIDES} \
"

-RPROVIDES_${PN}_imxgpu3d += "imx-gpu-viv"
+RPROVIDES_${PN}:imxgpu3d += "imx-gpu-viv"

PE = "1"

inherit fsl-eula-unpack features_check

-REQUIRED_DISTRO_FEATURES_mx8 = "wayland"
+REQUIRED_DISTRO_FEATURES:mx8 = "wayland"

SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"

@@ -69,7 +69,7 @@ PACKAGECONFIG[valgrind] = ""

# Note : If you add a package here, to prevent a naming conflict see
the python_anonymous() futher below
IMX_PACKAGES_GBM = ""
-IMX_PACKAGES_GBM_mx8 = "libgbm-imx libgbm-imx-dev"
+IMX_PACKAGES_GBM:mx8 = "libgbm-imx libgbm-imx-dev"
PACKAGES =+ "libclc-imx libclc-imx-dev \
libgl-imx libgl-imx-dev \
libgles1-imx libgles1-imx-dev \
@@ -140,21 +140,21 @@ python __anonymous() {
}

IS_MX6SL = "0"
-IS_MX6SL_mx6sl = "1"
+IS_MX6SL:mx6sl = "1"

IS_MX8 = "0"
-IS_MX8_mx8 = "1"
+IS_MX8:mx8 = "1"

PACKAGE_FP_TYPE = "hardfp"

HAS_GBM = "false"
-HAS_GBM_mx8 = "true"
+HAS_GBM:mx8 = "true"

GLES3_HEADER_REMOVALS = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8m = "gl32.h"
-GLES3_HEADER_REMOVALS_mx8mm = "gl31.h gl32.h"
-GLES3_HEADER_REMOVALS_mx8qxp = ""
-GLES3_HEADER_REMOVALS_mx8qm = ""
+GLES3_HEADER_REMOVALS:mx8m = "gl32.h"
+GLES3_HEADER_REMOVALS:mx8mm = "gl31.h gl32.h"
+GLES3_HEADER_REMOVALS:mx8qxp = ""
+GLES3_HEADER_REMOVALS:mx8qm = ""

do_install () {
install -d ${D}${libdir}
@@ -291,9 +291,9 @@ INSANE_SKIP_libgal-imx += "build-deps"

FILES_libvsc-imx = "${libdir}/libVSC${SOLIBS}"

-FILES_libgbm-imx_mx8 = "${libdir}/libgbm*${REALSOLIBS}
${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
-FILES_libgbm-imx-dev_mx8 = "${libdir}/pkgconfig/gbm.pc
${includedir}/gbm.h"
-RDEPENDS_libgbm-imx_append_mx8 = " libdrm"
+FILES_libgbm-imx:mx8 = "${libdir}/libgbm*${REALSOLIBS}
${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
+FILES_libgbm-imx-dev:mx8 = "${libdir}/pkgconfig/gbm.pc
${includedir}/gbm.h"
+RDEPENDS_libgbm-imx:append:mx8 = " libdrm"
INSANE_SKIP_libgbm-imx += "dev-so"

FILES_libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS}
${libdir}/libSPIRV_viv${SOLIBS}"
@@ -358,10 +358,10 @@ INSANE_SKIP_libgc-wayland-protocol-imx += "dev-
so"
FILES_libgc-wayland-protocol-imx =
"${libdir}/libgc_wayland_protocol${REALSOLIBS}
${libdir}/libgc_wayland_protocol${SOLIBS}"
FILES_libgc-wayland-protocol-imx-dev =
"${libdir}/libgc_wayland_protocol${SOLIBSDEV}
${libdir}/pkgconfig/gc_wayland_protocol.pc"

-FILES_imx-gpu-viv-tools = "${bindir}/gmem_info"
+FILES:imx-gpu-viv-tools = "${bindir}/gmem_info"

-FILES_imx-gpu-viv-demos = "/opt"
-INSANE_SKIP_imx-gpu-viv-demos += "rpaths dev-deps"
+FILES:imx-gpu-viv-demos = "/opt"
+INSANE_SKIP:imx-gpu-viv-demos += "rpaths dev-deps"

FILES_libnn-imx = "${libdir}/libNN*${SOLIBS}
${libdir}/libnn*${SOLIBS} ${libdir}/libneuralnetworks${SOLIBS}"
FILES_libnn-imx-dev = "${includedir}/nnrt"
diff --git a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
index 5b82b3f4639b..71baa53d82ef 100644
--- a/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
+++ b/recipes-graphics/libepoxy/libepoxy_1.5.%.bbappend
@@ -1,5 +1,5 @@
# Append EGL_CFLAGS to CFLAGS
-CFLAGS_append_imxgpu = " \
+CFLAGS:append:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-
DEGL_API_FB', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-
DWL_EGL_PLATFORM', '', d)} \
"
diff --git a/recipes-graphics/libsdl2/libsdl2_%.bbappend b/recipes-
graphics/libsdl2/libsdl2_%.bbappend
index 303ea63a7cf2..af9c97bb6e97 100644
--- a/recipes-graphics/libsdl2/libsdl2_%.bbappend
+++ b/recipes-graphics/libsdl2/libsdl2_%.bbappend
@@ -1,8 +1,8 @@
# what vivante driver does libsdl2 mean? Anyway it fails with
missing functions as
# VIVANTE_Create VIVANTE_GLES_GetProcAddress
VIVANTE_GLES_UnloadLibrary ...
-EXTRA_OECONF_append_imxgpu2d = " --disable-video-vivante"
+EXTRA_OECONF:append:imxgpu2d = " --disable-video-vivante"

-CFLAGS_append_imxgpu = " -DLINUX \
+CFLAGS:append:imxgpu = " -DLINUX \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', '-
DEGL_API_FB', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '-
DWL_EGL_PLATFORM', '', d)} \
"
diff --git a/recipes-graphics/mesa/mesa-demos_%.bbappend b/recipes-
graphics/mesa/mesa-demos_%.bbappend
index 301f1b59f125..4b518185119b 100644
--- a/recipes-graphics/mesa/mesa-demos_%.bbappend
+++ b/recipes-graphics/mesa/mesa-demos_%.bbappend
@@ -1,26 +1,26 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

-SRC_URI_append_imxgpu = "
file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
+SRC_URI:append:imxgpu = "
file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
file://fix-clear-build-break.patch \

file://Add-OpenVG-demos-to-support-wayland.patch"

PACKAGECONFIG_REMOVE_IF_2D_ONLY = ""
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu2d = "gles1 gles2"
-PACKAGECONFIG_REMOVE_IF_2D_ONLY_imxgpu3d = ""
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu2d = "gles1 gles2"
+PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu3d = ""
PACKAGECONFIG_REMOVE_IF_GPU = ""
-PACKAGECONFIG_REMOVE_IF_GPU_imxgpu = " \
+PACKAGECONFIG_REMOVE_IF_GPU:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'glu x11',
'', d)} \
"
-PACKAGECONFIG_remove = " \
+PACKAGECONFIG:remove = " \
${PACKAGECONFIG_REMOVE_IF_2D_ONLY} \
${PACKAGECONFIG_REMOVE_IF_GPU} \
"

PACKAGECONFIG_APPEND_IF_GPU = ""
-PACKAGECONFIG_APPEND_IF_GPU_imxgpu = " \
+PACKAGECONFIG_APPEND_IF_GPU:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland vg',
'', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glut',
'', d)} \
"
-PACKAGECONFIG_append = " \
+PACKAGECONFIG:append = " \
${PACKAGECONFIG_APPEND_IF_GPU} \
"
diff --git a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb b/recipes-
graphics/mesa/mesa-etnaviv-env_0.1.bb
index 2a32c448f436..c58c2cf30dc9 100644
--- a/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
+++ b/recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb
@@ -12,7 +12,7 @@ SRC_URI = "\
do_configure[noexec] = "1"
do_compile[noexec] = "1"

-do_install_use-mainline-bsp() {
+do_install:use-mainline-bsp() {
# MESA global envirronment variables

# systemd
diff --git a/recipes-graphics/mesa/mesa-gl_%.bbappend b/recipes-
graphics/mesa/mesa-gl_%.bbappend
index ca1c8f46d680..dafd27f0a68e 100644
--- a/recipes-graphics/mesa/mesa-gl_%.bbappend
+++ b/recipes-graphics/mesa/mesa-gl_%.bbappend
@@ -1 +1 @@
-COMPATIBLE_MACHINE_imxgpu = "(-)"
+COMPATIBLE_MACHINE:imxgpu = "(-)"
diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-
graphics/mesa/mesa_%.bbappend
index 423ee63ec638..d0b55cacea4b 100644
--- a/recipes-graphics/mesa/mesa_%.bbappend
+++ b/recipes-graphics/mesa/mesa_%.bbappend
@@ -1,5 +1,5 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-SRC_URI_append_use-mainline-bsp = " \
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
+SRC_URI:append:use-mainline-bsp = " \
file://0001-dri-add-createImageWithModifiers2-interface.patch \
file://0002-dri-add-loader_dri_create_image-helper.patch \

file://0003-loader-dri3-convert-to-loader_dri_create_image.patch \
@@ -11,11 +11,11 @@ SRC_URI_append_use-mainline-bsp = " \

file://0009-etnaviv-flush-used-render-buffers-on-context-flush-w.patch
\
"

-PROVIDES_remove_imxgpu = "virtual/egl"
-PROVIDES_remove_imxgpu3d = "virtual/libgl virtual/libgles1
virtual/libgles2"
+PROVIDES:remove:imxgpu = "virtual/egl"
+PROVIDES:remove:imxgpu3d = "virtual/libgl virtual/libgles1
virtual/libgles2"

-PACKAGECONFIG_remove_imxgpu = "egl gbm"
-PACKAGECONFIG_remove_imxgpu3d = "gles"
+PACKAGECONFIG:remove:imxgpu = "egl gbm"
+PACKAGECONFIG:remove:imxgpu3d = "gles"

# FIXME: mesa should support 'x11-no-tls' option
python () {
@@ -28,13 +28,13 @@ python () {
}

# Enable Etnaviv and Freedreno support
-PACKAGECONFIG_append_use-mainline-bsp = " gallium etnaviv kmsro
freedreno"
+PACKAGECONFIG:append:use-mainline-bsp = " gallium etnaviv kmsro
freedreno"

# For NXP BSP, GPU drivers don't support dri
-PACKAGECONFIG_remove_imxgpu_use-nxp-bsp = "dri"
+PACKAGECONFIG:remove:imxgpu:use-nxp-bsp = "dri"

# mainline/etnaviv:
-RRECOMMENDS_${PN}-megadriver_append_use-mainline-bsp = " libdrm-
etnaviv mesa-etnaviv-env"
+RRECOMMENDS_${PN}-megadriver:append:use-mainline-bsp = " libdrm-
etnaviv mesa-etnaviv-env"

BACKEND = \
"${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -42,7 +42,7 @@ BACKEND = \
'fb',
d), d)}"

# FIXME: Dirty hack to allow use of Vivante GPU libGL binary
-do_install_append_imxgpu3d () {
+do_install:append:imxgpu3d () {
rm -f ${D}${libdir}/libGL.* \
${D}${includedir}/GL/gl.h \
${D}${includedir}/GL/glcorearb.h \
@@ -54,6 +54,6 @@ do_install_append_imxgpu3d () {
fi
}

-do_install_append_imxgpu () {
+do_install:append:imxgpu () {
rm -rf ${D}${includedir}/KHR
}
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
index 28e1dc32fcce..1e4d181ce3e5 100644
--- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
+++ b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
@@ -1,3 +1,3 @@
# The i.MX implementation is dynamically loaded, so it requires an
# explicit runtime dependency.
-RRECOMMENDS_${PN}_append_imxgpu = " libvulkan-imx"
+RRECOMMENDS_${PN}:append:imxgpu = " libvulkan-imx"
diff --git a/recipes-graphics/waffle/waffle_%.bbappend b/recipes-
graphics/waffle/waffle_%.bbappend
index 9d090bcfe2b0..380273a8c55c 100644
--- a/recipes-graphics/waffle/waffle_%.bbappend
+++ b/recipes-graphics/waffle/waffle_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

SRC_URI += " \
file://0001-meson-Add-missing-wayland-dependency-on-EGL.patch \
@@ -6,11 +6,11 @@ SRC_URI += " \
"

PACKAGECONFIG_IMXGPU_X11 = ""
-PACKAGECONFIG_IMXGPU_X11_imxgpu3d = "x11-egl glx"
+PACKAGECONFIG_IMXGPU_X11:imxgpu3d = "x11-egl glx"
PACKAGECONFIG_IMXGPU_GBM = "gbm"
-PACKAGECONFIG_IMXGPU_GBM_mx6 = ""
-PACKAGECONFIG_IMXGPU_GBM_mx7 = ""
-PACKAGECONFIG_imxgpu = " \
+PACKAGECONFIG_IMXGPU_GBM:mx6 = ""
+PACKAGECONFIG_IMXGPU_GBM:mx7 = ""
+PACKAGECONFIG:imxgpu = " \
${@bb.utils.contains('DISTRO_FEATURES',
'wayland', 'wayland', \
bb.utils.contains('DISTRO_FEATURES', 'x11',
'${PACKAGECONFIG_IMXGPU_X11}', \

'', d), d)} \
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-
graphics/wayland/weston-init.bbappend
index ebd982687b19..5710e9b5ecad 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -1,24 +1,24 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

# OpenGL is not required for parts with GPU support for 2D but not
3D
IMX_REQUIRED_DISTRO_FEATURES_REMOVE = ""
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu2d = "opengl"
-IMX_REQUIRED_DISTRO_FEATURES_REMOVE_imxgpu3d = ""
-REQUIRED_DISTRO_FEATURES_remove =
"${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu2d = "opengl"
+IMX_REQUIRED_DISTRO_FEATURES_REMOVE:imxgpu3d = ""
+REQUIRED_DISTRO_FEATURES:remove =
"${IMX_REQUIRED_DISTRO_FEATURES_REMOVE}"

-SRC_URI_append_mx6sl = " file://weston.config"
+SRC_URI:append:mx6sl = " file://weston.config"

# To customize weston.ini, start by setting the desired assignment
in weston.ini,
# commented out. For example:
# #xwayland=true
# Then add the assignment to INI_UNCOMMENT_ASSIGNMENTS.
-INI_UNCOMMENT_ASSIGNMENTS_append_imx = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:imx = " \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland',
'xwayland=true', '', d)} \
"
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8 = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8 = " \
repaint-window=16 \
"
-INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
+INI_UNCOMMENT_ASSIGNMENTS:append:mx8mq = " \
gbm-format=argb8888 \
\\[shell\\] \
size=1920x1080 \
@@ -27,10 +27,10 @@ INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \
# FIXME: The 8QM and 8QXP SoCs have better performance without G2D
so don't enable it
# Ideally, this should be seamless and Vivante ought to handle it
internally and take the fastest
# rendering code.
-INI_UNCOMMENT_USE_G2D_imxgpu2d ?= "use-g2d=1"
-INI_UNCOMMENT_USE_G2D_mx8qm = ""
-INI_UNCOMMENT_USE_G2D_mx8qxp = ""
-INI_UNCOMMENT_ASSIGNMENTS_append_imxgpu2d = " \
+INI_UNCOMMENT_USE_G2D:imxgpu2d ?= "use-g2d=1"
+INI_UNCOMMENT_USE_G2D:mx8qm = ""
+INI_UNCOMMENT_USE_G2D:mx8qxp = ""
+INI_UNCOMMENT_ASSIGNMENTS:append:imxgpu2d = " \
${INI_UNCOMMENT_USE_G2D} \
"

@@ -41,7 +41,7 @@ uncomment() {
sed -i -e 's,^#'"$1"','"$1"',g' $2
}

-do_install_append() {
+do_install:append() {
if [ -f "${WORKDIR}/weston.config" ]; then
install -Dm0755 ${WORKDIR}/weston.config
${D}${sysconfdir}/default/weston
fi
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-
graphics/wayland/weston_9.0.0.imx.bb
index 026f27cebe8b..16607a93c4d2 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_9.0.0.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "
https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \

file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch
\
"

-SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch "
+SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "

SRC_URI[sha256sum] =
"5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe"

@@ -97,7 +97,7 @@ PACKAGECONFIG[shell-ivi] = "-Dshell-ivi=true,-
Dshell-ivi=false"
# JPEG image loading support
PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false,
jpeg"

-do_install_append() {
+do_install:append() {
# Weston doesn't need the .la files to load modules, so wipe
them
rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la

@@ -160,23 +160,23 @@ S = "${WORKDIR}/git"

# Disable OpenGL for parts with GPU support for 2D but not 3D
REQUIRED_DISTRO_FEATURES = "opengl"
-REQUIRED_DISTRO_FEATURES_imxgpu2d = ""
-REQUIRED_DISTRO_FEATURES_imxgpu3d = "opengl"
+REQUIRED_DISTRO_FEATURES:imxgpu2d = ""
+REQUIRED_DISTRO_FEATURES:imxgpu3d = "opengl"
PACKAGECONFIG_OPENGL = "opengl"
-PACKAGECONFIG_OPENGL_imxgpu2d = ""
-PACKAGECONFIG_OPENGL_imxgpu3d = "opengl"
+PACKAGECONFIG_OPENGL:imxgpu2d = ""
+PACKAGECONFIG_OPENGL:imxgpu3d = "opengl"

-PACKAGECONFIG_remove = "wayland x11"
-PACKAGECONFIG_append = " ${@bb.utils.filter('DISTRO_FEATURES',
'${PACKAGECONFIG_OPENGL}', d)}"
+PACKAGECONFIG:remove = "wayland x11"
+PACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES',
'${PACKAGECONFIG_OPENGL}', d)}"

-PACKAGECONFIG_remove_imxfbdev = "kms"
-PACKAGECONFIG_append_imxfbdev = " fbdev clients"
-PACKAGECONFIG_append_imxgpu = " imxgpu"
-PACKAGECONFIG_append_imxgpu2d = " imxg2d"
+PACKAGECONFIG:remove:imxfbdev = "kms"
+PACKAGECONFIG:append:imxfbdev = " fbdev clients"
+PACKAGECONFIG:append:imxgpu = " imxgpu"
+PACKAGECONFIG:append:imxgpu2d = " imxg2d"

# Clients support
SIMPLE_CLIENTS = "all"
-SIMPLE_CLIENTS_imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
+SIMPLE_CLIENTS:imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
PACKAGECONFIG[xwayland] = "-Dxwayland=true,-
Dxwayland=false,libxcursor"
PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLE_CLIENTS} -Ddemo-
clients=true,-Dsimple-clients= -Ddemo-clients=false"
# Weston with i.MX GPU support
diff --git a/recipes-graphics/xinput-calibrator/pointercal-
xinput_%.bbappend b/recipes-graphics/xinput-calibrator/pointercal-
xinput_%.bbappend
index a9c60f3ec4f9..d112b274a75d 100644
--- a/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
+++ b/recipes-graphics/xinput-calibrator/pointercal-xinput_%.bbappend
@@ -1,2 +1,2 @@
# Append path for freescale layer to include bsp pointercal.xinput
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb b/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb
index 069008c04479..836a16ba08cc 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imx-
vivante_6.4.0.p0.0.bb
@@ -34,7 +34,7 @@ TARGET_CC_ARCH += "${LDFLAGS}"

PACKAGES =+ "xserver-xorg-extension-viv-autohdmi"

-do_install_append () {
+do_install:append () {
install -d ${D}${includedir}
cp -axr ${S}/EXA/src/vivante_gal/vivante_priv.h
${D}${includedir}
cp -axr ${S}/EXA/src/vivante_gal/vivante_gal.h ${D}${includedir}
diff --git a/recipes-graphics/xorg-xserver/xserver-xf86-
config_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xf86-
config_%.bbappend
index ceb438e37115..3fe677b34770 100644
--- a/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xf86-config_%.bbappend
@@ -1,2 +1,2 @@
# Append path for freescale layer to include bsp xorg.conf
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
index 22d950c796cc..34e2ed82377b 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -1,7 +1,7 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"

-SRC_URI_append_use-mainline-bsp = "
file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
-SRC_URI_append_imxgpu = " \
+SRC_URI:append:use-mainline-bsp = "
file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
+SRC_URI:append:imxgpu = " \
file://0003-Remove-check-for-useSIGIO-option.patch \

file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch
\

file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch
\
@@ -10,7 +10,7 @@ SRC_URI_append_imxgpu = " \
"

IMX_OPENGL_PKGCONFIGS_REMOVE = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_imxdrm = "dri glx"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:imxdrm = "dri glx"
diff --git a/recipes-graphics/xwayland/xwayland_%.bbappend b/recipes-
graphics/xwayland/xwayland_%.bbappend
index c26bb20d2caf..b3e79e09182f 100644
--- a/recipes-graphics/xwayland/xwayland_%.bbappend
+++ b/recipes-graphics/xwayland/xwayland_%.bbappend
@@ -1,4 +1,4 @@
IMX_OPENGL_PKGCONFIGS_REMOVE = ""
-IMX_OPENGL_PKGCONFIGS_REMOVE_imxgpu = "glamor"
-OPENGL_PKGCONFIGS_remove_mx6 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
-OPENGL_PKGCONFIGS_remove_mx7 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
+OPENGL_PKGCONFIGS:remove:mx6 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
+OPENGL_PKGCONFIGS:remove:mx7 =
"${IMX_OPENGL_PKGCONFIGS_REMOVE}"
diff --git a/recipes-kernel/ceetm/ceetm_git.bb b/recipes-
kernel/ceetm/ceetm_git.bb
index 2e92ad49e5a4..45c3f19edc1a 100644
--- a/recipes-kernel/ceetm/ceetm_git.bb
+++ b/recipes-kernel/ceetm/ceetm_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "
file://COPYING;md5=bac620b9883d38a84dfb73ca7122d915"

SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-
components/ceetm;nobranch=1"
SRCREV = "6a7f2ec2091df2f4380cb8d25a36c399aed5af1b"
-SRC_URI_append = " file://0001-Makefile-update-CFLAGS.patch \
+SRC_URI:append = " file://0001-Makefile-update-CFLAGS.patch \
file://0001-use-new-api-tc_print_rate.patch \
"
DEPENDS = "iproute2"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
index feddc8faac80..36e2065db7c4 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
@@ -14,7 +14,7 @@ export KERNEL_PATH

INHIBIT_PACKAGE_STRIP = "1"

-do_compile_prepend() {
+do_compile:prepend() {
sed -i -e 's,EXTRA_CFLAGS += -I$(PWD),EXTRA_CFLAGS += -I${S},'
${S}/armodule/source/Makefile
}

diff --git a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
index 350ba186aeb2..903c53a48731 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
@@ -11,7 +11,7 @@ SRCREV = "74d662707558290f070f9589177db730444bc435"
S = "${WORKDIR}/git"

do_configure[depends] += "virtual/kernel:do_shared_workdir"
-do_compile_prepend () {
+do_compile:prepend () {
cd ${S}/kernel
}

diff --git a/recipes-kernel/kernel-modules/kernel-module-qcacld-
lea.inc b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
index 0b23a47c04bb..a7b8a4e68ce7 100644
--- a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
@@ -20,4 +20,4 @@ EXTRA_OEMAKE += " \
"

COMPATIBLE_MACHINE = "(imx)"
-COMPATIBLE_HOST_libc-musl = 'null'
+COMPATIBLE_HOST:libc-musl = 'null'
diff --git a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
index 63527d1324cc..95dd72fb894c 100644
--- a/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-fslc-lts-mfgtool_5.10.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by
the Freescale Community \
that produces a Manufacturing Tool compatible Linux Kernel to be
used in updater \
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
require linux-fslc-lts_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
index c155ebb969ed..09d35c9152ea 100644
--- a/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
+++ b/recipes-kernel/linux/linux-fslc-mfgtool_5.12.bb
@@ -6,7 +6,7 @@ DESCRIPTION = "Linux Kernel provided and supported by
the Freescale Community \
that produces a Manufacturing Tool compatible Linux Kernel to be
used in updater \
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-fslc:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-fslc:"
require linux-fslc_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-imx-headers_5.10.bb
b/recipes-kernel/linux/linux-imx-headers_5.10.bb
index c656fa557e26..05e8b12c5bfe 100644
--- a/recipes-kernel/linux/linux-imx-headers_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-headers_5.10.bb
@@ -75,4 +75,4 @@ PACKAGE_ARCH = "${MACHINE_SOCARCH}"
# Restrict this recipe to NXP BSP only, this recipe is not
compatible
# with mainline BSP
COMPATIBLE_HOST = '(null)'
-COMPATIBLE_HOST_use-nxp-bsp = '.*'
+COMPATIBLE_HOST:use-nxp-bsp = '.*'
diff --git a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
index 0a9f5259ed94..311245b19b6d 100644
--- a/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
+++ b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
@@ -5,7 +5,7 @@ SUMMARY = "Produces a Manufacturing Tool compatible
Linux Kernel"
DESCRIPTION = "Linux Kernel provided and supported by Freescale that
produces a \
Manufacturing Tool compatible Linux Kernel to be used in updater
environment"

-FILESEXTRAPATHS_prepend := "${THISDIR}/linux-imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/linux-imx:"
require linux-imx_${PV}.bb
require linux-mfgtool.inc

diff --git a/recipes-kernel/linux/linux-qoriq.inc b/recipes-
kernel/linux/linux-qoriq.inc
index 4d134b476599..2333990fb79c 100644
--- a/recipes-kernel/linux/linux-qoriq.inc
+++ b/recipes-kernel/linux/linux-qoriq.inc
@@ -7,12 +7,12 @@ LICENSE = "GPLv2"

S = "${WORKDIR}/git"

-DEPENDS_append = " libgcc"
+DEPENDS:append = " libgcc"
# not put Images into /boot of rootfs, install kernel-image if
needed
RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""

-KERNEL_CC_append = " ${TOOLCHAIN_OPTIONS}"
-KERNEL_LD_append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_CC:append = " ${TOOLCHAIN_OPTIONS}"
+KERNEL_LD:append = " ${TOOLCHAIN_OPTIONS}"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"

ZIMAGE_BASE_NAME = "zImage-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-
${DATETIME}"
@@ -24,9 +24,9 @@ PV = "${LINUX_VERSION}+git${SRCPV}"
SCMVERSION ?= "y"
LOCALVERSION = ""
DELTA_KERNEL_DEFCONFIG ?= ""
-DELTA_KERNEL_DEFCONFIG_prepend_qoriq-arm64 = "lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_fsl-lsch2-32b = "multi_v7_lpae.config
multi_v8.config lsdk.config "
-DELTA_KERNEL_DEFCONFIG_prepend_ls102xa = "multi_v7_lpae.config
lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:qoriq-arm64 = "lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:fsl-lsch2-32b = "multi_v7_lpae.config
multi_v8.config lsdk.config "
+DELTA_KERNEL_DEFCONFIG:prepend:ls102xa = "multi_v7_lpae.config
lsdk.config "

do_merge_delta_config[depends] +=
"virtual/${TARGET_PREFIX}gcc:do_populate_sysroot bison-
native:do_populate_sysroot"
do_merge_delta_config[dirs] = "${B}"
@@ -56,11 +56,11 @@ do_merge_delta_config() {
addtask merge_delta_config before do_kernel_localversion after
do_patch

# The link of dts folder is needed for 32b compile of aarch64
targets(e.g. ls1043ardb-32b)
-do_compile_prepend_fsl-lsch2-32b() {
+do_compile:prepend:fsl-lsch2-32b() {
ln -sfT ${STAGING_KERNEL_DIR}/arch/arm64/boot/dts/freescale
${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
}

-do_install_prepend_fsl-lsch2-32b() {
+do_install:prepend:fsl-lsch2-32b() {
rm -f ${STAGING_KERNEL_DIR}/arch/arm/boot/dts/freescale
}

diff --git a/recipes-multimedia/alsa/alsa-lib_%.bbappend b/recipes-
multimedia/alsa/alsa-lib_%.bbappend
index 80c11f33204f..d76c45d1e162 100644
--- a/recipes-multimedia/alsa/alsa-lib_%.bbappend
+++ b/recipes-multimedia/alsa/alsa-lib_%.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"

IMX_PATCH = " \
file://0001-add-conf-for-multichannel-support-in-imx.patch \
@@ -6,6 +6,6 @@ IMX_PATCH = " \
file://0005-add-ak4458-conf-for-multichannel-support.patch \
file://0006-add-conf-for-iMX-XCVR-sound-card.patch \
"
-SRC_URI_append_imx = "${IMX_PATCH}"
+SRC_URI:append:imx = "${IMX_PATCH}"

-PACKAGE_ARCH_imx = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imx = "${MACHINE_SOCARCH}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-
libav_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-
libav_1.16.0.bb
index 3f1ec99d9560..cf640e13779e 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
@@ -50,8 +50,8 @@ LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-
os=linux \
--cross-prefix='${HOST_PREFIX}'"

# Disable assembly optimizations for X32, as this libav lacks the
support
-PACKAGECONFIG_remove_linux-gnux32 = "yasm"
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG_append_linux-gnux32 = " --disable-
asm"
+PACKAGECONFIG:remove:linux-gnux32 = "yasm"
+LIBAV_EXTRA_CONFIGURE_COMMON_ARG:append:linux-gnux32 = " --disable-
asm"

LIBAV_EXTRA_CONFIGURE_COMMON = \
'${LIBAV_EXTRA_CONFIGURE}="${LIBAV_EXTRA_CONFIGURE_COMMON_ARG}"'
@@ -63,8 +63,8 @@ FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"

# http://errors.yoctoproject.org/Errors/Details/20493/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

# ffmpeg/libav disables PIC on some platforms (e.g. x86-32)
INSANE_SKIP_${PN} = "textrel"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
bad_1.16.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-bad_1.16.3.imx.bb
index 6925611ac080..376764583179 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
bad_1.16.3.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
bad_1.16.3.imx.bb
@@ -1,14 +1,14 @@
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc

-DEPENDS_append_imxgpu2d = " virtual/libg2d"
-DEPENDS_append_mx8 = " libdrm"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"
+DEPENDS:append:mx8 = " libdrm"

-PACKAGECONFIG_append_mx8 = " kms"
+PACKAGECONFIG:append:mx8 = " kms"

DEFAULT_PREFERENCE = "-1"

-PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:imxpxp = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"

GST1.0-PLUGINS-BAD_SRC ?=
"gitsm://source.codeaurora.org/external/imx/gst-plugins-
bad.git;protocol=https"
SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
@@ -37,7 +37,7 @@ DEPENDS += "gstreamer1.0-plugins-base"
inherit gobject-introspection

PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gl', '', d)}"
-PACKAGECONFIG_GL_imxpxp = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2', '', d)}"
+PACKAGECONFIG_GL:imxpxp = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2', '', d)}"

PACKAGECONFIG ??= " \
${GSTREAMER_ORC} \
@@ -163,8 +163,8 @@ EXTRA_OEMESON += " \

export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

FILES_${PN}-freeverb += "${datadir}/gstreamer-
1.0/presets/GstFreeverb.prs"
FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-base_1.16.%.bbappend
index d92bdf3ca3c2..1c62f31dc227 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.%.bbappend
@@ -1,5 +1,5 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"

# For mainline BSP we need to enable 'gbm' Window system
-PACKAGECONFIG_GL_use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm',
'', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl gbm',
'', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.2.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-base_1.16.2.imx.bb
index db0b740fa22b..01db6125d67d 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.2.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
base_1.16.2.imx.bb
@@ -20,7 +20,7 @@ SRC_URI = "${GST1.0-PLUGINS-
BASE_SRC};branch=${SRCBRANCH} \
S = "${WORKDIR}/git"

DEPENDS += "iso-codes util-linux zlib"
-DEPENDS_append_imxgpu2d = " virtual/libg2d"
+DEPENDS:append:imxgpu2d = " virtual/libg2d"

inherit use-imx-headers gobject-introspection gtk-doc

diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
good_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-
plugins-good_1.16.%.bbappend
index 8565c6a53377..7e72cdaa2273 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
good_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
good_1.16.%.bbappend
@@ -1,3 +1,3 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"
-PACKAGECONFIG_GL_use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '',
d)}"
+PACKAGECONFIG_GL:imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl x11', 'opengl', '', d)}"
+PACKAGECONFIG_GL:imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES',
'opengl', 'gles2 egl', '', d)}"
+PACKAGECONFIG_GL:use-mainline-bsp =
"${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '',
d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
imx_2.0.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-
imx_2.0.0.bb
index 7c6025dd900e..439c4430f407 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.0.0.bb
@@ -28,22 +28,22 @@ inherit pkgconfig meson use-imx-headers
# is needed to improve performance.
LIBG2D_DPU_OPTION = "-Dg2d-based-on-dpu=false"
LIBG2D_DEPENDENCIES = "virtual/libg2d"
-LIBG2D_DPU_OPTION_imxdpu = "-Dg2d-based-on-dpu=true"
-LIBG2D_DEPENDENCIES_imxdpu = "virtual/libg2d libdrm"
+LIBG2D_DPU_OPTION:imxdpu = "-Dg2d-based-on-dpu=true"
+LIBG2D_DEPENDENCIES:imxdpu = "virtual/libg2d libdrm"

EXTRA_OEMESON += "-Dimx-headers-path=${STAGING_INCDIR_IMX}"

PACKAGECONFIG ?= "uniaudiodec"
-PACKAGECONFIG_append_imxgpu2d = " g2d"
-PACKAGECONFIG_append_imxvpu = " vpu"
-PACKAGECONFIG_append_imxipu = " ipu"
-PACKAGECONFIG_append_imxpxp = " pxp"
+PACKAGECONFIG:append:imxgpu2d = " g2d"
+PACKAGECONFIG:append:imxvpu = " vpu"
+PACKAGECONFIG:append:imxipu = " ipu"
+PACKAGECONFIG:append:imxpxp = " pxp"
# The custom imxv4l2 elements are only available on the i.MX6.
# The 2D blitter sinks require an MXC framebuffer, which
# is not available anymore on the i.MX8 (since these SoCs
# now use KMS instead of the old Linux framebuffer).
-PACKAGECONFIG_append_mx6 = " imx2dvideosink v4l2"
-PACKAGECONFIG_append_mx7 = " imx2dvideosink"
+PACKAGECONFIG:append:mx6 = " imx2dvideosink v4l2"
+PACKAGECONFIG:append:mx7 = " imx2dvideosink"

PACKAGECONFIG[g2d] = "-Dg2d=enabled ${LIBG2D_DPU_OPTION},-
Dg2d=disabled,${LIBG2D_DEPENDENCIES}"
PACKAGECONFIG[pxp] = "-Dpxp=enabled,-Dpxp=disabled,"
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
index c8bb6cd8a45a..9f58aa64d5dc 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
@@ -8,9 +8,9 @@ LICENSE = "GPLv2 & LGPLv2 & LGPLv2.1"
SECTION = "multimedia"

DEPENDS = "imx-codec imx-parser gstreamer1.0 gstreamer1.0-plugins-
base gstreamer1.0-plugins-bad"
-DEPENDS_append_mx6 = " imx-lib"
-DEPENDS_append_mx7 = " imx-lib"
-DEPENDS_append_imxvpu = " imx-vpuwrap libdrm"
+DEPENDS:append:mx6 = " imx-lib"
+DEPENDS:append:mx7 = " imx-lib"
+DEPENDS:append:imxvpu = " imx-vpuwrap libdrm"

# For backwards compatibility
RREPLACES_${PN} = "gst1.0-fsl-plugin"
@@ -31,14 +31,14 @@ S = "${WORKDIR}/git"

inherit autotools pkgconfig use-imx-headers

-PLATFORM_mx6 = "MX6"
-PLATFORM_mx6sl = "MX6SL"
-PLATFORM_mx6sx = "MX6SX"
-PLATFORM_mx6ul = "MX6UL"
-PLATFORM_mx6sll = "MX6SLL"
-PLATFORM_mx7= "MX7D"
-PLATFORM_mx7ulp= "MX7ULP"
-PLATFORM_mx8 = "MX8"
+PLATFORM:mx6 = "MX6"
+PLATFORM:mx6sl = "MX6SL"
+PLATFORM:mx6sx = "MX6SX"
+PLATFORM:mx6ul = "MX6UL"
+PLATFORM:mx6sll = "MX6SLL"
+PLATFORM:mx7= "MX7D"
+PLATFORM:mx7ulp= "MX7ULP"
+PLATFORM:mx8 = "MX8"

# Todo add a mechanism to map possible build targets
EXTRA_OECONF = "PLATFORM=${PLATFORM} \
@@ -55,7 +55,7 @@ RDEPENDS_${PN} += "imx-parser ${BEEP_RDEPENDS}
gstreamer1.0-plugins-good-id3demu
# overlaysink rely on G2D,
# cannot be supported on i.MX6SLL & i.MX6UL & i.MX6ULL & i.MX7D
PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxgpu2d = "overlaysink"
+PACKAGECONFIG:imxgpu2d = "overlaysink"


# FIXME: Add all features
diff --git a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
index 76a52f26cb64..4bb76030ed62 100644
--- a/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
+++ b/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb
@@ -21,14 +21,14 @@ EXTRA_OECONF =
"${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8
bb.utils.contains('TUNE_FEATURES',
'callconvention-hard', '--enable-fhw', '', d), d)}"

PACKAGECONFIG ?= ""
-PACKAGECONFIG_imxvpu = "vpu"
+PACKAGECONFIG:imxvpu = "vpu"

# We need to ensure we don't have '-src' package overrided
PACKAGE_DEBUG_SPLIT_STYLE = 'debug-without-src'

PACKAGECONFIG[vpu] = "--enable-vpu,--disable-vpu,virtual/imxvpu"

-do_install_append() {
+do_install:append() {
# LTIB move the files around or gst-fsl-plugin won't find them
for p in $(find ${D}${libdir}/imx-mm -mindepth 2 -maxdepth 2 -
not -type d); do
mv $p ${D}${libdir}
@@ -85,7 +85,7 @@ python __set_metapkg_rdepends() {
codec_pkgs = oe.utils.packages_filter_out_system(d)
codec_pkgs = filter(lambda x: x not in ['imx-codec-test-bin',
'imx-codec-test-source'],
codec_pkgs)
- d.appendVar('RDEPENDS_imx-codec-meta', ' ' + '
'.join(codec_pkgs))
+ d.appendVar('RDEPENDS:imx-codec-meta', ' ' + '
'.join(codec_pkgs))
}

PACKAGESPLITFUNCS =+ "__split_libfslcodec_plugins
__set_metapkg_rdepends"
diff --git a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
index 2b0282351840..f77e33f76d07 100644
--- a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
+++ b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb
@@ -8,7 +8,7 @@ SECTION = "multimedia"
LIC_FILES_CHKSUM = "
file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"

DEPENDS = "virtual/imxvpu"
-DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+DEPENDS:append:mx8mp = " imx-vpu-hantro-vc"

SRC_URI = "git://github.com/NXP/imx-
vpuwrap.git;protocol=https;branch=${SRCBRANCH}"

@@ -19,7 +19,7 @@ S = "${WORKDIR}/git"

inherit autotools pkgconfig

-do_install_append() {
+do_install:append() {
# FIXME: Drop examples for now
rm -r ${D}${datadir}
}
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
index f66eff27568c..372d78dcb859 100644
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
+++ b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
@@ -15,10 +15,10 @@ S = "${WORKDIR}/git"

inherit waf pkgconfig use-imx-headers

-IMX_PLATFORM_mx6 = "imx6"
-IMX_PLATFORM_mx8mq = "imx8m"
-IMX_PLATFORM_mx8mm = "imx8mm"
-IMX_PLATFORM_mx8mp = "imx8mm"
+IMX_PLATFORM:mx6 = "imx6"
+IMX_PLATFORM:mx8mq = "imx8m"
+IMX_PLATFORM:mx8mm = "imx8mm"
+IMX_PLATFORM:mx8mp = "imx8mm"

EXTRA_OECONF = "--imx-platform=${IMX_PLATFORM} --libdir=${libdir} --
imx-headers=${STAGING_INCDIR_IMX} --sysroot-path=${RECIPE_SYSROOT}"

diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index 78a17864724a..ae69be4c8601 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,21 +1,21 @@

-CACHED_CONFIGUREVARS_append_mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"
+CACHED_CONFIGUREVARS:append:mx6 = " ax_cv_PTHREAD_PRIO_INHERIT=no"

-FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}/imx:"
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}/imx:"

-SRC_URI_append_mx6 = " file://daemon.conf file://default.pa"
-SRC_URI_append_mx7 = " file://daemon.conf file://default.pa \
+SRC_URI:append:mx6 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx7 = " file://daemon.conf file://default.pa \

file://pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
\
"
-SRC_URI_append_mx8 = " file://daemon.conf file://default.pa"
+SRC_URI:append:mx8 = " file://daemon.conf file://default.pa"

-do_install_append() {
+do_install:append() {
if [ -e "${WORKDIR}/daemon.conf" ] && [ -e
"${WORKDIR}/default.pa" ]; then
install -m 0644 ${WORKDIR}/daemon.conf
${D}${sysconfdir}/pulse/daemon.conf
install -m 0644 ${WORKDIR}/default.pa
${D}${sysconfdir}/pulse/default.pa
fi
}

-PACKAGE_ARCH_mx6 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx7 = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx6 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx7 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"
diff --git a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
index 58b6b8a45b18..b2ac77483ef8 100644
--- a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
@@ -21,8 +21,8 @@ inherit python3native systemd
SYSTEMD_SERVICE_${PN} = "tee-supplicant.service"

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

EXTRA_OEMAKE = "ARCH=${OPTEE_ARCH} O=${B}"

diff --git a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
index 712b1aa69046..c0b3b7631269 100644
--- a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
@@ -22,23 +22,23 @@ inherit deploy python3native autotools

# The platform flavor corresponds to the Yocto machine without the
leading 'i'.
PLATFORM_FLAVOR = "${@d.getVar('MACHINE')[1:]}"
-PLATFORM_FLAVOR_imx6qpdlsolox = "mx6qsabresd"
-PLATFORM_FLAVOR_imx6ul7d = "mx6ulevk"
-PLATFORM_FLAVOR_imx6ull14x14evk = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ull9x9evk = "mx6ullevk"
-PLATFORM_FLAVOR_imx6ulz-14x14-evk = "mx6ulzevk"
-PLATFORM_FLAVOR_mx8mq = "mx8mqevk"
-PLATFORM_FLAVOR_mx8mm = "mx8mmevk"
-PLATFORM_FLAVOR_mx8mn = "mx8mnevk"
-PLATFORM_FLAVOR_mx8mp = "mx8mpevk"
-PLATFORM_FLAVOR_mx8qm = "mx8qmmek"
-PLATFORM_FLAVOR_mx8qxp = "mx8qxpmek"
-PLATFORM_FLAVOR_mx8dx = "mx8dxmek"
-PLATFORM_FLAVOR_mx8dxl = "mx8dxlevk"
+PLATFORM_FLAVOR:imx6qpdlsolox = "mx6qsabresd"
+PLATFORM_FLAVOR:imx6ul7d = "mx6ulevk"
+PLATFORM_FLAVOR:imx6ull14x14evk = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ull9x9evk = "mx6ullevk"
+PLATFORM_FLAVOR:imx6ulz-14x14-evk = "mx6ulzevk"
+PLATFORM_FLAVOR:mx8mq = "mx8mqevk"
+PLATFORM_FLAVOR:mx8mm = "mx8mmevk"
+PLATFORM_FLAVOR:mx8mn = "mx8mnevk"
+PLATFORM_FLAVOR:mx8mp = "mx8mpevk"
+PLATFORM_FLAVOR:mx8qm = "mx8qmmek"
+PLATFORM_FLAVOR:mx8qxp = "mx8qxpmek"
+PLATFORM_FLAVOR:mx8dx = "mx8dxmek"
+PLATFORM_FLAVOR:mx8dxl = "mx8dxlevk"

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

# Optee-os can be built for 32 bits and 64 bits at the same time
# as long as the compilers are correctly defined.
diff --git a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
index a8a1b245e496..4a6aec56dd45 100644
--- a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
@@ -20,11 +20,11 @@ SRCREV =
"0c998f42a3fb87b9f2929955cf4b0116cc515091"
inherit python3native

OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

TA_DEV_KIT_DIR_arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32/"
-TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-
user_ta_arm64/"
+TA_DEV_KIT_DIR:aarch64 = "${STAGING_INCDIR}/optee/export-
user_ta_arm64/"

CFLAGS += "--sysroot=${STAGING_DIR_HOST}"
CXXFLAGS += "--sysroot=${STAGING_DIR_HOST}"
diff --git a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
index b8d764ff5e12..556f13518d7e 100644
--- a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
+++ b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
@@ -19,9 +19,9 @@ SRCREV = "0cb01f7f6aee552ead49990c06f69f73f459cc65"
S = "${WORKDIR}/git"

OPTEEMACHINE ?= "${MACHINE}"
-OPTEEMACHINE_ls1088ardb-pb = "ls1088ardb"
-OPTEEMACHINE_ls1046afrwy = "ls1046ardb"
-OPTEEMACHINE_lx2162aqds = "lx2160aqds"
+OPTEEMACHINE:ls1088ardb-pb = "ls1088ardb"
+OPTEEMACHINE:ls1046afrwy = "ls1046ardb"
+OPTEEMACHINE:lx2162aqds = "lx2160aqds"

EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE} CFG_ARM64_core=y \
ARCH=arm \
@@ -31,10 +31,10 @@ EXTRA_OEMAKE = "PLATFORM=ls-${OPTEEMACHINE}
CFG_ARM64_core=y \
LDFLAGS= \
LIBGCC_LOCATE_CFLAGS=--sysroot=${STAGING_DIR_HOST} \
"
-EXTRA_OEMAKE_append_lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-
lx2160a-qds.dts CFG_EMBED_DT=y"
+EXTRA_OEMAKE:append:lx2162aqds = " CFG_EMBED_DTB_SOURCE_FILE=fsl-
lx2160a-qds.dts CFG_EMBED_DT=y"

-OPTEE_ARCH_armv7a = "arm32"
-OPTEE_ARCH_aarch64 = "arm64"
+OPTEE_ARCH:armv7a = "arm32"
+OPTEE_ARCH:aarch64 = "arm64"

do_compile() {
unset LDFLAGS
diff --git a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-
tinyxml2.cpp.patch b/recipes-support/opencv/opencv/0001-Use-Os-to-
compile-tinyxml2.cpp.patch
index c5a64387f525..7fdf1dd8a62b 100644
--- a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-
tinyxml2.cpp.patch
+++ b/recipes-support/opencv/opencv/0001-Use-Os-to-compile-
tinyxml2.cpp.patch
@@ -21,10 +21,10 @@ index 56ca9e310..99b7a33f6 100644

set(filter_srcs
"${CMAKE_CURRENT_LIST_DIR}/src/tinyxml2/tinyxml2.cpp")
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override") # GCC
-+ ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override -Os") # GCC
+- ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override") # GCC
++ ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-
suggest-override -Os") # GCC
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-
inconsistent-missing-override") # Clang
+ ocv:append:source_files_cxx_compiler_options(filter_srcs "-Wno-
inconsistent-missing-override") # Clang
endif()
--
2.28.0
diff --git a/recipes-support/opencv/opencv_4.5.2.imx.bb b/recipes-
support/opencv/opencv_4.5.2.imx.bb
index a86fd3ecb3da..402eab9bb52d 100644
--- a/recipes-support/opencv/opencv_4.5.2.imx.bb
+++ b/recipes-support/opencv/opencv_4.5.2.imx.bb
@@ -11,8 +11,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "
file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"

-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
+ARM_INSTRUCTION_SET:armv4 = "arm"
+ARM_INSTRUCTION_SET:armv5 = "arm"

DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"

@@ -59,7 +59,7 @@ SRC_URI =
"git://github.com/opencv/opencv.git;name=opencv \
file://0001-Make-ts-module-external.patch \

file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
"
-SRC_URI_append_riscv64 = "
file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
+SRC_URI:append:riscv64 = "
file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"

S = "${WORKDIR}/git"

@@ -106,7 +106,7 @@ EXTRA_OECMAKE = "-
DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-
DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -
DENABLE_SSE41=1", "", d)} \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-
DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -
DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \
"
-EXTRA_OECMAKE_append_x86 = " -DX86=ON"
+EXTRA_OECMAKE:append:x86 = " -DX86=ON"

PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l
gstreamer samples tbb gphoto2 \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
@@ -158,7 +158,7 @@ PACKAGES +=
"${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '
${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-
${BPN}', '', d)} \
${PN}-apps"

-python populate_packages_prepend () {
+python populate_packages:prepend () {
cv_libdir = d.expand('${libdir}')
do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev',
'OpenCV %s development package', extra_depends='${PN}-dev',
allow_links=True)
do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev',
'OpenCV %s development package', extra_depends='${PN}-dev')
@@ -211,14 +211,14 @@ RDEPENDS_python3-opencv = "python3-core
python3-numpy"

RDEPENDS_${PN}-apps = "bash"

-do_compile_prepend() {
+do_compile:prepend() {
# remove the build host info to improve reproducibility
if [ -f ${WORKDIR}/build/modules/core/version_string.inc ]; then
sed -i "s#${WORKDIR}#/workdir#g"
${WORKDIR}/build/modules/core/version_string.inc
fi
}

-do_install_append() {
+do_install:append() {
# Move Python files into correct library folder (for multilib
build)
if [ "$libdir" != "/usr/lib" -a -d ${D}/usr/lib ]; then
mv ${D}/usr/lib/* ${D}/${libdir}/
@@ -245,7 +245,7 @@ LIC_FILES_CHKSUM = "
file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRCREV_opencv = "5423d53ae0d116ee5bbe52f8b5503f0cd8586998"
OPENCV_SRC ?= "git://source.codeaurora.org/external/imx/opencv-
imx.git;protocol=https"
SRCBRANCH = "4.5.2_imx"
-SRC_URI_remove = "git://github.com/opencv/opencv.git;name=opencv"
+SRC_URI:remove = "git://github.com/opencv/opencv.git;name=opencv"
SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv"

# Add opencv_extra
@@ -254,7 +254,7 @@ SRC_URI += " \

git://github.com/opencv/opencv_extra.git;destsuffix=extra;name=extra
\

file://0001-Add-smaller-version-of-download_models.py.patch;patchdir=../extra
\
"
-SRCREV_FORMAT_append = "_extra"
+SRCREV_FORMAT:append = "_extra"

# Add tiny-dnn
SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59"
@@ -264,25 +264,25 @@ SRC_URI += " \
file://OpenCV_DNN_examples.patch \
"

-PACKAGECONFIG_remove = "eigen"
-PACKAGECONFIG_append_mx8 = " dnn text"
+PACKAGECONFIG:remove = "eigen"
+PACKAGECONFIG:append:mx8 = " dnn text"
PACKAGECONFIG_OPENCL = ""
-PACKAGECONFIG_OPENCL_mx8 = "opencl"
-PACKAGECONFIG_OPENCL_mx8dxl = ""
-PACKAGECONFIG_OPENCL_mx8mm = ""
-PACKAGECONFIG_OPENCL_mx8mnlite = ""
-PACKAGECONFIG_append = " ${PACKAGECONFIG_OPENCL}"
+PACKAGECONFIG_OPENCL:mx8 = "opencl"
+PACKAGECONFIG_OPENCL:mx8dxl = ""
+PACKAGECONFIG_OPENCL:mx8mm = ""
+PACKAGECONFIG_OPENCL:mx8mnlite = ""
+PACKAGECONFIG:append = " ${PACKAGECONFIG_OPENCL}"

PACKAGECONFIG[openvx] = "-DWITH_OPENVX=ON -
DOPENVX_ROOT=${STAGING_LIBDIR} -
DOPENVX_LIB_CANDIDATES='OpenVX;OpenVXU',-
DWITH_OPENVX=OFF,virtual/libopenvx,"
PACKAGECONFIG[qt5] = "-DWITH_QT=ON -
DOE_QMAKE_PATH_EXTERNAL_HOST_BINS=${STAGING_BINDIR_NATIVE} -
DCMAKE_PREFIX_PATH=${STAGING_BINDIR_NATIVE}/cmake,-
DWITH_QT=OFF,qtbase qtbase-native,"
PACKAGECONFIG[tests-imx] = "-DINSTALL_TESTS=ON -
DOPENCV_TEST_DATA_PATH=${S}/../extra/testdata, -DINSTALL_TESTS=OFF,"

-do_unpack_extra_append() {
+do_unpack_extra:append() {
mkdir -p ${S}/3rdparty/tinydnn/
tar xzf ${WORKDIR}/v1.0.0a3.tar.gz -C ${S}/3rdparty/tinydnn/
}

-do_install_append() {
+do_install:append() {
ln -sf opencv4/opencv2 ${D}${includedir}/opencv2
install -d ${D}${datadir}/OpenCV/samples/data
cp -r ${S}/samples/data/* ${D}${datadir}/OpenCV/samples/data
--
2.31.1






--
Thomas Perrot, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com




--
Otavio Salvador O.S. Systems
http://www.ossystems.com.br http://code.ossystems.com.br
Mobile: +55 (53) 9 9981-7854 Mobile: +1 (347) 903-9750