summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/layer.conf6
-rw-r--r--conf/machine/apalis-imx8.conf70
-rw-r--r--conf/machine/apalis-imx8x-v11a.conf17
-rw-r--r--conf/machine/apalis-imx8x.conf81
-rw-r--r--conf/machine/colibri-imx6ull-emmc.conf40
-rw-r--r--conf/machine/colibri-imx8x-v10b.conf17
-rw-r--r--conf/machine/colibri-imx8x.conf60
-rw-r--r--conf/machine/include/apalis-imx6.inc41
-rw-r--r--conf/machine/include/colibri-imx6.inc38
-rw-r--r--conf/machine/include/colibri-imx6ull-emmc.inc33
-rw-r--r--conf/machine/include/colibri-imx6ull.inc51
-rw-r--r--conf/machine/include/colibri-imx7-emmc.inc48
-rw-r--r--conf/machine/include/colibri-imx7.inc52
-rw-r--r--conf/machine/verdin-imx8mm.conf92
-rw-r--r--conf/machine/verdin-imx8mp.conf73
-rw-r--r--qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend1
-rw-r--r--recipes-bsp/alsa-state/alsa-state.bbappend4
-rw-r--r--recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.conf464
-rw-r--r--recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.state288
-rw-r--r--recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state263
-rw-r--r--recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state263
-rw-r--r--recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state519
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8_8.%.bbappend14
-rw-r--r--recipes-bsp/imx-atf/files/0001-Revert-Add-NXP-s-SoCs-partition-reboot-support.patch41
-rw-r--r--recipes-bsp/imx-atf/imx-atf_%.bbappend17
-rw-r--r--recipes-bsp/imx-mkimage/imx-boot_%.bbappend8
-rw-r--r--recipes-bsp/imx-sc-firmware/imx-sc-firmware-toradex_1.15.0.bb (renamed from recipes-bsp/imx-sc-firmware/imx-sc-firmware-toradex_1.7.0.bb)8
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch32
-rw-r--r--recipes-bsp/isp-imx/isp-imx_%.bbappend4
-rw-r--r--recipes-bsp/u-boot/files/0001-colibri_imx7-boot-linux-kernel-in-non-secure-mode.patch31
-rw-r--r--recipes-bsp/u-boot/files/colibri-imx6ull/fw_env.config10
-rw-r--r--recipes-bsp/u-boot/files/colibri-imx7/fw_env.config10
-rw-r--r--recipes-bsp/u-boot/files/fw_env.config19
-rw-r--r--recipes-bsp/u-boot/files/vf/fw_env.config10
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-common.inc47
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex_2020.04.bb11
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex_2020.07.bb44
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex_2022.04.bb (renamed from recipes-bsp/u-boot/u-boot-toradex-common_2020.04.inc)29
-rw-r--r--recipes-devtools/imx-loader/imx-loader/mx6_usb_sdp_uboot.conf8
-rw-r--r--recipes-devtools/imx-loader/imx-loader/mx6ull_usb_sdp_uboot.conf8
-rw-r--r--recipes-devtools/imx-loader/imx-loader/mx7_usb_sdp_uboot.conf8
-rw-r--r--recipes-devtools/imx-loader/imx-loader_git.bb2
-rw-r--r--recipes-graphics/drm/libdrm_2.4.%.imx.bbappend1
-rw-r--r--recipes-graphics/drm/libdrm_2.4.102.imx.bbappend1
-rw-r--r--recipes-graphics/wayland/weston-init.bbappend49
-rw-r--r--recipes-graphics/wayland/weston/0001-libweston-backend-fbdev-fbdev.c-don-t-destroy-output.patch50
-rw-r--r--recipes-graphics/wayland/weston/0002-libweston-pixman-renderer.c-zero-freed-pointer.patch42
-rw-r--r--recipes-graphics/wayland/weston_9.0.0.imx.bbappend12
-rw-r--r--recipes-kernel/linux/device-tree-overlays_git.bb4
-rw-r--r--recipes-kernel/linux/linux-imx-headers_5%.bbappend5
-rw-r--r--recipes-kernel/linux/linux-imx-headers_5.15.bb79
-rw-r--r--recipes-kernel/linux/linux-imx-headers_5.4%.bbappend6
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-Revert-Revert-ARM-9113-1-uaccess-remove-set_fs-imple.patch44
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch (renamed from recipes-kernel/linux/linux-toradex-5.4-2.3.x/0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch)0
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-arch-arm-Kconfig-prepare-for-rt-patch.patch28
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-ddr-perf-prevent-BUG-with-rt-patch.patch (renamed from recipes-kernel/linux/linux-toradex-5.4-2.3.x/0002-ddr-perf-prevent-BUG-with-rt-patch.patch)0
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/0004-Revert-arch-arm-Kconfig-prepare-for-rt-patch.patch28
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/0005-Revert-Revert-Revert-ARM-9113-1-uaccess-remove-set_f.patch42
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt-less-latency.cfg (renamed from recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt-less-latency.cfg)0
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt-less-latency.scc (renamed from recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt-less-latency.scc)0
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt.cfg (renamed from recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt.cfg)1
-rw-r--r--recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt.scc (renamed from recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt.scc)0
-rw-r--r--recipes-kernel/linux/linux-toradex_5.15-2.2.x.bb50
-rw-r--r--recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb59
-rw-r--r--recipes-kernel/perf/perf.bbappend2
-rw-r--r--recipes-multimedia/gstreamer/gst-plugins-package.inc56
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch23
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bbappend2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bbappend3
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_%.bbappend1
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc41
-rw-r--r--recipes-support/bmode-usb/bmode-usb_1.0.bb4
-rw-r--r--wic/verdin-imx8mp-imx-boot-bootpart.wks.in20
73 files changed, 1892 insertions, 1643 deletions
diff --git a/conf/layer.conf b/conf/layer.conf
index 5228898..606446a 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -3,6 +3,10 @@ BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
+# Recipes which backport later versions of other layers are placed here.
+# Only valid for Toradex distributions.
+BACKPORT_BBFILES = "${LAYERDIR}/backports/recipes-*/*/*.bb ${LAYERDIR}/backports/recipes-*/*/*.bbappend"
+BBFILES += "${@ d.getVar('BACKPORT_BBFILES') if 'tdx' in d.getVar('DISTROOVERRIDES').split(':') else ''}"
BBFILE_COLLECTIONS += "toradex-nxp-layer"
BBFILE_PATTERN_toradex-nxp-layer = "^${LAYERDIR}/"
@@ -22,4 +26,4 @@ LAYERDEPENDS_toradex-nxp-layer = " \
freescale-3rdparty \
toradex-bsp-common-layer \
"
-LAYERSERIES_COMPAT_toradex-nxp-layer = "gatesgarth hardknott honister"
+LAYERSERIES_COMPAT_toradex-nxp-layer = "nanbield scarthgap"
diff --git a/conf/machine/apalis-imx8.conf b/conf/machine/apalis-imx8.conf
index 60971a7..3550e3b 100644
--- a/conf/machine/apalis-imx8.conf
+++ b/conf/machine/apalis-imx8.conf
@@ -9,15 +9,17 @@ SOC_SILICON_REV ?= ""
MACHINEOVERRIDES =. "mx8:mx8qm:"
+MACHINE_EXTRA_RRECOMMENDS:append = " mwifiexconf"
+
IMX_DEFAULT_BSP = "nxp"
require conf/machine/include/imx-base.inc
# override imx-base.inc which sets this to cortexa72-cortexa53-crypto
-DEFAULTTUNE:mx8qm = "aarch64"
+DEFAULTTUNE:mx8qm-generic-bsp = "armv8a-crypto"
require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
# Don't include kernels in standard images
-RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
LOADADDR = ""
@@ -25,24 +27,37 @@ LOADADDR = ""
# auto-serial-console there
USE_VT = "0"
+KERNEL_DTB_PREFIX = "freescale/"
KERNEL_DEVICETREE = " \
- freescale/imx8qm-apalis-eval.dtb \
- freescale/imx8qm-apalis-ixora-v1.1.dtb \
- freescale/imx8qm-apalis-v1.1-eval.dtb \
- freescale/imx8qm-apalis-v1.1-ixora-v1.1.dtb \
- freescale/imx8qm-apalis-v1.1-ixora-v1.2.dtb \
- freescale/imx8qp-apalis-v1.1-eval.dtb \
- freescale/imx8qp-apalis-v1.1-ixora-v1.1.dtb \
- freescale/imx8qp-apalis-v1.1-ixora-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-eval.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-eval-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-ixora-v1.1.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-eval.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-eval-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-ixora-v1.1.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-ixora-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qp-apalis-v1.1-eval.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qp-apalis-v1.1-eval-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qp-apalis-v1.1-ixora-v1.1.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qp-apalis-v1.1-ixora-v1.2.dtb \
+"
+KERNEL_DEVICETREE:use-mainline-bsp = " \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-eval-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-eval.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-ixora-v1.1.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-eval-v1.2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-eval.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-ixora-v1.1.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qm-apalis-v1.1-ixora-v1.2.dtb \
"
-KERNEL_IMAGETYPE:aarch64 = "Image.gz"
+KERNEL_IMAGETYPE:mx8-generic-bsp = "Image.gz"
UBOOT_SUFFIX = "bin"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "apalis-imx8_defconfig,sdcard"
-UBOOT_ENTRYPOINT = "0x80280000"
+UBOOT_ENTRYPOINT = "0x96000000"
UBOOT_DTB_LOADADDRESS = "0x83000000"
UBOOT_DTBO_LOADADDRESS = "0x83100000"
UBOOT_RD_LOADADDRESS = "0xA0000000"
@@ -57,16 +72,19 @@ WKS_FILE_DEPENDS:append = " u-boot-default-script"
PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot = "u-boot-toradex"
-# Currently we use the nxp 2020.04 downstream for mx8 as some features are
-# not yet available in 2020.07.
-PREFERRED_VERSION_u-boot-toradex = "2020.04%"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_VERSION_linux-imx-headers = "5.15"
-MACHINE_FIRMWARE:append = " linux-firmware-pcie8997"
-MACHINE_FIRMWARE:append = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE:append = " firmware-imx-8"
+IMX_DEFAULT_BOOTLOADER = "u-boot-toradex"
+# Currently we use the nxp 2022.04 downstream for mx8
+PREFERRED_VERSION_u-boot-toradex = "2022.04%"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
+UBOOT_MAKE_TARGET:use-mainline-bsp = "all"
+UBOOT_DTB_NAME:use-mainline-bsp:use-head-next = "fsl-imx8qm-apalis.dts"
+
+MACHINE_FIRMWARE:append = " linux-firmware-pcie8997 firmware-imx-hdmi"
IMXBOOT_TARGETS = "flash_b0"
IMX_BOOT_SOC_TARGET = "iMX8QM"
@@ -82,11 +100,17 @@ IMAGE_FSTYPES += "teziimg"
UBOOT_BINARY_TEZI_EMMC = "imx-boot"
OFFSET_BOOTROM_PAYLOAD = "0"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "apalis-imx8_hdmi_overlay.dtbo"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = " \
+ apalis-imx8_hdmi_overlay.dtbo \
+ apalis-imx8_spi1_spidev_overlay.dtbo \
+ apalis-imx8_spi2_spidev_overlay.dtbo \
+"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = ""
-TORADEX_PRODUCT_IDS = "0037 0047 0048 0049"
+TORADEX_PRODUCT_IDS = "0037 0047 0048 0049 0067"
TORADEX_PRODUCT_IDS[0037] = "imx8qm-apalis-v1.1-eval.dtb"
TORADEX_PRODUCT_IDS[0047] = "imx8qm-apalis-v1.1-eval.dtb"
TORADEX_PRODUCT_IDS[0048] = "imx8qp-apalis-v1.1-eval.dtb"
TORADEX_PRODUCT_IDS[0049] = "imx8qp-apalis-v1.1-eval.dtb"
+TORADEX_PRODUCT_IDS[0067] = "imx8qm-apalis-v1.1-eval.dtb"
diff --git a/conf/machine/apalis-imx8x-v11a.conf b/conf/machine/apalis-imx8x-v11a.conf
deleted file mode 100644
index ab7ea41..0000000
--- a/conf/machine/apalis-imx8x-v11a.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-#@TYPE: Machine
-#@NAME: Toradex Apalis iMX8X with B0 silicon
-#@DESCRIPTION: Toradex Apalis iMX8X powered by a i.MX 8X SoC (B0 silicon) as found on all V1.0 and V1.1A versions
-#@MAINTAINER: Philippe Schenker <philippe.schenker@toradex.com>
-
-# Set SoC revision to B0
-MACHINE_FEATURES:append = " soc-revb0"
-
-# keep the original machine as an override with high prio
-MACHINEOVERRIDES =. "apalis-imx8x:"
-
-require conf/machine/apalis-imx8x.conf
-
-# reuse DISTRO_FLAVOUR to display special version exception in the
-# Toradex Easy Installer application
-DISTRO_FLAVOUR:append = " for V1.1A HW"
-MACHINE_NAME = "Apalis-iMX8X-V11A"
diff --git a/conf/machine/apalis-imx8x.conf b/conf/machine/apalis-imx8x.conf
deleted file mode 100644
index 0ae847e..0000000
--- a/conf/machine/apalis-imx8x.conf
+++ /dev/null
@@ -1,81 +0,0 @@
-#@TYPE: Machine
-#@NAME: Toradex Apalis iMX8X
-#@DESCRIPTION: Toradex Apalis iMX8X powered by a i.MX 8X SoC
-#@MAINTAINER: Philippe Schenker <philippe.schenker@toradex.com>
-
-MACHINE_NAME = "Apalis-iMX8X"
-
-MACHINEOVERRIDES =. "mx8:mx8x:mx8qxp:"
-
-IMX_DEFAULT_BSP = "nxp"
-
-require conf/machine/include/imx-base.inc
-# if one wants cortexa35-crypto, set DEFAULTTUNE accordingly
-DEFAULTTUNE:mx8qxp = "aarch64"
-require conf/machine/include/arm/armv8a/tune-cortexa35.inc
-
-# Don't include kernels in standard images
-RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
-
-LOADADDR = ""
-
-# we do not want to have getty running on tty1 as we run
-# auto-serial-console there
-USE_VT = "0"
-
-KERNEL_DEVICETREE = " \
- freescale/imx8qxp-apalis-eval.dtb \
-"
-
-KERNEL_IMAGETYPE:aarch64 = "Image.gz"
-
-UBOOT_SUFFIX = "bin"
-UBOOT_CONFIG ??= "sd"
-UBOOT_CONFIG[sd] = "apalis-imx8x_defconfig,sdcard"
-
-UBOOT_ENTRYPOINT = "0x80280000"
-UBOOT_DTB_LOADADDRESS = "0x83100000"
-UBOOT_DTBO_LOADADDRESS = "0x83200000"
-UBOOT_RD_LOADADDRESS = "0xA0000000"
-
-ATF_PLATFORM = "imx8qx"
-
-BOOT_SPACE = "65536"
-IMX_BOOT_SEEK = "32"
-
-IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr"
-WKS_FILE_DEPENDS:append = " u-boot-default-script"
-PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
-
-PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot = "u-boot-toradex"
-# Currently we use the nxp 2020.04 downstream for mx8 as some features are
-# not yet available in 2020.07.
-PREFERRED_VERSION_u-boot-toradex = "2020.04%"
-
-MACHINE_FIRMWARE:append = " linux-firmware-usb8997"
-MACHINE_FIRMWARE:append = " firmware-imx-vpu-imx8"
-
-IMXBOOT_TARGETS = "flash"
-IMX_BOOT_SOC_TARGET = "iMX8QX"
-
-PREFERRED_PROVIDER_imx-sc-firmware = "imx-sc-firmware-toradex"
-BOARD_TYPE = "apalis"
-
-IMAGE_CLASSES:append = " image_type_tezi"
-IMAGE_FSTYPES += "teziimg"
-
-# The imx-boot container takes care for the i.MX 8 offset, so the container
-# has to be flashed at offset 0 directly
-UBOOT_BINARY_TEZI_EMMC = "imx-boot"
-OFFSET_BOOTROM_PAYLOAD = "0"
-
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "apalis-imx8x_dsihdmi_overlay.dtbo apalis-imx8x_parallel-rgb_overlay.dtbo display-lt161010_overlay.dtbo apalis-imx8x_ad7879_overlay.dtbo"
-
-TORADEX_PRODUCT_IDS = "0046 0053 0054 2600"
-TORADEX_PRODUCT_IDS[0046] = "imx8qxp-apalis-eval.dtb"
-TORADEX_PRODUCT_IDS[0053] = "imx8qxp-apalis-eval.dtb"
-TORADEX_PRODUCT_IDS[0054] = "imx8qxp-apalis-eval.dtb"
-TORADEX_PRODUCT_IDS[2600] = "imx8qxp-apalis-eval.dtb"
diff --git a/conf/machine/colibri-imx6ull-emmc.conf b/conf/machine/colibri-imx6ull-emmc.conf
index 7833b91..a0741a5 100644
--- a/conf/machine/colibri-imx6ull-emmc.conf
+++ b/conf/machine/colibri-imx6ull-emmc.conf
@@ -9,35 +9,33 @@ MACHINEOVERRIDES =. "mx6:mx6ul:mx6ull:"
require conf/machine/include/imx-base.inc
require conf/machine/include/arm/armv7a/tune-cortexa7.inc
-PREFERRED_PROVIDER_virtual/kernel_use-nxp-bsp ?= "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp_preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
-
-KERNEL_DEVICETREE:use-mainline-bsp = " \
- imx6ull-colibri-emmc-eval-v3.dtb \
-"
-KERNEL_DEVICETREE:use-nxp-bsp = " \
- imx6ull-colibri-emmc-aster.dtb \
- imx6ull-colibri-emmc-eval-v3.dtb \
- imx6ull-colibri-emmc-iris.dtb \
- imx6ull-colibri-emmc-iris-v2.dtb \
+PREFERRED_PROVIDER_virtual/kernel:use-nxp-bsp ?= "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+
+# with kernel 6.5 the device trees were moved to vendor subdirs
+KERNEL_DTB_PREFIX = "nxp/imx/"
+KERNEL_DTB_PREFIX:preempt-rt = "nxp/imx/"
+KERNEL_DTB_PREFIX:use-nxp-bsp = ""
+KERNEL_DEVICETREE = " \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-emmc-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-emmc-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-emmc-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-emmc-iris-v2.dtb \
"
KERNEL_IMAGETYPE = "zImage"
# The kernel lives in its own ubi volume.
-RDEPENDS_${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
-PREFERRED_PROVIDER_u-boot ?= "u-boot-toradex"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils"
-PREFERRED_RPROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils"
+IMX_DEFAULT_BOOTLOADER = "u-boot-toradex"
PREFERRED_PROVIDER_u-boot-default-script ?= "u-boot-script-toradex"
-
UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_MACHINE ?= "colibri-imx6ull-emmc_defconfig"
+UBOOT_SUFFIX = "imx"
IMAGE_FSTYPES += "tar.xz"
# wic support
diff --git a/conf/machine/colibri-imx8x-v10b.conf b/conf/machine/colibri-imx8x-v10b.conf
deleted file mode 100644
index 8fccc8c..0000000
--- a/conf/machine/colibri-imx8x-v10b.conf
+++ /dev/null
@@ -1,17 +0,0 @@
-#@TYPE: Machine
-#@NAME: Toradex Colibri iMX8X with B0 silicon
-#@DESCRIPTION: Toradex Colibri iMX8X powered by a i.MX 8X SoC (B0 silicon) as found on older SoM Versions V1.0B
-#@MAINTAINER: Max Krummenacher <max.krummenacherr@toradex.com>
-
-# Set SoC revision to B0
-MACHINE_FEATURES:append = " soc-revb0"
-
-# keep the original machine as an override with high prio
-MACHINEOVERRIDES =. "colibri-imx8x:"
-
-require conf/machine/colibri-imx8x.conf
-
-# reuse DISTRO_FLAVOUR to display special version exception in the
-# Toradex Easy Installer application
-DISTRO_FLAVOUR:append = " for V1.0B HW"
-MACHINE_NAME = "Colibri-iMX8X-V10B"
diff --git a/conf/machine/colibri-imx8x.conf b/conf/machine/colibri-imx8x.conf
index 272638c..84a1d80 100644
--- a/conf/machine/colibri-imx8x.conf
+++ b/conf/machine/colibri-imx8x.conf
@@ -7,15 +7,17 @@ MACHINE_NAME = "Colibri-iMX8X"
MACHINEOVERRIDES =. "mx8:mx8x:mx8qxp:"
+MACHINE_EXTRA_RRECOMMENDS:append = " mwifiexconf"
+
IMX_DEFAULT_BSP = "nxp"
require conf/machine/include/imx-base.inc
# if one wants cortexa35-crypto, set DEFAULTTUNE accordingly
-DEFAULTTUNE:mx8qxp = "aarch64"
+DEFAULTTUNE:mx8qxp-generic-bsp = "armv8a-crypto"
require conf/machine/include/arm/armv8a/tune-cortexa35.inc
# Don't include kernels in standard images
-RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
LOADADDR = ""
@@ -23,25 +25,31 @@ LOADADDR = ""
# auto-serial-console there
USE_VT = "0"
+KERNEL_DTB_PREFIX = "freescale/"
KERNEL_DEVICETREE = " \
- freescale/imx8dx-colibri-aster.dtb \
- freescale/imx8dx-colibri-eval-v3.dtb \
- freescale/imx8dx-colibri-iris.dtb \
- freescale/imx8dx-colibri-iris-v2.dtb \
- freescale/imx8qxp-colibri-aster.dtb \
- freescale/imx8qxp-colibri-eval-v3.dtb \
- freescale/imx8qxp-colibri-iris.dtb \
- freescale/imx8qxp-colibri-iris-v2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8dx-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx8dx-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx8dx-colibri-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx8dx-colibri-iris-v2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-iris-v2.dtb \
+"
+KERNEL_DEVICETREE:use-mainline-bsp = " \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-iris-v2.dtb \
+ ${KERNEL_DTB_PREFIX}imx8qxp-colibri-iris.dtb \
"
-KERNEL_DEVICETREE:use-mainline-bsp = "freescale/imx8qxp-colibri-eval-v3.dtb"
-KERNEL_IMAGETYPE:aarch64 = "Image.gz"
+KERNEL_IMAGETYPE:mx8-generic-bsp = "Image.gz"
UBOOT_SUFFIX = "bin"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "colibri-imx8x_defconfig,sdcard"
-UBOOT_ENTRYPOINT = "0x80280000"
+UBOOT_ENTRYPOINT = "0x96000000"
UBOOT_DTB_LOADADDRESS = "0x83100000"
UBOOT_DTBO_LOADADDRESS = "0x83200000"
UBOOT_RD_LOADADDRESS = "0xA0000000"
@@ -56,19 +64,20 @@ WKS_FILE_DEPENDS:append = " u-boot-default-script"
PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp:preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
-
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot = "u-boot-toradex"
-# Currently we use the nxp 2020.04 downstream for mx8 as some features are
-# not yet available in 2020.07.
-PREFERRED_VERSION_u-boot-toradex = "2020.04%"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_VERSION_linux-imx-headers = "5.15"
+
+IMX_DEFAULT_BOOTLOADER = "u-boot-toradex"
+# Currently we use the nxp 2022.04 downstream for mx8
+PREFERRED_VERSION_u-boot-toradex = "2022.04%"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
+UBOOT_MAKE_TARGET:use-mainline-bsp = "all"
+UBOOT_DTB_NAME:use-mainline-bsp:use-head-next = "fsl-imx8qxp-colibri.dts"
MACHINE_FIRMWARE:append = " linux-firmware-pcie8997"
-MACHINE_FIRMWARE:append = " firmware-imx-vpu-imx8"
IMXBOOT_TARGETS = "flash"
IMX_BOOT_SOC_TARGET = "iMX8QX"
@@ -84,7 +93,8 @@ IMAGE_FSTYPES += "teziimg"
UBOOT_BINARY_TEZI_EMMC = "imx-boot"
OFFSET_BOOTROM_PAYLOAD = "0"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "colibri-imx8x_parallel-rgb_overlay.dtbo colibri-imx8x_ad7879_overlay.dtbo display-vga_overlay.dtbo"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "colibri-imx8x_vga-640x480_overlay.dtbo"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = ""
TORADEX_PRODUCT_IDS = "0038 0050 0051 0052"
TORADEX_PRODUCT_IDS[0038] = "imx8qxp-colibri-eval-v3.dtb"
diff --git a/conf/machine/include/apalis-imx6.inc b/conf/machine/include/apalis-imx6.inc
index 3b632eb..8507628 100644
--- a/conf/machine/include/apalis-imx6.inc
+++ b/conf/machine/include/apalis-imx6.inc
@@ -1,32 +1,43 @@
IMAGE_CLASSES:append = " image_type_tezi"
IMAGE_FSTYPES:append = " teziimg"
-TORADEX_PRODUCT_IDS = "0027 0028 0029 0035"
# The payload offsets are given in number of 512 byte blocks.
OFFSET_BOOTROM_PAYLOAD = "2"
OFFSET_SPL_PAYLOAD = "138"
+TORADEX_PRODUCT_IDS = "0027 0028 0029 0035 0082 0083 0084 0085"
MACHINE_NAME = "Apalis-iMX6"
-KERNEL_DEVICETREE += "imx6q-apalis-ixora-v1.2.dtb"
-KERNEL_DEVICETREE:use-mainline-bsp += " \
- imx6q-apalis-eval.dtb \
- imx6q-apalis-ixora-v1.1.dtb \
+# with kernel 6.5 the device trees were moved to vendor subdirs
+KERNEL_DTB_PREFIX = "nxp/imx/"
+KERNEL_DTB_PREFIX:preempt-rt = "nxp/imx/"
+KERNEL_DTB_PREFIX:use-nxp-bsp = ""
+KERNEL_DEVICETREE:apalis-imx6 = " \
+ ${KERNEL_DTB_PREFIX}imx6q-apalis-eval.dtb \
+ ${KERNEL_DTB_PREFIX}imx6q-apalis-ixora.dtb \
+ ${KERNEL_DTB_PREFIX}imx6q-apalis-ixora-v1.1.dtb \
+ ${KERNEL_DTB_PREFIX}imx6q-apalis-ixora-v1.2.dtb \
"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = " \
+ apalis-imx6_hdmi_overlay.dtbo \
+ apalis-imx6_spi1_spidev_overlay.dtbo \
+ apalis-imx6_spi2_spidev_overlay.dtbo \
+"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = ""
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp:preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+IMX_DEFAULT_BOOTLOADER:apalis-imx6 = "u-boot-toradex"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
UBOOT_SUFFIX = "img"
-UBOOT_ENTRYPOINT:apalis-imx6 = "0x11000000"
-UBOOT_DTB_LOADADDRESS:apalis-imx6 = "0x12100000"
-UBOOT_DTBO_LOADADDRESS:apalis-imx6 = "0x17000000"
-
MACHINE_FIRMWARE:remove = "firmware-imx-epdc"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "apalis-imx6_hdmi_overlay.dtbo"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = "apalis-imx6_parallel-rgb_overlay.dtbo display-edt7_overlay.dtbo apalis-imx6_stmpe-ts_overlay.dtbo apalis-imx6_hdmi_overlay.dtbo"
+UBOOT_DTB_LOADADDRESS:apalis-imx6 = "0x18200000"
+UBOOT_DTBO_LOADADDRESS:apalis-imx6 = "0x18300000"
+UBOOT_ENTRYPOINT:apalis-imx6 = "0x14200000"
+UBOOT_RD_LOADADDRESS:apalis-imx6 = "0x1A400000"
diff --git a/conf/machine/include/colibri-imx6.inc b/conf/machine/include/colibri-imx6.inc
index d6a1a0c..7c0a339 100644
--- a/conf/machine/include/colibri-imx6.inc
+++ b/conf/machine/include/colibri-imx6.inc
@@ -1,31 +1,41 @@
IMAGE_CLASSES:append = " image_type_tezi"
IMAGE_FSTYPES:append = " teziimg"
-TORADEX_PRODUCT_IDS = "0014 0015 0016 0017"
# The payload offsets are given in number of 512 byte blocks.
OFFSET_BOOTROM_PAYLOAD = "2"
OFFSET_SPL_PAYLOAD = "138"
+TORADEX_PRODUCT_IDS = "0014 0015 0016 0017 0077 0078 0079 0080"
MACHINE_NAME = "Colibri-iMX6"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "colibri-imx6_lcd-vga_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = "colibri-imx6_parallel-rgb_overlay.dtbo colibri-imx6_stmpe-ts_overlay.dtbo display-vga_overlay.dtbo"
-
-KERNEL_DEVICETREE += " \
- imx6dl-colibri-iris.dtb \
- imx6dl-colibri-iris-v2.dtb \
+# with kernel 6.5 the device trees were moved to vendor subdirs
+KERNEL_DTB_PREFIX = "nxp/imx/"
+KERNEL_DTB_PREFIX:preempt-rt = "nxp/imx/"
+KERNEL_DTB_PREFIX:use-nxp-bsp = ""
+KERNEL_DEVICETREE:colibri-imx6 = " \
+ ${KERNEL_DTB_PREFIX}imx6dl-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx6dl-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx6dl-colibri-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx6dl-colibri-iris-v2.dtb \
+"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = " \
+ colibri-imx6_vga-640x480_overlay.dtbo \
"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = ""
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp:preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+IMX_DEFAULT_BOOTLOADER:colibri-imx6 = "u-boot-toradex"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
UBOOT_SUFFIX = "img"
MACHINE_FIRMWARE:remove = "firmware-imx-epdc"
-UBOOT_ENTRYPOINT:colibri-imx6 = "0x11000000"
-UBOOT_DTB_LOADADDRESS:colibri-imx6 = "0x12100000"
-UBOOT_DTBO_LOADADDRESS:colibri-imx6 = "0x17000000"
+UBOOT_DTB_LOADADDRESS:colibri-imx6 = "0x18200000"
+UBOOT_DTBO_LOADADDRESS:colibri-imx6 = "0x18300000"
+UBOOT_ENTRYPOINT:colibri-imx6 = "0x14200000"
+UBOOT_RD_LOADADDRESS:colibri-imx6 = "0x1A400000"
diff --git a/conf/machine/include/colibri-imx6ull-emmc.inc b/conf/machine/include/colibri-imx6ull-emmc.inc
index 4449017..bf56ae8 100644
--- a/conf/machine/include/colibri-imx6ull-emmc.inc
+++ b/conf/machine/include/colibri-imx6ull-emmc.inc
@@ -9,21 +9,24 @@ WIC_CREATE_EXTRA_ARGS:append = " --no-fstab-update"
MACHINE_NAME = "Colibri-iMX6ULL-eMMC"
-PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
-
-# MACHINEOVERRIDES:append:upstream = ":use-mainline-bsp"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = " \
+ colibri-imx6ull_vga-640x480_overlay.dtbo \
+"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = ""
-UBOOT_MAKE_TARGET:colibri-imx6ull-emmc = "u-boot.imx"
-UBOOT_SUFFIX:${MACHINE} = "imx"
-UBOOT_ENTRYPOINT:colibri-imx6ull-emmc = "0x81000000"
-UBOOT_DTB_LOADADDRESS:colibri-imx6ull-emmc = "0x82100000"
-UBOOT_DTBO_LOADADDRESS:colibri-imx6ull-emmc = "0x87000000"
+PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "colibri-imx6ull_parallel-rgb_vga_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = "colibri-imx6ull_parallel-rgb_overlay.dtbo colibri-imx6ull_ad7879_overlay.dtbo display-vga_overlay.dtbo"
+IMX_DEFAULT_BOOTLOADER:colibri-imx6ull-emmc = "u-boot-toradex"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
+PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
-PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp_preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
+UBOOT_DTB_LOADADDRESS:colibri-imx6ull-emmc = "0x88200000"
+UBOOT_DTBO_LOADADDRESS:colibri-imx6ull-emmc = "0x88300000"
+UBOOT_ENTRYPOINT:colibri-imx6ull-emmc = "0x84200000"
+UBOOT_MAKE_TARGET:colibri-imx6ull-emmc = "u-boot.imx"
+UBOOT_RD_LOADADDRESS:colibri-imx6ull-emmc = "0x8A400000"
+UBOOT_SUFFIX:colibri-imx6ull-emmc = "imx"
diff --git a/conf/machine/include/colibri-imx6ull.inc b/conf/machine/include/colibri-imx6ull.inc
index c6538d2..f1c0fc0 100644
--- a/conf/machine/include/colibri-imx6ull.inc
+++ b/conf/machine/include/colibri-imx6ull.inc
@@ -11,28 +11,37 @@ WIC_CREATE_EXTRA_ARGS:append = " --no-fstab-update"
MACHINE_NAME = "Colibri-iMX6ULL"
-PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
-UBOOT_ENTRYPOINT:colibri-imx6ull = "0x81000000"
-
-MACHINEOVERRIDES:append:upstream = ":use-mainline-bsp"
-MACHINE_FIRMWARE:remove:use-mainline-bsp = "firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+MACHINE_EXTRA_RRECOMMENDS:append = " mwifiexconf"
-UBOOT_MAKE_TARGET:colibri-imx6ull = "u-boot.imx"
-UBOOT_ENTRYPOINT:colibri-imx6ull = "0x81000000"
-UBOOT_DTB_LOADADDRESS:colibri-imx6ull = "0x82100000"
-UBOOT_DTBO_LOADADDRESS:colibri-imx6ull = "0x87000000"
-
-KERNEL_DEVICETREE:append:use_nxp_bsp = " \
- imx6ull-colibri-aster.dtb \
- imx6ull-colibri-iris.dtb \
- imx6ull-colibri-iris-v2.dtb \
- imx6ull-colibri-wifi-aster.dtb \
- imx6ull-colibri-wifi-iris.dtb \
- imx6ull-colibri-wifi-iris-v2.dtb \
+# with kernel 6.5 the device trees were moved to vendor subdirs
+KERNEL_DTB_PREFIX = "nxp/imx/"
+KERNEL_DTB_PREFIX:preempt-rt = "nxp/imx/"
+KERNEL_DTB_PREFIX:use-nxp-bsp = ""
+KERNEL_DEVICETREE:colibri-imx6ull = " \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-iris-v2.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-wifi-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-wifi-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-wifi-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx6ull-colibri-wifi-iris-v2.dtb \
"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp:preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+
+IMX_DEFAULT_BOOTLOADER:colibri-imx6ull = "u-boot-toradex"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
+PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
+
+MACHINE_FIRMWARE:remove:use-mainline-bsp = "firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+
+UBOOT_DTB_LOADADDRESS:colibri-imx6ull = "0x88200000"
+UBOOT_DTBO_LOADADDRESS:colibri-imx6ull = "0x88300000"
+UBOOT_ENTRYPOINT:colibri-imx6ull = "0x84200000"
+UBOOT_MAKE_TARGET:colibri-imx6ull = "u-boot-nand.imx"
+UBOOT_RD_LOADADDRESS:colibri-imx6ull = "0x8A400000"
diff --git a/conf/machine/include/colibri-imx7-emmc.inc b/conf/machine/include/colibri-imx7-emmc.inc
index a656bf9..cd37422 100644
--- a/conf/machine/include/colibri-imx7-emmc.inc
+++ b/conf/machine/include/colibri-imx7-emmc.inc
@@ -7,33 +7,39 @@ TORADEX_FLASH_TYPE = "emmc"
MACHINE_NAME = "Colibri-iMX7-eMMC"
-MACHINEOVERRIDES:append:upstream = ":use-mainline-bsp"
+# with kernel 6.5 the device trees were moved to vendor subdirs
+KERNEL_DTB_PREFIX = "nxp/imx/"
+KERNEL_DTB_PREFIX:preempt-rt = "nxp/imx/"
+KERNEL_DTB_PREFIX:use-nxp-bsp = ""
+KERNEL_DEVICETREE:colibri-imx7-emmc = " \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-emmc-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-emmc-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-emmc-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-emmc-iris-v2.dtb \
+"
-MACHINE_FIRMWARE:remove = "firmware-imx-epdc"
-MACHINE_FIRMWARE:remove:use-mainline-bsp = "firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = " \
+ colibri-imx7_vga-640x480_overlay.dtbo \
+"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = ""
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp:preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
-
-KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- imx7d-colibri-emmc-iris.dtb \
- imx7d-colibri-emmc-iris-v2.dtb \
-"
-KERNEL_DEVICETREE:append:use-mainline-bsp = " \
- imx7d-colibri-emmc-aster.dtb \
-"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+IMX_DEFAULT_BOOTLOADER:colibri-imx7-emmc = "u-boot-toradex"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "colibri-imx7_lcd-vga_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = "colibri-imx7_parallel-rgb_overlay.dtbo colibri-imx7_ad7879_overlay.dtbo display-vga_overlay.dtbo"
+MACHINE_FIRMWARE:remove = "firmware-imx-epdc"
+MACHINE_FIRMWARE:remove:use-mainline-bsp = "firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
UBOOT_BINARY:colibri-imx7-emmc = "u-boot.imx"
-UBOOT_DTB_LOADADDRESS:colibri-imx7-emmc = "0x82000000"
-UBOOT_DTBO_LOADADDRESS:colibri-imx7-emmc = "0x87000000"
-UBOOT_ENTRYPOINT:colibri-imx7-emmc = "0x81000000"
-UBOOT_MAKE_TARGET = "u-boot.imx"
+UBOOT_DTB_LOADADDRESS:colibri-imx7-emmc = "0x88200000"
+UBOOT_DTBO_LOADADDRESS:colibri-imx7-emmc = "0x88300000"
+UBOOT_ENTRYPOINT:colibri-imx7-emmc = "0x84200000"
+UBOOT_MAKE_TARGET:colibri-imx7-emmc = "u-boot.imx"
+UBOOT_RD_LOADADDRESS:colibri-imx7-emmc = "0x8A400000"
UBOOT_SUFFIX:${MACHINE} = "imx"
diff --git a/conf/machine/include/colibri-imx7.inc b/conf/machine/include/colibri-imx7.inc
index c6cdbaf..5aa7a04 100644
--- a/conf/machine/include/colibri-imx7.inc
+++ b/conf/machine/include/colibri-imx7.inc
@@ -1,38 +1,44 @@
IMAGE_CLASSES:append = " image_type_tezi"
IMAGE_FSTYPES:append = " teziimg"
-TORADEX_PRODUCT_IDS = "0032 0033 0041"
+TORADEX_PRODUCT_IDS = "0032 0033 0041 0081"
TORADEX_PRODUCT_IDS[0032] = "imx7s-colibri-eval-v3.dtb"
TORADEX_PRODUCT_IDS[0033] = "imx7d-colibri-eval-v3.dtb"
TORADEX_PRODUCT_IDS[0041] = "imx7d-colibri-eval-v3.dtb"
+TORADEX_PRODUCT_IDS[0081] = "imx7d-colibri-eval-v3.dtb"
TORADEX_FLASH_TYPE = "rawnand"
MACHINE_NAME = "Colibri-iMX7"
-MACHINEOVERRIDES:append:upstream = ":use-mainline-bsp"
-
-MACHINE_FIRMWARE:remove = "firmware-imx-epdc"
-MACHINE_FIRMWARE:remove:use-mainline-bsp = "firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
-
-KERNEL_DEVICETREE:append:use-nxp-bsp += " \
- imx7d-colibri-iris.dtb \
- imx7d-colibri-iris-v2.dtb \
- imx7s-colibri-iris.dtb \
- imx7s-colibri-iris-v2.dtb \
-"
-KERNEL_DEVICETREE:append:use-mainline-bsp = " \
- imx7d-colibri-aster.dtb \
- imx7s-colibri-aster.dtb \
+# with kernel 6.5 the device trees were moved to vendor subdirs
+KERNEL_DTB_PREFIX = "nxp/imx/"
+KERNEL_DTB_PREFIX:preempt-rt = "nxp/imx/"
+KERNEL_DTB_PREFIX:use-nxp-bsp = ""
+KERNEL_DEVICETREE:colibri-imx7 = " \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx7d-colibri-iris-v2.dtb \
+ ${KERNEL_DTB_PREFIX}imx7s-colibri-aster.dtb \
+ ${KERNEL_DTB_PREFIX}imx7s-colibri-eval-v3.dtb \
+ ${KERNEL_DTB_PREFIX}imx7s-colibri-iris.dtb \
+ ${KERNEL_DTB_PREFIX}imx7s-colibri-iris-v2.dtb \
"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp:preempt-rt = "linux-toradex-mainline"
-PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+IMX_DEFAULT_BOOTLOADER:colibri-imx7 = "u-boot-toradex"
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
-UBOOT_MAKE_TARGET:colibri-imx7 = "u-boot.imx"
-UBOOT_ENTRYPOINT:colibri-imx7 = "0x81000000"
-UBOOT_DTB_LOADADDRESS:colibri-imx7 = "0x82000000"
-UBOOT_DTBO_LOADADDRESS:colibri-imx7 = "0x87000000"
+MACHINE_FIRMWARE:remove = "firmware-imx-epdc"
+MACHINE_FIRMWARE:remove:use-mainline-bsp = "firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+
+UBOOT_DTB_LOADADDRESS:colibri-imx7 = "0x88200000"
+UBOOT_DTBO_LOADADDRESS:colibri-imx7 = "0x88300000"
+UBOOT_ENTRYPOINT:colibri-imx7 = "0x84200000"
+UBOOT_MAKE_TARGET:colibri-imx7 = "u-boot-nand.imx"
+UBOOT_RD_LOADADDRESS:colibri-imx7 = "0x88400000"
diff --git a/conf/machine/verdin-imx8mm.conf b/conf/machine/verdin-imx8mm.conf
index 68d01b8..b5536c4 100644
--- a/conf/machine/verdin-imx8mm.conf
+++ b/conf/machine/verdin-imx8mm.conf
@@ -8,40 +8,63 @@ MACHINE_NAME = "Verdin-iMX8MM"
MACHINEOVERRIDES =. "mx8:mx8m:mx8mm:"
+MACHINE_EXTRA_RRECOMMENDS:append = " mwifiexconf"
+
IMX_DEFAULT_BSP = "nxp"
+IMX_DEFAULT_BSP:upstream = "mainline"
require conf/machine/include/imx-base.inc
# override imx-base.inc which sets this to cortexa53-crypto
-DEFAULTTUNE:mx8mm = "aarch64"
+DEFAULTTUNE:mx8mm-generic-bsp = "armv8a-crypto"
require conf/machine/include/arm/armv8a/tune-cortexa53.inc
# Don't include kernels in standard images
-RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
+KERNEL_DTB_PREFIX = "freescale/"
KERNEL_DEVICETREE = " \
- freescale/imx8mm-verdin-nonwifi-dahlia.dtb \
- freescale/imx8mm-verdin-nonwifi-dev.dtb \
- freescale/imx8mm-verdin-wifi-dahlia.dtb \
- freescale/imx8mm-verdin-wifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-mallow.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-yavia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-mallow.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-yavia.dtb \
+"
+KERNEL_DEVICETREE:use-mainline-bsp = " \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-nonwifi-yavia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mm-verdin-wifi-yavia.dtb \
"
-KERNEL_IMAGETYPE:aarch64 = "Image.gz"
+KERNEL_IMAGETYPE:mx8-generic-bsp = "Image.gz"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "verdin-imx8mm_defconfig,sdcard"
SPL_BINARY = "spl/u-boot-spl.bin"
-UBOOT_ENTRYPOINT = "0x40280000"
-UBOOT_DTB_LOADADDRESS = "0x43000000"
-UBOOT_DTBO_LOADADDRESS = "0x46000000"
-UBOOT_RD_LOADADDRESS = "0x60000000"
+UBOOT_DTB_LOADADDRESS:mx8mm-generic-bsp = "0x50200000"
+UBOOT_DTBO_LOADADDRESS:mx8mm-generic-bsp = "0x50240000"
+UBOOT_ENTRYPOINT:mx8mm-generic-bsp = "0x48200000"
+UBOOT_RD_LOADADDRESS = "0x52300000"
+
+# Set u-boot DTB
+UBOOT_DTB_NAME = "imx8mm-verdin.dtb"
+UBOOT_DTB_NAME:use-mainline-bsp:use-head-next = "imx8mm-verdin-wifi-dev.dtb"
# Set DDR FIRMWARE
-DDR_FIRMWARE_NAME = "lpddr4_pmu_train_1d_imem.bin lpddr4_pmu_train_1d_dmem.bin lpddr4_pmu_train_2d_imem.bin lpddr4_pmu_train_2d_dmem.bin"
+DDR_FIRMWARE_NAME = " \
+ lpddr4_pmu_train_1d_imem.bin \
+ lpddr4_pmu_train_1d_dmem.bin \
+ lpddr4_pmu_train_2d_imem.bin \
+ lpddr4_pmu_train_2d_dmem.bin \
+"
ATF_PLATFORM = "imx8mm"
-
-# Set u-boot DTB
-UBOOT_DTB_NAME = "imx8mm-verdin.dtb"
+SOC_ATF_BOOT_UART_BASE:verdin-imx8mm = "0x30860000"
BOOT_SPACE = "65536"
@@ -60,20 +83,28 @@ IMX_BOOT_SEEK = "33"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FEATURES += "3g bluetooth alsa ext2 pci screen touchscreen usbgadget usbhost vfat wifi"
-
-
-# Add additional firmware
-MACHINE_FIRMWARE:append = " linux-firmware-ath10k linux-firmware-imx-sdma-imx7d"
+MACHINE_FEATURES += "3g bluetooth alsa ext2 pci screen touchscreen tpm2 usbgadget usbhost vfat wifi"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot = "u-boot-toradex"
-# Currently we use the nxp 2020.04 downstream for mx8 as some features are
-# not yet available in 2020.07.
-PREFERRED_VERSION_u-boot-toradex = "2020.04%"
-
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_VERSION_linux-imx-headers = "5.15"
+
+IMX_DEFAULT_BOOTLOADER = "u-boot-toradex"
+# Currently we use the nxp 2022.04 downstream for mx8
+PREFERRED_VERSION_u-boot-toradex = "2022.04%"
+# With use-mainline-bsp build mainline U-Boot
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
+# variables to control imx-boot with u-boot
+ATF_LOAD_ADDR = "0x920000"
+IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
+TEE_LOAD_ADDR = "0xbe000000"
+UBOOT_MAKE_TARGET:use-mainline-bsp = "all"
+
+# handle machine firmware
+MACHINE_FIRMWARE:append = " linux-firmware-ath10k linux-firmware-imx-sdma-imx7d"
MACHINE_FIRMWARE:append = " linux-firmware-sd8997"
MACHINE_FIRMWARE:append = " firmware-imx-vpu-imx8"
@@ -85,10 +116,13 @@ IMAGE_FSTYPES += "teziimg"
UBOOT_BINARY_TEZI_EMMC = "imx-boot"
OFFSET_BOOTROM_PAYLOAD = "2"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "verdin-imx8mm_lt8912_overlay.dtbo"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "verdin-imx8mm_dsi-to-hdmi_overlay.dtbo verdin-imx8mm_spidev_overlay.dtbo"
-TORADEX_PRODUCT_IDS = "0055 0057 0059 0060"
+TORADEX_PRODUCT_IDS = "0055 0057 0059 0060 0068 0086 0087"
TORADEX_PRODUCT_IDS[0055] = "imx8mm-verdin-wifi-v1.1-dev.dtb"
TORADEX_PRODUCT_IDS[0057] = "imx8mm-verdin-nonwifi-v1.1-dev.dtb"
TORADEX_PRODUCT_IDS[0059] = "imx8mm-verdin-nonwifi-v1.1-dev.dtb"
TORADEX_PRODUCT_IDS[0060] = "imx8mm-verdin-wifi-v1.1-dev.dtb"
+TORADEX_PRODUCT_IDS[0068] = "imx8mm-verdin-wifi-v1.1-dev.dtb"
+TORADEX_PRODUCT_IDS[0086] = "imx8mm-verdin-nonwifi-v1.1-dev.dtb"
+TORADEX_PRODUCT_IDS[0087] = "imx8mm-verdin-nonwifi-v1.1-dev.dtb"
diff --git a/conf/machine/verdin-imx8mp.conf b/conf/machine/verdin-imx8mp.conf
index 51d8584..387af29 100644
--- a/conf/machine/verdin-imx8mp.conf
+++ b/conf/machine/verdin-imx8mp.conf
@@ -8,35 +8,52 @@ MACHINE_NAME = "Verdin-iMX8MP"
MACHINEOVERRIDES =. "mx8:mx8m:mx8mp:"
+MACHINE_EXTRA_RRECOMMENDS:append = " mwifiexconf"
+
IMX_DEFAULT_BSP = "nxp"
+IMX_DEFAULT_BSP:upstream = "mainline"
require conf/machine/include/imx-base.inc
# override imx-base.inc which sets this to cortexa53-crypto
-DEFAULTTUNE:mx8mp = "aarch64"
+DEFAULTTUNE:mx8mp-generic-bsp = "armv8a-crypto"
require conf/machine/include/arm/armv8a/tune-cortexa53.inc
# Don't include kernels in standard images
-RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = ""
+KERNEL_DTB_PREFIX = "freescale/"
KERNEL_DEVICETREE = " \
- freescale/imx8mp-verdin-nonwifi-dahlia.dtb \
- freescale/imx8mp-verdin-nonwifi-dev.dtb \
- freescale/imx8mp-verdin-wifi-dahlia.dtb \
- freescale/imx8mp-verdin-wifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-mallow.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-yavia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-mallow.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-yavia.dtb \
+"
+KERNEL_DEVICETREE:use-mainline-bsp = " \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-nonwifi-yavia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-dahlia.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-dev.dtb \
+ ${KERNEL_DTB_PREFIX}imx8mp-verdin-wifi-yavia.dtb \
"
-KERNEL_IMAGETYPE:aarch64 = "Image.gz"
+KERNEL_IMAGETYPE:mx8-generic-bsp = "Image.gz"
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "verdin-imx8mp_defconfig,sdcard"
SPL_BINARY = "spl/u-boot-spl.bin"
-UBOOT_ENTRYPOINT = "0x40280000"
-UBOOT_DTB_LOADADDRESS = "0x43000000"
-UBOOT_DTBO_LOADADDRESS = "0x46000000"
-UBOOT_RD_LOADADDRESS = "0x60000000"
+UBOOT_DTB_LOADADDRESS:mx8mp-generic-bsp = "0x50200000"
+UBOOT_DTBO_LOADADDRESS:mx8mp-generic-bsp = "0x50240000"
+UBOOT_ENTRYPOINT:mx8mp-generic-bsp = "0x48200000"
+UBOOT_RD_LOADADDRESS = "0x52300000"
# Set u-boot DTB
UBOOT_DTB_NAME = "imx8mp-verdin.dtb"
+UBOOT_DTB_NAME:use-mainline-bsp:use-head-next = "imx8mp-verdin-wifi-dev.dtb"
# Set DDR FIRMWARE
LPDDR_FW_VERSION = "_202006"
@@ -48,6 +65,7 @@ DDR_FIRMWARE_NAME = " \
"
ATF_PLATFORM = "imx8mp"
+SOC_ATF_BOOT_UART_BASE:verdin-imx8mp = "0x30880000"
BOOT_SPACE = "65536"
IMAGE_BOOTLOADER = "imx-boot"
@@ -67,18 +85,28 @@ IMX_BOOT_SEEK = "32"
SERIAL_CONSOLES = "115200;ttymxc2"
-MACHINE_FEATURES += "3g bluetooth alsa ext2 pci screen touchscreen usbgadget usbhost vfat wifi"
+MACHINE_FEATURES += "3g bluetooth alsa ext2 pci screen touchscreen tpm2 usbgadget usbhost vfat wifi"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
-PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex"
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot = "u-boot-toradex"
-# Currently we use the nxp 2020.04 downstream for mx8 as some features are
-# not yet available in 2020.07.
-PREFERRED_VERSION_u-boot-toradex = "2020.04%"
+PREFERRED_PROVIDER_virtual/kernel:preempt-rt = "linux-toradex"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp = "linux-toradex-upstream"
+PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp:preempt-rt = "linux-toradex-upstream-rt"
+PREFERRED_PROVIDER_virtual/dtb:use-mainline-bsp = "device-tree-overlays-mainline"
+PREFERRED_VERSION_linux-imx-headers = "5.15"
+
+IMX_DEFAULT_BOOTLOADER = "u-boot-toradex"
+# Currently we use the nxp 2022.04 downstream for mx8
+PREFERRED_VERSION_u-boot-toradex = "2022.04%"
+# With use-mainline-bsp build mainline U-Boot
+PREFERRED_VERSION_u-boot-toradex:use-mainline-bsp = "mainline"
+# variables to control imx-boot with u-boot
+ATF_LOAD_ADDR = "0x920000"
+IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
+TEE_LOAD_ADDR = "0xbe000000"
+UBOOT_MAKE_TARGET:use-mainline-bsp = "all"
# handle machine firmware
-MACHINE_FIRMWARE:append = " linux-firmware-sd8997"
+MACHINE_FIRMWARE:append = " linux-firmware-sd8997 linux-firmware-nxp89xx"
MACHINE_FIRMWARE:remove = "firmware-sof-imx"
IMAGE_CLASSES:append = " image_type_tezi"
@@ -87,11 +115,14 @@ IMAGE_FSTYPES += "teziimg"
UBOOT_BINARY_TEZI_EMMC = "imx-boot"
OFFSET_BOOTROM_PAYLOAD = "0"
-TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "verdin-imx8mp_native-hdmi_overlay.dtbo verdin-imx8mp_lt8912_overlay.dtbo"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT = "verdin-imx8mp_hdmi_overlay.dtbo verdin-imx8mp_dsi-to-hdmi_overlay.dtbo verdin-imx8mp_spidev_overlay.dtbo"
+TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT:use-mainline-bsp = "verdin-imx8mp_dsi-to-hdmi_overlay.dtbo verdin-imx8mp_spidev_overlay.dtbo"
-TORADEX_PRODUCT_IDS = "0058 0061 0063 0064 0066"
+TORADEX_PRODUCT_IDS = "0058 0061 0063 0064 0065 0066 0070"
TORADEX_PRODUCT_IDS[0058] = "imx8mp-verdin-wifi-dev.dtb"
TORADEX_PRODUCT_IDS[0061] = "imx8mp-verdin-nonwifi-dev.dtb"
TORADEX_PRODUCT_IDS[0063] = "imx8mp-verdin-nonwifi-dev.dtb"
TORADEX_PRODUCT_IDS[0064] = "imx8mp-verdin-wifi-dev.dtb"
+TORADEX_PRODUCT_IDS[0065] = "imx8mp-verdin-nonwifi-dev.dtb"
TORADEX_PRODUCT_IDS[0066] = "imx8mp-verdin-wifi-dev.dtb"
+TORADEX_PRODUCT_IDS[0070] = "imx8mp-verdin-wifi-dev.dtb"
diff --git a/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend b/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
deleted file mode 100644
index 46d018a..0000000
--- a/qt5-layer/recipes-qt/qt5/qtwayland_%.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-PACKAGECONFIG:remove = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland x11', 'xcomposite-egl xcomposite-glx', '', d)}" \ No newline at end of file
diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend
index 324b51b..604229a 100644
--- a/recipes-bsp/alsa-state/alsa-state.bbappend
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -1,4 +1,4 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/alsa-state/:"
-#make this machine specific, as we have different codecs with different settings
-PACKAGE_ARCH = "${MACHINE_ARCH}"
+# make this machine specific, as we have different codecs with different settings
+PACKAGE_ARCH:tdx = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.conf b/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.conf
new file mode 100644
index 0000000..2be464b
--- /dev/null
+++ b/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.conf
@@ -0,0 +1,464 @@
+defaults.pcm.rate_converter "linear"
+
+pcm.default_card{
+type hw
+card "imx6qapalissgtl"
+}
+
+pcm.dmix_48000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 48000
+}
+}
+
+pcm.dmix_44100{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 44100
+}
+}
+
+pcm.dmix_32000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 32000
+}
+}
+
+pcm.dmix_24000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 24000
+}
+}
+
+pcm.dmix_22050{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 22050
+}
+}
+
+pcm.dmix_16000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 16000
+}
+}
+
+pcm.dmix_12000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 12000
+}
+}
+
+pcm.dmix_11025{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 11025
+}
+}
+
+pcm.dmix_8000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 8000
+}
+}
+
+pcm.!dsnoop_48000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 48000
+}
+}
+
+pcm.!dsnoop_44100{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 44100
+}
+}
+
+pcm.!dsnoop_32000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 32000
+}
+}
+
+pcm.!dsnoop_24000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 24000
+}
+}
+
+pcm.!dsnoop_22050{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 22050
+}
+}
+
+pcm.!dsnoop_16000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 16000
+}
+}
+
+pcm.!dsnoop_12000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 12000
+}
+}
+
+pcm.!dsnoop_11025{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 11025
+}
+}
+
+pcm.!dsnoop_8000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "default_card"
+period_time 40000
+format S16_LE
+rate 8000
+}
+}
+
+pcm.asymed{
+type asym
+playback.pcm "dmix_44100"
+capture.pcm "dsnoop_44100"
+}
+
+pcm.dsp0{
+type plug
+slave.pcm "asymed"
+}
+
+pcm.!default{
+type plug
+route_policy "average"
+slave.pcm "asymed"
+}
+
+ctl.!default{
+type hw
+card "imx6qapalissgtl"
+}
+
+ctl.mixer0{
+type hw
+card "imx6qapalissgtl"
+}
+
+pcm_slave.esai{
+ pcm "default_card"
+ channels 8
+ rate 48000
+ period_time 40000
+}
+
+pcm.esaich1to6{
+ type dshare
+ ipc_key 5778293
+ slave esai
+ bindings.0 0
+ bindings.1 4
+ bindings.2 1
+ bindings.3 5
+ bindings.4 2
+ bindings.5 6
+}
+
+pcm.esaich78{
+ type dshare
+ ipc_key 5778293
+ slave esai
+ bindings.0 3
+ bindings.1 7
+}
+
+pcm_slave.sai5 {
+ pcm "hw:5,0"
+ channels 8
+}
+
+pcm.sai5_ch1to8 {
+ type dsnoop
+ ipc_key 5185558
+ slave sai5
+ bindings.0 0
+ bindings.1 4
+ bindings.2 1
+ bindings.3 5
+ bindings.4 2
+ bindings.5 6
+ bindings.6 3
+ bindings.7 7
+}
+
+pcm.sai5_ch1to6 {
+ type dsnoop
+ ipc_key 5165558
+ slave sai5
+ bindings.0 0
+ bindings.1 4
+ bindings.2 1
+ bindings.3 5
+ bindings.4 2
+ bindings.5 6
+}
+
+pcm.sai5_ch1to4 {
+ type dsnoop
+ ipc_key 5145558
+ slave sai5
+ bindings.0 0
+ bindings.1 4
+ bindings.2 1
+ bindings.3 5
+}
+
+pcm_slave.sai1{
+ pcm "hw:4,0"
+ channels 16
+}
+
+pcm.sai1to16{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+ bindings.4 2
+ bindings.5 10
+ bindings.6 3
+ bindings.7 11
+ bindings.8 4
+ bindings.9 12
+ bindings.10 5
+ bindings.11 13
+ bindings.12 6
+ bindings.13 14
+ bindings.14 7
+ bindings.15 15
+}
+
+pcm.sai1to14{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+ bindings.4 2
+ bindings.5 10
+ bindings.6 3
+ bindings.7 11
+ bindings.8 4
+ bindings.9 12
+ bindings.10 5
+ bindings.11 13
+ bindings.12 6
+ bindings.13 14
+}
+
+pcm.sai1to12{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+ bindings.4 2
+ bindings.5 10
+ bindings.6 3
+ bindings.7 11
+ bindings.8 4
+ bindings.9 12
+ bindings.10 5
+ bindings.11 13
+}
+
+pcm.sai1to10{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+ bindings.4 2
+ bindings.5 10
+ bindings.6 3
+ bindings.7 11
+ bindings.8 4
+ bindings.9 12
+}
+
+pcm.sai1to8{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+ bindings.4 2
+ bindings.5 10
+ bindings.6 3
+ bindings.7 11
+}
+
+pcm.sai1to6{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+ bindings.4 2
+ bindings.5 10
+}
+
+pcm.sai1to4{
+ type dshare
+ slave sai1
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 8
+ bindings.2 1
+ bindings.3 9
+}
+
+pcm.cdnhdmi4ch {
+ type dshare
+ slave {
+ pcm "hw:3,0"
+ channels 4
+ }
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 2
+ bindings.2 1
+ bindings.3 3
+}
+
+pcm.cdnhdmi8ch {
+ type dshare
+ slave {
+ pcm "hw:3,0"
+ channels 8
+ }
+ ipc_key 5144458
+ bindings.0 0
+ bindings.1 4
+ bindings.2 1
+ bindings.3 5
+ bindings.4 2
+ bindings.5 6
+ bindings.6 3
+ bindings.7 7
+}
diff --git a/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.state b/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.state
index 0cb5534..fb2cb26 100644
--- a/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.state
+++ b/recipes-bsp/alsa-state/alsa-state/apalis-imx6/asound.state
@@ -1,14 +1,14 @@
-state.sgtl5000audio {
+state.imx6qapalissgtl {
control.1 {
iface MIXER
name 'PCM Playback Volume'
- value.0 117
- value.1 117
+ value.0 144
+ value.1 144
comment {
access 'read write'
type INTEGER
count 2
- range '0 - 156'
+ range '0 - 192'
}
}
control.2 {
@@ -26,15 +26,11 @@ state.sgtl5000audio {
control.3 {
iface MIXER
name 'Capture Attenuate Switch (-6dB)'
- value 0
+ value false
comment {
access 'read write'
- type INTEGER
+ type BOOLEAN
count 1
- range '0 - 2'
- dbmin -600
- dbmax 600
- dbvalue.0 -600
}
}
control.4 {
@@ -49,9 +45,19 @@ state.sgtl5000audio {
}
control.5 {
iface MIXER
+ name 'Capture Switch'
+ value true
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.6 {
+ iface MIXER
name 'Headphone Playback Volume'
- value.0 127
- value.1 127
+ value.0 63
+ value.1 63
comment {
access 'read write'
type INTEGER
@@ -59,13 +65,13 @@ state.sgtl5000audio {
range '0 - 127'
dbmin -5150
dbmax 1200
- dbvalue.0 -2000
- dbvalue.1 -2000
+ dbvalue.0 0
+ dbvalue.1 0
}
}
- control.6 {
+ control.7 {
iface MIXER
- name 'Headphone Playback ZC Switch'
+ name 'Headphone Playback Switch'
value true
comment {
access 'read write'
@@ -73,239 +79,227 @@ state.sgtl5000audio {
count 1
}
}
- control.7 {
- iface MIXER
- name 'Mic Volume'
- value 2
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 3'
- dbmin 0
- dbmax 4000
- dbvalue.0 3000
- }
- }
control.8 {
iface MIXER
- name 'Mic Bias Volt'
- value 4
+ name 'Headphone Playback ZC Switch'
+ value true
comment {
access 'read write'
- type INTEGER
+ type BOOLEAN
count 1
- range '0 - 7'
}
}
control.9 {
iface MIXER
- name 'Mic Bias Impedance'
- value 2
+ name 'Mic Volume'
+ value 0
comment {
access 'read write'
type INTEGER
count 1
range '0 - 3'
+ dbmin 0
+ dbmax 4000
+ dbvalue.0 0
}
}
control.10 {
iface MIXER
- name 'Bass Enable'
- value false
+ name 'Lineout Playback Volume'
+ value.0 18
+ value.1 18
comment {
access 'read write'
- type BOOLEAN
- count 1
+ type INTEGER
+ count 2
+ range '0 - 31'
+ dbmin -1550
+ dbmax 0
+ dbvalue.0 -650
+ dbvalue.1 -650
}
}
control.11 {
iface MIXER
- name 'Bass Filter Feq'
- value 1
+ name 'Lineout Playback Switch'
+ value false
comment {
access 'read write'
- type INTEGER
+ type BOOLEAN
count 1
- range '0 - 7'
- dbmin 80
- dbmax 225
- dbvalue.0 100
}
}
control.12 {
iface MIXER
- name 'Bass Volume'
- value 58
+ name 'DAP Main channel'
+ value 32768
comment {
access 'read write'
type INTEGER
count 1
- range '0 - 63'
+ range '0 - 65535'
+ dbmin 0
+ dbmax 65535
+ dbvalue.0 32768
}
}
control.13 {
iface MIXER
- name 'Bass Level'
- value 96
+ name 'DAP Mix channel'
+ value 0
comment {
access 'read write'
type INTEGER
count 1
- range '0 - 127'
+ range '0 - 65535'
+ dbmin 0
+ dbmax 65535
+ dbvalue.0 0
}
}
control.14 {
iface MIXER
- name 'Surround Width'
- value 4
+ name 'AVC Switch'
+ value false
comment {
access 'read write'
- type INTEGER
+ type BOOLEAN
count 1
- range '0 - 7'
}
}
control.15 {
iface MIXER
- name 'Main Channel Volume'
- value 100
+ name 'AVC Hard Limiter Switch'
+ value false
comment {
access 'read write'
- type INTEGER
+ type BOOLEAN
count 1
- range '0 - 200'
- dbmin 0
- dbmax 200
- dbvalue.0 100
}
}
control.16 {
iface MIXER
- name 'Mixer Channel Volume'
- value 0
+ name 'AVC Max Gain Volume'
+ value 1
comment {
access 'read write'
type INTEGER
count 1
- range '0 - 200'
+ range '0 - 2'
dbmin 0
- dbmax 200
- dbvalue.0 0
+ dbmax 1200
+ dbvalue.0 600
}
}
control.17 {
iface MIXER
- name 'AVC Enable'
- value false
+ name 'AVC Integrator Response'
+ value 1
comment {
access 'read write'
- type BOOLEAN
+ type INTEGER
count 1
+ range '0 - 3'
}
}
control.18 {
iface MIXER
- name 'AVC Hard Limit'
- value false
+ name 'AVC Threshold Volume'
+ value 12
comment {
access 'read write'
- type BOOLEAN
+ type INTEGER
count 1
+ range '0 - 96'
+ dbmin 0
+ dbmax 9600
+ dbvalue.0 1200
}
}
control.19 {
iface MIXER
- name 'AVC Max Gain'
- value 1
+ name 'BASS 0'
+ value 47
comment {
access 'read write'
type INTEGER
count 1
- range '0 - 2'
- dbmin 0
+ range '0 - 95'
+ dbmin -1175
dbmax 1200
- dbvalue.0 600
+ dbvalue.0 0
}
}
control.20 {
iface MIXER
- name 'AVC Threshold (-dB)'
- value 12
+ name 'BASS 1'
+ value 47
comment {
access 'read write'
type INTEGER
count 1
- range '0 - 96'
- dbmin 0
- dbmax 96
- dbvalue.0 12
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
}
}
control.21 {
iface MIXER
- name 'DAP_MIXER Mixer Channel'
- value false
+ name 'BASS 2'
+ value 47
comment {
access 'read write'
- type BOOLEAN
+ type INTEGER
count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
}
}
control.22 {
iface MIXER
- name I2S_OUT
- value ADC
+ name 'BASS 3'
+ value 47
comment {
access 'read write'
- type ENUMERATED
+ type INTEGER
count 1
- item.0 ADC
- item.1 I2S_IN
- item.2 reserved
- item.3 DAP
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
}
}
control.23 {
iface MIXER
- name DAC_IN
- value I2S_IN
+ name 'BASS 4'
+ value 47
comment {
access 'read write'
- type ENUMERATED
+ type INTEGER
count 1
- item.0 ADC
- item.1 I2S_IN
- item.2 reserved
- item.3 DAP
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
}
}
control.24 {
iface MIXER
- name MIX_MUX
- value ADC
+ name 'Capture Mux'
+ value MIC_IN
comment {
access 'read write'
type ENUMERATED
count 1
- item.0 ADC
- item.1 I2S_IN
+ item.0 MIC_IN
+ item.1 LINE_IN
}
}
control.25 {
iface MIXER
- name DAP_IN
- value ADC
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 ADC
- item.1 I2S_IN
- }
- }
- control.26 {
- iface MIXER
name 'Headphone Mux'
value DAC
comment {
@@ -316,64 +310,42 @@ state.sgtl5000audio {
item.1 LINE_IN
}
}
- control.27 {
- iface MIXER
- name 'Capture Mux'
- value MIC_IN
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 MIC_IN
- item.1 LINE_IN
- }
- }
- control.28 {
+ control.26 {
iface MIXER
- name 'Jack Function'
- value off
+ name 'Digital Input Mux'
+ value I2S
comment {
access 'read write'
type ENUMERATED
count 1
- item.0 off
- item.1 on
+ item.0 ADC
+ item.1 I2S
+ item.2 Rsvrd
+ item.3 DAP
}
}
- control.29 {
+ control.27 {
iface MIXER
- name 'Speaker Function'
- value off
+ name 'DAP Mux'
+ value ADC
comment {
access 'read write'
type ENUMERATED
count 1
- item.0 off
- item.1 on
+ item.0 ADC
+ item.1 I2S
}
}
- control.30 {
+ control.28 {
iface MIXER
- name 'Line In Function'
- value off
+ name 'DAP MIX Mux'
+ value ADC
comment {
access 'read write'
type ENUMERATED
count 1
- item.0 off
- item.1 on
- }
- }
-}
-state.imxhdmisoc {
- control.1 {
- iface MIXER
- name 'IEC958 Playback Default'
- value '0400020200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
- comment {
- access 'read write'
- type IEC958
- count 1
+ item.0 ADC
+ item.1 I2S
}
}
}
diff --git a/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state b/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state
index a578e3d..5829ebf 100644
--- a/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state
+++ b/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state
@@ -1,9 +1,9 @@
-state.imx7colibrisgtl {
+state.imx7sgtl5000 {
control.1 {
iface MIXER
name 'PCM Playback Volume'
- value.0 192
- value.1 192
+ value.0 144
+ value.1 144
comment {
access 'read write'
type INTEGER
@@ -45,6 +45,16 @@ state.imx7colibrisgtl {
}
control.5 {
iface MIXER
+ name 'Capture Switch'
+ value true
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.6 {
+ iface MIXER
name 'Headphone Playback Volume'
value.0 103
value.1 103
@@ -59,7 +69,17 @@ state.imx7colibrisgtl {
dbvalue.1 0
}
}
- control.6 {
+ control.7 {
+ iface MIXER
+ name 'Headphone Playback Switch'
+ value true
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.8 {
iface MIXER
name 'Headphone Playback ZC Switch'
value true
@@ -69,7 +89,7 @@ state.imx7colibrisgtl {
count 1
}
}
- control.7 {
+ control.9 {
iface MIXER
name 'Mic Volume'
value 0
@@ -83,7 +103,202 @@ state.imx7colibrisgtl {
dbvalue.0 0
}
}
- control.8 {
+ control.10 {
+ iface MIXER
+ name 'Lineout Playback Volume'
+ value.0 18
+ value.1 18
+ comment {
+ access 'read write'
+ type INTEGER
+ count 2
+ range '0 - 31'
+ dbmin -1550
+ dbmax 0
+ dbvalue.0 -650
+ dbvalue.1 -650
+ }
+ }
+ control.11 {
+ iface MIXER
+ name 'Lineout Playback Switch'
+ value false
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.12 {
+ iface MIXER
+ name 'DAP Main channel'
+ value 32768
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 65535'
+ dbmin 0
+ dbmax 65535
+ dbvalue.0 32768
+ }
+ }
+ control.13 {
+ iface MIXER
+ name 'DAP Mix channel'
+ value 0
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 65535'
+ dbmin 0
+ dbmax 65535
+ dbvalue.0 0
+ }
+ }
+ control.14 {
+ iface MIXER
+ name 'AVC Switch'
+ value false
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.15 {
+ iface MIXER
+ name 'AVC Hard Limiter Switch'
+ value false
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.16 {
+ iface MIXER
+ name 'AVC Max Gain Volume'
+ value 1
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 2'
+ dbmin 0
+ dbmax 1200
+ dbvalue.0 600
+ }
+ }
+ control.17 {
+ iface MIXER
+ name 'AVC Integrator Response'
+ value 1
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 3'
+ }
+ }
+ control.18 {
+ iface MIXER
+ name 'AVC Threshold Volume'
+ value 12
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 96'
+ dbmin 0
+ dbmax 9600
+ dbvalue.0 1200
+ }
+ }
+ control.19 {
+ iface MIXER
+ name 'BASS 0'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.20 {
+ iface MIXER
+ name 'BASS 1'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.21 {
+ iface MIXER
+ name 'BASS 2'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.22 {
+ iface MIXER
+ name 'BASS 3'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.23 {
+ iface MIXER
+ name 'BASS 4'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.24 {
+ iface MIXER
+ name 'Capture Mux'
+ value MIC_IN
+ comment {
+ access 'read write'
+ type ENUMERATED
+ count 1
+ item.0 MIC_IN
+ item.1 LINE_IN
+ }
+ }
+ control.25 {
iface MIXER
name 'Headphone Mux'
value DAC
@@ -95,16 +310,42 @@ state.imx7colibrisgtl {
item.1 LINE_IN
}
}
- control.9 {
+ control.26 {
iface MIXER
- name 'Capture Mux'
- value MIC_IN
+ name 'Digital Input Mux'
+ value I2S
comment {
access 'read write'
type ENUMERATED
count 1
- item.0 MIC_IN
- item.1 LINE_IN
+ item.0 ADC
+ item.1 I2S
+ item.2 Rsvrd
+ item.3 DAP
+ }
+ }
+ control.27 {
+ iface MIXER
+ name 'DAP Mux'
+ value ADC
+ comment {
+ access 'read write'
+ type ENUMERATED
+ count 1
+ item.0 ADC
+ item.1 I2S
+ }
+ }
+ control.28 {
+ iface MIXER
+ name 'DAP MIX Mux'
+ value ADC
+ comment {
+ access 'read write'
+ type ENUMERATED
+ count 1
+ item.0 ADC
+ item.1 I2S
}
}
}
diff --git a/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state b/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state
index a578e3d..5829ebf 100644
--- a/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state
+++ b/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state
@@ -1,9 +1,9 @@
-state.imx7colibrisgtl {
+state.imx7sgtl5000 {
control.1 {
iface MIXER
name 'PCM Playback Volume'
- value.0 192
- value.1 192
+ value.0 144
+ value.1 144
comment {
access 'read write'
type INTEGER
@@ -45,6 +45,16 @@ state.imx7colibrisgtl {
}
control.5 {
iface MIXER
+ name 'Capture Switch'
+ value true
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.6 {
+ iface MIXER
name 'Headphone Playback Volume'
value.0 103
value.1 103
@@ -59,7 +69,17 @@ state.imx7colibrisgtl {
dbvalue.1 0
}
}
- control.6 {
+ control.7 {
+ iface MIXER
+ name 'Headphone Playback Switch'
+ value true
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.8 {
iface MIXER
name 'Headphone Playback ZC Switch'
value true
@@ -69,7 +89,7 @@ state.imx7colibrisgtl {
count 1
}
}
- control.7 {
+ control.9 {
iface MIXER
name 'Mic Volume'
value 0
@@ -83,7 +103,202 @@ state.imx7colibrisgtl {
dbvalue.0 0
}
}
- control.8 {
+ control.10 {
+ iface MIXER
+ name 'Lineout Playback Volume'
+ value.0 18
+ value.1 18
+ comment {
+ access 'read write'
+ type INTEGER
+ count 2
+ range '0 - 31'
+ dbmin -1550
+ dbmax 0
+ dbvalue.0 -650
+ dbvalue.1 -650
+ }
+ }
+ control.11 {
+ iface MIXER
+ name 'Lineout Playback Switch'
+ value false
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.12 {
+ iface MIXER
+ name 'DAP Main channel'
+ value 32768
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 65535'
+ dbmin 0
+ dbmax 65535
+ dbvalue.0 32768
+ }
+ }
+ control.13 {
+ iface MIXER
+ name 'DAP Mix channel'
+ value 0
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 65535'
+ dbmin 0
+ dbmax 65535
+ dbvalue.0 0
+ }
+ }
+ control.14 {
+ iface MIXER
+ name 'AVC Switch'
+ value false
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.15 {
+ iface MIXER
+ name 'AVC Hard Limiter Switch'
+ value false
+ comment {
+ access 'read write'
+ type BOOLEAN
+ count 1
+ }
+ }
+ control.16 {
+ iface MIXER
+ name 'AVC Max Gain Volume'
+ value 1
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 2'
+ dbmin 0
+ dbmax 1200
+ dbvalue.0 600
+ }
+ }
+ control.17 {
+ iface MIXER
+ name 'AVC Integrator Response'
+ value 1
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 3'
+ }
+ }
+ control.18 {
+ iface MIXER
+ name 'AVC Threshold Volume'
+ value 12
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 96'
+ dbmin 0
+ dbmax 9600
+ dbvalue.0 1200
+ }
+ }
+ control.19 {
+ iface MIXER
+ name 'BASS 0'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.20 {
+ iface MIXER
+ name 'BASS 1'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.21 {
+ iface MIXER
+ name 'BASS 2'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.22 {
+ iface MIXER
+ name 'BASS 3'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.23 {
+ iface MIXER
+ name 'BASS 4'
+ value 47
+ comment {
+ access 'read write'
+ type INTEGER
+ count 1
+ range '0 - 95'
+ dbmin -1175
+ dbmax 1200
+ dbvalue.0 0
+ }
+ }
+ control.24 {
+ iface MIXER
+ name 'Capture Mux'
+ value MIC_IN
+ comment {
+ access 'read write'
+ type ENUMERATED
+ count 1
+ item.0 MIC_IN
+ item.1 LINE_IN
+ }
+ }
+ control.25 {
iface MIXER
name 'Headphone Mux'
value DAC
@@ -95,16 +310,42 @@ state.imx7colibrisgtl {
item.1 LINE_IN
}
}
- control.9 {
+ control.26 {
iface MIXER
- name 'Capture Mux'
- value MIC_IN
+ name 'Digital Input Mux'
+ value I2S
comment {
access 'read write'
type ENUMERATED
count 1
- item.0 MIC_IN
- item.1 LINE_IN
+ item.0 ADC
+ item.1 I2S
+ item.2 Rsvrd
+ item.3 DAP
+ }
+ }
+ control.27 {
+ iface MIXER
+ name 'DAP Mux'
+ value ADC
+ comment {
+ access 'read write'
+ type ENUMERATED
+ count 1
+ item.0 ADC
+ item.1 I2S
+ }
+ }
+ control.28 {
+ iface MIXER
+ name 'DAP MIX Mux'
+ value ADC
+ comment {
+ access 'read write'
+ type ENUMERATED
+ count 1
+ item.0 ADC
+ item.1 I2S
}
}
}
diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state
deleted file mode 100644
index 1d3e09a..0000000
--- a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state
+++ /dev/null
@@ -1,519 +0,0 @@
-state.imx8mmwm8904 {
- control.1 {
- iface MIXER
- name 'EQ1 Volume'
- value 12
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 24'
- dbmin -1200
- dbmax 1200
- dbvalue.0 0
- }
- }
- control.2 {
- iface MIXER
- name 'EQ2 Volume'
- value 12
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 24'
- dbmin -1200
- dbmax 1200
- dbvalue.0 0
- }
- }
- control.3 {
- iface MIXER
- name 'EQ3 Volume'
- value 12
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 24'
- dbmin -1200
- dbmax 1200
- dbvalue.0 0
- }
- }
- control.4 {
- iface MIXER
- name 'EQ4 Volume'
- value 12
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 24'
- dbmin -1200
- dbmax 1200
- dbvalue.0 0
- }
- }
- control.5 {
- iface MIXER
- name 'EQ5 Volume'
- value 12
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 24'
- dbmin -1200
- dbmax 1200
- dbvalue.0 0
- }
- }
- control.6 {
- iface MIXER
- name 'Digital Capture Volume'
- value.0 96
- value.1 96
- comment {
- access 'read write'
- type INTEGER
- count 2
- range '0 - 119'
- dbmin -9999999
- dbmax 1725
- dbvalue.0 0
- dbvalue.1 0
- }
- }
- control.7 {
- iface MIXER
- name 'Left Caputure Mode'
- value Single-Ended
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Single-Ended
- item.1 'Differential Line'
- item.2 'Differential Mic'
- }
- }
- control.8 {
- iface MIXER
- name 'Right Capture Mode'
- value Single-Ended
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Single-Ended
- item.1 'Differential Line'
- item.2 'Differential Mic'
- }
- }
- control.9 {
- iface MIXER
- name 'Capture Volume'
- value.0 24
- value.1 24
- comment {
- access 'read write'
- type INTEGER
- count 2
- range '0 - 31'
- }
- }
- control.10 {
- iface MIXER
- name 'Capture Switch'
- value.0 true
- value.1 true
- comment {
- access 'read write'
- type BOOLEAN
- count 2
- }
- }
- control.11 {
- iface MIXER
- name 'High Pass Filter Switch'
- value true
- comment {
- access 'read write'
- type BOOLEAN
- count 1
- }
- }
- control.12 {
- iface MIXER
- name 'High Pass Filter Mode'
- value Hi-fi
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Hi-fi
- item.1 'Voice 1'
- item.2 'Voice 2'
- item.3 'Voice 3'
- }
- }
- control.13 {
- iface MIXER
- name 'ADC 128x OSR Switch'
- value true
- comment {
- access 'read write'
- type BOOLEAN
- count 1
- }
- }
- control.14 {
- iface MIXER
- name 'Digital Playback Boost Volume'
- value 0
- comment {
- access 'read write'
- type INTEGER
- count 1
- range '0 - 3'
- dbmin 0
- dbmax 1800
- dbvalue.0 0
- }
- }
- control.15 {
- iface MIXER
- name 'Digital Playback Volume'
- value.0 88
- value.1 88
- comment {
- access 'read write'
- type INTEGER
- count 2
- range '0 - 96'
- dbmin -9999999
- dbmax 0
- dbvalue.0 -600
- dbvalue.1 -600
- }
- }
- control.16 {
- iface MIXER
- name 'Headphone Volume'
- value.0 43
- value.1 43
- comment {
- access 'read write'
- type INTEGER
- count 2
- range '0 - 63'
- dbmin -5700
- dbmax 600
- dbvalue.0 -1400
- dbvalue.1 -1400
- }
- }
- control.17 {
- iface MIXER
- name 'Headphone Switch'
- value.0 true
- value.1 true
- comment {
- access 'read write'
- type BOOLEAN
- count 2
- }
- }
- control.18 {
- iface MIXER
- name 'Headphone ZC Switch'
- value.0 true
- value.1 true
- comment {
- access 'read write'
- type BOOLEAN
- count 2
- }
- }
- control.19 {
- iface MIXER
- name 'Line Output Volume'
- value.0 0
- value.1 0
- comment {
- access 'read write'
- type INTEGER
- count 2
- range '0 - 63'
- dbmin -5700
- dbmax 600
- dbvalue.0 -5700
- dbvalue.1 -5700
- }
- }
- control.20 {
- iface MIXER
- name 'Line Output Switch'
- value.0 false
- value.1 false
- comment {
- access 'read write'
- type BOOLEAN
- count 2
- }
- }
- control.21 {
- iface MIXER
- name 'Line Output ZC Switch'
- value.0 true
- value.1 true
- comment {
- access 'read write'
- type BOOLEAN
- count 2
- }
- }
- control.22 {
- iface MIXER
- name 'EQ Switch'
- value false
- comment {
- access 'read write'
- type BOOLEAN
- count 1
- }
- }
- control.23 {
- iface MIXER
- name 'DRC Switch'
- value false
- comment {
- access 'read write'
- type BOOLEAN
- count 1
- }
- }
- control.24 {
- iface MIXER
- name 'DRC Path'
- value ADC
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 ADC
- item.1 DAC
- }
- }
- control.25 {
- iface MIXER
- name 'DAC OSRx2 Switch'
- value false
- comment {
- access 'read write'
- type BOOLEAN
- count 1
- }
- }
- control.26 {
- iface MIXER
- name 'DAC Deemphasis Switch'
- value false
- comment {
- access 'read write'
- type BOOLEAN
- count 1
- }
- }
- control.27 {
- iface MIXER
- name 'Digital Sidetone Volume'
- value.0 0
- value.1 0
- comment {
- access 'read write'
- type INTEGER
- count 2
- range '0 - 15'
- dbmin -3600
- dbmax 900
- dbvalue.0 -3600
- dbvalue.1 -3600
- }
- }
- control.28 {
- iface MIXER
- name 'Left Capture Mux'
- value IN1L
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 IN1L
- item.1 IN2L
- item.2 IN3L
- }
- }
- control.29 {
- iface MIXER
- name 'Left Capture Inverting Mux'
- value IN1L
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 IN1L
- item.1 IN2L
- item.2 IN3L
- }
- }
- control.30 {
- iface MIXER
- name 'Right Capture Mux'
- value IN1R
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 IN1R
- item.1 IN2R
- item.2 IN3R
- }
- }
- control.31 {
- iface MIXER
- name 'Right Capture Inverting Mux'
- value IN1R
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 IN1R
- item.1 IN2R
- item.2 IN3R
- }
- }
- control.32 {
- iface MIXER
- name 'AIFOUTL Mux'
- value Left
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Left
- item.1 Right
- }
- }
- control.33 {
- iface MIXER
- name 'AIFOUTR Mux'
- value Right
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Left
- item.1 Right
- }
- }
- control.34 {
- iface MIXER
- name 'DACL Mux'
- value Left
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Left
- item.1 Right
- }
- }
- control.35 {
- iface MIXER
- name 'DACR Mux'
- value Right
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 Left
- item.1 Right
- }
- }
- control.36 {
- iface MIXER
- name 'Left Sidetone'
- value None
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 None
- item.1 Left
- item.2 Right
- }
- }
- control.37 {
- iface MIXER
- name 'Right Sidetone'
- value None
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 None
- item.1 Left
- item.2 Right
- }
- }
- control.38 {
- iface MIXER
- name 'HPL Mux'
- value DAC
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 DAC
- item.1 Bypass
- }
- }
- control.39 {
- iface MIXER
- name 'HPR Mux'
- value DAC
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 DAC
- item.1 Bypass
- }
- }
- control.40 {
- iface MIXER
- name 'LINEL Mux'
- value DAC
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 DAC
- item.1 Bypass
- }
- }
- control.41 {
- iface MIXER
- name 'LINER Mux'
- value DAC
- comment {
- access 'read write'
- type ENUMERATED
- count 1
- item.0 DAC
- item.1 Bypass
- }
- }
-}
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.%.bbappend b/recipes-bsp/firmware-imx/firmware-imx-8_8.%.bbappend
deleted file mode 100644
index 99a3532..0000000
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.%.bbappend
+++ /dev/null
@@ -1,14 +0,0 @@
-FILES:${PN} += " \
- ${nonarch_base_libdir}/firmware/imx/hdmi/hdmitxfw.bin \
- ${nonarch_base_libdir}/firmware/imx/hdmi/hdmirxfw.bin \
- ${nonarch_base_libdir}/firmware/imx/hdmi/dpfw.bin \
-"
-
-unset do_install[noexec]
-
-do_install:append () {
- install -d ${D}${nonarch_base_libdir}/firmware/imx/hdmi
- install -m 0644 ${S}/firmware/hdmi/cadence/hdmitxfw.bin ${D}${nonarch_base_libdir}/firmware/imx/hdmi/
- install -m 0644 ${S}/firmware/hdmi/cadence/hdmirxfw.bin ${D}${nonarch_base_libdir}/firmware/imx/hdmi/
- install -m 0644 ${S}/firmware/hdmi/cadence/dpfw.bin ${D}${nonarch_base_libdir}/firmware/imx/hdmi/
-}
diff --git a/recipes-bsp/imx-atf/files/0001-Revert-Add-NXP-s-SoCs-partition-reboot-support.patch b/recipes-bsp/imx-atf/files/0001-Revert-Add-NXP-s-SoCs-partition-reboot-support.patch
new file mode 100644
index 0000000..e0150ba
--- /dev/null
+++ b/recipes-bsp/imx-atf/files/0001-Revert-Add-NXP-s-SoCs-partition-reboot-support.patch
@@ -0,0 +1,41 @@
+From bef717b8edd1458bcff576e79ba536390d40deb2 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Tue, 19 May 2020 20:32:59 +0200
+Subject: [PATCH 1/2] Revert "Add NXP's SoCs partition reboot support."
+
+This reverts commit 13a5c7ece5a13c636e52f22b45f592b72b6453d1.
+With commit 13a5c7ece5a1 the SCFW will execute a reboot of the AP
+partition as a reaction to a psci_system_reboot, e.g. because of
+a Linux reboot.
+
+This does only reset the SoC partly, i.e. only IP which will not affect
+other partitions. As a result on Apalis iMX8 USB HSIC comes up in a
+state were it does not recognize our USB3503 hub correctly.
+
+Refer to the SCFW doc file sc_fw_port.pdf for more info on the various
+sc_reboot*, sc_reset* functionalities.
+
+Upstream-Status: Inappropriate [configuration]
+
+Related-to: ELB-2702
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ plat/imx/common/imx8_psci.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plat/imx/common/imx8_psci.c b/plat/imx/common/imx8_psci.c
+index 5b53e62f3..d4f6723ec 100644
+--- a/plat/imx/common/imx8_psci.c
++++ b/plat/imx/common/imx8_psci.c
+@@ -23,7 +23,7 @@ void __dead2 imx_system_off(void)
+
+ void __dead2 imx_system_reset(void)
+ {
+- sc_pm_reboot(ipc_handle, SC_PM_RESET_TYPE_COLD);
++ sc_pm_reset(ipc_handle, SC_PM_RESET_TYPE_BOARD);
+ wfi();
+ ERROR("system reset failed.\n");
+ panic();
+--
+2.37.0
+
diff --git a/recipes-bsp/imx-atf/imx-atf_%.bbappend b/recipes-bsp/imx-atf/imx-atf_%.bbappend
index f8fbddd..aae09b9 100644
--- a/recipes-bsp/imx-atf/imx-atf_%.bbappend
+++ b/recipes-bsp/imx-atf/imx-atf_%.bbappend
@@ -1,15 +1,8 @@
-PV = "2.2+git${SRCPV}"
-SRCBRANCH = "toradex_imx_5.4.70_2.3.0"
-SRCREV = "835a8f67b2ca7aa3f2d05d6e6a1a51f7e1147266"
-SRCREV:use-head-next = "${AUTOREV}"
-SRC_URI = "git://git.toradex.com/imx-atf.git;protocol=https;branch=${SRCBRANCH}"
+FILESEXTRAPATHS:prepend := "${THISDIR}/files/:"
+SRC_URI:append:tdx = " \
+ file://0001-Revert-Add-NXP-s-SoCs-partition-reboot-support.patch \
+"
-EXTRA_OEMAKE:append = " \
+EXTRA_OEMAKE:append:tdx = " \
BUILD_STRING="${SRCBRANCH}-g${@'${SRCPV}'.replace('AUTOINC+', '')}" \
"
-EXTRA_OEMAKE:append:verdin-imx8mm = " \
- IMX_BOOT_UART_BASE=0x30860000 \
-"
-EXTRA_OEMAKE:append:verdin-imx8mp = " \
- IMX_BOOT_UART_BASE=0x30880000 \
-"
diff --git a/recipes-bsp/imx-mkimage/imx-boot_%.bbappend b/recipes-bsp/imx-mkimage/imx-boot_%.bbappend
deleted file mode 100644
index a7b398c..0000000
--- a/recipes-bsp/imx-mkimage/imx-boot_%.bbappend
+++ /dev/null
@@ -1,8 +0,0 @@
-# Create symbolic link rather than copying mkimage_uboot
-compile:mx8m:prepend() {
- rm -rf ${BOOT_STAGING}/mkimage_uboot
-}
-compile:mx8m:append() {
- rm -rf ${BOOT_STAGING}/mkimage_uboot
- lnr ${STAGING_DIR_NATIVE}/${bindir}/mkimage ${BOOT_STAGING}/mkimage_uboot
-}
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware-toradex_1.7.0.bb b/recipes-bsp/imx-sc-firmware/imx-sc-firmware-toradex_1.15.0.bb
index dfc9b67..1e21434 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware-toradex_1.7.0.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware-toradex_1.15.0.bb
@@ -4,14 +4,14 @@
DESCRIPTION = "i.MX System Controller Firmware for Toradex hardware"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94c5a3fc041e195df67fde3979a5e14e"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
SECTION = "BSP"
inherit deploy
SRC_URI = "git://github.com/toradex/i.MX-System-Controller-Firmware.git;branch=master;protocol=https;fsl-eula=true"
-SRCREV = "64fd890f0be17c2c2939e66b5ddf3d60246f574b"
+SRCREV = "7b7c7f7c834c58e637a53bab281d48f963788e33"
SRCREV:use-head-next = "${AUTOREV}"
S = "${WORKDIR}/git"
@@ -22,8 +22,8 @@ RPROVIDES:${PN} = "imx-sc-firmware"
RCONFLICTS:${PN} = "imx-sc-firmware"
BOARD_TYPE ?= "unknown"
-SC_FIRMWARE_NAME:mx8qm = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
-SC_FIRMWARE_NAME:mx8qxp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qm-generic-bsp = "mx8qm-${BOARD_TYPE}-scfw-tcm.bin"
+SC_FIRMWARE_NAME:mx8qxp-generic-bsp = "mx8qx-${BOARD_TYPE}-scfw-tcm.bin"
symlink_name = "scfw_tcm.bin"
BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch b/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
new file mode 100644
index 0000000..2adcf8e
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
@@ -0,0 +1,32 @@
+From 3443f18dc9ab8950071d6299c7a5da86055f3318 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Thu, 19 Jan 2023 15:51:24 +0000
+Subject: [PATCH] isp-imx: start_isp: don't report error if no camera is
+ configured
+
+The script currently returns '6' when no known camera is configured
+in the device tree. The end result is that the systemd imx8-isp.service
+goes to the failed state.
+Return '0' in that case as obviously the device tree doesn't have a
+camera configured and the service is not needed.
+
+Related-to: ELB-5002
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ imx/start_isp.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/imx/start_isp.sh b/imx/start_isp.sh
+index 95cbc19..d603f8f 100755
+--- a/imx/start_isp.sh
++++ b/imx/start_isp.sh
+@@ -74,5 +74,5 @@ elif [ $NR_DEVICE_TREE_OS08A20 -eq 2 ]; then
+ else
+ # no device tree found exit with code no device or address
+ echo "No device tree found for Basler camera or os08a20, check dtb file!" >&2
+- exit 6
++ exit 0
+ fi
+--
+2.35.3
+
diff --git a/recipes-bsp/isp-imx/isp-imx_%.bbappend b/recipes-bsp/isp-imx/isp-imx_%.bbappend
new file mode 100644
index 0000000..ff5a0bf
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx_%.bbappend
@@ -0,0 +1,4 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/isp-imx/:"
+SRC_URI:append:tdx = " \
+ file://0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch \
+"
diff --git a/recipes-bsp/u-boot/files/0001-colibri_imx7-boot-linux-kernel-in-non-secure-mode.patch b/recipes-bsp/u-boot/files/0001-colibri_imx7-boot-linux-kernel-in-non-secure-mode.patch
deleted file mode 100644
index 20e7e98..0000000
--- a/recipes-bsp/u-boot/files/0001-colibri_imx7-boot-linux-kernel-in-non-secure-mode.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 9bdb801953e4a81c59fc358cc5bf91811b0d514f Mon Sep 17 00:00:00 2001
-Message-Id: <9bdb801953e4a81c59fc358cc5bf91811b0d514f.1601476897.git.marcel.ziswiler@toradex.com>
-From: Marcel Ziswiler <marcel.ziswiler@toradex.com>
-Date: Wed, 30 Sep 2020 16:37:54 +0200
-Subject: [PATCH] colibri_imx7: boot linux kernel in non-secure mode
-
-While NXP i.MX 7 downstream requires the Linux kernel to boot in secure
-mode mainline/upstream requires non-secure mode instead, as it properly
-uses PSCI to control further cores.
-
-Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
----
- include/configs/colibri_imx7.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/configs/colibri_imx7.h b/include/configs/colibri_imx7.h
-index 1b50dac83c..be33f1bdf9 100644
---- a/include/configs/colibri_imx7.h
-+++ b/include/configs/colibri_imx7.h
-@@ -140,7 +140,7 @@
- UBOOT_UPDATE \
- "boot_script_dhcp=boot.scr\0" \
- "boot_file=zImage\0" \
-- "bootm_boot_mode=sec\0" \
-+ "bootm_boot_mode=nonsec\0" \
- "bootubipart=ubi\0" \
- "console=ttymxc0\0" \
- "defargs=\0" \
---
-2.29.0
-
diff --git a/recipes-bsp/u-boot/files/colibri-imx6ull/fw_env.config b/recipes-bsp/u-boot/files/colibri-imx6ull/fw_env.config
deleted file mode 100644
index 930bcee..0000000
--- a/recipes-bsp/u-boot/files/colibri-imx6ull/fw_env.config
+++ /dev/null
@@ -1,10 +0,0 @@
-# Configuration file for fw_(printenv/setenv) utility.
-# Up to two entries are valid, in this case the redundant
-# environment sector is assumed present.
-# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash.
-# Futhermore, if the Flash sector size is ommitted, this value is assumed to
-# be the same as the Environment size, which is valid for NOR and SPI-dataflash
-
-# MTD device name Device offset Env. size Flash sector size Number of sectors
-# Colibri iMX6ULL
-/dev/mtd3 0x00000000 0x00020000 0x20000 4
diff --git a/recipes-bsp/u-boot/files/colibri-imx7/fw_env.config b/recipes-bsp/u-boot/files/colibri-imx7/fw_env.config
deleted file mode 100644
index b59116d..0000000
--- a/recipes-bsp/u-boot/files/colibri-imx7/fw_env.config
+++ /dev/null
@@ -1,10 +0,0 @@
-# Configuration file for fw_(printenv/setenv) utility.
-# Up to two entries are valid, in this case the redundant
-# environment sector is assumed present.
-# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash.
-# Futhermore, if the Flash sector size is ommitted, this value is assumed to
-# be the same as the Environment size, which is valid for NOR and SPI-dataflash
-
-# MTD device name Device offset Env. size Flash sector size Number of sectors
-# Colibri iMX7
-/dev/mtd3 0x00000000 0x00020000 0x20000 4
diff --git a/recipes-bsp/u-boot/files/fw_env.config b/recipes-bsp/u-boot/files/fw_env.config
deleted file mode 100644
index 9f78e4c..0000000
--- a/recipes-bsp/u-boot/files/fw_env.config
+++ /dev/null
@@ -1,19 +0,0 @@
-# Configuration file for fw_(printenv/setenv) utility.
-# Up to two entries are valid, in this case the redundant
-# environment sector is assumed present.
-# Device offset must be prefixed with 0x to be parsed as a hexadecimal value.
-# On a block device a negative offset is treated as a backwards offset from the
-# end of the device/partition, rather than a forwards offset from the start.
-
-# Toradex modules with eMMC
-# The U-Boot environment is stored at the end of the first eMMC boot partition
-# hence use a negative value. The environment is just in front of the config
-# block which occupies the last sector (hence -0x200)
-# Note that the eMMC boot areas (e.g. /dev/mmcblk0boot0) by default is read
-# only. To make it writeable, execute on the cmdline e.g.
-# $ echo 0 > /sys/block/mmcblk0boot0/force_ro
-# The fw_setenv tool provided by libubootenv does this automatically.
-
-# Block device name Device offset Env. size
-/dev/emmc-boot0 -0x2200 0x2000
-
diff --git a/recipes-bsp/u-boot/files/vf/fw_env.config b/recipes-bsp/u-boot/files/vf/fw_env.config
deleted file mode 100644
index 51f09d1..0000000
--- a/recipes-bsp/u-boot/files/vf/fw_env.config
+++ /dev/null
@@ -1,10 +0,0 @@
-# Configuration file for fw_(printenv/setenv) utility.
-# Up to two entries are valid, in this case the redundant
-# environment sector is assumed present.
-# Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash.
-# Futhermore, if the Flash sector size is ommitted, this value is assumed to
-# be the same as the Environment size, which is valid for NOR and SPI-dataflash
-
-# MTD device name Device offset Env. size Flash sector size Number of sectors
-# Colibri VF61
-/dev/mtd2 0x00000000 0x00020000 0x20000 4
diff --git a/recipes-bsp/u-boot/u-boot-toradex-common.inc b/recipes-bsp/u-boot/u-boot-toradex-common.inc
deleted file mode 100644
index 746b8d6..0000000
--- a/recipes-bsp/u-boot/u-boot-toradex-common.inc
+++ /dev/null
@@ -1,47 +0,0 @@
-HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome"
-SECTION = "bootloaders"
-DEPENDS += "flex-native bison-native"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://Licenses/README;md5=30503fd321432fc713238f582193b78e"
-PE = "1"
-
-PV = "2020.07+git${SRCPV}"
-
-inherit toradex-u-boot-localversion
-
-# We use the revision in order to avoid having to fetch it from the
-# repo during parse
-SRCREV = "eb6c58cb014022d45a880c1eb9761e5d6ce623c0"
-SRCBRANCH = "toradex_2020.07"
-SRCREV:use-head-next = "${AUTOREV}"
-
-SRC_URI = " \
- git://git.toradex.com/u-boot-toradex.git;protocol=https;branch=${SRCBRANCH} \
- file://fw_env.config \
-"
-
-S = "${WORKDIR}/git"
-
-UBOOT_INITIAL_ENV = "u-boot-initial-env"
-
-do_deploy:append:mx8m() {
- # Deploy the 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
- i=$(expr $i + 1);
- for type in ${UBOOT_CONFIG}; do
- j=$(expr $j + 1);
- if [ $j -eq $i ]
- then
- install -d ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0777 ${B}/${config}/arch/arm/dts/${UBOOT_DTB_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0777 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${UBOOT_CONFIG}
- fi
- done
- unset j
- done
- unset i
- fi
-}
diff --git a/recipes-bsp/u-boot/u-boot-toradex_2020.04.bb b/recipes-bsp/u-boot/u-boot-toradex_2020.04.bb
deleted file mode 100644
index c301226..0000000
--- a/recipes-bsp/u-boot/u-boot-toradex_2020.04.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require recipes-bsp/u-boot/u-boot.inc
-require u-boot-toradex-common_${PV}.inc
-
-SUMMARY = "U-Boot bootloader with support for Toradex i.MX 8 series SoMs"
-
-B = "${WORKDIR}/build"
-
-PROVIDES += "u-boot"
-DEPENDS:append = " dtc-native"
-
-BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/u-boot/u-boot-toradex_2020.07.bb b/recipes-bsp/u-boot/u-boot-toradex_2020.07.bb
deleted file mode 100644
index 7a72a34..0000000
--- a/recipes-bsp/u-boot/u-boot-toradex_2020.07.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-require u-boot-toradex-common.inc
-require recipes-bsp/u-boot/u-boot.inc
-
-B = "${WORKDIR}/build"
-
-PROVIDES += "u-boot"
-
-DEPENDS += "bc-native dtc-native"
-
-# While NXP i.MX 7 downstream requires the Linux kernel to boot in secure
-# mode mainline/upstream requires non-secure mode instead, as it properly
-# uses PSCI to control further cores.
-SRC_URI:append:use-mainline-bsp:colibri-imx7 = " file://0001-colibri_imx7-boot-linux-kernel-in-non-secure-mode.patch"
-SRC_URI:append:use-mainline-bsp:colibri-imx7-emmc = " file://0001-colibri_imx7-boot-linux-kernel-in-non-secure-mode.patch"
-
-BOOT_TOOLS = "imx-boot-tools"
-
-PADDING_DIR = "${B}"
-
-nand_padding () {
- # pad the end of U-Boot with 0x00 up to the the end of the CSF area
- #PAD_END=$(echo -n "0x"; od -X -j 0x24 -N 4 u-boot.imx | sed -e '/................/!d' -e 's/........\(.*\)/\1/')
- #PAD_END=$(( $PAD_END - 0x400 ))
- #objcopy -I binary -O binary --pad-to $PAD_END u-boot.imx u-boot.imx.zero-padded
- # assume that the above never need more than 10k of padding and skip the
- # shell magic to get a correct size.
- dd bs=10k count=1 if=/dev/zero | cat ${PADDING_DIR}/u-boot.imx - > ${PADDING_DIR}/u-boot.imx.zero-padded
-
- # U-Boot is flashed 1k into a NAND block, create a binary which prepends
- # U-boot with 1k of zeros to ease flashing
- dd bs=1024 count=1 if=/dev/zero | cat - ${PADDING_DIR}/u-boot.imx.zero-padded > ${PADDING_DIR}/u-boot-nand.imx
-}
-
-do_compile:append:colibri-imx6ull () {
- nand_padding
-}
-
-do_compile:append:colibri-imx7 () {
- nand_padding
-}
-
-do_compile:append:colibri-vf () {
- nand_padding
-}
diff --git a/recipes-bsp/u-boot/u-boot-toradex-common_2020.04.inc b/recipes-bsp/u-boot/u-boot-toradex_2022.04.bb
index eb91a41..6f1ed6d 100644
--- a/recipes-bsp/u-boot/u-boot-toradex-common_2020.04.inc
+++ b/recipes-bsp/u-boot/u-boot-toradex_2022.04.bb
@@ -1,29 +1,33 @@
+SUMMARY = "U-Boot bootloader with support for Toradex i.MX 8 series SoMs"
HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome"
SECTION = "bootloaders"
-DEPENDS += "flex-native bison-native"
-
-LICENSE = "GPLv2+"
+LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+DEPENDS = "bc-native dtc-native flex-native bison-native python3-setuptools-native"
+PROVIDES:append = " u-boot"
-SRC_URI = " \
- git://git.toradex.com/u-boot-toradex.git;protocol=https;branch=${SRCBRANCH} \
- file://fw_env.config \
-"
+require recipes-bsp/u-boot/u-boot.inc
-SRCREV = "6a8d4f758d0331ee303517618f8368ef52c9d1c7"
+SRC_URI = "git://git.toradex.com/u-boot-toradex.git;protocol=https;branch=${SRCBRANCH}"
+SRCREV = "d262075124dcfe2170acfc7db25a1a6155658ec6"
SRCREV:use-head-next = "${AUTOREV}"
-SRCBRANCH = "toradex_imx_v2020.04_5.4.70_2.3.0"
+SRCBRANCH = "toradex_imx_lf_v2022.04"
S = "${WORKDIR}/git"
+B = "${WORKDIR}/build"
+
+BOOT_TOOLS = "imx-boot-tools"
inherit toradex-u-boot-localversion
+# build imx-boot from within U-Boot
+inherit ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '1', 'imx-boot-container', '')}
UBOOT_INITIAL_ENV = "u-boot-initial-env"
-COMPATIBLE_MACHINE = "(mx8)"
+COMPATIBLE_MACHINE = "(mx8-generic-bsp)"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-do_deploy:append:mx8m() {
+do_deploy:append:mx8m-generic-bsp() {
# Deploy the u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
@@ -35,7 +39,8 @@ do_deploy:append:mx8m() {
then
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0777 ${B}/${config}/arch/arm/dts/${UBOOT_DTB_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0777 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${UBOOT_CONFIG}
+ install -m 0777 ${B}/${config}/arch/arm/dts/${UBOOT_DTB_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}/${UBOOT_DTB_NAME}-${type}
+ install -m 0777 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type}
fi
done
unset j
diff --git a/recipes-devtools/imx-loader/imx-loader/mx6_usb_sdp_uboot.conf b/recipes-devtools/imx-loader/imx-loader/mx6_usb_sdp_uboot.conf
index db39e48..6ab50eb 100644
--- a/recipes-devtools/imx-loader/imx-loader/mx6_usb_sdp_uboot.conf
+++ b/recipes-devtools/imx-loader/imx-loader/mx6_usb_sdp_uboot.conf
@@ -1,7 +1,7 @@
mx6_usb_sdp_uboot
#hid/bulk,[old_header,]max packet size, {ram start, ram size}(repeat valid ram areas)
hid,1024,0x10000000,1G,0x00907000,0x31000
-#Load complete FIT image to $ramdisk_addr_r
-tezi.itb:load 0x12100000
-#Load script to $loadaddr and jump to it
-boot-sdp.scr:load 0x12000000,jump 0x12000000
+#Load complete FIT image to $loadaddr
+tezi.itb:load 0x14200000
+#Load script to $scriptaddr and jump to it
+boot-sdp.scr:load 0x18280000,jump 0x18280000
diff --git a/recipes-devtools/imx-loader/imx-loader/mx6ull_usb_sdp_uboot.conf b/recipes-devtools/imx-loader/imx-loader/mx6ull_usb_sdp_uboot.conf
index 73ec74c..8446afb 100644
--- a/recipes-devtools/imx-loader/imx-loader/mx6ull_usb_sdp_uboot.conf
+++ b/recipes-devtools/imx-loader/imx-loader/mx6ull_usb_sdp_uboot.conf
@@ -1,7 +1,7 @@
mx6ull_usb_sdp_uboot
#hid/bulk,[old_header,]max packet size,dcd_addr,{ram start, ram size}(repeat valid ram areas)
hid,1024,0x910000,0x80000000,1G,0x00900000,0x20000
-#Load complete FIT image to $ramdisk_addr_r
-tezi.itb:load 0x82100000
-#Load script to $loadaddr and jump to it
-boot-sdp.scr:load 0x82000000,jump 0x82000000
+#Load complete FIT image to $loadaddr
+tezi.itb:load 0x84200000
+#Load script to $scriptaddr and jump to it
+boot-sdp.scr:load 0x88280000,jump 0x88280000
diff --git a/recipes-devtools/imx-loader/imx-loader/mx7_usb_sdp_uboot.conf b/recipes-devtools/imx-loader/imx-loader/mx7_usb_sdp_uboot.conf
index 0f3a59c..8eca25e 100644
--- a/recipes-devtools/imx-loader/imx-loader/mx7_usb_sdp_uboot.conf
+++ b/recipes-devtools/imx-loader/imx-loader/mx7_usb_sdp_uboot.conf
@@ -1,7 +1,7 @@
mx7_usb_sdp_uboot
#hid/bulk,[old_header,]max packet size,dcd_addr,{ram start, ram size}(repeat valid ram areas)
hid,1024,0x910000,0x80000000,1G,0x00900000,0x20000
-#Load complete FIT image to $ramdisk_addr_r
-tezi.itb:load 0x82100000
-#Load script to $loadaddr and jump to it
-boot-sdp.scr:load 0x82000000,jump 0x82000000
+#Load complete FIT image to $loadaddr
+tezi.itb:load 0x84200000
+#Load script to $scriptaddr and jump to it
+boot-sdp.scr:load 0x88280000,jump 0x88280000
diff --git a/recipes-devtools/imx-loader/imx-loader_git.bb b/recipes-devtools/imx-loader/imx-loader_git.bb
index 39e798b..972ca74 100644
--- a/recipes-devtools/imx-loader/imx-loader_git.bb
+++ b/recipes-devtools/imx-loader/imx-loader_git.bb
@@ -1,7 +1,7 @@
SUMMARY = "USB/UART loader for i.MX51/53/6x/7 and Vybrid"
SECTION = "base"
HOMEPAGE = "https://github.com/boundarydevices/imx_usb_loader"
-LICENSE = "LGPLv2+"
+LICENSE = "LGPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
DEPENDS = "libusb"
diff --git a/recipes-graphics/drm/libdrm_2.4.%.imx.bbappend b/recipes-graphics/drm/libdrm_2.4.%.imx.bbappend
new file mode 100644
index 0000000..aa86fd5
--- /dev/null
+++ b/recipes-graphics/drm/libdrm_2.4.%.imx.bbappend
@@ -0,0 +1 @@
+RRECOMMENDS:${PN}:append:imxgpu:tdx = " ${PN}-vivante"
diff --git a/recipes-graphics/drm/libdrm_2.4.102.imx.bbappend b/recipes-graphics/drm/libdrm_2.4.102.imx.bbappend
deleted file mode 100644
index b41bed1..0000000
--- a/recipes-graphics/drm/libdrm_2.4.102.imx.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-RDEPENDS:${PN}:append:imxgpu = " ${PN}-etnaviv ${PN}-vivante"
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend
deleted file mode 100644
index 1ba5ed4..0000000
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ /dev/null
@@ -1,49 +0,0 @@
-INI_UNCOMMENT_ASSIGNMENTS:append:mx8 = " \
- use-g2d=1 \
-"
-
-
-uncomment() {
- # already uncommented, do nothing
- if ! (grep "^$1" $2); then
- if ! (grep "^#$1" $2); then
- bbfatal "Commented setting '#$1' not found in file $2"
- fi
- sed -i -e 's,^#'"$1"','"$1"',g' $2
- fi
-}
-
-
-configure_noidle() {
- sed -i '/idle-time=0/d' ${D}${sysconfdir}/xdg/weston/weston.ini
- sed -i '/^\[core\]/a idle-time=0' ${D}${sysconfdir}/xdg/weston/weston.ini
-}
-
-# Prevent weston from going to sleep
-do_install:append:upstream() {
- configure_noidle
-}
-
-configure_pixman() {
- sed -i '/use-pixman=true/d' ${D}${sysconfdir}/xdg/weston/weston.ini
- sed -i '/^\[core\]/a use-pixman=true' ${D}${sysconfdir}/xdg/weston/weston.ini
-}
-
-# With upstream weston and modules without GPU weston uses a lot of
-# cpu time and becomes very unresponsive. Setting use-pixman=true works
-# around it.
-do_install:append:upstream:colibri-imx6ull() {
- configure_pixman
-}
-
-do_install:append:upstream:colibri-imx6ull-emmc() {
- configure_pixman
-}
-
-do_install:append:upstream:colibri-imx7() {
- configure_pixman
-}
-
-do_install:append:upstream:colibri-imx7-emmc() {
- configure_pixman
-}
diff --git a/recipes-graphics/wayland/weston/0001-libweston-backend-fbdev-fbdev.c-don-t-destroy-output.patch b/recipes-graphics/wayland/weston/0001-libweston-backend-fbdev-fbdev.c-don-t-destroy-output.patch
deleted file mode 100644
index 1469938..0000000
--- a/recipes-graphics/wayland/weston/0001-libweston-backend-fbdev-fbdev.c-don-t-destroy-output.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 52ec338ec27a3e3267442bcef36e0b9312441af5 Mon Sep 17 00:00:00 2001
-From: Max Krummenacher <max.krummenacher@toradex.com>
-Date: Thu, 4 Feb 2021 20:33:40 +0000
-Subject: [PATCH 1/2] libweston/backend-fbdev/fbdev.c: don't destroy output
- twice
-
-This is currently unsupported and may result in a segfault.
-
-fbdev_output_disable(base) does call pixman_renderer_output_destroy(base) so
-one should not do it a second time here.
-
-Observed on a colibri-imx6ull which actually uses pixman for rendering.
-
-Program received signal SIGSEGV, Segmentation fault.
-_pixman_image_fini (image=0x636f6c2f)
- at ../pixman-0.38.4/pixman/pixman-image.c:139
-139 ../pixman-0.38.4/pixman/pixman-image.c: Datei oder Verzeichnis nicht gefunden.
-(gdb) bt
- at ../pixman-0.38.4/pixman/pixman-image.c:139
- at ../pixman-0.38.4/pixman/pixman-image.c:211
- at ../git/libweston/pixman-renderer.c:971
- at ../git/libweston/backend-fbdev/fbdev.c:790
- at ../git/libweston/compositor.c:7607
- at ../git/libweston/backend-fbdev/fbdev.c:885
- at ../git/libweston/compositor.c:7949
- at ../git/compositor/main.c:3538
- from /srv/nfs/rootfs-colibri-imx6ull/lib/libc.so.6
-
-Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
----
- libweston/backend-fbdev/fbdev.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/libweston/backend-fbdev/fbdev.c b/libweston/backend-fbdev/fbdev.c
-index becc1488..6c6376c1 100644
---- a/libweston/backend-fbdev/fbdev.c
-+++ b/libweston/backend-fbdev/fbdev.c
-@@ -786,8 +786,7 @@ fbdev_output_destroy(struct weston_output *base)
- fbdev_output_disable(base);
-
- if (backend->use_pixman) {
-- if (base->renderer_state != NULL)
-- pixman_renderer_output_destroy(base);
-+ ;
- #if defined(ENABLE_IMXGPU)
- #if defined(ENABLE_IMXG2D)
- } else if (backend->use_g2d) {
---
-2.20.1
-
diff --git a/recipes-graphics/wayland/weston/0002-libweston-pixman-renderer.c-zero-freed-pointer.patch b/recipes-graphics/wayland/weston/0002-libweston-pixman-renderer.c-zero-freed-pointer.patch
deleted file mode 100644
index 67d21a2..0000000
--- a/recipes-graphics/wayland/weston/0002-libweston-pixman-renderer.c-zero-freed-pointer.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 1c9ad2f2bbd9ad99b89c330ee809f5752cb03877 Mon Sep 17 00:00:00 2001
-From: Max Krummenacher <max.krummenacher@toradex.com>
-Date: Thu, 4 Feb 2021 20:37:02 +0000
-Subject: [PATCH 2/2] libweston/pixman-renderer.c: zero freed pointer
-
-Setting struct elements in a struct just before the whole struct
-is freed makes little sense, however zero the pointer to said struct
-guards against using the no longer assigned memory.
-
-Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
----
- libweston/pixman-renderer.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/libweston/pixman-renderer.c b/libweston/pixman-renderer.c
-index 59b1f0ff..ec037e44 100644
---- a/libweston/pixman-renderer.c
-+++ b/libweston/pixman-renderer.c
-@@ -967,6 +967,9 @@ pixman_renderer_output_destroy(struct weston_output *output)
- {
- struct pixman_output_state *po = get_output_state(output);
-
-+ if (!po)
-+ return;
-+
- if (po->shadow_image)
- pixman_image_unref(po->shadow_image);
-
-@@ -975,9 +978,6 @@ pixman_renderer_output_destroy(struct weston_output *output)
-
- free(po->shadow_buffer);
-
-- po->shadow_buffer = NULL;
-- po->shadow_image = NULL;
-- po->hw_buffer = NULL;
--
- free(po);
-+ output->renderer_state = NULL;
- }
---
-2.20.1
-
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bbappend b/recipes-graphics/wayland/weston_9.0.0.imx.bbappend
deleted file mode 100644
index a353ffc..0000000
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bbappend
+++ /dev/null
@@ -1,12 +0,0 @@
-# Don't build and install the backends which display weston on top of an
-# existing wayland or x11 server. (Otherwise weston will prefer the wayland
-# backend over the fbdev one for the non drm enabled machines)
-PACKAGECONFIG:remove = "wayland x11"
-
-PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false,libxcursor"
-
-FILESEXTRAPATHS:prepend := "${THISDIR}/weston/:"
-SRC_URI:append = " \
- file://0001-libweston-backend-fbdev-fbdev.c-don-t-destroy-output.patch \
- file://0002-libweston-pixman-renderer.c-zero-freed-pointer.patch \
-"
diff --git a/recipes-kernel/linux/device-tree-overlays_git.bb b/recipes-kernel/linux/device-tree-overlays_git.bb
index f190ed0..db0f4dd 100644
--- a/recipes-kernel/linux/device-tree-overlays_git.bb
+++ b/recipes-kernel/linux/device-tree-overlays_git.bb
@@ -1,7 +1,7 @@
inherit toradex-devicetree
-SRCBRANCH = "toradex_5.4-2.3.x-imx"
-SRCREV = "a52d315e89af02a63ed5d43d77626a91e3e82da5"
+SRCBRANCH = "toradex_5.15-2.2.x-imx"
+SRCREV = "69f40a121e3f901be100f54c19d1721b70c63aa2"
SRCREV:use-head-next = "${AUTOREV}"
# we have dtbo's in arm and arm64 architecture, set the include paths
diff --git a/recipes-kernel/linux/linux-imx-headers_5%.bbappend b/recipes-kernel/linux/linux-imx-headers_5%.bbappend
new file mode 100644
index 0000000..36be8d5
--- /dev/null
+++ b/recipes-kernel/linux/linux-imx-headers_5%.bbappend
@@ -0,0 +1,5 @@
+LIC_FILES_CHKSUM:tdx = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+SRCBRANCH:tdx = "toradex_5.15-2.2.x-imx"
+SRC_URI:tdx = "git://git.toradex.com/linux-toradex.git;protocol=https;branch=${SRCBRANCH}"
+# Keep that one stable, i.e. use the exact git hash from the NXP BSP.
+SRCREV:tdx = "7c13adcd3af7dcd541144655102e1cdb941ad538"
diff --git a/recipes-kernel/linux/linux-imx-headers_5.15.bb b/recipes-kernel/linux/linux-imx-headers_5.15.bb
new file mode 100644
index 0000000..ae15190
--- /dev/null
+++ b/recipes-kernel/linux/linux-imx-headers_5.15.bb
@@ -0,0 +1,79 @@
+# Copyright 2017-2021 NXP
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+SUMMARY = "Installs i.MX-specific kernel headers"
+DESCRIPTION = "Installs i.MX-specific kernel headers to userspace. \
+New headers are installed in ${includedir}/imx."
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+SRC_URI = "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
+SRCBRANCH = "lf-5.15.y"
+LOCALVERSION = "-5.15.71-2.2.0"
+SRCREV = "3313732e9984cb8a6b10a9085c7e18d58e770d56"
+
+S = "${WORKDIR}/git"
+
+do_configure[noexec] = "1"
+
+do_compile[noexec] = "1"
+
+IMX_UAPI_HEADERS = " \
+ dma-buf.h \
+ hantrodec.h \
+ hx280enc.h \
+ ipu.h \
+ isl29023.h \
+ imx_vpu.h \
+ mxc_asrc.h \
+ mxc_dcic.h \
+ mxc_mlb.h \
+ mxc_sim_interface.h \
+ mxc_v4l2.h \
+ mxcfb.h \
+ pxp_device.h \
+ pxp_dma.h \
+ version.h \
+ videodev2.h \
+"
+
+do_install() {
+ # We install all headers inside of B so we can copy only the
+ # i.MX-specific ones, and there is no risk of a new header to be
+ # installed by mistake.
+ oe_runmake headers_install INSTALL_HDR_PATH=${B}${exec_prefix}
+
+ ################################################
+ # BEGIN Copy of exceptional logic from linux-libc-headers
+ # Kernel should not be exporting this header
+ rm -f ${B}${exec_prefix}/include/scsi/scsi.h
+
+ # The ..install.cmd conflicts between various configure runs
+ find ${B}${includedir} -name ..install.cmd | xargs rm -f
+ # END Copy from linux-libc-headers
+ ################################################
+
+ # Install i.MX-specific headers only
+ for h in ${IMX_UAPI_HEADERS}; do
+ install -D -m 0644 ${B}${includedir}/linux/$h \
+ ${D}${includedir}/imx/linux/$h
+ done
+}
+
+# Allow to build empty main package, this is required in order for -dev package
+# to be propagated into the SDK
+#
+# Without this setting the RDEPENDS in other recipes fails to find this
+# package, therefore causing the -dev package also to be skipped effectively not
+# populating it into SDK
+ALLOW_EMPTY:${PN} = "1"
+
+INHIBIT_DEFAULT_DEPS = "1"
+DEPENDS += "unifdef-native bison-native rsync-native"
+
+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 = '.*'
diff --git a/recipes-kernel/linux/linux-imx-headers_5.4%.bbappend b/recipes-kernel/linux/linux-imx-headers_5.4%.bbappend
deleted file mode 100644
index 8cda03c..0000000
--- a/recipes-kernel/linux/linux-imx-headers_5.4%.bbappend
+++ /dev/null
@@ -1,6 +0,0 @@
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
-SRCBRANCH = "toradex_5.4-2.1.x-imx"
-LOCALVERSION = "-2.3.2"
-SRC_URI = "git://git.toradex.com/linux-toradex.git;protocol=https;branch=${SRCBRANCH}"
-# Keep that one stable, i.e. use the exact git hash from the NXP BSP.
-SRCREV = "dea2fede7e024ee7029b13e8d82a00ec14427777"
diff --git a/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-Revert-Revert-ARM-9113-1-uaccess-remove-set_fs-imple.patch b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-Revert-Revert-ARM-9113-1-uaccess-remove-set_fs-imple.patch
new file mode 100644
index 0000000..b2413e8
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-Revert-Revert-ARM-9113-1-uaccess-remove-set_fs-imple.patch
@@ -0,0 +1,44 @@
+From 8f561f0a27a68205ad7a33b3e0fdaf80fc7f96ea Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Tue, 9 Aug 2022 14:47:27 +0200
+Subject: [PATCH 1/5] Revert "Revert "ARM: 9113/1: uaccess: remove set_fs()
+ implementation""
+
+Prepare for applying RT-Patch by partly reverting the conflicting
+downstream commit.
+
+This reverts commit ee69377c0fb428a2319ca071bbdbbddbb756cd02.
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ arch/arm/include/asm/thread_info.h | 1 -
+ arch/arm/kernel/asm-offsets.c | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/arch/arm/include/asm/thread_info.h b/arch/arm/include/asm/thread_info.h
+index bf64b41d47eb..d1f959463e17 100644
+--- a/arch/arm/include/asm/thread_info.h
++++ b/arch/arm/include/asm/thread_info.h
+@@ -54,7 +54,6 @@ struct cpu_context_save {
+ struct thread_info {
+ unsigned long flags; /* low level flags */
+ int preempt_count; /* 0 => preemptable, <0 => bug */
+- mm_segment_t addr_limit; /* address limit */
+ struct task_struct *task; /* main task structure */
+ __u32 cpu; /* cpu */
+ __u32 cpu_domain; /* cpu domain */
+diff --git a/arch/arm/kernel/asm-offsets.c b/arch/arm/kernel/asm-offsets.c
+index 2dc0f59b0053..77a253fe3ff3 100644
+--- a/arch/arm/kernel/asm-offsets.c
++++ b/arch/arm/kernel/asm-offsets.c
+@@ -43,7 +43,6 @@ int main(void)
+ BLANK();
+ DEFINE(TI_FLAGS, offsetof(struct thread_info, flags));
+ DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count));
+- DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit));
+ DEFINE(TI_TASK, offsetof(struct thread_info, task));
+ DEFINE(TI_CPU, offsetof(struct thread_info, cpu));
+ DEFINE(TI_CPU_DOMAIN, offsetof(struct thread_info, cpu_domain));
+--
+2.35.3
+
diff --git a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch
index 4dc1dae..4dc1dae 100644
--- a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch
diff --git a/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-arch-arm-Kconfig-prepare-for-rt-patch.patch b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-arch-arm-Kconfig-prepare-for-rt-patch.patch
new file mode 100644
index 0000000..7dfb476
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-arch-arm-Kconfig-prepare-for-rt-patch.patch
@@ -0,0 +1,28 @@
+From 8e60810e199661b607557e560b329097dc3fea0e Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Sun, 13 Nov 2022 13:30:47 +0100
+Subject: [PATCH 2/5] arch/arm/Kconfig: prepare for rt patch
+
+Prepare for applying the RT patch without fuzz (and revert the
+change after the RT patch is applied.
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ arch/arm/Kconfig | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index ddeca482323d..a8ae17f5740d 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -125,7 +125,6 @@ config ARM
+ select PCI_SYSCALL if PCI
+ select PERF_USE_VMALLOC
+ select RTC_LIB
+- select SET_FS
+ select SYS_SUPPORTS_APM_EMULATION
+ select TRACE_IRQFLAGS_SUPPORT if !CPU_V7M
+ # Above selects are sorted alphabetically; please add new ones
+--
+2.35.3
+
diff --git a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/0002-ddr-perf-prevent-BUG-with-rt-patch.patch b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-ddr-perf-prevent-BUG-with-rt-patch.patch
index 9296878..9296878 100644
--- a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/0002-ddr-perf-prevent-BUG-with-rt-patch.patch
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0002-ddr-perf-prevent-BUG-with-rt-patch.patch
diff --git a/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0004-Revert-arch-arm-Kconfig-prepare-for-rt-patch.patch b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0004-Revert-arch-arm-Kconfig-prepare-for-rt-patch.patch
new file mode 100644
index 0000000..5ade25c
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0004-Revert-arch-arm-Kconfig-prepare-for-rt-patch.patch
@@ -0,0 +1,28 @@
+From 572fd569bff28f25e83b8466c77ccb821675771a Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Sun, 13 Nov 2022 13:36:24 +0100
+Subject: [PATCH 4/5] Revert "arch/arm/Kconfig: prepare for rt patch"
+
+This reverts commit 8e60810e199661b607557e560b329097dc3fea0e.
+Revert the changes made to make the RT-Patch apply.
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ arch/arm/Kconfig | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 0e8631b96e0f..d5b9364334e0 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -128,6 +128,7 @@ config ARM
+ select PERF_USE_VMALLOC
+ select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM
+ select RTC_LIB
++ select SET_FS
+ select SYS_SUPPORTS_APM_EMULATION
+ select TRACE_IRQFLAGS_SUPPORT if !CPU_V7M
+ # Above selects are sorted alphabetically; please add new ones
+--
+2.35.3
+
diff --git a/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0005-Revert-Revert-Revert-ARM-9113-1-uaccess-remove-set_f.patch b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0005-Revert-Revert-Revert-ARM-9113-1-uaccess-remove-set_f.patch
new file mode 100644
index 0000000..f98060a
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/0005-Revert-Revert-Revert-ARM-9113-1-uaccess-remove-set_f.patch
@@ -0,0 +1,42 @@
+From d162134a09f5036bb1d34c8c3ae8091b8851e1f9 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Tue, 9 Aug 2022 14:56:10 +0200
+Subject: [PATCH 5/5] Revert "Revert "Revert "ARM: 9113/1: uaccess: remove
+ set_fs() implementation"""
+
+This reverts commit 8f561f0a27a68205ad7a33b3e0fdaf80fc7f96ea
+Revert the changes made to make the RT-Patch apply.
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ arch/arm/include/asm/thread_info.h | 1 +
+ arch/arm/kernel/asm-offsets.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/arch/arm/include/asm/thread_info.h b/arch/arm/include/asm/thread_info.h
+index c15dbffabf99..fc6f70b83ba1 100644
+--- a/arch/arm/include/asm/thread_info.h
++++ b/arch/arm/include/asm/thread_info.h
+@@ -55,6 +55,7 @@ struct thread_info {
+ unsigned long flags; /* low level flags */
+ int preempt_count; /* 0 => preemptable, <0 => bug */
+ int preempt_lazy_count; /* 0 => preemptable, <0 => bug */
++ mm_segment_t addr_limit; /* address limit */
+ struct task_struct *task; /* main task structure */
+ __u32 cpu; /* cpu */
+ __u32 cpu_domain; /* cpu domain */
+diff --git a/arch/arm/kernel/asm-offsets.c b/arch/arm/kernel/asm-offsets.c
+index addef75db054..997d7ff758f9 100644
+--- a/arch/arm/kernel/asm-offsets.c
++++ b/arch/arm/kernel/asm-offsets.c
+@@ -44,6 +44,7 @@ int main(void)
+ DEFINE(TI_FLAGS, offsetof(struct thread_info, flags));
+ DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count));
+ DEFINE(TI_PREEMPT_LAZY, offsetof(struct thread_info, preempt_lazy_count));
++ DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit));
+ DEFINE(TI_TASK, offsetof(struct thread_info, task));
+ DEFINE(TI_CPU, offsetof(struct thread_info, cpu));
+ DEFINE(TI_CPU_DOMAIN, offsetof(struct thread_info, cpu_domain));
+--
+2.35.3
+
diff --git a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt-less-latency.cfg b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt-less-latency.cfg
index a9c88bd..a9c88bd 100644
--- a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt-less-latency.cfg
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt-less-latency.cfg
diff --git a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt-less-latency.scc b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt-less-latency.scc
index edd1519..edd1519 100644
--- a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt-less-latency.scc
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt-less-latency.scc
diff --git a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt.cfg b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt.cfg
index f76e447..17b06b1 100644
--- a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt.cfg
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt.cfg
@@ -1,4 +1,5 @@
CONFIG_EXPERT=y
+# CONFIG_KVM is not set
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
diff --git a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt.scc b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt.scc
index 82d27dc..82d27dc 100644
--- a/recipes-kernel/linux/linux-toradex-5.4-2.3.x/preempt-rt.scc
+++ b/recipes-kernel/linux/linux-toradex-5.15-2.2.x/preempt-rt.scc
diff --git a/recipes-kernel/linux/linux-toradex_5.15-2.2.x.bb b/recipes-kernel/linux/linux-toradex_5.15-2.2.x.bb
new file mode 100644
index 0000000..2988211
--- /dev/null
+++ b/recipes-kernel/linux/linux-toradex_5.15-2.2.x.bb
@@ -0,0 +1,50 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-${PV}:"
+require recipes-kernel/linux/linux-imx.inc
+
+SUMMARY = "Linux kernel for Toradex Freescale i.MX based modules"
+SUMMARY:preempt-rt = "Real-Time Linux kernel for Toradex Freescale i.MX based modules"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+
+SRC_URI = " \
+ git://git.toradex.com/linux-toradex.git;protocol=https;branch=${SRCBRANCH};name=machine \
+"
+
+# Load USB functions configurable through configfs (CONFIG_USB_CONFIGFS)
+KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('COMBINED_FEATURES', 'usbgadget', ' libcomposite', '',d)}"
+
+inherit toradex-kernel-deploy-config toradex-kernel-localversion
+LINUX_VERSION = "5.15.148"
+# skip, as with use-head-next LINUX_VERSION might be set wrongly
+KERNEL_VERSION_SANITY_SKIP = "1"
+
+SRCBRANCH = "toradex_5.15-2.2.x-imx"
+SRCREV_machine = "23a8e831749daa8b77e349d827715dd1d7f8e9a5"
+SRCREV_machine:use-head-next = "${AUTOREV}"
+
+DEPENDS += "bc-native"
+COMPATIBLE_MACHINE = "mx8-nxp-bsp"
+
+KBUILD_DEFCONFIG:mx8-nxp-bsp ?= "toradex_defconfig"
+
+export DTC_FLAGS = "-@"
+
+###############################################################################
+# Apply the RT patch and change the configuration to use PREMPT_RT when the
+# preempt-rt override is set.
+###############################################################################
+
+# patches get moved into the 'older' directory when superseeded, so provide
+# both possible storage locations.
+MIRRORS:append:preempt-rt = "${KERNELORG_MIRROR}/linux/kernel/projects/rt/5.15/older/ ${KERNELORG_MIRROR}/linux/kernel/projects/rt/5.15/"
+SRC_URI:append:preempt-rt = " \
+ file://0001-Revert-Revert-ARM-9113-1-uaccess-remove-set_fs-imple.patch \
+ file://0002-arch-arm-Kconfig-prepare-for-rt-patch.patch \
+ ${KERNELORG_MIRROR}/linux/kernel/projects/rt/5.15/older/patch-5.15.148-rt74.patch.xz;name=rt-patch \
+ file://0004-Revert-arch-arm-Kconfig-prepare-for-rt-patch.patch \
+ file://0005-Revert-Revert-Revert-ARM-9113-1-uaccess-remove-set_f.patch \
+ file://preempt-rt.scc \
+ file://preempt-rt-less-latency.scc \
+"
+
+SRC_URI[rt-patch.sha256sum] = "b3494bd8c156550b3bfe27e544928e7ee3f0822d182ed77de54ebef867c67c6d"
diff --git a/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb b/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb
deleted file mode 100644
index 49f22ee..0000000
--- a/recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb
+++ /dev/null
@@ -1,59 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}-${PV}:"
-require recipes-kernel/linux/linux-imx.inc
-
-SUMMARY = "Linux kernel for Toradex Freescale i.MX based modules"
-SUMMARY:preempt-rt = "Real-Time Linux kernel for Toradex Freescale i.MX based modules"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
-
-SRC_URI = " \
- git://git.toradex.com/linux-toradex.git;protocol=https;branch=${SRCBRANCH};name=machine \
-"
-
-# Load USB functions configurable through configfs (CONFIG_USB_CONFIGFS)
-KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('COMBINED_FEATURES', 'usbgadget', ' libcomposite', '',d)}"
-
-inherit toradex-kernel-localversion
-LINUX_VERSION = "5.4.129"
-# skip, as with use-head-next LINUX_VERSION might be set wrongly
-KERNEL_VERSION_SANITY_SKIP:use-head-next = "1"
-
-# Make sure to override LOCALVERSION in linux-imx.inc
-LOCALVERSION = "-${TDX_VERSION}"
-
-SRCBRANCH = "toradex_5.4-2.3.x-imx"
-SRCREV_machine = "022cb949c6ec0df629b50552af88e5045c83cfdb"
-SRCREV_machine:use-head-next = "${AUTOREV}"
-
-DEPENDS += "lzop-native bc-native"
-COMPATIBLE_MACHINE = "(mx6|mx7|mx8)"
-
-KBUILD_DEFCONFIG:apalis-imx6 ?= "apalis_imx6_defconfig"
-KBUILD_DEFCONFIG:colibri-imx6 ?= "colibri_imx6_defconfig"
-KBUILD_DEFCONFIG:colibri-imx6ull ?= "colibri-imx6ull_defconfig"
-KBUILD_DEFCONFIG:colibri-imx6ull-emmc ?= "colibri-imx6ull_defconfig"
-KBUILD_DEFCONFIG:mx7 ?= "colibri_imx7_defconfig"
-KBUILD_DEFCONFIG:mx8 ?= "toradex_defconfig"
-
-export DTC_FLAGS = "-@"
-
-###############################################################################
-# Apply the RT patch and change the configuration to use PREMPT_RT when the
-# preempt-rt override is set.
-###############################################################################
-
-# patches get moved into the 'older' directory when superseeded, so provide
-# both possible storage locations.
-MIRRORS:append:preempt-rt = "${KERNELORG_MIRROR}/linux/kernel/projects/rt/5.4/older/ ${KERNELORG_MIRROR}/linux/kernel/projects/rt/5.4/"
-SRC_URI:append:preempt-rt = " \
- ${KERNELORG_MIRROR}/linux/kernel/projects/rt/5.4/older/patch-5.4.129-rt61.patch.xz;name=rt-patch \
- file://preempt-rt.scc \
- file://preempt-rt-less-latency.scc \
-"
-# This patches do currently not apply but are likely needed or we get
-# runtime bugs.
-# file://0001-imx_sc_thermal-prevent-BUG-with-rt-patch.patch \
-# file://0002-ddr-perf-prevent-BUG-with-rt-patch.patch \
-#
-
-SRC_URI[rt-patch.sha256sum] = "f8ddc34c7765bb78c9f44c4e41dae7d4196c87201212ab4ec3723a7594b9702c"
diff --git a/recipes-kernel/perf/perf.bbappend b/recipes-kernel/perf/perf.bbappend
deleted file mode 100644
index ff0174d..0000000
--- a/recipes-kernel/perf/perf.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-# perf with a 4.4 kernel no longer compiles
-COMPATIBLE_MACHINE:use-nxp-bsp:colibri-vf = "(^$)"
diff --git a/recipes-multimedia/gstreamer/gst-plugins-package.inc b/recipes-multimedia/gstreamer/gst-plugins-package.inc
deleted file mode 100644
index 7dea6e0..0000000
--- a/recipes-multimedia/gstreamer/gst-plugins-package.inc
+++ /dev/null
@@ -1,56 +0,0 @@
-PACKAGESPLITFUNCS:prepend = " split_gstreamer10_packages "
-PACKAGESPLITFUNCS:append = " set_metapkg_rdepends "
-
-python split_gstreamer10_packages () {
- gst_libdir = d.expand('${libdir}/gstreamer-${LIBV}')
- postinst = d.getVar('plugin_postinst')
- glibdir = d.getVar('libdir')
-
- do_split_packages(d, glibdir, r'^lib(.*)\.so\.*', 'lib%s', 'gstreamer %s library', extra_depends='', allow_links=True)
- do_split_packages(d, gst_libdir, r'libgst(.*)\.so$', d.expand('${PN}-%s'), 'GStreamer plugin for %s', postinst=postinst, extra_depends='')
- do_split_packages(d, glibdir+'/girepository-1.0', r'Gst(.*)-1.0\.typelib$', d.expand('${PN}-%s-typelib'), 'GStreamer typelib file for %s', postinst=postinst, extra_depends='')
- do_split_packages(d, gst_libdir, r'libgst(.*)\.la$', d.expand('${PN}-%s-dev'), 'GStreamer plugin for %s (development files)', extra_depends='${PN}-dev')
- do_split_packages(d, gst_libdir, r'libgst(.*)\.a$', d.expand('${PN}-%s-staticdev'), 'GStreamer plugin for %s (static development files)', extra_depends='${PN}-staticdev')
-}
-
-python set_metapkg_rdepends () {
- import os
- import oe.utils
-
- pn = d.getVar('PN')
- metapkg = pn + '-meta'
- d.setVar('ALLOW_EMPTY:' + metapkg, "1")
- d.setVar('FILES:' + metapkg, "")
- blacklist = [ pn, pn + '-meta' ]
- metapkg_rdepends = []
- pkgdest = d.getVar('PKGDEST')
- for pkg in oe.utils.packages_filter_out_system(d):
- if pkg not in blacklist and pkg not in metapkg_rdepends:
- # See if the package is empty by looking at the contents of its PKGDEST subdirectory.
- # If this subdirectory is empty, then the package is.
- # Empty packages do not get added to the meta package's RDEPENDS
- pkgdir = os.path.join(pkgdest, pkg)
- if os.path.exists(pkgdir):
- dir_contents = os.listdir(pkgdir) or []
- else:
- dir_contents = []
- is_empty = len(dir_contents) == 0
- if not is_empty:
- metapkg_rdepends.append(pkg)
- d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends))
- d.setVar('DESCRIPTION:' + metapkg, pn + ' meta package')
-}
-
-# each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev
-# so we need them even when empty (like in gst-plugins-good case)
-ALLOW_EMPTY:${PN} = "1"
-ALLOW_EMPTY:${PN}-dev = "1"
-ALLOW_EMPTY:${PN}-staticdev = "1"
-
-PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib"
-
-FILES:${PN} = ""
-FILES:${PN}-apps = "${bindir}"
-FILES:${PN}-glib = "${datadir}/glib-2.0"
-
-RRECOMMENDS:${PN} += "${PN}-meta"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch
index 373d343..5dc7b66 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch
@@ -1,6 +1,6 @@
-From a2df510b1cc6d1c45614cf7e58d9f203d15ea716 Mon Sep 17 00:00:00 2001
+From e6aa0007d90071dc5405ac2188134c231b82ec88 Mon Sep 17 00:00:00 2001
From: Zan Dobersek <zdobersek@igalia.com>
-Date: Thu, 25 Mar 2021 10:27:30 +0100
+Date: Fri, 11 Mar 2022 15:50:23 +0100
Subject: [PATCH] glupload: don't reject non-RGBA output format in
_directviv_upload_accept
@@ -12,21 +12,30 @@ means picking a different uploader that won't do the job properly.
If the rejecetion is removed, the upload proceeds and the pipeline is later
reconfigured so that the DirectVIV uploader's RGBA-only output is respected,
meaning the final sink will also move over from handling I420 to RGBA.
+
+Upstream-Status: pending
+
+Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
+Signed-off-by: Ming Liu <ming.liu@toradex.com>
---
- gst-libs/gst/gl/gstglupload.c | 3 ---
- 1 file changed, 3 deletions(-)
+ gst-libs/gst/gl/gstglupload.c | 4 ----
+ 1 file changed, 4 deletions(-)
diff --git a/gst-libs/gst/gl/gstglupload.c b/gst-libs/gst/gl/gstglupload.c
-index 50169adb0..079ed695e 100644
+index 78b65c1cc..9ae5e7f97 100644
--- a/gst-libs/gst/gl/gstglupload.c
+++ b/gst-libs/gst/gl/gstglupload.c
-@@ -1761,9 +1761,6 @@ _directviv_upload_accept (gpointer impl, GstBuffer * buffer, GstCaps * in_caps,
+@@ -1845,10 +1845,6 @@ _directviv_upload_accept (gpointer impl, GstBuffer * buffer, GstCaps * in_caps,
#if GST_GL_HAVE_PHYMEM
GstVideoInfo *in_info = &directviv->upload->priv->in_info;
-- GstVideoFormat fmt = GST_VIDEO_INFO_FORMAT (&directviv->upload->priv->out_info);
+- GstVideoFormat fmt =
+- GST_VIDEO_INFO_FORMAT (&directviv->upload->priv->out_info);
- if (fmt != GST_VIDEO_FORMAT_RGBA)
- return FALSE;
if (n_mem != 1 || !mem || !gst_is_phys_memory (mem)) {
GstVideoFrame frame1, frame2;
+--
+2.25.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bbappend
deleted file mode 100644
index 910fc0e..0000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-SRC_URI += " file://0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bbappend
new file mode 100644
index 0000000..654c581
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.0.imx.bbappend
@@ -0,0 +1,3 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI:append = " file://0001-glupload-don-t-reject-non-RGBA-output-format-in-_dir.patch"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_%.bbappend
deleted file mode 100644
index c73790e..0000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_%.bbappend
+++ /dev/null
@@ -1 +0,0 @@
-EXTRA_OECONF += "--libdir=${libdir}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc b/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
deleted file mode 100644
index b63f79f..0000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "Plugins for the GStreamer multimedia framework 1.x"
-HOMEPAGE = "http://gstreamer.freedesktop.org/"
-BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
-SECTION = "multimedia"
-
-DEPENDS = "gstreamer1.0 glib-2.0-native"
-
-SRC_URI:append = " file://gtk-doc-tweaks.patch"
-
-inherit autotools pkgconfig upstream-version-is-even gtk-doc
-
-acpaths = "-I ${S}/common/m4 -I ${S}/m4"
-
-LIBV = "1.0"
-require gst-plugins-package.inc
-
-# Orc enables runtime JIT compilation of data processing routines from Orc
-# bytecode to SIMD instructions for various architectures (currently SSE, MMX,
-# MIPS, Altivec and NEON are supported).
-
-GSTREAMER_ORC ?= "orc"
-
-PACKAGECONFIG[debug] = "--enable-debug,--disable-debug"
-PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc orc-native"
-PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,valgrind"
-
-export ORCC = "${STAGING_DIR_NATIVE}${bindir}/orcc"
-
-EXTRA_OECONF = " \
- --disable-examples \
-"
-
-delete_pkg_m4_file() {
- # This m4 file is out of date and is missing PKG_CONFIG_SYSROOT_PATH tweaks which we need for introspection
- rm "${S}/common/m4/pkg.m4" || true
- rm -f "${S}/common/m4/gtk-doc.m4"
-}
-
-do_configure[prefuncs] += " delete_pkg_m4_file"
-
-PACKAGES_DYNAMIC = "^${PN}-.*"
diff --git a/recipes-support/bmode-usb/bmode-usb_1.0.bb b/recipes-support/bmode-usb/bmode-usb_1.0.bb
index 7458c51..a949eec 100644
--- a/recipes-support/bmode-usb/bmode-usb_1.0.bb
+++ b/recipes-support/bmode-usb/bmode-usb_1.0.bb
@@ -1,5 +1,5 @@
SUMMARY = "Sets i.MX boot mode on next reboot to recovery, aka serial download"
-LICENSE = "GPLv2+"
+LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://bmode_usb.c;endline=5;md5=4c9010cb42fb7648a460c35e6b5c685c"
SRC_URI = "file://bmode_usb.c"
@@ -8,7 +8,7 @@ DEFINE = "NO_MACHINE"
DEFINE:apalis-imx6 = "MX6"
DEFINE:colibri-imx6 = "MX6"
DEFINE:colibri-imx6ull = "MX6ULL"
-DEFINE_colibri-imx6ull-emmc = "MX6ULL"
+DEFINE:colibri-imx6ull-emmc = "MX6ULL"
do_compile() {
${CC} -o bmode_usb bmode_usb.c ${CFLAGS} ${LDFLAGS} -D ${DEFINE}
diff --git a/wic/verdin-imx8mp-imx-boot-bootpart.wks.in b/wic/verdin-imx8mp-imx-boot-bootpart.wks.in
deleted file mode 100644
index b498a1a..0000000
--- a/wic/verdin-imx8mp-imx-boot-bootpart.wks.in
+++ /dev/null
@@ -1,20 +0,0 @@
-# short-description: Create SD card image with a boot partition
-# long-description:
-# Create an image that can be written onto a SD card using dd for use
-# with i.MX SoC family
-# It uses u-boot + other binaries gathered together on imx-boot file
-#
-# The disk layout used is:
-# - ---------- -------------- --------------
-# | | imx-boot | boot | rootfs |
-# - ---------- -------------- --------------
-# ^ ^ ^ ^ ^
-# | | | | |
-# 0 | 8MiB 72MiB 72MiB + rootfs + IMAGE_EXTRA_SPACE (default 10MiB)
-# ${IMX_BOOT_SEEK} 32 or 33kiB, see reference manual
-#
-part u-boot --source rawcopy --sourceparams="file=imx-boot" --ondisk mmcblk --no-table --align ${IMX_BOOT_SEEK}
-part /boot --source bootimg-partition --ondisk mmcblk --fstype=vfat --label BOOT --active --align 8192 --size 64
-part / --source rootfs --ondisk mmcblk --fstype=ext4 --label root --align 8192
-
-bootloader --ptable msdos