aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--EULA54
-rw-r--r--SCR/SCR-5.10.72-2.2.0.txt (renamed from SCR/SCR-5.4.70_2.3.2.txt)877
-rw-r--r--classes/fsl-eula-unpack.bbclass16
-rw-r--r--conf/machine/imx6ulevk.conf1
-rw-r--r--conf/machine/imx6ullevk.conf1
-rw-r--r--conf/machine/imx8mp-lpddr4-evk.conf9
-rw-r--r--conf/machine/imx8mq-evk.conf7
-rw-r--r--conf/machine/imx8qm-mek.conf1
-rw-r--r--conf/machine/include/imx-base.inc17
-rw-r--r--conf/machine/include/imx8mm-evk.inc4
-rw-r--r--conf/machine/include/imx8mp-evk.inc5
-rw-r--r--conf/machine/include/qoriq-arm.inc2
-rw-r--r--conf/machine/include/qoriq-base.inc6
-rw-r--r--dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb2
-rw-r--r--recipes-bsp/atf/qoriq-atf-2.3.inc2
-rw-r--r--recipes-bsp/atf/qoriq-atf_1.5.bb2
-rw-r--r--recipes-bsp/boot-format/boot-format_git.bb2
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8.12.inc (renamed from recipes-bsp/firmware-imx/firmware-imx-8.10.1.inc)6
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb (renamed from recipes-bsp/firmware-imx/firmware-imx-8_8.10.1.bb)0
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8m_8.12.bb (renamed from recipes-bsp/firmware-imx/firmware-imx-8m_8.10.1.bb)0
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx_8.12.bb (renamed from recipes-bsp/firmware-imx/firmware-imx_8.10.1.bb)0
-rw-r--r--recipes-bsp/firmware-qca/firmware-qca.inc15
-rw-r--r--recipes-bsp/firmware-qca/firmware-qca6174_3.0.2.bb27
-rw-r--r--recipes-bsp/firmware-qca/firmware-qca9377_3.0.2.bb27
-rw-r--r--recipes-bsp/firmware-qca/qca-tools_3.0.2.bb20
-rw-r--r--recipes-bsp/fsl-tlu/fsl-tlu_1.0.0.bb2
-rw-r--r--recipes-bsp/imx-atf/imx-atf_2.4.bb8
-rw-r--r--recipes-bsp/imx-lib/imx-lib_git.bb2
-rw-r--r--recipes-bsp/imx-mkimage/imx-mkimage_git.bb15
-rw-r--r--recipes-bsp/imx-mkimage/imx-mkimage_git.inc9
-rw-r--r--recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb (renamed from recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.7.1.bb)8
-rw-r--r--recipes-bsp/imx-seco/imx-seco-libs_git.bb8
-rw-r--r--recipes-bsp/imx-seco/imx-seco_3.8.1.bb (renamed from recipes-bsp/imx-seco/imx-seco_3.7.5.bb)8
-rw-r--r--recipes-bsp/imx-test/imx-test_git.bb8
-rw-r--r--recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.4.0.bb (renamed from recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.3.0.bb)8
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon/0001-Makefile-Honor-LDFLAGS-from-toolchain.patch33
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb32
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-decoder_sw-resolve-compilation-error-with-fcommon.patch54
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb35
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb35
-rw-r--r--recipes-bsp/isp-imx/basler-camera_4.2.2.13.0.bb (renamed from recipes-bsp/isp-imx/basler-camera_4.2.2.11.0.bb)6
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch53
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch41
-rw-r--r--recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb (renamed from recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb)8
-rw-r--r--recipes-bsp/mc-utils/mc-utils_git.bb2
-rw-r--r--recipes-bsp/rcw/rcw_git.bb2
-rw-r--r--recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc (renamed from recipes-bsp/u-boot/u-boot-imx-common.inc)8
-rw-r--r--recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb (renamed from recipes-bsp/u-boot/u-boot-imx-mfgtool_2020.04.bb)0
-rw-r--r--recipes-bsp/u-boot/u-boot-imx_2021.04.bb (renamed from recipes-bsp/u-boot/u-boot-imx_2020.04.bb)6
-rw-r--r--recipes-bsp/u-boot/u-boot-mfgtool.inc4
-rw-r--r--recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb2
-rw-r--r--recipes-devtools/cst/cst_git.bb2
-rw-r--r--recipes-devtools/qemu/qemu-qoriq_4.1.0.bb2
-rw-r--r--recipes-dpaa/eth-config/eth-config_git.bb2
-rw-r--r--recipes-dpaa/flib/flib_git.bb2
-rw-r--r--recipes-dpaa/fmlib/fmlib_git.bb2
-rw-r--r--recipes-dpaa2/aiopsl/aiopsl_git.bb2
-rw-r--r--recipes-dpaa2/dce/dce_git.bb4
-rw-r--r--recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb2
-rw-r--r--recipes-dpaa2/restool/restool_git.bb2
-rw-r--r--recipes-dpaa2/spc/spc_git.bb2
-rw-r--r--recipes-extended/dpdk/dpdk_19.11-20.12.bb2
-rw-r--r--recipes-extended/ipc-ust/ipc-ust_git.bb2
-rw-r--r--recipes-extended/jailhouse/jailhouse_0.12.bb2
-rw-r--r--recipes-extended/libpkcs11/libpkcs11_git.bb2
-rw-r--r--recipes-extended/odp/odp.inc6
-rw-r--r--recipes-extended/ofp/ofp_git.bb2
-rw-r--r--recipes-extended/ovs-dpdk/ovs-dpdk_2.13.0.bb2
-rw-r--r--recipes-extended/secure-obj/secure-obj.inc2
-rw-r--r--recipes-extended/skmm-ep/skmm-ep_git.bb2
-rw-r--r--recipes-extended/tsntool/tsntool_git.bb4
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb13
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb12
-rw-r--r--recipes-graphics/drm/libdrm_2.4.102.imx.bb2
-rw-r--r--recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.9.2.bb (renamed from recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.14.bb)8
-rw-r--r--recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb2
-rw-r--r--recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p2.0.bb (renamed from recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.4.bb)12
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc39
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch64.bb6
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch32.bb (renamed from recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch32.bb)4
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch64.bb6
-rw-r--r--recipes-graphics/wayland/wayland-protocols_1.20.imx.bb2
-rw-r--r--recipes-graphics/wayland/weston_9.0.0.imx.bb2
-rw-r--r--recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb2
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch44
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch47
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch116
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch322
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch31
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch132
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch265
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch287
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch669
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend9
-rw-r--r--recipes-kernel/ceetm/ceetm_git.bb2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-ar_git.bb2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p2.0.bb (renamed from recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.4.bb)10
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-ipc.inc2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.13.0.bb (renamed from recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.11.0.bb)6
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-perf-qoriq_0.8.2.bb2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-qca6174_3.0.bb14
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-qca9377_3.1.bb17
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc23
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-scatter-gather_git.bb2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb2
-rw-r--r--recipes-kernel/linux/linux-fslc-imx/imx/defconfig86
-rw-r--r--recipes-kernel/linux/linux-fslc-imx/mx8/defconfig257
-rw-r--r--recipes-kernel/linux/linux-fslc-imx_5.10.bb (renamed from recipes-kernel/linux/linux-fslc-imx_5.4.bb)43
-rw-r--r--recipes-kernel/linux/linux-fslc_5.10.bb4
-rw-r--r--recipes-kernel/linux/linux-imx-headers_5.10.bb (renamed from recipes-kernel/linux/linux-imx-headers_5.4.bb)12
-rw-r--r--recipes-kernel/linux/linux-imx-mfgtool_5.10.bb (renamed from recipes-kernel/linux/linux-imx-mfgtool_5.4.bb)0
-rw-r--r--recipes-kernel/linux/linux-imx.inc2
-rw-r--r--recipes-kernel/linux/linux-imx/imx/defconfig86
-rw-r--r--recipes-kernel/linux/linux-imx/mx8/defconfig219
-rw-r--r--recipes-kernel/linux/linux-imx_5.10.bb (renamed from recipes-kernel/linux/linux-imx_5.4.bb)10
-rw-r--r--recipes-kernel/linux/linux-qoriq_5.4.bb2
-rw-r--r--recipes-kernel/skmm-host/skmm-host_git.bb2
-rw-r--r--recipes-multimedia/alsa/alsa-lib/0001-add-conf-for-multichannel-support-in-imx.patch14
-rw-r--r--[-rwxr-xr-x]recipes-multimedia/alsa/alsa-lib/0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch20
-rw-r--r--recipes-multimedia/alsa/alsa-lib/0005-add-ak4458-conf-for-multichannel-support.patch37
-rw-r--r--[-rwxr-xr-x]recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch12
-rw-r--r--recipes-multimedia/alsa/imx-alsa-plugins_1.0.26.bb2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb70
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.0.bb24
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.0.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb)26
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch36
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch220
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch34
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-viv-fb-code-must-link-against-libg2d.patch44
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch233
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0005-viv-fb-Make-sure-config.h-is-included.patch)2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0009-glimagesink-Downrank-to-marginal.patch)2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/4ef5c91697a141fea7317aff7f0f28e5a861db99.patch48
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.%.bbappend (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend)0
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.0.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb)43
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend3
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.0.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.3.imx.bb)8
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.0.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.16.0.bb)10
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.0.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.16.0.bb)8
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch58
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch112
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0002-meson-build-gir-even-when-cross-compiling-if-introsp.patch36
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-valgrind-feature.patch74
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch32
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0004-meson-Add-option-for-installed-tests.patch257
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch36
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch110
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch48
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch58
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch37
-rwxr-xr-xrecipes-multimedia/gstreamer/gstreamer1.0/run-ptest2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0_1.18.0.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb)46
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.6.1.bb (renamed from recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb)35
-rw-r--r--recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb21
-rw-r--r--recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb45
-rw-r--r--recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.0.bb26
-rw-r--r--recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb (renamed from recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.2.bb)2
-rwxr-xr-xrecipes-multimedia/tinycompress/tinycompress/0001-tinycompress-Add-id3-decoding.patch1001
-rwxr-xr-xrecipes-multimedia/tinycompress/tinycompress/0002-cplay-Support-wave-file.patch215
-rwxr-xr-xrecipes-multimedia/tinycompress/tinycompress/0003-cplay-Add-pause-feature.patch146
-rwxr-xr-xrecipes-multimedia/tinycompress/tinycompress/0004-tinycompress-pass-NULL-buffer-with-0-size-to-driver.patch40
-rwxr-xr-xrecipes-multimedia/tinycompress/tinycompress/0005-cplay-Support-aac-streams.patch251
-rw-r--r--recipes-multimedia/tinycompress/tinycompress_1.1.6.bb16
-rw-r--r--recipes-security/optee-imx/optee-client_3.10.0.imx.bb2
-rw-r--r--recipes-security/optee-imx/optee-os_3.10.0.imx.bb2
-rw-r--r--recipes-security/optee-imx/optee-test_3.10.0.imx.bb2
-rw-r--r--recipes-security/optee/optee-os-qoriq_3.8.0.bb2
-rw-r--r--recipes-support/opencv/opencv_4.5.2.imx.bb2
169 files changed, 5577 insertions, 2420 deletions
diff --git a/EULA b/EULA
index 015a74b1..1779a870 100644
--- a/EULA
+++ b/EULA
@@ -1,4 +1,4 @@
-LA_OPT_NXP_Software_License v22 April 2021
+LA_OPT_NXP_Software_License v30 October 2021
IMPORTANT. Read the following NXP Software License Agreement ("Agreement")
completely. By selecting the "I Accept" button at the end of this page, or by
@@ -96,7 +96,7 @@ in combination with a NXP Product.
You may not distribute or sublicense the Licensed Software to others under the
license granted in this Section 2.2.
-You may demonstrate the Licensed Software to your direct costumers as part of
+You may demonstrate the Licensed Software to your direct customers as part of
an Authorized System so long as such demonstration is directly controlled by
you and without prior approval by NXP; however, to all other third parties only
if NXP has provided its advance, written approval (e.g. email approval) of your
@@ -405,14 +405,13 @@ examination or audit.
Agreement will be made in writing, and will be effective when received at the
following addresses:
- NXP: NXP B.V.
- High Tech Campus 60
- 5656 AG Eindhoven
- The Netherlands
+ NXP: NXP B.V.
+ High Tech Campus 60
+ 5656 AG Eindhoven
+ The Netherlands
+ ATTN: Legal Department
- ATTN: Legal Department
-
- You: The address provided at registration will be used.
+ You: The address provided at registration will be used.
23. RELATIONSHIP OF THE PARTIES. The parties are independent
contractors. Nothing in this Agreement will be construed to create any
@@ -446,6 +445,10 @@ Party Software or specific components of the NXP proprietary software, the
following terms apply to the extent they deviate from the terms in the
Agreement:
+Airbiquity Inc.: The Airbiquity software may only be used in object code and
+Licensee may not sublicense the Airbiquity software to any third party.
+Licensee’s license to use the Airbiquity software expires on June 30, 2023.
+
Amazon: Use of the Amazon software constitutes your acceptance of the terms of
the Amazon Program Materials License Agreement (including the AVS Component
Schedule, if applicable), located at
@@ -472,9 +475,16 @@ assert claims in small claims court if your claims qualify.
Amphion Semiconductor Ltd.: Distribution of Amphion software must be a part of,
or embedded within, Authorized Systems that include an Amphion Video Decoder.
+Apple MFi Software Development Kit: Use of Apple MFi Software and associated
+documentation is restricted to current Apple MFi licensees in accordance with
+the terms of their own valid and in-effect license from Apple.
+
Aquantia Corp.: You may use Aquantia's API binaries solely to flash the API
software to an NXP Product which mates with an Aquantia device.
+Argus Cyber Security: The Argus software may only be used in object code and
+only for evaluation and demonstration purposes.
+
Atheros: Use of Atheros software is limited to evaluation and demonstration
only. Permitted distributions must be similarly limited. Further rights must
be obtained directly from Atheros.
@@ -486,8 +496,11 @@ Au-Zone Technologies: eIQ Portal, Model Tool, DeepViewRT and ModelRunner are
distributed by NXP under license from Au-Zone Technologies. Your use of the
Licensed Software, examples and related documentation is subject to the
following:
+
(1) Use of Software is limited to Authorized System only
-(2) In no event may Licensee Sublicense OR distribute the Software
+
+(2) In no event may Licensee Sublicense the Software
+
(3) AU-ZONE TECHNOLOGIES SHALL NOT BE LIABLE FOR USE OF LICENSED
SOFTWARE IN CRITICAL APPLICATIONS BY LICENSEE
@@ -501,7 +514,9 @@ herein to the Cadence Design Systems HiFi aacPlus Audio Decoder software does
not include a license to the AAC family of technologies which you or your
customer may need to obtain. Configuration tool outputs may only be distributed
by licensees of the relevant Cadence SDK and distribution is limited to
-distribution of one copy embedded in a single NXP Product.
+distribution of one copy embedded in a single NXP Product. Your use of Cadence
+NatureDSP Libraries whether in source code or in binary is restricted to NXP
+SoC based systems or emulation enablement based on NXP SoC.
Cirque Corporation: Use of Cirque Corporation technology is limited to
evaluation, demonstration, or certification testing only. Permitted
@@ -525,6 +540,14 @@ Cypress Semiconductor Corporation: WWD RTOS source code may only be used in
accordance with the Cypress IOT Community License Agreement obtained directly
from Cypress Semiconductor Corporation.
+Elektrobit Automotive GmbH (“EB”): EB software must be used consistent with
+the EB License Terms and Conditions, Version 1.4 (Dec 2019) found here:
+https://www.elektrobit.com/legal-notice/ . Licensee is only granted an
+evaluation license for the EB software, defined as license to use the EB
+software internally for own evaluation purposes, limited to three (3) months.
+Production deployment of the EB software using this license is prohibited. See
+additionally Section 2.1.1 EB EULA.
+
Embedded Systems Academy GmbH (EmSA): Any use of Micro CANopen Plus is subject
to the acceptance of the license conditions described in the LICENSE.INFO file
distributed with all example projects and in the documentation and the
@@ -534,6 +557,15 @@ Clause 1: Micro CANopen Plus may not be used for any competitive or comparative
purpose, including the publication of any form of run time or compile time
metric, without the express permission of EmSA.
+Fenopix Technologies Private Limited: Under no circumstances may the CanvasJS
+software product be used in any way that would compete with any product from
+Fenopix. License to the CanvasJS software will terminate immediately without
+notice if Licensee fail to comply with any provision of this Agreement.
+
+Fraunhofer IIS: Fraunhofer MPEG Audio Decoder (Fraunhofer copyright) - If you
+are provided MPEG-H decoding functionality, you understand that NXP will
+provide Fraunhofer your name and contact information.
+
Future Technology Devices International Ltd.: Future Technology Devices
International software must be used consistent with the terms found here:
http://www.ftdichip.com/Drivers/FTDriverLicenceTerms.htm
diff --git a/SCR/SCR-5.4.70_2.3.2.txt b/SCR/SCR-5.10.72-2.2.0.txt
index 3632053b..1a9d0a5e 100644
--- a/SCR/SCR-5.4.70_2.3.2.txt
+++ b/SCR/SCR-5.10.72-2.2.0.txt
@@ -1,36 +1,41 @@
NXP Software Content Register
-Release - Linux 5.4.70_2.3.2
- April 2022
+Release - Linux 5.10.72-2.2.0
+ December 2021
+
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
Yocto Project recipe manifest:
-repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-zeus -m imx_5.4.70_2.3.2.xml
+repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-hardknott -m imx_5.10.72-2.2.0.xml
-Release tag: rel_imx_5.4.70_2.3.2
+Release tag: rel_imx_5.10.72-2.2.0
--------------------------------------------
BSP Packages
--------------------------------------------
Package: linux-imx.git
-Outgoing License: GPL-2.0
+Version: 5.10
+Outgoing License: GPL-2.0 WITH Linux-syscall-note
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: The Linux kernel with i.MX-specific drivers
-Release Location: https://source.codeaurora.org/external/imx/linux-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/linux-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
kernel.org (GPL-2.0) - https://www.kernel.org/
--------------------------------------------
Package: uboot-imx.git
+Version: 2021.04
Outgoing License: GPL-2.0
-License File: COPYING
+License File: Licenses/gpl-2.0.txt
Package Category: BSP
Type of Content: source
Description and comments: Bootloader with i.MX-specific capabilities
-Release Location: https://source.codeaurora.org/external/imx/uboot-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/uboot-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
Das U-Boot - Universal Bootloader (GPL-2.0) - http://www.denx.de/wiki/U-Boot/WebHome
Android Open Source Project (BSD-2-Clause) - https://source.android.com/
@@ -39,19 +44,21 @@ Origin: NXP (GPL-2.0)
--------------------------------------------
Package: imx-atf.git
+Version: 2.4
Outgoing License: BSD-3-Clause
License File: docs/license.rst
Package Category: BSP
Type of Content: source
Description and comments: ARM Trusted Firmware
-Release Location: https://source.codeaurora.org/external/imx/imx-atf -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-atf -b rel_imx_5.10.72-2.2.0
Origin: NXP (BSD-3-clause)
arm-trusted-firmware - ARM Limited (BSD-3-clause) - http://github.com/ARM-software/arm-trusted-firmware/
--------------------------------------------
-Package: imx-sc-firmware-1.7.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-sc-firmware-1.11.0.bin
+Version: 1.11.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -62,8 +69,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: firmware-imx-8.10.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: firmware-imx-8.14.bin
+Version: 8.14
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -72,7 +80,7 @@ Release Location: Mirror
Origin: NXP (proprietary)
In addition, these components contain code from the companies listed below.
- DDR: origin: Synopsys (proprietary)
+ DDR: origin: Synopsys DDR (proprietary)
EASRC: origin: NXP (proprietary)
EPDC: origin: E Ink Corporation (proprietary)
HDMI: origin: Cadence Design Systems, Inc. (proprietary)
@@ -93,36 +101,63 @@ Origin: NXP (proprietary)
--------------------------------------------
+Package: firmware-sentinel-0.2.bin
+Version: 0.2
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: BSP
+Type of Content: binary
+Description and comments: S400 firmware
+Release Location: Mirror
+Origin: NXP (proprietary)
+
+--------------------------------------------
+
+Package: firmware-upower-0.1.1.bin
+Version: 0.1.1
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: BSP
+Type of Content: binary
+Description and comments: uPower firmware
+Release Location: Mirror
+Origin: NXP (proprietary)
+
+--------------------------------------------
+
Package: imx-mkimage.git
+Version:
Outgoing License: GPL-2.0
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: Make Image BootLoader
-Release Location: https://source.codeaurora.org/external/imx/imx-mkimage -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-mkimage -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
Das U-Boot - Universal Bootloader (GPL-2.0) - http://www.denx.de/wiki/U-Boot/WebHome
--------------------------------------------
Package: imx-lib.git
+Version:
Outgoing License: LGPL-2.1
License File: COPYING-LGPL-2.1
Package Category: BSP
Type of Content: source
Description and comments: BSP libraries
-Release Location: https://source.codeaurora.org/external/imx/imx-lib -b master
+Release Location: https://github.com/nxp-imx/imx-lib -b master
Origin: NXP (LGPL-2.1)
--------------------------------------------
Package: imx-test.git
+Version:
Outgoing License: Each test has its own license. It is one of GPL-2.0 LGPL-2.1 or Apache-2.0
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: Linux unit test applications
-Release Location: https://source.codeaurora.org/external/imx/imx-test -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-test -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
module_test: NXP (GPL-2.0+)
Hantro Products Oy. (GPL-2.0+)
@@ -186,35 +221,13 @@ Origin: NXP (GPL-2.0)
--------------------------------------------
-Package: qcacld-2.0-imx.git
-Outgoing License: ISC
-License File: COPYING
-Package Category: BSP
-Type of Content: source
-Description and comments: QCA9377 WLAN linux driver
-Release Location: https://source.codeaurora.org/external/imx/qcacld-2.0-imx -b rel_imx_5.4.70_2.3.2
-Origin: NXP (ISC)
- Qualcomm Atheros, Inc. (ISC) – https://source.codeaurora.org/external/wlan/qcacld-2.0
-
---------------------------------------------
-
-Package: firmware-qca-3.0.2.bin
-Outgoing License: LA_OPT_NXP_Software_License v10 December 2019 - Production Use - Section 2.3 applies and Qualcomm Atheros License
-License File: COPYING
-Package Category: BSP
-Type of Content: binary
-Description and comments: Qca9377 WLAN & BT firmware
-Release Location: Mirror
-Origin: Qualcomm Atheros, Inc. (proprietary)
-
---------------------------------------------
-
Package: imx-firmware.git
-Outgoing License: LA_OPT_NXP_Software_License v11 February 2020 - Production Use - Section 2.3 applies
-License File: nxp/EULA.txt
+Version:
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Additional distribution license granted - Section 2.3 applies
+License File: EULA.txt
Package Category: BSP
Type of Content: binary
-Description and comments: BSP firmware - Broadcom Bluetooh and WIFI
+Description and comments: BSP firmware - Bluetooth and WIFI
Release Location: https://github.com/NXP/imx-firmware -b master
Origin: brcm: Broadcom Corporation (proprietary)
cyw-wifi-bt: Cypress Semiconductor Corporation (proprietary)
@@ -223,73 +236,55 @@ Origin: brcm: Broadcom Corporation (proprietary)
--------------------------------------------
Package: mwifiex.git
+Version:
Outgoing License: GPL-2.0
-License File: mwifiex*/gpl-2.0.txt
+License File: mxm_wifiex/wlan_src/gpl-2.0.txt
Package Category: BSP
Type of Content: source
Description and comments: NXP Wi-Fi linux SDK
-Release Location: https://source.codeaurora.org/external/imx/mwifiex -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/mwifiex -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
--------------------------------------------
-Package: isp-vvcam.git
-Outgoing License: GPL-2.0
-License File: vvcam/LICENSE
-Package Category: BSP
-Type of Content: ISP Kernel Module source
-Description and comments: Kernel Loadable Module for ISP
-Release Location: https://source.codeaurora.org/external/imx/isp-vvcam -b rel_imx_5.4.70_2.3.2
-Origin: VeriSilicon Holdings Co., Ltd. (GPL-2.0)
-
---------------------------------------------
-
-Package: isp-imx-4.2.2.11.0.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
-License File: COPYING
-Package Category: BSP
-Type of Content: binary and source
-Description and comments: i.MX software ISP
-Release Location: Mirror
-Origin: VeriSilicon Holdings Co., Ltd. (proprietary)
-
---------------------------------------------
-
-Package: basler-camera-4.2.2.11.0.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-seco-3.8.4.bin
+Version: 3.8.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
-Description and comments: Basler camera binary drivers
+Description and comments: BSP firmware - SECO
Release Location: Mirror
-Origin: Basler AG (proprietary)
- VeriSilicon Holdings Co., Ltd. (proprietary)
+Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-seco-3.7.5.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
-License File: COPYING
+Package: imx-seco-libs.git
+Version:
+Outgoing License: LA_OPT_NXP_Software_License v29 August 2021 - Additional distribution license granted - Section 2.3 applies
+License File: EULA.txt
Package Category: BSP
-Type of Content: binary
-Description and comments: BSP firmware - SECO
-Release Location: Mirror
+Type of Content: source
+Description and comments: BSP source - SECO
+Release Location: https://github.com/NXP/imx-seco-libs.git -b rel_imx_5.10.72-2.2.0
Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-seco-libs.git
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-secure-enclave.git
+Version:
+Outgoing License: LA_OPT_NXP_Software_License v29 August 2021 - Additional distribution license granted - Section 2.3 applies
License File: EULA.txt
Package Category: BSP
Type of Content: source
-Description and comments: BSP source - SECO
-Release Location: https://github.com/NXP/imx-seco-libs.git -b rel_imx_5.4.70_2.3.2
+Description and comments: NXP IMX SECURE ENCLAVE library
+Release Location: https://github.com/NXP/imx-secure-enclave.git -b rel_imx_5.10.72-2.2.0
Origin: NXP (proprietary)
--------------------------------------------
-Package: sof-imx-1.5.0-3
+Package: sof-imx-1.9.0-2
+Version: 1.9.0-2
Outgoing License: BSD-3-Clause
License File: LICENCE
Package Category: BSP
@@ -306,12 +301,13 @@ Origin: NXP (BSD-3-clause)
--------------------------------------------
Package: simg2img.git
+Version:
Outgoing License: Apache-2.0
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: Tool to convert Android sparse images to raw images
-Release Location: https://source.codeaurora.org/external/imx/simg2img -b master
+Release Location: https://github.com/nxp-imx/simg2img -b master
Origin: NXP (Apache-2.0)
The Android Open Source Project (Apache-2.0) - https://android.googlesource.com/platform/system/core/+/master/libsparse
Gary S Brown (Public Domain) - http://www.opensource.apple.com/source/xnu/xnu-1456.1.26/bsd/libkern/crc32.c?txt
@@ -319,6 +315,7 @@ Origin: NXP (Apache-2.0)
--------------------------------------------
Package: imx-kobs.git
+Version:
Outgoing License: GPL-2.0
License File: COPYING
Package Category: BSP
@@ -333,6 +330,7 @@ Origin: NXP (GPL-2.0)
--------------------------------------------
Package: imx-uuc.git
+Version:
Outgoing License: GPL-2.0
License File: COPYING
Package Category: BSP
@@ -344,24 +342,26 @@ Origin: NXP (GPL-2.0)
--------------------------------------------
Package: imx-optee-client.git
+Version: 3.15.0.imx
Outgoing License: BSD-2-Clause
License File: LICENSE
Package Category: BSP
Type of Content: source
Description and comments: Open Portable Trusted Execution Environment for TEE Client library
-Release Location: https://source.codeaurora.org/external/imx/imx-optee-client -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-optee-client -b rel_imx_5.10.72-2.2.0
Origin: NXP (BSD-2-Clause)
optee_client (BSD-2-Clause) - https://github.com/OP-TEE/optee_client
--------------------------------------------
Package: imx-optee-os.git
+Version: 3.15.0.imx
Outgoing License: BSD-2-Clause
License File: LICENSE
Package Category: BSP
Type of Content: source
Description and comments: Open Portable Trusted Execution Environment for Linux on ARM
-Release Location: https://source.codeaurora.org/external/imx/imx-optee-os -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-optee-os -b rel_imx_5.10.72-2.2.0
Origin: NXP (BSD-2-Clause)
OP-TEE Trusted OS (BSD-2-Clause) - https://github.com/OP-TEE/optee_os
Mbed TLS (Apache-2.0) - https://github.com/ARMmbed/mbedtls/
@@ -369,51 +369,61 @@ Origin: NXP (BSD-2-Clause)
--------------------------------------------
Package: imx-optee-test.git
+Version: 3.15.0.imx
Outgoing License: BSD-2-Clause (ta/) and GPL-2.0 (host/)
License File: LICENSE.md
Package Category: BSP
Type of Content: source
Description and comments: Open Portable Trusted Execution Environment sanity tests
-Release Location: https://source.codeaurora.org/external/imx/imx-optee-test -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-optee-test -b rel_imx_5.10.72-2.2.0
Origin: NXP (BSD-2-Clause)
optee_test (BSD-2-Clause) - https://github.com/OP-TEE/optee_test
--------------------------------------------
Package: imx-jailhouse.git
+Version: 0.12
Outgoing License: GPL-2.0
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: A partitioning Hypervisor based on Linux
-Release Location: https://source.codeaurora.org/external/imx/imx-jailhouse -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-jailhouse -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
Siemens AG (GPL-2.0) - https://github.com/siemens/jailhouse
--------------------------------------------
Package: imx-xen.git
+Version: 4.13.0
Outgoing License: GPL-2.0
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: A Virtual Machine Monitor
-Release Location: https://source.codeaurora.org/external/imx/imx-xen -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-xen -b rel_imx_5.10.72-2.2.0
Origin: NXP (GPL-2.0)
--------------------------------------------
-Package: deepview-rt-2.4.18-aarch64.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - No distribution license granted - Section 2.2 applies
+Package: imx8ulp-m33-demo-2.11.0.bin
+Version: 2.11.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
-Description and comments: Machine Learning Au-Zone DeepViewRT and ModelRunner for i.MX8 Application Processors
+Description and comments: i.MX MCUXpresso SDK demo image on Cortex-M33 core
Release Location: Mirror
+Origin: NXP (proprietary)
+ ARM LIMITED (BSD-3-Clause)
+ Real Time Engineers, Ltd (MIT) - https://aws.amazon.com/freertos/
+ Mentor Graphics, Ltd. (BSD-3-Clause) - https://github.com/OpenAMP/open-amp/
+
--------------------------------------------
-Package: ml-security-1.0.3.bin
-Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Additional distribution license granted - Section 2.3 applies
+Package: ml-security-1.0.5.bin
+Version: 1.0.5
+Outgoing License: LA_OPT_NXP_Software_License v25 June 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -424,41 +434,137 @@ Origin: NXP (NXP Proprietary)
--------------------------------------------
Package: imx-smw.git
+Version: 0.1
Outgoing License: BSD-3-Clause
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: NXP i.MX Security Middleware Library
-Release Location: https://source.codeaurora.org/external/imx/imx-smw -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-smw -b rel_imx_5.10.72-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
-Package: keyctl-caam.git
+Package: keyctl_caam.git
+Version:
Outgoing License: BSD-3-Clause
License File: COPYING
Package Category: BSP
Type of Content: source
Description and comments: NXP i.MX keyctl tool to manage CAAM Keys
-Release Location: https://source.codeaurora.org/external/imx/key_caam -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/keyctl_caam -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+
+--------------------------------------------
+
+Package: ecdsa-lib-imx-3.3.2.bin
+Version: 3.3.2
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: BSP
+Type of Content: binary
+Description and comments: 2X signature verification library
+Release Location: Mirror
+Origin: NXP (proprietary)
+ trace - NXP (BSD-3-clause)
+
+--------------------------------------------
+
+Package: v2xsehsm.git
+Version:
+Outgoing License: BSD-3-Clause
+License File: BSD-3-Clause.txt
+Package Category: BSP
+Type of Content: source
+Description and comments: V2X Secure Element library
+Release Location: https://github.com/nxp-imx/v2xsehsm -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+
+--------------------------------------------
+
+Package: vtest.git
+Version:
+Outgoing License: BSD-3-Clause
+License File: BSD-3-Clause.txt
+Package Category: BSP
+Type of Content: source
+Description and comments: V2X Test Suite
+Release Location: https://github.com/nxp-imx/vtest -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+
+--------------------------------------------
+
+Package: dpdk.git
+Version: 20.11
+Outgoing License: BSD-3-Clause
+License File: license/bsd-3-clause.txt
+Package Category: BSP
+Type of Content: source
+Description and comments: Data Plane Development Kit
+Release Location: https://github.com/nxp-qoriq/dpdk -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+ DPDK - Intel Corporation (BSD-3-Clause) - https://github.com/DPDK/dpdk
+ KNI Linux Device driver - Intel Corporation (GPL-2.0) Separate component of DPDK
+ pmdinfogen - Neil Horman (GPL-2.0) - Separate tool in DPDK
+
+
--------------------------------------------
Graphics Packages
--------------------------------------------
+Package: isp-vvcam.git
+Version: 4.2.2.16.0
+Outgoing License: GPL-2.0
+License File: vvcam/LICENSE
+Package Category: Graphics
+Type of Content: ISP Kernel Module source
+Description and comments: Kernel Loadable Module for ISP
+Release Location: https://github.com/nxp-imx/isp-vvcam -b rel_imx_5.10.72-2.2.0
+Origin: VeriSilicon Holdings Co., Ltd. (GPL-2.0)
+
+--------------------------------------------
+
+Package: isp-imx-4.2.2.16.0.bin
+Version: 4.2.2.16.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: Graphics
+Type of Content: binary and source
+Description and comments: i.MX software ISP
+Release Location: Mirror
+Origin: VeriSilicon Holdings Co., Ltd. (proprietary)
+
+--------------------------------------------
+
+Package: basler-camera-4.2.2.16.0.bin
+Version: 4.2.2.16.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: Graphics
+Type of Content: binary
+Description and comments: Basler camera binary drivers
+Release Location: Mirror
+Origin: Basler AG (proprietary)
+ VeriSilicon Holdings Co., Ltd. (proprietary)
+
+--------------------------------------------
+
Package: apitrace-imx.git
+Version: 10.0.0
Outgoing License: MIT
License File: LICENSE
Package Category: Graphics
Type of Content: source
Description and comments: GPU Core IP and test application source
-Release Location: https://source.codeaurora.org/external/imx/apitrace-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/apitrace-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
apitrace (MIT) - https://github.com/apitrace/apitrace
--------------------------------------------
-Package: imx-gpu-viv-6.4.3.p1.4-aarch32.bin
-Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-viv-6.4.3.p2.4-aarch32.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary and source
@@ -475,8 +581,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-gpu-viv-6.4.3.p1.4-aarch64.bin
-Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-viv-6.4.3.p2.4-aarch64.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary and source
@@ -494,12 +601,13 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: xf86-video-imx-vivante.git
+Version: 6.4.0.p0.0
Outgoing License: MIT
License File: COPYING-MIT
Package Category: Graphics
Type of Content: source
Description and comments: Xserver Library extensions
-Release Location: https://source.codeaurora.org/external/imx/xf86-video-imx-vivante -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/xf86-video-imx-vivante -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
Vivante Corp. (MIT)
xorg-server (MIT) - http://xorg.freedesktop.org/
@@ -512,33 +620,37 @@ Origin: NXP (MIT)
--------------------------------------------
Package: gtec-demo-framework.git
+Version: 5.8.0
Outgoing License: BSD-3-Clause
License File: License.md
Package Category: Graphics
Type of Content: source
Description and comments: Graphics sample applications
-Release Location: https://github.com/NXPmicro/gtec-demo-framework -b 5.6.2
+Release Location: https://github.com/NXPmicro/gtec-demo-framework -b 5.8.0
Origin: NXP (BSD-3-clause)
Demo Framework
- The Android Open Source Project (Apache-2.0) - https://source.android.com/
- Mono Xna (MIT) - https://code.google.com/archive/p/monoxna/
- Wayland (Seetex License) - http://cgit.freedesktop.org/~krh/wayland/
+ Sascha Willems - Vulkan demo (MIT) - https://github.com/SaschaWillems/Vulkan
+ MonoXNA - The Mono Xna Team (MIT) - https://code.google.com/archive/p/monoxna/
+ MonoGame - The MonoGame Team - (MS-PL) - https://github.com/MonoGame/MonoGame
+ Wayland - Benjamin Franzke (Seetex License) - http://cgit.freedesktop.org/~krh/wayland/
+ Open Sans - Steve Matteson (Apache-2.0) - https://fonts.google.com/specimen/Open+Sans
Demo Apps
+ Vivante Corporation (MIT)
"OpenGL(R) ES 3.0 Programming Guide" book samples (MIT) - http://github.com/zemanel/opengles-book-samples/
Norbert Nopper VKTS Examples (MIT) - https://github.com/McNopper/Vulkan
- Sascha Willems Vulkan Demo (MIT) - www.saschawillems.de
+ Sascha Willems - Vulkan demo (MIT) - https://github.com/SaschaWillems/Vulkan
Imagery Sources in Demo Apps:
Emil Persson (CC-BY-3.0) - http://www.humus.name
CDmir (CC0-1.0) - http://opengameart.org/content/old-deer-male
Questquest Game icons - Justin Nichol (CC-BY-SA-4.0) - http://freeforall.cc/works/questquest-game-icons/
piacenti (CC-BY-3.0) - http://opengameart.org/content/knight-2
Third Party Apps Included:
+ Open Asset Import Library [assimp] (BSD-3-Clause) - https://sourceforge.net/projects/assimp/
DevIL (LGPL-2.1+) - https://sourceforge.net/projects/openil/
G-Truc Creation [GLI] (MIT) - https://www.g-truc.net/
Khronos Group OpenVG (MIT) - https://www.khronos.org/openvg/
libpng (libpng) - https://sourceforge.net/projects/libpng/
libjpeg (IJG) - http://www.ijg.org/
- Open Asset Import Library [assimp] (BSD-3-Clause) - https://sourceforge.net/projects/assimp/
OpenGL Mathematics [GLM] (MIT) - https://sourceforge.net/projects/ogl-math/
RapidJSON (MIT) - https://github.com/miloyip/rapidjson/
SRA/SKC gettimeofday (MIT) - https://doxygen.postgresql.org/gettimeofday_8c_source.htm
@@ -547,8 +659,9 @@ Origin: NXP (BSD-3-clause)
--------------------------------------------
-Package: imx-dpu-g2d-1.8.14.bin
-Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-dpu-g2d-1.9.4.bin
+Version: 1.9.4
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -559,53 +672,58 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: libdrm-imx.git
+Version: 2.4.107.imx
Outgoing License: MIT
License File: COPYING
Package Category: Graphics
Type of Content: source
Description and comments: i.MX DRM Direct Rendering Manager
-Release Location: https://source.codeaurora.org/external/imx/libdrm-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/libdrm-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
--------------------------------------------
Package: wayland-protocols-imx.git
+Version: 1.22.imx
Outgoing License: MIT
License File: COPYING
Package Category: Graphics
Type of Content: source
Description and comments: Wayland protocol development
-Release Location: https://source.codeaurora.org/external/imx/wayland-protocols-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/wayland-protocols-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
Weston (MIT) - https://anongit.freedesktop.org/git/wayland/wayland-protocols.git
--------------------------------------------
Package: weston-imx.git
+Version: 9.0.0.imx
Outgoing License: MIT
License File: COPYING
Package Category: Graphics
Type of Content: source
Description and comments: A reference implementation of a Wayland compositor
-Release Location: https://source.codeaurora.org/external/imx/weston-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/weston-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
Weston (MIT) - http://github.com/wayland-project/weston/
--------------------------------------------
Package: imx-gputop.git
+Version: 6.4.3.p2.4
Outgoing License: MIT
License File: LICENSE.txt
Package Category: Graphics
Type of Content: source
Description and comments: Sample program to monitor i.MX GPU performance data
-Release Location: https://source.codeaurora.org/external/imx/imx-gputop -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-gputop -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
--------------------------------------------
-Package: imx-gpu-g2d-6.4.3.p1.4-arm.bin
-Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-g2d-6.4.3.p2.4-arm.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -615,8 +733,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-gpu-g2d-6.4.3.p1.4-aarch64.bin
-Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-g2d-6.4.3.p2.4-aarch64.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -626,30 +745,21 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p1.4-aarch64-fb.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
-License File: COPYING
-Package Category: Graphics
-Type of Content: binary
-Description and comments: Library to retrieve i.MX GPU performance data
-Release Location: Mirror
-Origin: NXP (proprietary)
-
---------------------------------------------
-
-Package: libgpuperfcnt-6.4.3.p1.4-aarch64-wayland.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: imx-g2d-samples.git
+Version: 1.0.0
+Outgoing License: BSD-3-Clause
License File: COPYING
Package Category: Graphics
-Type of Content: binary
-Description and comments: Library to retrieve i.MX GPU performance data
-Release Location: Mirror
-Origin: NXP (proprietary)
+Type of Content: source
+Description and comments: Graphics G2D sample applications
+Release Location: https://github.com/nxp-imx/g2d-samples -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p1.4-aarch64-x11.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p2.4-aarch64-fb.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v29 August 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -659,8 +769,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p1.4-arm-fb.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p2.4-aarch64-wayland.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -670,8 +781,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p1.4-arm-wayland.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p2.4-arm-fb.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -681,8 +793,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p1.4-arm-x11.bin
-Outgoing License: LA_OPT_NXP_Software_License v22 April 2021 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p2.4-arm-wayland.bin
+Version: 6.4.3.p2.4
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -693,12 +806,13 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: nn-imx.git
+Version: 1.2.0
Outgoing License: MIT
License File: LICENSE
Package Category: Graphics
Type of Content: source
Description and comments: i.MX Neural Networks Accelerator Plugin
-Release Location: https://source.codeaurora.org/external/imx/nn-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/nn-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
Vivante Corporation (MIT)
Boost Software (Boost) - https://www.boost.org/
@@ -710,12 +824,13 @@ Origin: NXP (MIT)
--------------------------------------------
Package: opencv-imx.git
-Outgoing License: BSD-3-Clause
+Version: 4.5.2.imx
+Outgoing License: Apache-2.0
License File: LICENSE
Package Category: Graphics
Type of Content: source
Description and comments: i.MX OpenCV
-Release Location: https://source.codeaurora.org/external/imx/opencv-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/opencv-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (BSD-3-Cluse)
OpenCV Foundation (BSD-3-Clause) - https://github.com/opencv/opencv
Intel Corporation (BSD-3-Clause)
@@ -727,12 +842,13 @@ Origin: NXP (BSD-3-Cluse)
--------------------------------------------
Package: arm-computelibrary-imx.git
+Version: 21.08
Outgoing License: MIT
License File: LICENSE
Package Category: Graphics
Type of Content: source
Description and comments: ARM Compute Library fork
-Release Location: https://source.codeaurora.org/external/imx/ARM-ComputeLibrary-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/arm-computelibrary-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
ARM Software (MIT) - https://github.com/ARM-software/ComputeLibrary
@@ -740,12 +856,13 @@ Origin: NXP (MIT)
Multimedia Packages
--------------------------------------------
-Package: imx-codec-4.5.7.bin
-Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Additional distribution license granted - Section 2.3 applies
+Package: imx-codec-4.6.3.bin
+Version: 4.6.3
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
-Description and comments: i.MX multimedia codec libraries: Codecs and wrappers for: AAC AACD BMP BSAC DeInterlace FLAC GIF JPEG MP3 MP3d NB_AMR OGG PEQ PNG SBC SRC WB_AMR WBAMRD G.711 G.723 G.726 G.729ab
+Description and comments: i.MX multimedia codec libraries: Codecs and wrappers for: AAC AACD BMP BSAC DeInterlace FLAC GIF JPEG MP3 MP3d NB_AMR OGG PEQ PNG SBC SRC WB_AMR WBAMRD G.711 G.723 G.726 G.729ab
Release Location: Mirror
Origin: NXP (proprietary)
ISO/IEC 13818-7 and ISO/IEC 14496-3 standards
@@ -756,8 +873,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-parser-4.5.7.bin
-Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Additional distribution license granted - Section 2.3 applies
+Package: imx-parser-4.6.3.bin
+Version: 4.6.3
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -768,12 +886,13 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: imx-gst1.0-plugin.git
+Version: 4.6.3
Outgoing License: LGPL-2.1
License File: COPYING-LGPL-2.1
Package Category: Multimedia
Type of Content: source
Description and comments: i.MX Gstreamer 1.0 plugins
-Release Location: https://source.codeaurora.org/external/imx/imx-gst1.0-plugin -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/imx-gst1.0-plugin -b rel_imx_5.10.72-2.2.0
Origin: NXP (LGPL-2.1)
Gstreamer plugins-Base (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-base/
Gstreamer plugins-Good (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-good/
@@ -782,55 +901,60 @@ Origin: NXP (LGPL-2.1)
--------------------------------------------
Package: gstreamer.git
+Version: 1.18.5.imx
Outgoing License: LGPL-2.0
License File: COPYING
Package Category: Multimedia
Type of Content: source
Description and comments: Open Source Multimedia Farmework
-Release Location: https://source.codeaurora.org/external/imx/gstreamer -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/gstreamer -b rel_imx_5.10.72-2.2.0
Origin: NXP (LGPL-2.1)
GStreamer (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gstreamer/
--------------------------------------------
Package: gst-plugins-good.git
+Version: 1.18.5.imx
Outgoing License: LGPL-2.1
License File: COPYING
Package Category: Multimedia
Type of Content: source
Description and comments: Gstreamer plugins with good quality code and correct functionality
-Release Location: https://source.codeaurora.org/external/imx/gst-plugins-good -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/gst-plugins-good -b rel_imx_5.10.72-2.2.0
Origin: NXP (LGPL-2.1)
Gstreamer plugins-Good (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-good/
--------------------------------------------
Package: gst-plugins-base.git
+Version: 1.18.5.imx
Outgoing License: LGPL-2.0
License File: COPYING
Package Category: Multimedia
Type of Content: source
Description and comments: Collection of well-groomed and well-maintained Gstreamer plugins
-Release Location: https://source.codeaurora.org/external/imx/gst-plugins-base -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/gst-plugins-base -b rel_imx_5.10.72-2.2.0
Origin: NXP (LGPL-2.1)
Gstreamer plugins-Base (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-base/
--------------------------------------------
Package: gst-plugins-bad.git
-Outgoing License: LGPL-2.0
-License File: COPYING.LIB
+Version: 1.18.5.imx
+Outgoing License: LGPL-2.1
+License File: COPYING
Package Category: Multimedia
Type of Content: source
Description and comments: Gstreamer plug-ins that aren't up to par compared to the rest. Close to good quality but missing something.
-Release Location: https://source.codeaurora.org/external/imx/gst-plugins-bad -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/gst-plugins-bad -b rel_imx_5.10.72-2.2.0
Origin: NXP (LGPL-2.1)
Gstreamer plugins-Bad (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-bad/
--------------------------------------------
Package: imx-dspc-asrc-1.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v8 June 2019 - Production Use - Section 2.3 applies
+Version: 1.0.1
+Outgoing License: LA_OPT_NXP_Software_License v8 June 2019 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -841,8 +965,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-sw-pdm-1.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v15 August 2020 - Production Use - Section 2.3 applies
+Package: imx-sw-pdm-1.0.2.bin
+Version: 1.0.2
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -853,19 +978,21 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: imx-vpuwrap.git
-Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Production Use - Section 2.3 applies
+Version: 4.6.3
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: source
Description and comments: i.MX VPU wrapper library
-Release Location: https://github.com/NXP/imx-vpuwrap.git -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/NXP/imx-vpuwrap.git -b rel_imx_5.10.72-2.2.0
Origin: NXP (proprietary)
sqlite (Public Domain) - http://www.hwaci.com/sw/sqlite/index.html
--------------------------------------------
Package: imx-vpu-5.4.39.3.bin
-Outgoing License: LA_OPT_NXP_Software_License v11 February 2020 - Production Use - Section 2.3 applies
+Version: 5.4.39.3
+Outgoing License: LA_OPT_NXP_Software_License v11 February 2020 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -876,8 +1003,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-vpu-hantro-1.20.0.bin
-Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Additional distribution license granted - Section 2.3 applies
+Package: imx-vpu-hantro-1.24.0.bin
+Version: 1.24.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -890,8 +1018,23 @@ Origin: VeriSilicon Inc. (proprietary)
--------------------------------------------
-Package: imx-vpu-hantro-vc-1.3.0.bin
-Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Additional distribution license granted - Section 2.3 applies
+Package: imx-vpu-hantro-daemon-1.1.1
+Version: 1.1.1
+Outgoing License: MIT License
+License File: LICENSE.txt
+Package Category: Multimedia
+Type of Content: binary
+Description and comments: VPU library
+Release Location: Mirror
+Origin: NXP (MIT)
+ VeriSilicon Inc. (MIT)
+ Intel Corporation - intel-vaapi-driver (MIT) - https://github.com/intel/intel-vaapi-driver
+
+--------------------------------------------
+
+Package: imx-vpu-hantro-vc-1.6.0.bin
+Version: 1.6.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -904,6 +1047,7 @@ Origin: VeriSilicon Inc. (proprietary)
--------------------------------------------
Package: imx-qtapplications-1.2.2-aarch32.bin
+Version: 1.2.2
Outgoing License: LA_OPT_BASE_LICENSE v26 June 2018
License File: COPYING
Package Category: Multimedia
@@ -915,6 +1059,7 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: imx-qtapplications-1.2.2-aarch64.bin
+Version: 1.2.2
Outgoing License: LA_OPT_BASE_LICENSE v26 June 2018
License File: COPYING
Package Category: Multimedia
@@ -926,22 +1071,64 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: imx-alsa-plugins.git
+Version:
Outgoing License: GPL-2.0
License File: COPYING.GPL
Package Category: Multimedia
Type of Content: source
Description and comments: Plugins for various audio libraries and sound servers
-Release Location: https://source.codeaurora.org/external/imx/imx-alsa-plugins -b nxp/master
+Release Location: https://github.com/nxp-imx/imx-alsa-plugins -b nxp/master
Origin: NXP (GPL-2.0)
Alsa Plugins (GPL-2.0+) - ftp://ftp.alsa-project.org/pub/plugins/
GNU libtool (GPL-2.0+) http://www.gnu.org/software/libtool/
--------------------------------------------
+
+Package: imx-dsp-1.2.0.bin
+Version: 1.2.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: Multimedia
+Type of Content: binary
+Description and comments: Proprietary codecs and parsers
+Release Location: Mirror
+Origin: NXP (proprietary)
+ Cadence (MIT)
+ Matt Redfearn (BSD-3-clause)
+
+--------------------------------------------
+
+Package: imx-dsp-codec-ext-1.2.0.bin
+Version: 1.2.0
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: Multimedia
+Type of Content: binary
+Description and comments: Proprietary codecs and parsers
+Release Location: Mirror
+Origin: NXP (proprietary)
+ autoconf - Free Software Foundation (FSF All Permissive License)
+ X Consortium (MIT)
+
+--------------------------------------------
+
+Package: nxp-afe.git
+Version: 1.0
+Outgoing License: BSD-3-Clause
+License File: LICENSE
+Package Category: Multimedia
+Type of Content: source
+Description and comments: NXP Audio-Front-end is the software wrapper for ALSA
+Release Location: https://github.com/nxp-imx/nxp-afe -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+
+--------------------------------------------
M4 Processor Packages
--------------------------------------------
-Package: imx7ulp-m4-demo-2.8.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v13 June 2020 - Production Use - Section 2.3 applies
+Package: imx7ulp-m4-demo-2.10.0.bin
+Version: 2.10.0
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -954,6 +1141,7 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: imx8dxl-m4-demo-2.9.0.bin
+Version: 2.9.0
Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
@@ -966,8 +1154,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mm-m4-demo-2.8.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v13 June 2020 - Production Use - Section 2.3 applies
+Package: imx8mm-m4-demo-2.10.0.bin
+Version: 2.10.0
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -979,8 +1168,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mq-m4-demo-2.8.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v13 June 2020 - Production Use - Section 2.3 applies
+Package: imx8mq-m4-demo-2.10.0.bin
+Version: 2.10.0
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -992,8 +1182,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8qm-m4-demo-2.8.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v13 June 2020 - Production Use - Section 2.3 applies
+Package: imx8qm-m4-demo-2.9.0.bin
+Version: 2.9.0
+Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1005,8 +1196,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8qx-m4-demo-2.8.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v13 June 2020 - Production Use - Section 2.3 applies
+Package: imx8qx-m4-demo-2.9.0.bin
+Version: 2.9.0
+Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1020,8 +1212,9 @@ Origin: NXP (proprietary)
M7 Processor Packages
--------------------------------------------
-Package: imx8mn-m7-demo-2.8.0.1.bin
-Outgoing License: LA_OPT_NXP_Software_License v13 June 2020 - Production Use - Section 2.3 applies
+Package: imx8mn-m7-demo-2.10.0.bin
+Version: 2.10.0
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M7_Processor
Type of Content: binary
@@ -1033,8 +1226,23 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mp-m7-demo-2.9.0.bin
-Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 - Production Use - Section 2.3 applies
+Package: imx8mnddr3l-m7-demo-2.10.0.bin
+Version: 2.10.0
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Production Use - Section 2.3 applies
+License File: COPYING
+Package Category: M7_Processor
+Type of Content: binary
+Description and comments: i.MX MCUXpresso SDK demo image on Cortex-M7 core
+Release Location: Mirror
+Origin: NXP (proprietary)
+ CMSIS Core Header files - ARM Limited (BSD-3-clause) - http://silver.arm.com
+ CMSIS DSP Library - ARM Limited (BSD-3-clause) - http://silver.arm.com
+
+--------------------------------------------
+
+Package: imx8mp-m7-demo-2.10.0.bin
+Version: 2.10.0
+Outgoing License: LA_OPT_NXP_Software_License v27 July 2021 - Production Use - Section 2.3 applies
License File: COPYING
Package Category: M7_Processor
Type of Content: binary
@@ -1050,24 +1258,90 @@ MachineLearning Packages
--------------------------------------------
Package: armnn.git
+Version: 21.08
Outgoing License: MIT
License File: LICENSE
Package Category: MachineLearning
Type of Content: source
Description and comments: ARM Neural Network SDK
-Release Location: https://source.codeaurora.org/external/imx/armnn-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/armnn-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
armnn (MIT) - https://github.com/ARM-software/armnn
--------------------------------------------
+Package: coral-posenet-imx.git
+Version:
+Outgoing License: Apache-2.0
+License File: LICENSE
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: Google Coral Edge TPU Posenet Library
+Release Location: https://github.com/nxp-imx/coral-posenet-imx -b rel_imx_5.10.72-2.2.0
+Origin: NXP (LGPL-2.1)
+ Google LLC - Google Coral Edge Project Posenet (Apache-2.0) https://github.com/google-coral/project-posenet/
+
+--------------------------------------------
+
+Package: deepview-rt-2.4.32-aarch64.bin
+Version: 2.4.32-aarch64
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - No distribution license granted - Section 2.2 applies
+License File: COPYING
+Package Category: MachineLearning
+Type of Content: binary
+Description and comments: Machine Learning Au-Zone DeepViewRT and ModelRunner for i.MX8 Application Processors
+Release Location: Mirror
+Origin: Au-Zone Technologies (proprietary)
+
+--------------------------------------------
+
+Package: deepview-rt-examples-1.2.bin
+Version: 1.2
+Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: MachineLearning
+Type of Content: binary
+Description and comments: DeepViewRT Examples
+Release Location: Mirror
+Origin: Au-Zone Technologies (proprietary)
+ Viktor Kutuzov (MIT)
+
+--------------------------------------------
+
+Package: eiq-apps-imx
+Version:
+Outgoing License: LGPL-2.1
+License File: COPYING-LGPL2.1
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: Gstreamer Neural Network inference Demo
+Release Location: https://github.com/nxp-imx/eiq-apps-imx -b rel_imx_5.10.72-2.2.0
+Origin: NXP (LGPL-2.1)
+ Gstreamer plugins-Base (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-base/
+
+--------------------------------------------
+
+Package: eiq-tvm-imx.git
+Version: 0.7.0
+Outgoing License: Apache-2.0
+License File: LICENSE
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: Open Deep Learning Compiler Stack
+Release Location: https://github.com/nxp-imx/eiq-tvm-imx -b rel_imx_5.10.72-2.2.0
+Origin: NXP (Apache-2.0)
+ Apache TVM (Apache-2.0) - https://github.com/apache/tvm
+
+--------------------------------------------
+
Package: onnxruntime-imx.git
+Version: 1.8.2
Outgoing License: MIT
License File: LICENSE
Package Category: MachineLearning
Type of Content: source
Description and comments: Onnxruntime cross-platform scoring engine
-Release Location: https://source.codeaurora.org/external/imx/onnxruntime-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/onnxruntime-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (MIT)
Microsoft/onnxruntime (MIT) - https://github.com/Microsoft/onnxruntime
Google's Protocol Buffer (BSD-3-clause) - https://tracker.debian.org/pkg/protobuf
@@ -1076,40 +1350,85 @@ Origin: NXP (MIT)
--------------------------------------------
Package: pytorch-release.git
+Version:
Outgoing License: BSD-3-Clause
License File: LICENSE
Package Category: MachineLearning
Type of Content: source
Description and comments: Tensors and Dynamic neural networks in Python with strong GPU acceleration
-Release Location: https://github.com/NXPmicro/pytorch-release -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/NXPmicro/pytorch-release -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+ pytorch (BSD-3-clause) - https://github.com/pytorch/pytorch
+
+--------------------------------------------
+
+Package: torchvision.git
+Version:
+Outgoing License: BSD-3-Clause
+License File: LICENSE
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: The torchvision package consists of popular datasets model architectures and common image transformations for computer vision
+Release Location: https://github.com/NXPmicro/pytorch-release -b rel_imx_5.10.72-2.2.0
+Origin: NXP (BSD-3-Clause)
+ pytorch (BSD-3-clause) - https://github.com/pytorch/pytorch
+
--------------------------------------------
Package: tensorflow-imx.git
+Version: 2.6.0
Outgoing License: Apache-2.0
License File: LICENSE
Package Category: MachineLearning
Type of Content: source
Description and comments: TensorFlow Lite C++ Library
-Release Location: https://source.codeaurora.org/external/imx/tensorflow-imx -b rel_imx_5.4.70_2.3.2
+Release Location: https://github.com/nxp-imx/tensorflow-imx -b rel_imx_5.10.72-2.2.0
Origin: NXP (Apache-2.0)
TensorFlow (Apache-2.0) - https://github.com/tensorflow/tensorflow/
--------------------------------------------
+
+Package: tflite-vx-delegate-imx.git
+Version: 2.6.0
+Outgoing License: Apache-2.0
+License File: LICENSE
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: TensorFlow Lite VX Delegate
+Release Location: https://github.com/nxp-imx/tflite-vx-delegate-imx -b rel_imx_5.10.72-2.2.0
+Origin: VeriSilicon Inc. (Apache-2.0) - https://github.com/VeriSilicon/tflite-vx-delegate.git
+ The TensorFlow Authors (Apache-2.0) - https://cs.opensource.google/tensorflow/tensorflow/+/master:tensorflow/lite/examples/minimal/
+
+--------------------------------------------
+
+Package: tim-vx-imx.git
+Version: 1.1.34
+Outgoing License: MIT
+License File: LICENSE
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: Tensor Interface Module for OpenVX
+Release Location: https://github.com/nxp/tim-vx-imx -b rel_imx_5.10.72-2.2.0
+Origin: Vivante Corporation (MIT)
+ The Khronos Group Inc. (Apache-2.0) - https://www.khronos.org/
+ The Android Open Source Project (Apache 2.0) - https://developer.android.com/index.html
+
+--------------------------------------------
Tools Packages
--------------------------------------------
-Package: VeriSiliconTool-6.4.3.p1.0.tgz
+Package: VivanteIDE-6.4.3.p2.4.tgz
+Version: 6.4.3.p2.4
Outgoing License: VeriSilicon License
License File:
Package Category: Tools
Type of Content: binary
Description and comments: VeriSilicon Tools
Release Location: nxp.com
-Origin: VeriSilicon (proprietary)
-
--------------------------------------------
Package: mfgtools.git
+Version: 3
Outgoing License: BSD-3-Clause
License File: LICENSE
Package Category: Tools
@@ -1125,12 +1444,15 @@ Origin: NXP (BSD-3-clause)
--------------------------------------------
Package: bcu.git
-Outgoing License: BSD 3-Clause
+Version: 1.1.35
+Outgoing License: BSD-3-Clause
License File: LICENSE
Package Category: Tools
Type of Content: source
Description and comments: NXP I.MX Chip image deploy tools. Use bcu.
-Release Location: https://github.com/NXPmicro/bcu -b master
+Release Location: ssh://git@bitbucket.sw.nxp.com/imx/bcu.git -b master
+Origin: NXP (BSD-3-Clause)
+
--------------------------------------------
PATCHES IN META_IMX
--------------------------------------------
@@ -1146,62 +1468,6 @@ Origin of patches: NXP (GPL-2.0)
--------------------------------------------
-Patches for: bluez5
-Source Location: http://www.kernel.org/pub/linux/bluetooth/bluez-5.48.tar.xz
-Patch Location: meta-bsp/recipes-connectivity/bluez5
-Outgoing License: GPL-2.0+
-License File: COPYING
-Package Category: Connectivity
-Description and comments: Bluetooth protocol stack for Linux
-Origin of patches: NXP (GPL-2.0+)
-
---------------------------------------------
-
-Patches for: connman
-Source Location: https://git.kernel.org/pub/scm/network/connman/connman.git/
-Patch Location: meta-bsp/recipes-connectivity/connman/connman
-Outgoing License: GPL-2.0
-License File: COPYING
-Package Category: Connectivity
-Description and comments: Connection Manager
-Origin of patches: NXP (GPL-2.0)
- WindRiver (GPL-2.0) - https://www.windriver.com/
-
---------------------------------------------
-
-Patches for: gstreamer1.0-libav
-Source Location: http://gstreamer.freedesktop.org/src/gst-libav
-Patch Location: meta-bsp/recipes-multimedia/gstreamer/
-Outgoing License: LGPL-2.0
-License File: COPYING
-Package Category: Multimedia
-Description and comments: A plugin with a set of elements using the Libav library codecs
-Origin of patches: Mathieu Duponchelle (LGPL-2.0)
-
---------------------------------------------
-
-Patches for: alsa-libs
-Source Location: ftp://ftp.alsa-project.org/pub/libs
-Patch Location: meta-bsp/recipes-multimedia/alsa
-Outgoing License: LGPL-2.0
-License File: COPYING
-Package Category: Multimedia
-Description and comments: User space library to simplify application programming and provide higher level functionality
-Origin of patches: NXP (LGPL-2.0)
-
---------------------------------------------
-
-Patches for: alsa-utils
-Source Location: ftp://ftp.alsa-project.org/pub/utils
-Patch Location: meta-bsp/recipes-multimedia/alsa
-Outgoing License: GPL-2.0
-License File: COPYING
-Package Category: Multimedia
-Description and comments: Utilities to control sound cards
-Origin of patches: alsa-utils contributors (GPL-2.0)
-
---------------------------------------------
-
Patches for: pulseaudio
Source Location: http://freedesktop.org/software/pulseaudio/releases/
Patch Location: meta-bsp/recipes-multimedia/pulaeaudio/pulaeaudio
@@ -1213,62 +1479,6 @@ Origin of patches: NXP (LGPL-2.1)
--------------------------------------------
-Patches for: opencv
-Source Location: http://github.com/opencv/opencv.git
-Patch Location: meta-bsp/recipes-graphics/opencv/opencv
-Outgoing License: BSD-3-Clause
-License File: LICENSE
-Package Category: Graphics
-Description and comments: The Open Computer Vision Library
-Origin of patches: NXP (BSD-3-Clause)
-
---------------------------------------------
-
-Patches for: mesa-demos
-Source Location: https://mesa.freedesktop.org/archive/demos/
-Patch Location: meta-bsp/recipes-graphics/mesa/mesa-demos
-Outgoing License: MIT
-License File:
-Package Category: Graphics
-Description and comments: 3-D Graphics
-Origin of patches: NXP (MIT)
- Otavio Salvador (MIT)
-
---------------------------------------------
-
-Patches for: xserver-xorg
-Source Location: https://www.x.org/releases/individual/xserver/
-Patch Location: meta-bsp/recipes-graphics/xorg-xserver/xserver-xorg
-Outgoing License: MIT.X
-License File: COPYING
-Package Category: Linux
-Description and comments: X11
-Origin of patches: NXP (MIT.X)
-
---------------------------------------------
-
-Patches for: glslang
-Source Location: https://www.khronos.org/opengles/sdk/tools/Reference-Compiler
-Patch Location: meta-sdk/recipes-graphics/vulkan/glslang
-Outgoing License: BSD-3-Clause
-License File: LICENSE
-Package Category: Graphics
-Description and comments: Official reference compiler front end for the OpenGL ES and OpenGL shading languages.
-Origin of patches: NXP (BSD-3-Clause)
-
---------------------------------------------
-
-Patches for: matchbox-wm 1.2.1
-Source Location: git://git.yoctoproject.org/matchbox-window-manager
-Patch Location: meta-bsp/recipes-graphics/matchbox-wm/matchbox-wm
-Outgoing License: GPL-2.0
-License File: COPYING
-Package Category: Graphics
-Description and comments: Window manager
-Origin of patches: NXP (GPL-2.0)
-
---------------------------------------------
-
Patches for: vulkan
Source Location: git://github.com/vulkan
Patch Location: meta-sdk/recipes-graphics/vulkan/
@@ -1279,58 +1489,3 @@ Description and comments: cross-platform 3D graphics and compute AP
Origin of patches: NXP (MIT)
--------------------------------------------
-
-Patches for: vulkan/vulkan-tools
-Source Location: git://github.com/KhronosGroup/SPIRV-Tools
-Patch Location: meta-sdk/recipes-graphics/vulkan/
-Outgoing License: Apache-2.0
-License File: LICENSE.txt
-Package Category: Graphics
-Description and comments: provides an API and commands for processing SPIR-V modules.
-Origin of patches: NXP (Apache-2.0)
-
---------------------------------------------
-
-Patches for: vulkan/vkmark
-Source Location: git://github.com/vkmark/vkmark
-Patch Location: meta-sdk/recipes-graphics/vulkan/
-Outgoing License: LGPL-2.1
-License File: COPYING-LGPL2.1
-Package Category: Graphics
-Description and comments: vkmark is an extensible Vulkan benchmarking suite with targeted, configurable scenes.
-Origin of patches: NXP (LGPL-2.1)
-
---------------------------------------------
-
-Patches for: qtbase
-Source Location: https://github.com/qt/qtbase
-Patch Location: recipes-qt5/qt5/qtbase
-Outgoing License: LGPL-3.0+Qt Exception 1.1
-License File: LGPL_EXCEPTION.txt
-Package Category: Qt
-Description and comments: Qt Base
-Origin of patches: NXP (LGPL-2.1+Qt Exception 1.1)
-
---------------------------------------------
-
-Patches for: qtwayland
-Source Location: https://github.com/qt/qtwayland
-Patch Location: meta-sdk/recipes-qt5/qt5/qtwayland
-Outgoing License: LGPL-3.0+Qt Exception 1.1
-License File: LGPL_EXCEPTION.txt
-Package Category: Qt
-Description and comments: A toolbox for making Qt based Wayland compositors.
-Origin of patches: NXP (LGPL-2.1+Qt Exception 1.1)
-
---------------------------------------------
-
-Patches for: gstreamer1.0-plugins-good-qt
-Source Location: https://github.com/qt/gstreamer1.0-plugins-good-qt
-Patch Location: meta-sdk/recipes-qt5/qt5/gstreamer1.0-plugins-good-qt
-Outgoing License: LGPL-3.0+Qt Exception 1.1
-License File: LGPL_EXCEPTION.txt
-Package Category: Qt
-Description and comments:
-Origin of patches: NXP (LGPL-2.1+Qt Exception 1.1)
-
---------------------------------------------
diff --git a/classes/fsl-eula-unpack.bbclass b/classes/fsl-eula-unpack.bbclass
index 64d26bfc..0497e1be 100644
--- a/classes/fsl-eula-unpack.bbclass
+++ b/classes/fsl-eula-unpack.bbclass
@@ -34,6 +34,13 @@ FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V17 = "cf3f9b8d09bc3926b1004ea7
FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V18 = "231e11849a4331fcbb19d7f4aab4a659"
FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V19 = "a632fefd1c359980434f9389833cab3a"
FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V22 = "3c3fe2b904fd694f28d2f646ee16dddb"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V23 = "85d06b38f17b935ca11784d67075b846"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V24 = "417b82f17fc02b88125331ed312f6f1b"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V24.1 = "b3b0bab6ff55420d043cf1652c52d788"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V25 = "f35df765ff17e69043ea21f350e3229c"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V27 = "e565271ec9a80ce47abbddc4bffe56fa"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V29 = "28241cb895217d7946e40e7227136d02"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V30 = "03bcadc8dc0a788f66ca9e2b89f56c6f"
FSL_EULA_FILE_MD5SUMS = " \
${FSL_EULA_FILE_MD5SUM_LA_OPT_BASE_LICENSE_V8} \
${FSL_EULA_FILE_MD5SUM_LA_OPT_BASE_LICENSE_V10} \
@@ -63,11 +70,18 @@ FSL_EULA_FILE_MD5SUMS = " \
${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V18} \
${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V19} \
${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V22} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V23} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V24} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V24.1} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V25} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V27} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V29} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V30} \
"
# The checksum for the EULA in the layer
FSL_EULA_FILE_MD5SUM ?= \
- "${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V22}"
+ "${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V30}"
LIC_FILES_CHKSUM_LAYER ?= "file://${FSL_EULA_FILE};md5=${FSL_EULA_FILE_MD5SUM}"
LIC_FILES_CHKSUM_LAYER[vardepsexclude] += "FSL_EULA_FILE"
diff --git a/conf/machine/imx6ulevk.conf b/conf/machine/imx6ulevk.conf
index f7c5d8ae..ac955aab 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -13,7 +13,6 @@ MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
KERNEL_DEVICETREE = " \
imx6ul-14x14-evk-btwifi.dtb \
- imx6ul-14x14-evk-btwifi-oob.dtb \
imx6ul-14x14-evk-csi.dtb \
imx6ul-14x14-evk.dtb \
imx6ul-14x14-evk-ecspi.dtb \
diff --git a/conf/machine/imx6ullevk.conf b/conf/machine/imx6ullevk.conf
index bd592a20..5ae7aca2 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -17,7 +17,6 @@ KERNEL_DEVICETREE = " \
KERNEL_DEVICETREE_append_use-nxp-bsp = " \
imx6ull-14x14-evk-btwifi.dtb \
- imx6ull-14x14-evk-btwifi-oob.dtb \
imx6ull-14x14-evk-emmc.dtb \
imx6ull-14x14-evk-gpmi-weim.dtb \
"
diff --git a/conf/machine/imx8mp-lpddr4-evk.conf b/conf/machine/imx8mp-lpddr4-evk.conf
index cf926c08..c4dbcd57 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -16,22 +16,27 @@ KERNEL_DEVICETREE_append_use-nxp-bsp = " \
freescale/imx8mp-evk-basler.dtb \
freescale/imx8mp-evk-basler-ov2775.dtb \
freescale/imx8mp-evk-basler-ov5640.dtb \
- freescale/imx8mp-evk-dsp.dtb \
- freescale/imx8mp-evk-dsp-lpa.dtb \
freescale/imx8mp-evk-dual-basler.dtb \
freescale/imx8mp-evk-dual-ov2775.dtb \
+ freescale/imx8mp-evk-ecspi-slave.dtb \
freescale/imx8mp-evk-flexcan2.dtb \
+ freescale/imx8mp-evk-hifiberry-dacplus.dtb \
freescale/imx8mp-evk-inmate.dtb \
+ freescale/imx8mp-evk-iqaudio-dacplus.dtb \
+ freescale/imx8mp-evk-iqaudio-dacpro.dtb \
freescale/imx8mp-evk-it6263-lvds-dual-channel.dtb \
freescale/imx8mp-evk-jdi-wuxga-lvds-panel.dtb \
+ freescale/imx8mp-evk-ndm.dtb \
freescale/imx8mp-evk-ov2775.dtb \
freescale/imx8mp-evk-ov2775-ov5640.dtb \
freescale/imx8mp-evk-pcie-ep.dtb \
freescale/imx8mp-evk-rm67191.dtb \
+ freescale/imx8mp-evk-rm67199.dtb \
freescale/imx8mp-evk-root.dtb \
freescale/imx8mp-evk-rpmsg.dtb \
freescale/imx8mp-evk-sof-wm8960.dtb \
freescale/imx8mp-evk-spdif-lb.dtb \
+ freescale/imx8mp-evk-usdhc1-m2.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mp_evk"
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-evk.conf
index 9907ef4b..3f6598a6 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -78,10 +78,3 @@ OPTEE_BIN_EXT = "8mq"
# Add additional firmware
MACHINE_FIRMWARE_append = " linux-firmware-ath10k"
-
-# Use gstreamer 1.16 from meta-freescale
-PREFERRED_VERSION_gstreamer1.0 ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad ?= "1.16.imx"
-PREFERRED_VERSION_gstreamer1.0-libav ?= "1.16.0"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
index 5ceb6b8b..fb5255ce 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -32,7 +32,6 @@ KERNEL_DEVICETREE = " \
freescale/imx8qm-mek-dom0.dtb \
freescale/imx8qm-mek-domu.dtb \
freescale/imx8qm-mek-dsi-rm67191.dtb \
- freescale/imx8qm-mek-dsp.dtb \
freescale/imx8qm-mek-enet2-tja1100.dtb \
freescale/imx8qm-mek-esai.dtb \
freescale/imx8qm-mek-hdmi.dtb \
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index 17c7bc17..417fd17b 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -315,7 +315,7 @@ MACHINE_EXTRA_RRECOMMENDS += "udev-rules-imx"
# Jailhouse
MACHINE_EXTRA_RRECOMMENDS += " \
- ${@bb.utils.contains('COMBINED_FEATURES', 'jailhouse', 'jailhouse', '', d)} \
+ ${@bb.utils.filter('COMBINED_FEATURES', 'jailhouse', d)} \
"
# GStreamer 1.0 plugins
@@ -334,11 +334,13 @@ MACHINE_GSTREAMER_1_0_PLUGIN_mx8mq ?= "imx-gst1.0-plugin"
MACHINE_GSTREAMER_1_0_PLUGIN_mx8qm ?= "imx-gst1.0-plugin"
MACHINE_GSTREAMER_1_0_PLUGIN_mx8qxp ?= "imx-gst1.0-plugin"
-PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.16.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.16.3.imx"
-PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.16.0"
+PREFERRED_VERSION_gstreamer1.0_mx8 ?= "1.18.0.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 ?= "1.18.0.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 ?= "1.18.0.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 ?= "1.18.0.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-ugly_mx8 ?= "1.18.0"
+PREFERRED_VERSION_gstreamer1.0-libav_mx8 ?= "1.18.0"
+PREFERRED_VERSION_gstreamer1.0-rtsp-server_mx8 ?= "1.18.0"
# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
@@ -475,9 +477,6 @@ KERNEL_IMAGETYPE_aarch64 = "Image"
MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
-SOC_MACHINE_FEATURES_BACKFILL_mx8m = "jailhouse"
-MACHINE_FEATURES_BACKFILL_append = " ${SOC_MACHINE_FEATURES_BACKFILL}"
-
# Add the ability to specify _imx machines
MACHINEOVERRIDES =. "imx:"
diff --git a/conf/machine/include/imx8mm-evk.inc b/conf/machine/include/imx8mm-evk.inc
index 9b590fe0..82384ac6 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -5,13 +5,13 @@ require conf/machine/include/tune-cortexa53.inc
MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
-# NXP BSP can consume BCM4359 and QCA9377 driver and firmware
+# NXP BSP can consume proprietary jailhouse and BCM4359 firmware
# Since the firmware is not available publicly, and rather distributed
# under "Proprietary" license - we opt-out from using it in all BSPs
# and pin it to NXP BSP only
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee bcm4359 qca9377"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"
KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
index 872d07a0..56b6e90f 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -3,11 +3,12 @@ MACHINEOVERRIDES =. "imx-boot-container:mx8:mx8m:mx8mp:"
require conf/machine/include/imx-base.inc
require conf/machine/include/tune-cortexa53.inc
-MACHINE_FEATURES += "pci wifi bluetooth jailhouse"
+MACHINE_FEATURES += "pci wifi bluetooth"
+# NXP BSP can consume proprietary jailhouse and Marvell drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
# a full support for it yet.
-MACHINE_FEATURES_append_use-nxp-bsp = " optee mrvl8997"
+MACHINE_FEATURES_append_use-nxp-bsp = " optee jailhouse mrvl8997"
# Mainline kernel contains only one DTB file for
# imx8mpevk machine
diff --git a/conf/machine/include/qoriq-arm.inc b/conf/machine/include/qoriq-arm.inc
index eb03af43..89e9c4c0 100644
--- a/conf/machine/include/qoriq-arm.inc
+++ b/conf/machine/include/qoriq-arm.inc
@@ -1,5 +1,7 @@
# Provides the common settings for QorIQ ARM
+# default assignment to override defaults from kernel.bbclass
+# should be assigned by machine if other type needed
KERNEL_IMAGETYPE ?= "uImage"
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyEHV0 115200;ttyLP0 115200;ttyAMA0"
diff --git a/conf/machine/include/qoriq-base.inc b/conf/machine/include/qoriq-base.inc
index 0a42160f..16142bd8 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -1,7 +1,7 @@
# common providers of QorIQ targets
-PREFERRED_PROVIDER_u-boot ?= "u-boot-qoriq"
-PREFERRED_PROVIDER_virtual/bootloader ?= "${PREFERRED_PROVIDER_u-boot}"
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-qoriq"
+PREFERRED_PROVIDER_u-boot ??= "u-boot-qoriq"
+PREFERRED_PROVIDER_virtual/bootloader ??= "${PREFERRED_PROVIDER_u-boot}"
+PREFERRED_PROVIDER_virtual/kernel ??= "linux-qoriq"
PREFERRED_PROVIDER_u-boot-tools-native ??= "u-boot-tools-native"
PREFERRED_PROVIDER_u-boot-mkimage-native ??= "u-boot-tools-native"
PREFERRED_PROVIDER_u-boot-mkimage ??= "u-boot-tools"
diff --git a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
index 1793ec06..c7398912 100644
--- a/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb
@@ -6,7 +6,7 @@ PR = "r2"
DEPENDS = "libxml2 fmlib tclap"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/fmc;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/fmc;nobranch=1"
SRCREV = "c2ed7c269e86ac6a0aac361f5876c96e700443f4"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/atf/qoriq-atf-2.3.inc b/recipes-bsp/atf/qoriq-atf-2.3.inc
index bc8b912a..ff00d19e 100644
--- a/recipes-bsp/atf/qoriq-atf-2.3.inc
+++ b/recipes-bsp/atf/qoriq-atf-2.3.inc
@@ -3,7 +3,7 @@ LIC_FILES_CHKSUM = "file://license.rst;md5=1dd070c98a281d18d9eefd938729b031"
PV = "2.3+git${SRCPV}"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/atf;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/atf;nobranch=1 \
git://github.com/ARMmbed/mbedtls;nobranch=1;destsuffix=git/mbedtls;name=mbedtls \
"
SRCREV = "4e40e24590ab908773ef842cd0e17faf233767d4"
diff --git a/recipes-bsp/atf/qoriq-atf_1.5.bb b/recipes-bsp/atf/qoriq-atf_1.5.bb
index 19208334..4287135f 100644
--- a/recipes-bsp/atf/qoriq-atf_1.5.bb
+++ b/recipes-bsp/atf/qoriq-atf_1.5.bb
@@ -13,7 +13,7 @@ do_compile[depends] += "u-boot:do_deploy rcw:do_deploy uefi:do_deploy"
S = "${WORKDIR}/git"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/atf;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/atf;nobranch=1"
SRCREV = "5ae5233c064e94a8bd1b4a1652a03b87b0be63f6"
COMPATIBLE_MACHINE = "(qoriq)"
diff --git a/recipes-bsp/boot-format/boot-format_git.bb b/recipes-bsp/boot-format/boot-format_git.bb
index 92ec8307..10540127 100644
--- a/recipes-bsp/boot-format/boot-format_git.bb
+++ b/recipes-bsp/boot-format/boot-format_git.bb
@@ -3,7 +3,7 @@ LICENSE = "GPLv2"
PR = "r6"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/boot-format;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/boot-format;nobranch=1 \
file://flags.patch"
SRCREV = "4eb81a6797ef4e58bf7d9b2d58afb37a21c1f550"
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8.10.1.inc b/recipes-bsp/firmware-imx/firmware-imx-8.12.inc
index 582beb18..b9699a86 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8.10.1.inc
+++ b/recipes-bsp/firmware-imx/firmware-imx-8.12.inc
@@ -3,14 +3,14 @@
# Copyright (C) 2018 O.S. Systems Software LTDA.
SECTION = "base"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3c3fe2b904fd694f28d2f646ee16dddb"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
SRC_URI = " \
${FSL_MIRROR}/firmware-imx-${PV}.bin;fsl-eula=true \
"
-SRC_URI[md5sum] = "1a9414928c3f30e7a911700fe83cd62e"
-SRC_URI[sha256sum] = "da415c32063c08fce8f52734f198b19ab06bd7d4333a4df900f8831df562f8fc"
+SRC_URI[md5sum] = "6062247e9f12f3ec27247079e59fb935"
+SRC_URI[sha256sum] = "6b6747bf36ecc53e385234afdce01f69c5775adf0d6685c885281ca6e4e322ef"
S = "${WORKDIR}/firmware-imx-${PV}"
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.10.1.bb b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
index 650c1cfd..650c1cfd 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.10.1.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.12.bb
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8m_8.10.1.bb b/recipes-bsp/firmware-imx/firmware-imx-8m_8.12.bb
index a48356ed..a48356ed 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8m_8.10.1.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8m_8.12.bb
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.10.1.bb b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
index 8ff4a321..8ff4a321 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.10.1.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.12.bb
diff --git a/recipes-bsp/firmware-qca/firmware-qca.inc b/recipes-bsp/firmware-qca/firmware-qca.inc
deleted file mode 100644
index f33f4eb9..00000000
--- a/recipes-bsp/firmware-qca/firmware-qca.inc
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright (C) 2018-2020 NXP
-
-SUMMARY = "Qualcomm Wi-Fi and Bluetooth firmware"
-SECTION = "base"
-LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fd4b227530cd88a82af6a5982cfb724d \
- file://QUALCOMM_ATHEROS_LICENSE_AGREEMENT.pdf;md5=e629669cf17f6a2a6872e067582986e3 \
-"
-
-SRC_URI = " ${FSL_MIRROR}/firmware-qca-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "75b1b2a8dea8f81609ccfc072d42fa86"
-SRC_URI[sha256sum] = "6ad56ac1df841e252ac6db0a8966082715a3cb6dc7189426bade13333a16fd9d"
-S = "${WORKDIR}/firmware-qca-${PV}"
-
-inherit fsl-eula-unpack
diff --git a/recipes-bsp/firmware-qca/firmware-qca6174_3.0.2.bb b/recipes-bsp/firmware-qca/firmware-qca6174_3.0.2.bb
deleted file mode 100644
index 47b289af..00000000
--- a/recipes-bsp/firmware-qca/firmware-qca6174_3.0.2.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright (C) 2019-2020 NXP
-
-require firmware-qca.inc
-
-SUMMARY = "Qualcomm Wi-Fi and Bluetooth firmware"
-DESCRIPTION = "Qualcomm Wi-Fi and Bluetooth firmware for modules such as QCA6174A"
-SECTION = "base"
-LICENSE = "Proprietary"
-
-inherit allarch
-
-do_install () {
- # Install firmware.conf for QCA modules
- install -d ${D}${sysconfdir}/bluetooth
- install -m 644 ${S}/1CQ_QCA6174A_LEA_2.0/etc/bluetooth/firmware.conf ${D}${sysconfdir}/bluetooth
-
- # Install firmware files
- install -d ${D}${base_libdir}
- cp -r ${S}/1CQ_QCA6174A_LEA_2.0/lib/firmware ${D}${base_libdir}
-}
-
-FILES_${PN} = " \
- ${sysconfdir}/bluetooth/firmware.conf \
- ${base_libdir}/firmware/qca6174 \
- ${base_libdir}/firmware/wlan \
- ${base_libdir}/firmware/* \
-"
diff --git a/recipes-bsp/firmware-qca/firmware-qca9377_3.0.2.bb b/recipes-bsp/firmware-qca/firmware-qca9377_3.0.2.bb
deleted file mode 100644
index 26c41d50..00000000
--- a/recipes-bsp/firmware-qca/firmware-qca9377_3.0.2.bb
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright (C) 2018-2020 NXP
-
-require firmware-qca.inc
-
-SUMMARY = "Qualcomm Wi-Fi and Bluetooth firmware"
-DESCRIPTION = "Qualcomm Wi-Fi and Bluetooth firmware for modules such as QCA9377-3"
-SECTION = "base"
-LICENSE = "Proprietary"
-
-inherit allarch
-
-do_install () {
- # Install firmware.conf for QCA modules
- install -d ${D}${sysconfdir}/bluetooth
- install -m 644 ${S}/1PJ_QCA9377-3_LEA_3.0/etc/bluetooth/firmware.conf ${D}${sysconfdir}/bluetooth
-
- # Install firmware files
- install -d ${D}${base_libdir}
- cp -r ${S}/1PJ_QCA9377-3_LEA_3.0/lib/firmware ${D}${base_libdir}
-}
-
-FILES_${PN} = " \
- ${sysconfdir}/bluetooth/firmware.conf \
- ${base_libdir}/firmware/qca \
- ${base_libdir}/firmware/qca9377 \
- ${base_libdir}/firmware/wlan \
-"
diff --git a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb b/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
deleted file mode 100644
index e996c62d..00000000
--- a/recipes-bsp/firmware-qca/qca-tools_3.0.2.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright (C) 2018-2020 NXP
-
-require firmware-qca.inc
-
-SUMMARY = "Qualcomm Wi-Fi and Bluetooth tools"
-DESCRIPTION = "Qualcomm Wi-Fi and Bluetooth tools for modules such as QCA6174A and QCA9377"
-LICENSE = "Proprietary"
-
-DEPENDS = "libnl zlib"
-
-FCC_TOOLS_FOLDER ?= "qca9377_qca6174_arm32"
-FCC_TOOLS_FOLDER_aarch64 = "qca9377_qca6174_arm64"
-
-do_install() {
- install -d ${D}${sbindir}/fcc_tools
- cp -r ${S}/fcc_tools/${FCC_TOOLS_FOLDER} ${D}${sbindir}/fcc_tools
-}
-
-COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
diff --git a/recipes-bsp/fsl-tlu/fsl-tlu_1.0.0.bb b/recipes-bsp/fsl-tlu/fsl-tlu_1.0.0.bb
index 60598ae5..df0dec12 100644
--- a/recipes-bsp/fsl-tlu/fsl-tlu_1.0.0.bb
+++ b/recipes-bsp/fsl-tlu/fsl-tlu_1.0.0.bb
@@ -5,7 +5,7 @@ and configuration files."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=8a71d0475d08eee76d8b6d0c6dbec543"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/fsl-tlu;protocol=https;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/fsl-tlu;protocol=https;nobranch=1"
SRCREV = "8837cce3c86b30c0931c319e9e1a8ca622ae5354"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-atf/imx-atf_2.4.bb
index 07807eff..06e32b45 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.4.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.4.bb
@@ -7,10 +7,10 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;m
PV .= "+git${SRCPV}"
-SRCBRANCH = "imx_5.4.70_2.3.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-atf.git;protocol=https;branch=${SRCBRANCH} \
+SRCBRANCH = "lf_v2.4"
+SRC_URI = "git://github.com/nxp-imx/imx-atf.git;protocol=https;branch=${SRCBRANCH} \
"
-SRCREV = "2a26786460edd4f0ec3111e7027c93c57fc572c1"
+SRCREV = "ec35fef92b71a79075f214f8cff0738cd4482ed0"
S = "${WORKDIR}/git"
@@ -27,6 +27,8 @@ EXTRA_OEMAKE += " \
BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}"
+CFLAGS_remove_mx8mq = "-O2"
+
do_compile() {
# Clear LDFLAGS to avoid the option -Wl recognize issue
unset LDFLAGS
diff --git a/recipes-bsp/imx-lib/imx-lib_git.bb b/recipes-bsp/imx-lib/imx-lib_git.bb
index c5619070..2612368f 100644
--- a/recipes-bsp/imx-lib/imx-lib_git.bb
+++ b/recipes-bsp/imx-lib/imx-lib_git.bb
@@ -13,7 +13,7 @@ PE = "1"
PV = "5.8+${SRCPV}"
SRCBRANCH = "master"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-lib.git;protocol=https;branch=${SRCBRANCH}"
+SRC_URI = "git://github.com/nxp-imx/imx-lib.git;protocol=https;branch=${SRCBRANCH}"
SRCREV = "3f777974c0c146817e2ff5cb0340ca66a1f99e57"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
index 4e154f6d..f9943342 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
@@ -1,5 +1,5 @@
# Copyright (C) 2016 Freescale Semiconductor
-# Copyright (C) 2017-2020 NXP
+# Copyright (C) 2017-2021 NXP
require imx-mkimage_git.inc
@@ -12,18 +12,11 @@ inherit deploy native
CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR} -L ${STAGING_LIBDIR}"
-REV_CHIP ?= "B0"
-REV_CHIP_mx8qxp = \
- "${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', 'B0', \
- 'C0', d)}"
-
do_compile () {
cd ${S}
oe_runmake clean
oe_runmake bin
oe_runmake -C iMX8M -f soc.mak mkimage_imx8
- oe_runmake -C iMX8QM REV=${REV_CHIP} -f soc.mak imx8qm_dcd.cfg.tmp
- oe_runmake -C iMX8QX REV=${REV_CHIP} -f soc.mak imx8qx_dcd.cfg.tmp
}
do_install () {
@@ -32,9 +25,3 @@ do_install () {
install -m 0755 iMX8M/mkimage_imx8 ${D}${bindir}/mkimage_imx8m
install -m 0755 mkimage_imx8 ${D}${bindir}/mkimage_imx8
}
-
-do_deploy () {
- install -m 0644 ${S}/iMX8QM/imx8qm_dcd.cfg.tmp ${DEPLOYDIR}
- install -m 0644 ${S}/iMX8QX/imx8qx_dcd.cfg.tmp ${DEPLOYDIR}
-}
-addtask deploy before do_build after do_install
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
index e52fd722..3fee6850 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
@@ -1,13 +1,12 @@
-# Copyright 2017-2020 NXP
+# Copyright 2017-2021 NXP
DEPENDS = "zlib-native openssl-native"
-SRCBRANCH = "imx_5.4.70_2.3.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-mkimage.git;protocol=https;branch=${SRCBRANCH} \
+SRCBRANCH = "lf-5.10.y_2.0.0"
+SRC_URI = "git://github.com/nxp-imx/imx-mkimage.git;protocol=https;branch=${SRCBRANCH} \
file://0001-mkimage_fit_atf-fix-fit-generator-node-naming.patch \
"
-
-SRCREV = "8947fea369ab3932259630232cfb9f87b8f9dda1"
+SRCREV = "5138add7602a50d1730a54d0b67219f0ce0666b4"
S = "${WORKDIR}/git"
BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.7.1.bb b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
index ade228d0..f8ad829e 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.7.1.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.9.0.bb
@@ -1,17 +1,17 @@
# Copyright (C) 2016 Freescale Semiconductor
-# Copyright (C) 2017-2020 NXP
+# Copyright (C) 2017-2021 NXP
DESCRIPTION = "i.MX System Controller Firmware"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
SECTION = "BSP"
inherit fsl-eula-unpack pkgconfig deploy
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "962aebbb0100cc0e049fa88cea594a00"
-SRC_URI[sha256sum] = "9a37353c07c187078be02d76ac55f615cd0c60ea9a1c4233c1929e4b2c43aebc"
+SRC_URI[md5sum] = "5fb6fd285b18717614b5ba67f023e51c"
+SRC_URI[sha256sum] = "df0fe17c93e4c2835542d6b1b2557524f034e378b643100cd838225e82336158"
BOARD_TYPE ?= "mek"
SC_FIRMWARE_NAME ?= "INVALID"
diff --git a/recipes-bsp/imx-seco/imx-seco-libs_git.bb b/recipes-bsp/imx-seco/imx-seco-libs_git.bb
index dc37cdfc..4813d27e 100644
--- a/recipes-bsp/imx-seco/imx-seco-libs_git.bb
+++ b/recipes-bsp/imx-seco/imx-seco-libs_git.bb
@@ -1,17 +1,17 @@
-# Copyright (C) 2019-2020 NXP
+# Copyright (C) 2019-2021 NXP
SUMMARY = "NXP i.MX SECO library"
DESCRIPTION = "NXP IMX SECO library"
SECTION = "base"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://EULA.txt;md5=228c72f2a91452b8a03c4cab30f30ef9"
+LIC_FILES_CHKSUM = "file://EULA.txt;md5=85d06b38f17b935ca11784d67075b846"
DEPENDS = "zlib"
-SRCBRANCH = "imx_5.4.70_2.3.1"
+SRCBRANCH = "lf-5.10.y_2.0.0"
SRC_URI = "git://github.com/NXP/imx-seco-libs.git;protocol=https;branch=${SRCBRANCH} \
file://0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch"
-SRCREV = "79e5fb5d096c61b1c3163c9fa8e42719509d95a0"
+SRCREV = "44caf511023012e9eda93f8bf64c90eaff1bade6"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-seco/imx-seco_3.7.5.bb b/recipes-bsp/imx-seco/imx-seco_3.8.1.bb
index 0539b887..d6d165d7 100644
--- a/recipes-bsp/imx-seco/imx-seco_3.7.5.bb
+++ b/recipes-bsp/imx-seco/imx-seco_3.8.1.bb
@@ -1,17 +1,17 @@
-# Copyright (C) 2019-2020 NXP
+# Copyright (C) 2019-2021 NXP
SUMMARY = "NXP i.MX SECO firmware"
DESCRIPTION = "NXP IMX SECO firmware"
SECTION = "base"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=3c3fe2b904fd694f28d2f646ee16dddb"
inherit fsl-eula-unpack use-imx-security-controller-firmware deploy
SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "d4faca131abfc51a1dd0278d7d201159"
-SRC_URI[sha256sum] = "08cf25a4be6841ca7264a50b29c311b386eae1c02fced8a3b55fd04213acb4bc"
+SRC_URI[md5sum] = "3043817d797fbd7417442ef3709d69b3"
+SRC_URI[sha256sum] = "fe6cff8ee0b66cc4e048ad4ad17e663867c5509809a436a3da62a73a80c1140f"
do_compile[noexec] = "1"
diff --git a/recipes-bsp/imx-test/imx-test_git.bb b/recipes-bsp/imx-test/imx-test_git.bb
index 4e139cc4..c0c1b65a 100644
--- a/recipes-bsp/imx-test/imx-test_git.bb
+++ b/recipes-bsp/imx-test/imx-test_git.bb
@@ -1,6 +1,6 @@
# Copyright (C) 2012-2016 O.S. Systems Software LTDA.
# Copyright (C) 2013-2016 Freescale Semiconductor
-# Copyright (C) 2017-2019 NXP
+# Copyright (C) 2017-2021 NXP
SUMMARY = "Test programs for i.MX BSP"
DESCRIPTION = "Unit tests for the i.MX BSP"
@@ -16,12 +16,12 @@ DEPENDS_append_imxvpu = " virtual/imxvpu"
PE = "1"
PV = "7.0+${SRCPV}"
-SRCBRANCH = "imx_5.4.70_2.3.0"
+SRCBRANCH = "lf-5.10.y_2.0.0"
SRC_URI = " \
- git://source.codeaurora.org/external/imx/imx-test.git;protocol=https;branch=${SRCBRANCH} \
+ git://github.com/nxp-imx/imx-test.git;protocol=https;branch=${SRCBRANCH} \
file://memtool_profile \
"
-SRCREV = "90fd7168fe5f15de9b2b1992a719024fc73a185a"
+SRCREV = "e55c83b939dbb1989181f48b2b3f3e32f7b5b380"
S = "${WORKDIR}/git"
inherit module-base use-imx-headers
diff --git a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.3.0.bb b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.4.0.bb
index bd087898..58a140b4 100644
--- a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.3.0.bb
+++ b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.4.0.bb
@@ -1,8 +1,8 @@
-# Copyright (C) 2019-2020 NXP
+# Copyright (C) 2019-2021 NXP
DESCRIPTION = "i.MX VC8000E Encoder library"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
inherit fsl-eula-unpack
@@ -10,8 +10,8 @@ SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
S = "${WORKDIR}/${BPN}-${PV}"
-SRC_URI[md5sum] = "37c61718602ff08041b81319cfd6a8d9"
-SRC_URI[sha256sum] = "8425796fc63d7107f2f57c51497281c4d54c883b2670817347fbe55f39dc2b8c"
+SRC_URI[md5sum] = "b5270450ba2da5b7468b67ae8c0bcdca"
+SRC_URI[sha256sum] = "d5efae484c4271c098286d007590d6bf40c272d4f35702ff65625f2362715ab3"
# SCR is the location and name of the Software Content Register file
# relative to ${D}${D_SUBDIR}.
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon/0001-Makefile-Honor-LDFLAGS-from-toolchain.patch b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon/0001-Makefile-Honor-LDFLAGS-from-toolchain.patch
new file mode 100644
index 00000000..dff2fb8f
--- /dev/null
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon/0001-Makefile-Honor-LDFLAGS-from-toolchain.patch
@@ -0,0 +1,33 @@
+From 94ae72948f1ed1a8bad1c13b4edc4b9189207e35 Mon Sep 17 00:00:00 2001
+From: Tom Hochstein <tom.hochstein@nxp.com>
+Date: Mon, 26 Jul 2021 09:06:26 -0500
+Subject: [PATCH] Makefile: Honor LDFLAGS from toolchain
+
+The LDFLAGS variable is standard from the toolchain and should be
+honored. Yocto detects the problem with a QA check:
+
+ERROR: imx-vpu-hantro-daemon-1.1.0-r0 do_package_qa: QA Issue: File /usr/bin/vsidaemon in package imx-vpu-hantro-daemon doesn't have GNU_HASH (didn't pass LDFLAGS?) [ldflags]
+
+Upstream-Status: Pending
+
+Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 9a775b0..e73ff47 100755
+--- a/Makefile
++++ b/Makefile
+@@ -22,7 +22,7 @@ OUT_FILE = vsidaemon
+ DEC = nxp_enc_hw
+ ENC = nxp_dec_hw
+ LIBFILES =
+-LD_FLAGS = -lpthread -lm
++LD_FLAGS = $(LDFLAGS) -lpthread -lm
+
+ PLATFORM ?= IMX8MP
+
+--
+2.17.1
+
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
new file mode 100644
index 00000000..88b9ee0e
--- /dev/null
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.0.0.bb
@@ -0,0 +1,32 @@
+# Copyright 2021 NXP
+DESCRIPTION = "i.MX Hantro V4L2 Daemon"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cd8bc2a79509c22fc9c1782a151210b1"
+
+DEPENDS = "imx-vpu-hantro"
+DEPENDS_append_mx8mp = " imx-vpu-hantro-vc"
+
+SRC_URI = " \
+ ${FSL_MIRROR}/${BP}.tar.gz \
+ file://0001-Makefile-Honor-LDFLAGS-from-toolchain.patch \
+"
+SRC_URI[md5sum] = "65417710ef22214523c37f50f34b6ab2"
+SRC_URI[sha256sum] = "897d174c4c0818f31012d8a60ed51fc83fdfc55fca2d2b0fc24a0db3e9f3b6e8"
+
+PLATFORM_mx8mm = "IMX8MM"
+PLATFORM_mx8mq = "IMX8MQ"
+PLATFORM_mx8mp = "IMX8MP"
+
+EXTRA_OEMAKE = " \
+ CROSS_COMPILE="${HOST_PREFIX}" \
+ SDKTARGETSYSROOT="${STAGING_DIR_TARGET}" \
+ CTRLSW_HDRPATH="${STAGING_INCDIR}" \
+ PLATFORM="${PLATFORM}" \
+"
+
+do_install () {
+ oe_runmake install DEST_DIR="${D}"
+}
+
+PACKAGE_ARCH = "${MACHINE_SOCARCH}"
+COMPATIBLE_MACHINE = "(mx8mq|mx8mm|mx8mp)"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-decoder_sw-resolve-compilation-error-with-fcommon.patch b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-decoder_sw-resolve-compilation-error-with-fcommon.patch
deleted file mode 100644
index 8d9610d5..00000000
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-decoder_sw-resolve-compilation-error-with-fcommon.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 5bfb24738c47003fd04a86bfd5a49f8c6354ed23 Mon Sep 17 00:00:00 2001
-From: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
-Date: Fri, 28 Aug 2020 07:46:35 +0000
-Subject: [PATCH] decoder_sw: resolve compilation error with -fcommon
-
--fcommon is enabled by default in gcc10 compiler, which results in
-following build errors:
-
-decoder_sw/software/source/inc/decapicommon.h:272: multiple definition
-of `DecPicCodingType'; decoder_sw/software/linux/dwl/dwl_linux.o:
-decoder_sw/software/source/inc/decapicommon.h:272: first defined here
-
-decoder_sw/software/source/inc/dwl.h:94: multiple definition of
-`DWLInitParam'; decoder_sw/software/linux/dwl/dwl_linux.o:
-decoder_sw/software/source/inc/dwl.h:94: first defined here
-
-Drop multiple enum name definitions, which solves above compilation
-issues.
-
-Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
----
- decoder_sw/software/source/inc/decapicommon.h | 2 +-
- decoder_sw/software/source/inc/dwl.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/decoder_sw/software/source/inc/decapicommon.h b/decoder_sw/software/source/inc/decapicommon.h
-index 0f02092..fc8cccf 100755
---- a/decoder_sw/software/source/inc/decapicommon.h
-+++ b/decoder_sw/software/source/inc/decapicommon.h
-@@ -269,7 +269,7 @@ enum DecPicCodingType {
- DEC_PIC_TYPE_D = 3,
- DEC_PIC_TYPE_FI = 4,
- DEC_PIC_TYPE_BI = 5
--} DecPicCodingType;
-+};
-
- /* Output picture pixel format types for raster scan or down scale output */
- enum DecPicturePixelFormat {
-diff --git a/decoder_sw/software/source/inc/dwl.h b/decoder_sw/software/source/inc/dwl.h
-index 6991f03..fd357b3 100755
---- a/decoder_sw/software/source/inc/dwl.h
-+++ b/decoder_sw/software/source/inc/dwl.h
-@@ -91,7 +91,7 @@ struct DWLLinearMem {
- /* DWLInitParam is used to pass parameters when initializing the DWL */
- struct DWLInitParam {
- u32 client_type;
--} DWLInitParam;
-+};
-
- /* Hardware configuration description, same as in top API */
- typedef struct DecHwConfig DWLHwConfig;
---
-2.17.1
-
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb
deleted file mode 100644
index b7c64cbb..00000000
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright (C) 2017-2020 NXP
-
-DESCRIPTION = "i.MX Hantro VPU library"
-LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a"
-
-PROVIDES = "virtual/imxvpu"
-
-SRC_URI = " \
- ${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true \
-"
-SRC_URI[md5sum] = "682b3a73bf5aa22a37d56a433d11fc91"
-SRC_URI[sha256sum] = "e6cdd5b4c628604906466fc9620e2b048cf1b2c863f9ee49616dd5212b9261b0"
-
-inherit fsl-eula-unpack use-imx-headers
-
-PARALLEL_MAKE="-j 1"
-
-PLATFORM_mx8mm = "IMX8MM"
-PLATFORM_mx8mq = "IMX8MQ"
-PLATFORM_mx8mp = "IMX8MP"
-
-do_compile () {
- oe_runmake CROSS_COMPILE="${HOST_PREFIX}" \
- SDKTARGETSYSROOT="${STAGING_DIR_TARGET}" \
- PLATFORM="${PLATFORM}" all
-}
-
-do_install () {
- oe_runmake DEST_DIR="${D}" PLATFORM="${PLATFORM}" install
-}
-
-FILES_${PN} += "/unit_tests"
-
-COMPATIBLE_MACHINE = "(mx8mq|mx8mm|mx8mp)"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
new file mode 100644
index 00000000..20ac87c7
--- /dev/null
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.22.0.bb
@@ -0,0 +1,35 @@
+# Copyright (C) 2017-2020 NXP
+
+DESCRIPTION = "i.MX Hantro VPU library"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
+
+PROVIDES = "virtual/imxvpu"
+
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
+SRC_URI[md5sum] = "b65b49eadb6463b784e1a9e44a94fca1"
+SRC_URI[sha256sum] = "03c61dfb268b31a0d25a4d1387cb3ad0261029ad5de801f72224602e2b37da00"
+
+inherit fsl-eula-unpack use-imx-headers
+
+PARALLEL_MAKE="-j 1"
+
+PLATFORM_mx8mm = "IMX8MM"
+PLATFORM_mx8mq = "IMX8MQ"
+PLATFORM_mx8mp = "IMX8MP"
+
+EXTRA_OEMAKE = " \
+ CROSS_COMPILE="${HOST_PREFIX}" \
+ SDKTARGETSYSROOT="${STAGING_DIR_TARGET}" \
+ PLATFORM="${PLATFORM}" \
+"
+
+do_install () {
+ oe_runmake install DEST_DIR="${D}"
+}
+
+FILES_${PN} += "/unit_tests"
+
+RDEPENDS_${PN} += "imx-vpu-hantro-daemon"
+
+COMPATIBLE_MACHINE = "(mx8mq|mx8mm|mx8mp)"
diff --git a/recipes-bsp/isp-imx/basler-camera_4.2.2.11.0.bb b/recipes-bsp/isp-imx/basler-camera_4.2.2.13.0.bb
index 88cdd1c5..e7d4b652 100644
--- a/recipes-bsp/isp-imx/basler-camera_4.2.2.11.0.bb
+++ b/recipes-bsp/isp-imx/basler-camera_4.2.2.13.0.bb
@@ -2,14 +2,14 @@
DESCRIPTION = "Basler camera binary drivers"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3c3fe2b904fd694f28d2f646ee16dddb"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
inherit fsl-eula-unpack
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "2e0bd011f8d72e1957c4d6da55364be5"
-SRC_URI[sha256sum] = "4be5c4f26dc0f3f5e031c2d8ac295ff5768489e7e978aaa901030fd77b5209c2"
+SRC_URI[md5sum] = "8d99375cc9e7f1573d984c6a989655b1"
+SRC_URI[sha256sum] = "3f09f7a2de290b0580faee9e180a78a322144d316fbbbc80b8a36fb83ab538b1"
do_install() {
dest_dir=${D}/opt/imx8-isp/bin
diff --git a/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch b/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch
new file mode 100644
index 00000000..950098cd
--- /dev/null
+++ b/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch
@@ -0,0 +1,53 @@
+From 9c65e20b82cfd9e82b849b3140eec7b8c18922dc Mon Sep 17 00:00:00 2001
+From: Chris Dimich <Chris.Dimich@boundarydevices.com>
+Date: Mon, 13 Sep 2021 17:56:02 -0700
+Subject: [PATCH 1/1] start_isp.sh: fix NR_DEVICE_TREE_BASLER variable
+
+Also remove uneeded -lm option from run.sh script.
+
+Signed-off-by: Chris Dimich <Chris.Dimich@boundarydevices.com>
+---
+ imx/start_isp.sh | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/imx/start_isp.sh b/imx/start_isp.sh
+index 6daabc59c..250226935 100755
+--- a/imx/start_isp.sh
++++ b/imx/start_isp.sh
+@@ -7,7 +7,7 @@
+ #
+
+ RUNTIME_DIR="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
+-NR_DEVICE_TREE_BASLER=$(grep basler-camera-vvcam /sys/firmware/devicetree/base/soc@0/*/i2c@*/*/compatible -l | wc -l 2> /dev/null)
++NR_DEVICE_TREE_BASLER=$(grep basler-camera-vvcam `find /sys/firmware/devicetree/base/soc@0/ -name compatible | grep i2c` -l | wc -l 2> /dev/null)
+ NR_DEVICE_TREE_OV5640=$(grep ov5640 /sys/firmware/devicetree/base/soc@0/*/i2c@*/*/compatible -l | wc -l 2> /dev/null)
+
+ # check if the basler device has been enabled in the device tree
+@@ -21,13 +21,13 @@ if [ $NR_DEVICE_TREE_BASLER -eq 1 ]; then
+
+ # Default configuration for Basler daA3840-30mc: basler_4k
+ # Available configurations: basler_4k, basler_1080p60, basler_4khdr, basler_1080p60hdr
+- exec ./run.sh -c basler_4k -lm
++ exec ./run.sh -c basler_4k
+
+ elif [ $NR_DEVICE_TREE_OV5640 -eq 1 ]; then
+
+ # Default configuration for Basler daA3840-30mc: basler_1080p60
+ # Available configurations: basler_1080p60, basler_1080p60hdr
+- exec ./run.sh -c basler_1080p60 -lm
++ exec ./run.sh -c basler_1080p60
+
+ fi
+
+@@ -38,7 +38,7 @@ elif [ $NR_DEVICE_TREE_BASLER -eq 2 ]; then
+ cd $RUNTIME_DIR
+ # Default configuration for Basler daA3840-30mc: dual_basler_1080p60
+ # Available configurations: dual_basler_1080p60, dual_basler_1080p60hdr, dual_basler_1080p25hdr
+- exec ./run.sh -c dual_basler_1080p60 -lm
++ exec ./run.sh -c dual_basler_1080p60
+
+ else
+ # no device tree found exit with code no device or address
+--
+2.31.1
+
diff --git a/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch b/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch
deleted file mode 100644
index 1b62afe5..00000000
--- a/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-test-to-be-generic.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 708f25cfe522df162c3e2c7c56cbe2f7000cb5e4 Mon Sep 17 00:00:00 2001
-From: Gary Bisson <gary.bisson@boundarydevices.com>
-Date: Mon, 14 Dec 2020 14:26:01 +0100
-Subject: [PATCH] start_isp.sh: fix test to be generic
-
-So that it works on EVK and any other i.MX 8M Plus platform.
-
-Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
----
- imx/start_isp.sh | 13 +++++--------
- 1 file changed, 5 insertions(+), 8 deletions(-)
-
-Index: isp-imx-4.2.2.11.0/imx/start_isp.sh
-===================================================================
---- isp-imx-4.2.2.11.0.orig/imx/start_isp.sh
-+++ isp-imx-4.2.2.11.0/imx/start_isp.sh
-@@ -8,6 +8,7 @@
-
- RUNTIME_DIR="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
- NR_DEVICE_TREE_BASLER=$(grep basler-camera-vvcam /sys/firmware/devicetree/base/soc@0/*/i2c@*/*/compatible -l | wc -l 2> /dev/null)
-+DMESG_BASLER=`dmesg | grep Basler`
-
- # check if the basler device has been enabled in the device tree
- if [ $NR_DEVICE_TREE_BASLER -eq 1 ]; then
-@@ -28,8 +29,15 @@ elif [ $NR_DEVICE_TREE_BASLER -eq 2 ]; t
- # Available configurations: dual_basler_1080p60, dual_basler_1080p60hdr
- exec ./run.sh -c dual_basler_1080p60 -lm
-
-+elif [ ! -z "$DMESG_BASLER" ]; then
-+
-+ echo "Starting isp_media_server for generic Basler"
-+
-+ cd $RUNTIME_DIR
-+ exec ./run.sh -c basler_1080p60
-+
- else
- # no device tree found exit with code no device or address
-- echo "No device tree found for Basler, check dtb file!" >&2
-+ echo "Basler camera not found!" >&2
- exit 6
- fi
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
index 3d25229f..53934777 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.11.0.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.13.0.bb
@@ -2,15 +2,15 @@
DESCRIPTION = "i.MX Verisilicon Software ISP"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3c3fe2b904fd694f28d2f646ee16dddb"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
DEPENDS = "python3 libdrm virtual/libg2d"
SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true \
- file://0001-start_isp.sh-fix-test-to-be-generic.patch \
+ file://0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch \
"
-SRC_URI[md5sum] = "75f79ba556c47172b9a0cbc3a877e604"
-SRC_URI[sha256sum] = "28e2ee909f29a256c4eac87ef8336932d90a88a2a183389ac0868212954af42c"
+SRC_URI[md5sum] = "123feed48302fea2a1be8572e913ae47"
+SRC_URI[sha256sum] = "e775975684aab4211f0bf8c5e2c6604ba46b83c5586937000675e044a50d77b8"
inherit fsl-eula-unpack cmake systemd use-imx-headers
diff --git a/recipes-bsp/mc-utils/mc-utils_git.bb b/recipes-bsp/mc-utils/mc-utils_git.bb
index b3c79b99..e99cd563 100644
--- a/recipes-bsp/mc-utils/mc-utils_git.bb
+++ b/recipes-bsp/mc-utils/mc-utils_git.bb
@@ -9,7 +9,7 @@ DEPENDS += "dtc-native"
inherit deploy
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/mc-utils;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/mc-utils;nobranch=1"
SRCREV = "8e0b863693fc2ccbc62a62c79b4e3db6da88c16e"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/rcw/rcw_git.bb b/recipes-bsp/rcw/rcw_git.bb
index 69350615..da691440 100644
--- a/recipes-bsp/rcw/rcw_git.bb
+++ b/recipes-bsp/rcw/rcw_git.bb
@@ -7,7 +7,7 @@ DEPENDS += "tcl-native"
inherit deploy siteinfo
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/rcw;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/rcw;nobranch=1"
SRCREV = "1caebba96b6fd8eac9ef4246c181f2b47c448c4f"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/u-boot/u-boot-imx-common.inc b/recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc
index f1edc92c..d20eaa06 100644
--- a/recipes-bsp/u-boot/u-boot-imx-common.inc
+++ b/recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc
@@ -3,9 +3,9 @@ DESCRIPTION = "i.MX U-Boot suppporting i.MX reference boards."
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRCBRANCH = "imx_v2020.04_5.4.70_2.3.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/uboot-imx.git;protocol=https;branch=${SRCBRANCH}"
-SRCREV = "185bdaaaf5644319284566e5c340927d28954a1a"
+SRCBRANCH = "lf_v2021.04"
+SRC_URI = "git://github.com/nxp-imx/uboot-imx.git;protocol=https;branch=${SRCBRANCH}"
+SRCREV = "3463140881c523e248d2fcb6bfc9ed25c0db93bd"
DEPENDS += "flex-native bison-native bc-native dtc-native"
@@ -14,7 +14,7 @@ B = "${WORKDIR}/build"
inherit fsl-u-boot-localversion
-LOCALVERSION ?= "-imx_v2020.04_5.4.70_2.3.2"
+LOCALVERSION ?= "-imx_v2021.04_5.10.35_2.0.0"
BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2020.04.bb b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
index 2b296c19..2b296c19 100644
--- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
diff --git a/recipes-bsp/u-boot/u-boot-imx_2020.04.bb b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
index 058229e2..6a279a12 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
@@ -3,12 +3,12 @@
# Copyright (C) 2017-2021 NXP
require recipes-bsp/u-boot/u-boot.inc
-require u-boot-imx-common.inc
+require u-boot-imx-common_${PV}.inc
PROVIDES += "u-boot"
do_deploy_append_mx8m() {
- # Deploy the mkimage, u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
+ # Deploy 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
@@ -19,7 +19,7 @@ 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}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type}
fi
done
unset j
diff --git a/recipes-bsp/u-boot/u-boot-mfgtool.inc b/recipes-bsp/u-boot/u-boot-mfgtool.inc
index 91526ad7..92d055bf 100644
--- a/recipes-bsp/u-boot/u-boot-mfgtool.inc
+++ b/recipes-bsp/u-boot/u-boot-mfgtool.inc
@@ -17,5 +17,5 @@ UBOOT_CONFIG = "mfgtool"
# Add 'mfgtool' suffix
UBOOT_IMAGE = "u-boot-${MACHINE}-mfgtool-${PV}-${PR}.${UBOOT_SUFFIX}"
UBOOT_SYMLINK = "u-boot-${MACHINE}-mfgtool.${UBOOT_SUFFIX}"
-SPL_IMAGE = "${SPL_BINARY}-${MACHINE}-mfgtool-${PV}-${PR}"
-SPL_SYMLINK = "${SPL_BINARY}-mfgtool-${MACHINE}"
+SPL_IMAGE = "${SPL_BINARYNAME}-${MACHINE}-mfgtool-${PV}-${PR}"
+SPL_SYMLINK = "${SPL_BINARYNAME}-mfgtool-${MACHINE}"
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
index 57f27803..ef5553e0 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2020.04.bb
@@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = " \
file://Licenses/lgpl-2.1.txt;md5=4fbd65380cdd255951079008b364516c \
"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/u-boot;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/u-boot;nobranch=1"
SRCREV= "f46a944f715f284aff1d42c009680ffe0be4058f"
S = "${WORKDIR}/git"
diff --git a/recipes-devtools/cst/cst_git.bb b/recipes-devtools/cst/cst_git.bb
index 9091350b..8284e4b3 100644
--- a/recipes-devtools/cst/cst_git.bb
+++ b/recipes-devtools/cst/cst_git.bb
@@ -16,7 +16,7 @@ inherit kernel-arch
#SECURE_PRI_KEY = "/path/srk.pri"
#SECURE_PUB_KEY = "/path/srk.pub"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/cst;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/cst;nobranch=1 \
file://0001-tools-Mark-struct-input_field-file_field-extern.patch \
"
SRCREV = "dfe30d3f05cfe281896482839e57ed49c52f2088"
diff --git a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
index dfd7fdcf..74265845 100644
--- a/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
+++ b/recipes-devtools/qemu/qemu-qoriq_4.1.0.bb
@@ -9,7 +9,7 @@ DEPENDS = "glib-2.0 zlib pixman bison-native"
LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
file://COPYING.LIB;endline=24;md5=8c5efda6cf1e1b03dcfd0e6c0d271c7f"
-SRC_URI = "gitsm://source.codeaurora.org/external/qoriq/qoriq-components/qemu;nobranch=1 \
+SRC_URI = "gitsm://github.com/nxp-qoriq/qemu;nobranch=1 \
file://powerpc_rom.bin \
file://run-ptest \
file://0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch \
diff --git a/recipes-dpaa/eth-config/eth-config_git.bb b/recipes-dpaa/eth-config/eth-config_git.bb
index cfeae114..3d566402 100644
--- a/recipes-dpaa/eth-config/eth-config_git.bb
+++ b/recipes-dpaa/eth-config/eth-config_git.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=47716bd5b656aa5e298a132a64d2d1e4"
PR = "r2"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/eth-config;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/eth-config;nobranch=1"
SRCREV = "6164664070e45810c793f112781ebcedc979e132"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa/flib/flib_git.bb b/recipes-dpaa/flib/flib_git.bb
index 3ae05889..c6e85640 100644
--- a/recipes-dpaa/flib/flib_git.bb
+++ b/recipes-dpaa/flib/flib_git.bb
@@ -3,7 +3,7 @@ SECTION = "flib"
LICENSE = "BSD & GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=9f6d1afdf6b0f6b3ba65c25ba589ee53"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/flib;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/flib;nobranch=1"
SRCREV = "cbb31427466649c07d2ac2739a41bb42f5f6be7c"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa/fmlib/fmlib_git.bb b/recipes-dpaa/fmlib/fmlib_git.bb
index 880d768b..253f9e90 100644
--- a/recipes-dpaa/fmlib/fmlib_git.bb
+++ b/recipes-dpaa/fmlib/fmlib_git.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9c7bd5e45d066db084bdb3543d55b1ac"
PR = "r1"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/fmlib;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/fmlib;nobranch=1"
SRCREV = "69a70474cd8411d5a099c34f40760b6567d781d6"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa2/aiopsl/aiopsl_git.bb b/recipes-dpaa2/aiopsl/aiopsl_git.bb
index a1b00289..945d7871 100644
--- a/recipes-dpaa2/aiopsl/aiopsl_git.bb
+++ b/recipes-dpaa2/aiopsl/aiopsl_git.bb
@@ -7,7 +7,7 @@ BASEDEPENDS = ""
S = "${WORKDIR}/git"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/aiopsl;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/aiopsl;nobranch=1"
SRCREV = "87d83d8e99770325cc7ad9e10965c9959e7cb828"
do_configure[noexec] = "1"
diff --git a/recipes-dpaa2/dce/dce_git.bb b/recipes-dpaa2/dce/dce_git.bb
index 9984f080..1b379bdc 100644
--- a/recipes-dpaa2/dce/dce_git.bb
+++ b/recipes-dpaa2/dce/dce_git.bb
@@ -3,8 +3,8 @@ SECTION = "dpaa2"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=956df5ea6cfe0a1dcf2dee7ca37c0cdf"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/dce;nobranch=1 \
- git://source.codeaurora.org/external/qoriq/qoriq-components/qbman_userspace;nobranch=1;name=qbman;destsuffix=git/lib/qbman_userspace \
+SRC_URI = "git://github.com/nxp-qoriq/dce;nobranch=1 \
+ git://github.com/nxp-qoriq/qbman_userspace;nobranch=1;name=qbman;destsuffix=git/lib/qbman_userspace \
"
SRCREV = "9db9c08379aa89f45f514f4f3f0a8e8212198758"
SRCREV_qbman = "2f92993a9f34e5221d6b36c63b9e30ef703e9ac3"
diff --git a/recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb b/recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb
index a96913e8..99e9853d 100644
--- a/recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb
+++ b/recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb
@@ -6,7 +6,7 @@ SECTION = "dpaa2"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=386a6287daa6504b7e7e5014ddfb3987"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/gpp-aioptool;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/gpp-aioptool;nobranch=1 \
file://0001-remove-libio.h.patch \
file://0001-add-fcommon-to-fix-gcc-10-build-issue.patch \
"
diff --git a/recipes-dpaa2/restool/restool_git.bb b/recipes-dpaa2/restool/restool_git.bb
index 66cea7ef..8104128d 100644
--- a/recipes-dpaa2/restool/restool_git.bb
+++ b/recipes-dpaa2/restool/restool_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=ec8d84e9cd4de287e290275d09db27f0"
RDEPENDS_${PN} += "bash dtc"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/restool;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/restool;nobranch=1"
SRCREV = "8ddbe4c9559ffad5d7e5dd3cd5f00ceeff7f05d4"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa2/spc/spc_git.bb b/recipes-dpaa2/spc/spc_git.bb
index e9bf1427..b22f2cf5 100644
--- a/recipes-dpaa2/spc/spc_git.bb
+++ b/recipes-dpaa2/spc/spc_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=163b09a1c249a6ff2b28da1ceca2e0a8"
DEPENDS = "libxml2 fmlib tclap"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/spc;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/spc;nobranch=1"
SRCREV = "be7dd8e346a934aae1e4bdd6b579f2aa4bb5cd86"
S = "${WORKDIR}/git"
diff --git a/recipes-extended/dpdk/dpdk_19.11-20.12.bb b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
index 426713c2..2af1d6da 100644
--- a/recipes-extended/dpdk/dpdk_19.11-20.12.bb
+++ b/recipes-extended/dpdk/dpdk_19.11-20.12.bb
@@ -3,7 +3,7 @@ LIC_FILES_CHKSUM = "file://license/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4
file://license/lgpl-2.1.txt;md5=4b54a1fd55a448865a0b32d41598759d \
file://license/bsd-3-clause.txt;md5=0f00d99239d922ffd13cabef83b33444"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/dpdk;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/dpdk;nobranch=1 \
file://add-RTE_KERNELDIR_OUT-to-split-kernel-bu.patch \
file://0001-add-Wno-cast-function-type.patch \
file://0001-Add-RTE_KERNELDIR_OUT.patch \
diff --git a/recipes-extended/ipc-ust/ipc-ust_git.bb b/recipes-extended/ipc-ust/ipc-ust_git.bb
index df496c28..32c42c50 100644
--- a/recipes-extended/ipc-ust/ipc-ust_git.bb
+++ b/recipes-extended/ipc-ust/ipc-ust_git.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "DSP boot application and ipc test application"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=fa38cd73d71527dc6efb546474f64d10"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/ipc;branch=nxp/sdk-v2.0.x \
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/ipc;branch=nxp/sdk-v2.0.x \
file://Makefile-use-LDFLAGS-if-set.patch \
"
SRCREV = "74d662707558290f070f9589177db730444bc435"
diff --git a/recipes-extended/jailhouse/jailhouse_0.12.bb b/recipes-extended/jailhouse/jailhouse_0.12.bb
index a15bec6c..968afeff 100644
--- a/recipes-extended/jailhouse/jailhouse_0.12.bb
+++ b/recipes-extended/jailhouse/jailhouse_0.12.bb
@@ -16,7 +16,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9fa7f895f96bde2d47fd5b7d95b6ba4d \
SRCBRANCH = "imx_5.4.47_2.2.0"
SRCREV = "8bbe203ee7c1fc16198ce1bf964e54c90606c3c2"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-jailhouse.git;protocol=ssh;branch=${SRCBRANCH} \
+SRC_URI = "git://github.com/nxp-imx/imx-jailhouse.git;protocol=ssh;branch=${SRCBRANCH} \
file://0001-tools-scripts-update-shebang-to-python3.patch \
"
diff --git a/recipes-extended/libpkcs11/libpkcs11_git.bb b/recipes-extended/libpkcs11/libpkcs11_git.bb
index 30f33a20..b1bed872 100644
--- a/recipes-extended/libpkcs11/libpkcs11_git.bb
+++ b/recipes-extended/libpkcs11/libpkcs11_git.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "PKCS library"
LICENSE = "GPLv2 & BSD"
LIC_FILES_CHKSUM = "file://LICENSE;md5=803852533e29eb1d6d5e55ad3078b625"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/libpkcs11;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/libpkcs11;nobranch=1 \
file://0001-fix-multiple-definition-error.patch \
"
SRCREV = "a243fb21772f1bd434d8bc1ac45feb36571afadb"
diff --git a/recipes-extended/odp/odp.inc b/recipes-extended/odp/odp.inc
index 129f77ae..226e4c35 100644
--- a/recipes-extended/odp/odp.inc
+++ b/recipes-extended/odp/odp.inc
@@ -9,9 +9,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=ca6103dc75397fb6bec596187d6b7829"
FILESEXTRAPATHS_prepend := "${THISDIR}/odp:"
SRC_URI = " \
-git://source.codeaurora.org/external/qoriq/qoriq-components/odp;nobranch=1 \
-git://source.codeaurora.org/external/qoriq/qoriq-components/qbman_userspace;nobranch=1;name=qbman;destsuffix=git/platform/linux-dpaa2/flib/qbman \
-git://source.codeaurora.org/external/qoriq/qoriq-components/flib;nobranch=1;name=rta;destsuffix=git/platform/linux-dpaa2/flib/rta \
+git://github.com/nxp-qoriq/odp;nobranch=1 \
+git://github.com/nxp-qoriq/qbman_userspace;nobranch=1;name=qbman;destsuffix=git/platform/linux-dpaa2/flib/qbman \
+git://github.com/nxp-qoriq/flib;nobranch=1;name=rta;destsuffix=git/platform/linux-dpaa2/flib/rta \
"
SRC_URI += "file://0001-Fix-this-build-error.patch"
diff --git a/recipes-extended/ofp/ofp_git.bb b/recipes-extended/ofp/ofp_git.bb
index c76eafd7..61801244 100644
--- a/recipes-extended/ofp/ofp_git.bb
+++ b/recipes-extended/ofp/ofp_git.bb
@@ -6,7 +6,7 @@ SECTION = "console/network"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=fbe4957c430eed6cc20521d4eb429fae"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/ofp;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/ofp;nobranch=1"
SRCREV = "fe66f4659f7d356f7aa73a8fb32fcf67c6cf1108"
diff --git a/recipes-extended/ovs-dpdk/ovs-dpdk_2.13.0.bb b/recipes-extended/ovs-dpdk/ovs-dpdk_2.13.0.bb
index 9e817579..74aaf2ba 100644
--- a/recipes-extended/ovs-dpdk/ovs-dpdk_2.13.0.bb
+++ b/recipes-extended/ovs-dpdk/ovs-dpdk_2.13.0.bb
@@ -7,7 +7,7 @@ RDEPENDS_${PN} = "bash libcrypto libssl python3"
inherit python3native
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/ovs-dpdk;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/ovs-dpdk;nobranch=1"
SRCREV = "072130412196029bcc284e353023d81019a8daa7"
S = "${WORKDIR}/git"
diff --git a/recipes-extended/secure-obj/secure-obj.inc b/recipes-extended/secure-obj/secure-obj.inc
index 8a62d9cb..e8b838bb 100644
--- a/recipes-extended/secure-obj/secure-obj.inc
+++ b/recipes-extended/secure-obj/secure-obj.inc
@@ -10,7 +10,7 @@ inherit python3native
LDFLAGS += "${TOOLCHAIN_OPTIONS}"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/secure_obj;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/secure_obj;nobranch=1 \
"
SRCREV = "71a6eb33b58a8578a60995da3896f8f2d638c916"
diff --git a/recipes-extended/skmm-ep/skmm-ep_git.bb b/recipes-extended/skmm-ep/skmm-ep_git.bb
index b75c0feb..4a82d48e 100644
--- a/recipes-extended/skmm-ep/skmm-ep_git.bb
+++ b/recipes-extended/skmm-ep/skmm-ep_git.bb
@@ -7,7 +7,7 @@ DEPENDS = "libedit openssl virtual/kernel"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/skmm-ep;protocol=https;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/skmm-ep;protocol=https;nobranch=1 \
file://add-two-missing-header-files.patch \
"
SRCREV = "de6816c7d66129683bc62229b482ac3cf585d896"
diff --git a/recipes-extended/tsntool/tsntool_git.bb b/recipes-extended/tsntool/tsntool_git.bb
index 94091db8..5959b547 100644
--- a/recipes-extended/tsntool/tsntool_git.bb
+++ b/recipes-extended/tsntool/tsntool_git.bb
@@ -7,8 +7,8 @@ DEPENDS = "cjson libnl readline"
inherit pkgconfig
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/tsntool;protocol=https;nobranch=1"
-SRCREV = "1d1686e83c8f83472055189c278b837434990dcc"
+SRC_URI = "git://github.com/nxp-qoriq/tsntool;protocol=https;nobranch=1"
+SRCREV = "3111f7f79e7d1b1a5e60f37fe76785559b2d0360"
S = "${WORKDIR}/git"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb b/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
deleted file mode 100644
index aeba7623..00000000
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca6174.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright 2019 NXP
-
-SUMMARY = "Qualcomm Wi-Fi support"
-
-inherit packagegroup
-
-RDEPENDS_${PN} = " \
- kernel-module-qca6174 \
- firmware-qca6174 \
-"
-
-COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb b/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
deleted file mode 100644
index 43df5a70..00000000
--- a/recipes-fsl/packagegroups/packagegroup-fsl-qca9377.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-# Copyright 2019 NXP
-
-SUMMARY = "Qualcomm Wi-Fi support"
-
-inherit packagegroup
-
-RDEPENDS_${PN} = " \
- kernel-module-qca9377 \
- firmware-qca9377 \
-"
-COMPATIBLE_HOST = '(aarch64|arm).*-linux'
-COMPATIBLE_HOST_libc-musl = 'null'
diff --git a/recipes-graphics/drm/libdrm_2.4.102.imx.bb b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
index 6935b782..ab3b8b60 100644
--- a/recipes-graphics/drm/libdrm_2.4.102.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.102.imx.bb
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c5
PROVIDES = "drm"
DEPENDS = "libpthread-stubs"
-IMX_LIBDRM_SRC ?= "git://source.codeaurora.org/external/imx/libdrm-imx.git;protocol=https;nobranch=1"
+IMX_LIBDRM_SRC ?= "git://github.com/nxp-imx/libdrm-imx.git;protocol=https;nobranch=1"
IMX_LIBDRM_BRANCH ?= "libdrm-imx-2.4.102"
SRC_URI = "${IMX_LIBDRM_SRC};branch=${IMX_LIBDRM_BRANCH} \
file://0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch "
diff --git a/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.14.bb b/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.9.2.bb
index 1176fa1a..af96367b 100644
--- a/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.14.bb
+++ b/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.9.2.bb
@@ -1,15 +1,15 @@
# Copyright (C) 2016 Freescale Semiconductor
-# Copyright 2017-2019 NXP
+# Copyright 2017-2021 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "GPU G2D library and apps for i.MX with 2D GPU and DPU"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a632fefd1c359980434f9389833cab3a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
PROVIDES += "virtual/libg2d"
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "51b1a54f303bea31325549e9fb1f0d04"
-SRC_URI[sha256sum] = "360012a32353bde233a548f25a8f99b18660059ea2655ab15335a967843ce3b9"
+SRC_URI[md5sum] = "a267c87677d600ecf07d4c8f42941532"
+SRC_URI[sha256sum] = "02e4e649f2af6c867cb666df10f032af48b0907e1529fa6c5958dad7e38aebbe"
inherit fsl-eula-unpack
diff --git a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
index 65ce9cd5..4148349f 100644
--- a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
+++ b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_9.0.0.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=aeb969185a143c3c25130bc2c3ef9a50"
DEPENDS = "imx-gpu-viv zlib libpng procps"
-SRC_URI = "git://source.codeaurora.org/external/imx/apitrace-imx.git;protocol=https;branch=imx_9.0"
+SRC_URI = "git://github.com/nxp-imx/apitrace-imx.git;protocol=https;branch=imx_9.0"
SRCREV = "c50e6a954e44998f2e3793a8de863e961f8008c6"
S = "${WORKDIR}/git"
diff --git a/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.4.bb b/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p2.0.bb
index 257ecf16..3527a709 100644
--- a/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.4.bb
+++ b/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p2.0.bb
@@ -1,11 +1,11 @@
# Copyright (C) 2016 Freescale Semiconductor
-# Copyright 2017-2018 NXP
+# Copyright 2017-2021 NXP
# Copyright 2018 (C) O.S. Systems Software LTDA.
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "GPU G2D library and apps for i.MX with 2D GPU and no DPU"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a632fefd1c359980434f9389833cab3a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
DEPENDS += "libgal-imx"
PROVIDES += "virtual/libg2d"
@@ -13,10 +13,10 @@ PROVIDES += "virtual/libg2d"
FSLBIN_NAME = "${PN}-${PV}-${TARGET_ARCH}"
SRC_URI = "${FSL_MIRROR}/${FSLBIN_NAME}.bin;name=${TARGET_ARCH};fsl-eula=true"
-SRC_URI[aarch64.md5sum] = "575eac63da712019bfe3ac4c616b2774"
-SRC_URI[aarch64.sha256sum] = "017e8c40a51311bb384a427467ec6950f91879b9e36c48074dd29c6ca7db8c4f"
-SRC_URI[arm.md5sum] = "9eab89a12949534a5a45050c24ba4cba"
-SRC_URI[arm.sha256sum] = "a5ee498e47e52cbc56292d5ea8d71b5194775c750fa0415a43ea05ddb1acb08a"
+SRC_URI[aarch64.md5sum] = "baef64e3779f50098b7191e5246ce19f"
+SRC_URI[aarch64.sha256sum] = "2642a49e088daae4cf568a150d01e7c095995e8a6ff1883c02c3fa6d26d254b3"
+SRC_URI[arm.md5sum] = "865a92ddf68509a3cff5469536ff201a"
+SRC_URI[arm.sha256sum] = "39fe307916e19a0892a514621121086e276a43858af90230372a1344852116a2"
S = "${WORKDIR}/${FSLBIN_NAME}"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
index 91a5542b..95f36bf7 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -1,12 +1,12 @@
# Copyright (C) 2012-2016 Freescale Semiconductor
# Copyright (C) 2012-2018 O.S. Systems Software LTDA.
-# Copyright 2017-2020 NXP
+# Copyright 2017-2021 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "GPU driver and apps for i.MX"
SECTION = "libs"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a632fefd1c359980434f9389833cab3a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=417b82f17fc02b88125331ed312f6f1b"
DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -27,9 +27,7 @@ DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}"
EXTRA_PROVIDES = ""
EXTRA_PROVIDES_append_imxgpu3d = " \
- ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'virtual/libgl', \
- bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libgl', \
- '', d), d)} \
+ virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
@@ -84,13 +82,11 @@ PACKAGES =+ "libclc-imx libclc-imx-dev \
libvivante-dri-imx \
libvsc-imx \
${IMX_PACKAGES_GBM} \
- libwayland-viv-imx libwayland-viv-imx-dev \
- libgc-wayland-protocol-imx libgc-wayland-protocol-imx-dev \
imx-gpu-viv-tools \
imx-gpu-viv-demos \
libvulkan-imx libvulkan-imx-dev \
libopenvx-imx libopenvx-imx-dev \
- libnn-imx libnn-imx-dev \
+ libnn-imx \
"
python __anonymous () {
has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0')
@@ -101,10 +97,11 @@ python __anonymous () {
USE_X11 = "${@bb.utils.contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
USE_WL = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "yes", "no", d)}"
-# Inhibit warnings about files being stripped.
-INHIBIT_PACKAGE_STRIP = "1"
+# The packaged binaries have been stripped of debug info, so disable
+# operations accordingly.
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
-INSANE_SKIP_${BPN} += "already-stripped"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_SYSROOT_STRIP = "1"
# FIXME: The provided binary doesn't provide soname. If in future BSP
# release the libraries are fixed, we can drop this hack.
@@ -240,12 +237,6 @@ do_install () {
rm -f ${D}${includedir}/GLES3/${header}
done
- # skip packaging wayland libraries if no support is requested
- if [ "${USE_WL}" = "no" ]; then
- find ${D}${libdir} -name "libgc_wayland_protocol.*" -exec rm '{}' ';'
- find ${D}${libdir} -name "libwayland-viv.*" -exec rm '{}' ';'
- fi
-
# FIXME: MX6SL does not have 3D support; hack it for now
if [ "${IS_MX6SL}" = "1" ]; then
rm -rf ${D}${libdir}/libCLC* ${D}${includedir}/CL \
@@ -274,7 +265,7 @@ do_install () {
ALLOW_EMPTY_${PN} = "1"
-FILES_libclc-imx = "${libdir}/libCLC${SOLIBS}"
+FILES_libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h"
FILES_libclc-imx-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}"
# libEGL.so is used by some demo apps from Freescale
@@ -349,21 +340,11 @@ FILES_libvdk-imx-dev = "${includedir}/*vdk*.h ${libdir}/libVDK${SOLIBSDEV}"
FILES_libvivante-dri-imx = "${libdir}/dri/vivante_dri.so"
RDEPENDS_libvivante-dri-imx = "libdrm"
-INSANE_SKIP_libwayland-viv-imx += "dev-so"
-FILES_libwayland-viv-imx = "${libdir}/libwayland-viv${REALSOLIBS} ${libdir}/libwayland-viv${SOLIBS}"
-FILES_libwayland-viv-imx-dev = "${includedir}/wayland-viv ${libdir})/libwayland-viv${SOLIBSDEV} ${libdir}/pkgconfig/wayland-viv.pc"
-RPROVIDES_libwayland-viv-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'xf86-video-imx-vivante', '', d)}"
-
-INSANE_SKIP_libgc-wayland-protocol-imx += "dev-so"
-FILES_libgc-wayland-protocol-imx = "${libdir}/libgc_wayland_protocol${REALSOLIBS} ${libdir}/libgc_wayland_protocol${SOLIBS}"
-FILES_libgc-wayland-protocol-imx-dev = "${libdir}/libgc_wayland_protocol${SOLIBSDEV} ${libdir}/pkgconfig/gc_wayland_protocol.pc"
-
FILES_imx-gpu-viv-tools = "${bindir}/gmem_info"
FILES_imx-gpu-viv-demos = "/opt"
INSANE_SKIP_imx-gpu-viv-demos += "rpaths dev-deps"
-FILES_libnn-imx = "${libdir}/libNN*${SOLIBS} ${libdir}/libnn*${SOLIBS} ${libdir}/libneuralnetworks${SOLIBS}"
-FILES_libnn-imx-dev = "${includedir}/nnrt"
+FILES_libnn-imx = "${libdir}/libNN*${SOLIBS}"
# COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx8)"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch64.bb
deleted file mode 100644
index b1b4bace..00000000
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch64.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require imx-gpu-viv-6.inc
-
-SRC_URI[md5sum] = "2493f1264458ac13572cf328ae78f280"
-SRC_URI[sha256sum] = "5f1579ac846dad3464e2e7c7569ea59c89bd12bc61b79344c1210d80e1ea91e1"
-
-COMPATIBLE_MACHINE = "(mx8)"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch32.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch32.bb
index e6c1f8a3..e534f4e7 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.4-aarch32.bb
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch32.bb
@@ -4,7 +4,7 @@
require imx-gpu-viv-6.inc
-SRC_URI[md5sum] = "1270a84dcd0d0e985a8bfa9027988fb2"
-SRC_URI[sha256sum] = "ecdd5355f6aa0d154c3ddf575fde28d0212767d852d2843f3a75aba10c65cd46"
+SRC_URI[md5sum] = "a5c945615c8145ca4aa3d9a69bfdd2f7"
+SRC_URI[sha256sum] = "1324b1aaf190110b80ad9a6f6533f4f50dce9e9ab8d49d8503f59764b151d219"
COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx7ulp)"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch64.bb
new file mode 100644
index 00000000..ff7f95f5
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p2.0-aarch64.bb
@@ -0,0 +1,6 @@
+require imx-gpu-viv-6.inc
+
+SRC_URI[md5sum] = "ff63b1fb889ae9fe41f0cca14d62b69c"
+SRC_URI[sha256sum] = "003c30baefb1655790b475c3cdfa5cefbf81ea89ef37c6649b64f151dd23a52e"
+
+COMPATIBLE_MACHINE = "(mx8)"
diff --git a/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb b/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb
index 852b3160..c8af7301 100644
--- a/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb
+++ b/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb
@@ -9,7 +9,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \
file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53"
-SRC_URI = "git://source.codeaurora.org/external/imx/wayland-protocols-imx.git;protocol=https;branch=wayland-protocols-imx-1.20"
+SRC_URI = "git://github.com/nxp-imx/wayland-protocols-imx.git;protocol=https;branch=wayland-protocols-imx-1.20"
SRCREV = "9cacf108d0ee5863c7a656da5d2271bc2396e43d"
S = "${WORKDIR}/git"
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-graphics/wayland/weston_9.0.0.imx.bb
index a69f1e6a..deab3632 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_9.0.0.imx.bb
@@ -149,7 +149,7 @@ SUMMARY = "Weston, a Wayland compositor, i.MX fork"
DEFAULT_PREFERENCE = "-1"
SRCBRANCH = "weston-imx-9.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} \
+SRC_URI = "git://github.com/nxp-imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} \
file://weston.png \
file://weston.desktop \
file://xwayland.weston-start \
diff --git a/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb b/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
index 069008c0..b71e81a3 100644
--- a/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
+++ b/recipes-graphics/xorg-driver/xf86-video-imx-vivante_6.4.0.p0.0.bb
@@ -15,7 +15,7 @@ LIC_FILES_CHKSUM = "file://COPYING-MIT;md5=b5e9d9f5c02ea831ab3ecf802bb7c4f3"
SRCREV = "c828e8a7c38743e960967e7bb78c134cec31c102"
SRCBRANCH = "imx_exa_viv6_g2d"
-SRC_URI = "git://source.codeaurora.org/external/imx/xf86-video-imx-vivante.git;protocol=https;branch=${SRCBRANCH} \
+SRC_URI = "git://github.com/nxp-imx/xf86-video-imx-vivante.git;protocol=https;branch=${SRCBRANCH} \
file://rc.autohdmi"
S = "${WORKDIR}/git"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch
deleted file mode 100644
index 48f271ae..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 836f93de99b35050d78d61d3654f7c5655184144 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Fri, 19 Apr 2019 10:19:50 +0200
-Subject: [PATCH] hw/xwayland/Makefile.am: fix build without glx
-
-Commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b added libglxvnd.la to
-Xwayland_LDFLAGS but GLX can be disabled through --disable-glx.
-In this case, build fails on:
-
-make[3]: *** No rule to make target '../../glx/libglxvnd.la', needed by 'Xwayland'. Stop.
-make[3]: *** Waiting for unfinished jobs....
-
-Fixes:
- - http://autobuild.buildroot.org/results/397f8098c57fc6c88aa12dc8d35ebb1b933d52ef
-
-Upstream-Status: Backport [836f93de99b35050d78d61d3654f7c5655184144]
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- hw/xwayland/Makefile.am | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am
-index bc1cb8506..502879e2a 100644
---- a/hw/xwayland/Makefile.am
-+++ b/hw/xwayland/Makefile.am
-@@ -21,10 +21,14 @@ Xwayland_SOURCES = \
- $(top_srcdir)/Xi/stubs.c \
- $(top_srcdir)/mi/miinitext.c
-
-+if GLX
-+GLXVND_LIB = $(top_builddir)/glx/libglxvnd.la
-+endif
-+
- Xwayland_LDADD = \
- $(glamor_lib) \
- $(XWAYLAND_LIBS) \
-- $(top_builddir)/glx/libglxvnd.la \
-+ $(GLXVND_LIB) \
- $(XWAYLAND_SYS_LIBS) \
- $(top_builddir)/Xext/libXvidmode.la \
- $(XSERVER_SYS_LIBS)
---
-2.17.1
-
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch
new file mode 100644
index 00000000..e0958558
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch
@@ -0,0 +1,47 @@
+From 3a6fe85a5f123f53319b5be8a69666174cad09cf Mon Sep 17 00:00:00 2001
+From: Julien Isorce <julien.isorce@gmail.com>
+Date: Thu, 6 Sep 2018 15:38:13 -0700
+Subject: [PATCH 1/8] xfree86: define FOURCC_NV12 and XVIMAGE_NV12
+
+Useful for glamor.
+
+Upstream-Status: Backport
+Signed-off-by: Julien Isorce <jisorce@oblong.com>
+Tested-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ hw/xfree86/common/fourcc.h | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/hw/xfree86/common/fourcc.h b/hw/xfree86/common/fourcc.h
+index e6126b7fe..a19e6869e 100644
+--- a/hw/xfree86/common/fourcc.h
++++ b/hw/xfree86/common/fourcc.h
+@@ -156,4 +156,24 @@
+ XvTopToBottom \
+ }
+
++#define FOURCC_NV12 0x3231564e
++#define XVIMAGE_NV12 \
++ { \
++ FOURCC_NV12, \
++ XvYUV, \
++ LSBFirst, \
++ {'N','V','1','2', \
++ 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
++ 12, \
++ XvPlanar, \
++ 2, \
++ 0, 0, 0, 0, \
++ 8, 8, 8, \
++ 1, 2, 2, \
++ 1, 2, 2, \
++ {'Y','U','V', \
++ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
++ XvTopToBottom \
++ }
++
+ #endif /* _XF86_FOURCC_H_ */
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch
new file mode 100644
index 00000000..78988373
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch
@@ -0,0 +1,116 @@
+From 7f46b31e3d80ca769f68a4ffb201d0fc4801ea93 Mon Sep 17 00:00:00 2001
+From: Julien Isorce <julien.isorce@gmail.com>
+Date: Thu, 6 Sep 2018 15:38:14 -0700
+Subject: [PATCH 2/8] glamor: add support for GL_RG
+
+Allow to upload the CbCr plane of an NV12 image into a GL texture.
+
+Upstream-Status: Backport
+Signed-off-by: Julien Isorce <jisorce@oblong.com>
+Tested-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ glamor/glamor.c | 2 ++
+ glamor/glamor.h | 1 +
+ glamor/glamor_priv.h | 4 +++-
+ glamor/glamor_transfer.c | 10 ++++++++--
+ glamor/glamor_utils.h | 4 ++++
+ 5 files changed, 18 insertions(+), 3 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index abefef614..3e9cf284c 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -222,6 +222,8 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth,
+
+ pixmap_priv = glamor_get_pixmap_private(pixmap);
+
++ pixmap_priv->is_cbcr = (usage == GLAMOR_CREATE_FORMAT_CBCR);
++
+ format = gl_iformat_for_pixmap(pixmap);
+
+ pitch = (((w * pixmap->drawable.bitsPerPixel + 7) / 8) + 3) & ~3;
+diff --git a/glamor/glamor.h b/glamor/glamor.h
+index be04bf858..e5992aa56 100644
+--- a/glamor/glamor.h
++++ b/glamor/glamor.h
+@@ -129,6 +129,7 @@ extern _X_EXPORT Bool glamor_destroy_pixmap(PixmapPtr pixmap);
+ #define GLAMOR_CREATE_FBO_NO_FBO 0x103
+ #define GLAMOR_CREATE_NO_LARGE 0x105
+ #define GLAMOR_CREATE_PIXMAP_NO_TEXTURE 0x106
++#define GLAMOR_CREATE_FORMAT_CBCR 0x107
+
+ /* @glamor_egl_exchange_buffers: Exchange the underlying buffers(KHR image,fbo).
+ *
+diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h
+index 4353a99f1..a14aaf624 100644
+--- a/glamor/glamor_priv.h
++++ b/glamor/glamor_priv.h
+@@ -380,6 +380,8 @@ typedef struct glamor_pixmap_private {
+ * names.
+ */
+ glamor_pixmap_fbo **fbo_array;
++
++ Bool is_cbcr;
+ } glamor_pixmap_private;
+
+ extern DevPrivateKeyRec glamor_pixmap_private_key;
+@@ -902,7 +904,7 @@ int glamor_xv_put_image(glamor_port_private *port_priv,
+ Bool sync,
+ RegionPtr clipBoxes);
+ void glamor_xv_core_init(ScreenPtr screen);
+-void glamor_xv_render(glamor_port_private *port_priv);
++void glamor_xv_render(glamor_port_private *port_priv, int id);
+
+ #include "glamor_utils.h"
+
+diff --git a/glamor/glamor_transfer.c b/glamor/glamor_transfer.c
+index ebb5101d1..421ed3a5f 100644
+--- a/glamor/glamor_transfer.c
++++ b/glamor/glamor_transfer.c
+@@ -27,6 +27,7 @@
+ void
+ glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type)
+ {
++ glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap);
+ switch (pixmap->drawable.depth) {
+ case 24:
+ case 32:
+@@ -38,8 +39,13 @@ glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type)
+ *type = GL_UNSIGNED_INT_2_10_10_10_REV;
+ break;
+ case 16:
+- *format = GL_RGB;
+- *type = GL_UNSIGNED_SHORT_5_6_5;
++ if (priv->is_cbcr) {
++ *format = priv->fbo->format;
++ *type = GL_UNSIGNED_BYTE;
++ } else {
++ *format = GL_RGB;
++ *type = GL_UNSIGNED_SHORT_5_6_5;
++ }
+ break;
+ case 15:
+ *format = GL_BGRA;
+diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h
+index 0d5674d63..1890c1fe5 100644
+--- a/glamor/glamor_utils.h
++++ b/glamor/glamor_utils.h
+@@ -613,10 +613,14 @@ gl_iformat_for_pixmap(PixmapPtr pixmap)
+ {
+ glamor_screen_private *glamor_priv =
+ glamor_get_screen_private((pixmap)->drawable.pScreen);
++ glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap);
+
+ if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP &&
+ ((pixmap)->drawable.depth == 1 || (pixmap)->drawable.depth == 8)) {
+ return glamor_priv->one_channel_format;
++ } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP &&
++ (pixmap)->drawable.depth == 16 && pixmap_priv->is_cbcr) {
++ return GL_RG;
+ } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP &&
+ (pixmap)->drawable.depth == 30) {
+ return GL_RGB10_A2;
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch
new file mode 100644
index 00000000..855d1938
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch
@@ -0,0 +1,322 @@
+From 17a3528162304f1586329aabd606d3498bfe48a5 Mon Sep 17 00:00:00 2001
+From: Julien Isorce <julien.isorce@gmail.com>
+Date: Tue, 11 Sep 2018 10:28:33 -0700
+Subject: [PATCH 3/8] glamor: add support for NV12 in Xv
+
+Useful when video decoders only output NV12. Currently
+glamor Xv only supports I420 and YV12.
+
+Note that Intel's sna supports I420, YV12, YUY2, UYVY, NV12.
+
+Test: xvinfo | grep NV12
+Test: gst-launch-1.0 videotestsrc ! video/x-raw, format=NV12 ! xvimagesink
+
+v2: Combine the two texture2Ds on u_sampler.
+
+Upstream-Status: Backport
+Signed-off-by: Julien Isorce <jisorce@oblong.com>
+Tested-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ glamor/glamor_xv.c | 180 ++++++++++++++++++++++++++++++++++++++-------
+ 1 file changed, 155 insertions(+), 25 deletions(-)
+
+diff --git a/glamor/glamor_xv.c b/glamor/glamor_xv.c
+index 62fc4fff5..6fef6ed0d 100644
+--- a/glamor/glamor_xv.c
++++ b/glamor/glamor_xv.c
+@@ -59,8 +59,40 @@ typedef struct tagREF_TRANSFORM {
+ #define RTFContrast(a) (1.0 + ((a)*1.0)/1000.0)
+ #define RTFHue(a) (((a)*3.1416)/1000.0)
+
+-static const glamor_facet glamor_facet_xv_planar = {
+- .name = "xv_planar",
++static const glamor_facet glamor_facet_xv_planar_2 = {
++ .name = "xv_planar_2",
++
++ .version = 120,
++
++ .source_name = "v_texcoord0",
++ .vs_vars = ("attribute vec2 position;\n"
++ "attribute vec2 v_texcoord0;\n"
++ "varying vec2 tcs;\n"),
++ .vs_exec = (GLAMOR_POS(gl_Position, position)
++ " tcs = v_texcoord0;\n"),
++
++ .fs_vars = ("uniform sampler2D y_sampler;\n"
++ "uniform sampler2D u_sampler;\n"
++ "uniform vec4 offsetyco;\n"
++ "uniform vec4 ucogamma;\n"
++ "uniform vec4 vco;\n"
++ "varying vec2 tcs;\n"),
++ .fs_exec = (
++ " float sample;\n"
++ " vec2 sample_uv;\n"
++ " vec4 temp1;\n"
++ " sample = texture2D(y_sampler, tcs).w;\n"
++ " temp1.xyz = offsetyco.www * vec3(sample) + offsetyco.xyz;\n"
++ " sample_uv = texture2D(u_sampler, tcs).xy;\n"
++ " temp1.xyz = ucogamma.xyz * vec3(sample_uv.x) + temp1.xyz;\n"
++ " temp1.xyz = clamp(vco.xyz * vec3(sample_uv.y) + temp1.xyz, 0.0, 1.0);\n"
++ " temp1.w = 1.0;\n"
++ " gl_FragColor = temp1;\n"
++ ),
++};
++
++static const glamor_facet glamor_facet_xv_planar_3 = {
++ .name = "xv_planar_3",
+
+ .version = 120,
+
+@@ -110,26 +142,50 @@ Atom glamorBrightness, glamorContrast, glamorSaturation, glamorHue,
+ XvImageRec glamor_xv_images[] = {
+ XVIMAGE_YV12,
+ XVIMAGE_I420,
++ XVIMAGE_NV12
+ };
+ int glamor_xv_num_images = ARRAY_SIZE(glamor_xv_images);
+
+ static void
+-glamor_init_xv_shader(ScreenPtr screen)
++glamor_init_xv_shader(ScreenPtr screen, int id)
+ {
+ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
+ GLint sampler_loc;
++ const glamor_facet *glamor_facet_xv_planar = NULL;
++
++ switch (id) {
++ case FOURCC_YV12:
++ case FOURCC_I420:
++ glamor_facet_xv_planar = &glamor_facet_xv_planar_3;
++ break;
++ case FOURCC_NV12:
++ glamor_facet_xv_planar = &glamor_facet_xv_planar_2;
++ break;
++ default:
++ break;
++ }
+
+ glamor_build_program(screen,
+ &glamor_priv->xv_prog,
+- &glamor_facet_xv_planar, NULL, NULL, NULL);
++ glamor_facet_xv_planar, NULL, NULL, NULL);
+
+ glUseProgram(glamor_priv->xv_prog.prog);
+ sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "y_sampler");
+ glUniform1i(sampler_loc, 0);
+ sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "u_sampler");
+ glUniform1i(sampler_loc, 1);
+- sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "v_sampler");
+- glUniform1i(sampler_loc, 2);
++
++ switch (id) {
++ case FOURCC_YV12:
++ case FOURCC_I420:
++ sampler_loc = glGetUniformLocation(glamor_priv->xv_prog.prog, "v_sampler");
++ glUniform1i(sampler_loc, 2);
++ break;
++ case FOURCC_NV12:
++ break;
++ default:
++ break;
++ }
+
+ }
+
+@@ -227,6 +283,21 @@ glamor_xv_query_image_attributes(int id,
+ offsets[2] = size;
+ size += tmp;
+ break;
++ case FOURCC_NV12:
++ *w = ALIGN(*w, 2);
++ *h = ALIGN(*h, 2);
++ size = ALIGN(*w, 4);
++ if (pitches)
++ pitches[0] = size;
++ size *= *h;
++ if (offsets)
++ offsets[1] = offsets[2] = size;
++ tmp = ALIGN(*w, 4);
++ if (pitches)
++ pitches[1] = pitches[2] = tmp;
++ tmp *= (*h >> 1);
++ size += tmp;
++ break;
+ }
+ return size;
+ }
+@@ -240,7 +311,7 @@ static REF_TRANSFORM trans[2] = {
+ };
+
+ void
+-glamor_xv_render(glamor_port_private *port_priv)
++glamor_xv_render(glamor_port_private *port_priv, int id)
+ {
+ ScreenPtr screen = port_priv->pPixmap->drawable.pScreen;
+ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
+@@ -264,7 +335,7 @@ glamor_xv_render(glamor_port_private *port_priv)
+ int dst_box_index;
+
+ if (!glamor_priv->xv_prog.prog)
+- glamor_init_xv_shader(screen);
++ glamor_init_xv_shader(screen, id);
+
+ cont = RTFContrast(port_priv->contrast);
+ bright = RTFBrightness(port_priv->brightness);
+@@ -293,6 +364,8 @@ glamor_xv_render(glamor_port_private *port_priv)
+ glamor_get_pixmap_private(port_priv->src_pix[i]);
+ pixmap_priv_get_scale(src_pixmap_priv[i], &src_xscale[i],
+ &src_yscale[i]);
++ } else {
++ src_pixmap_priv[i] = NULL;
+ }
+ }
+ glamor_make_current(glamor_priv);
+@@ -319,12 +392,21 @@ glamor_xv_render(glamor_port_private *port_priv)
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
+
+- glActiveTexture(GL_TEXTURE2);
+- glBindTexture(GL_TEXTURE_2D, src_pixmap_priv[2]->fbo->tex);
+- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
+- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
+- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
+- glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
++ switch (id) {
++ case FOURCC_YV12:
++ case FOURCC_I420:
++ glActiveTexture(GL_TEXTURE2);
++ glBindTexture(GL_TEXTURE_2D, src_pixmap_priv[2]->fbo->tex);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
++ break;
++ case FOURCC_NV12:
++ break;
++ default:
++ break;
++ }
+
+ glEnableVertexAttribArray(GLAMOR_VERTEX_POS);
+ glEnableVertexAttribArray(GLAMOR_VERTEX_SOURCE);
+@@ -336,7 +418,7 @@ glamor_xv_render(glamor_port_private *port_priv)
+ /* Set up a single primitive covering the area being drawn. We'll
+ * clip it to port_priv->clip using GL scissors instead of just
+ * emitting a GL_QUAD per box, because this way we hopefully avoid
+- * diagonal tearing between the two trangles used to rasterize a
++ * diagonal tearing between the two triangles used to rasterize a
+ * GL_QUAD.
+ */
+ i = 0;
+@@ -417,6 +499,7 @@ glamor_xv_put_image(glamor_port_private *port_priv,
+ RegionPtr clipBoxes)
+ {
+ ScreenPtr pScreen = pDrawable->pScreen;
++ glamor_screen_private *glamor_priv = glamor_get_screen_private(pScreen);
+ int srcPitch, srcPitch2;
+ int top, nlines;
+ int s2offset, s3offset, tmp;
+@@ -425,9 +508,16 @@ glamor_xv_put_image(glamor_port_private *port_priv,
+ s2offset = s3offset = srcPitch2 = 0;
+
+ if (!port_priv->src_pix[0] ||
+- (width != port_priv->src_pix_w || height != port_priv->src_pix_h)) {
++ (width != port_priv->src_pix_w || height != port_priv->src_pix_h) ||
++ (port_priv->src_pix[2] && id == FOURCC_NV12) ||
++ (!port_priv->src_pix[2] && id != FOURCC_NV12)) {
+ int i;
+
++ if (glamor_priv->xv_prog.prog) {
++ glDeleteProgram(glamor_priv->xv_prog.prog);
++ glamor_priv->xv_prog.prog = 0;
++ }
++
+ for (i = 0; i < 3; i++)
+ if (port_priv->src_pix[i])
+ glamor_destroy_pixmap(port_priv->src_pix[i]);
+@@ -435,17 +525,34 @@ glamor_xv_put_image(glamor_port_private *port_priv,
+ port_priv->src_pix[0] =
+ glamor_create_pixmap(pScreen, width, height, 8,
+ GLAMOR_CREATE_FBO_NO_FBO);
+- port_priv->src_pix[1] =
+- glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8,
+- GLAMOR_CREATE_FBO_NO_FBO);
+- port_priv->src_pix[2] =
+- glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8,
+- GLAMOR_CREATE_FBO_NO_FBO);
++
++ switch (id) {
++ case FOURCC_YV12:
++ case FOURCC_I420:
++ port_priv->src_pix[1] =
++ glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8,
++ GLAMOR_CREATE_FBO_NO_FBO);
++ port_priv->src_pix[2] =
++ glamor_create_pixmap(pScreen, width >> 1, height >> 1, 8,
++ GLAMOR_CREATE_FBO_NO_FBO);
++ if (!port_priv->src_pix[2])
++ return BadAlloc;
++ break;
++ case FOURCC_NV12:
++ port_priv->src_pix[1] =
++ glamor_create_pixmap(pScreen, width >> 1, height >> 1, 16,
++ GLAMOR_CREATE_FBO_NO_FBO |
++ GLAMOR_CREATE_FORMAT_CBCR);
++ port_priv->src_pix[2] = NULL;
++ break;
++ default:
++ return BadMatch;
++ }
++
+ port_priv->src_pix_w = width;
+ port_priv->src_pix_h = height;
+
+- if (!port_priv->src_pix[0] || !port_priv->src_pix[1] ||
+- !port_priv->src_pix[2])
++ if (!port_priv->src_pix[0] || !port_priv->src_pix[1])
+ return BadAlloc;
+ }
+
+@@ -489,6 +596,29 @@ glamor_xv_put_image(glamor_port_private *port_priv,
+ 0, 0, 0, 0,
+ buf + s3offset, srcPitch2);
+ break;
++ case FOURCC_NV12:
++ srcPitch = ALIGN(width, 4);
++ s2offset = srcPitch * height;
++ s2offset += ((top >> 1) * srcPitch);
++
++ full_box.x1 = 0;
++ full_box.y1 = 0;
++ full_box.x2 = width;
++ full_box.y2 = nlines;
++
++ half_box.x1 = 0;
++ half_box.y1 = 0;
++ half_box.x2 = width;
++ half_box.y2 = (nlines + 1) >> 1;
++
++ glamor_upload_boxes(port_priv->src_pix[0], &full_box, 1,
++ 0, 0, 0, 0,
++ buf + (top * srcPitch), srcPitch);
++
++ glamor_upload_boxes(port_priv->src_pix[1], &half_box, 1,
++ 0, 0, 0, 0,
++ buf + s2offset, srcPitch);
++ break;
+ default:
+ return BadMatch;
+ }
+@@ -511,7 +641,7 @@ glamor_xv_put_image(glamor_port_private *port_priv,
+ port_priv->w = width;
+ port_priv->h = height;
+ port_priv->pDraw = pDrawable;
+- glamor_xv_render(port_priv);
++ glamor_xv_render(port_priv, id);
+ return Success;
+ }
+
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch
new file mode 100644
index 00000000..c116576f
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch
@@ -0,0 +1,31 @@
+From 69892ca6a623057ed4e3be0c22cb7fd812425024 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
+Date: Wed, 19 Dec 2018 10:11:22 +0100
+Subject: [PATCH 4/8] glamor: Remove unused format_for_pixmap helper
+
+Upstream-Status: Backport
+Reviewed-by: Eric Anholt <eric@anholt.net>
+---
+ glamor/glamor_utils.h | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h
+index 1890c1fe5..8a147ca7e 100644
+--- a/glamor/glamor_utils.h
++++ b/glamor/glamor_utils.h
+@@ -629,12 +629,6 @@ gl_iformat_for_pixmap(PixmapPtr pixmap)
+ }
+ }
+
+-static inline CARD32
+-format_for_pixmap(PixmapPtr pixmap)
+-{
+- return format_for_depth((pixmap)->drawable.depth);
+-}
+-
+ #define REVERT_NONE 0
+ #define REVERT_NORMAL 1
+ #define REVERT_UPLOADING_A1 3
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch
new file mode 100644
index 00000000..9a0aa7ab
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch
@@ -0,0 +1,132 @@
+From 2498f6712c3b551c4d8104628aff78246b5cd6c8 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Tue, 26 Mar 2019 15:58:59 -0700
+Subject: [PATCH 5/8] glamor: Stop trying to store the pixmap's "format" in
+ glamor_pixmap_fbo.
+
+"format" is a bit of a confused term (internalformat vs GL format),
+and all we really needed was "is this GL_RED?"
+
+Upstream-Status: Backport
+Signed-off-by: Eric Anholt <eric@anholt.net>
+---
+ glamor/glamor.c | 3 +--
+ glamor/glamor_fbo.c | 7 ++++---
+ glamor/glamor_priv.h | 13 ++-----------
+ glamor/glamor_render.c | 2 +-
+ glamor/glamor_transfer.c | 2 +-
+ 5 files changed, 9 insertions(+), 18 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index 3e9cf284c..c36b6ea74 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -184,8 +184,7 @@ glamor_bind_texture(glamor_screen_private *glamor_priv, GLenum texture,
+ /* Is the operand a GL_RED fbo?
+ */
+
+- if (glamor_fbo_red_is_alpha(glamor_priv, fbo)) {
+-
++ if (fbo->is_red) {
+ /* If destination is also GL_RED, then preserve the bits in
+ * the R channel */
+
+diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c
+index f939a6c2f..58eb97bf4 100644
+--- a/glamor/glamor_fbo.c
++++ b/glamor/glamor_fbo.c
+@@ -95,7 +95,7 @@ glamor_pixmap_ensure_fb(glamor_screen_private *glamor_priv,
+
+ glamor_pixmap_fbo *
+ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+- int w, int h, GLenum format, GLint tex, int flag)
++ int w, int h, Bool is_red, GLint tex, int flag)
+ {
+ glamor_pixmap_fbo *fbo;
+
+@@ -106,7 +106,7 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+ fbo->tex = tex;
+ fbo->width = w;
+ fbo->height = h;
+- fbo->format = format;
++ fbo->is_red = is_red;
+
+ if (flag != GLAMOR_CREATE_FBO_NO_FBO) {
+ if (glamor_pixmap_ensure_fb(glamor_priv, fbo) != 0) {
+@@ -163,7 +163,8 @@ glamor_create_fbo(glamor_screen_private *glamor_priv,
+ if (!tex) /* Texture creation failed due to GL_OUT_OF_MEMORY */
+ return NULL;
+
+- return glamor_create_fbo_from_tex(glamor_priv, w, h, format, tex, flag);
++ return glamor_create_fbo_from_tex(glamor_priv, w, h, format == GL_RED,
++ tex, flag);
+ }
+
+ /**
+diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h
+index a14aaf624..e70d349da 100644
+--- a/glamor/glamor_priv.h
++++ b/glamor/glamor_priv.h
+@@ -317,8 +317,7 @@ typedef struct glamor_pixmap_fbo {
+ GLuint fb; /**< GL FBO name */
+ int width; /**< width in pixels */
+ int height; /**< height in pixels */
+- GLenum format; /**< GL format used to create the texture. */
+- GLenum type; /**< GL type used to create the texture. */
++ Bool is_red;
+ } glamor_pixmap_fbo;
+
+ typedef struct glamor_pixmap_clipped_regions {
+@@ -533,7 +532,7 @@ glamor_pixmap_fbo *glamor_pixmap_detach_fbo(glamor_pixmap_private *
+ void glamor_pixmap_attach_fbo(PixmapPtr pixmap, glamor_pixmap_fbo *fbo);
+ glamor_pixmap_fbo *glamor_create_fbo_from_tex(glamor_screen_private *
+ glamor_priv, int w, int h,
+- GLenum format, GLint tex,
++ Bool is_red, GLint tex,
+ int flag);
+ glamor_pixmap_fbo *glamor_create_fbo(glamor_screen_private *glamor_priv, int w,
+ int h, GLenum format, int flag);
+@@ -549,14 +548,6 @@ static inline Bool glamor_picture_is_alpha(PicturePtr picture)
+ return picture->format == PICT_a1 || picture->format == PICT_a8;
+ }
+
+-/* Return whether 'fbo' is storing alpha bits in the red channel */
+-static inline Bool
+-glamor_fbo_red_is_alpha(glamor_screen_private *glamor_priv, glamor_pixmap_fbo *fbo)
+-{
+- /* True when the format is GL_RED (that can only happen when our one channel format is GL_RED */
+- return fbo->format == GL_RED;
+-}
+-
+ /* Return whether 'picture' is storing alpha bits in the red channel */
+ static inline Bool
+ glamor_picture_red_is_alpha(PicturePtr picture)
+diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c
+index d5737018f..6db6bfbc3 100644
+--- a/glamor/glamor_render.c
++++ b/glamor/glamor_render.c
+@@ -529,7 +529,7 @@ glamor_set_composite_texture(glamor_screen_private *glamor_priv, int unit,
+ * sometimes get zero bits in the R channel, which is harmless.
+ */
+ glamor_bind_texture(glamor_priv, GL_TEXTURE0 + unit, fbo,
+- glamor_fbo_red_is_alpha(glamor_priv, dest_priv->fbo));
++ dest_priv->fbo->is_red);
+ repeat_type = picture->repeatType;
+ switch (picture->repeatType) {
+ case RepeatNone:
+diff --git a/glamor/glamor_transfer.c b/glamor/glamor_transfer.c
+index 421ed3a5f..215752d7b 100644
+--- a/glamor/glamor_transfer.c
++++ b/glamor/glamor_transfer.c
+@@ -40,7 +40,7 @@ glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type)
+ break;
+ case 16:
+ if (priv->is_cbcr) {
+- *format = priv->fbo->format;
++ *format = GL_RG;
+ *type = GL_UNSIGNED_BYTE;
+ } else {
+ *format = GL_RGB;
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch
new file mode 100644
index 00000000..66d2877c
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch
@@ -0,0 +1,265 @@
+From 3c14a16e1b4277aa00a2b23d5758d99dc20ca819 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Tue, 26 Mar 2019 16:57:24 -0700
+Subject: [PATCH 6/8] glamor: Plumb the pixmap through fbo creation instead of
+ a "format"
+
+For GLES, we're going to need a lot more logic for picking the
+iformat/format/type of texture setup, so we'll want the pixmap's depth
+and is_cbcr flag.
+
+Upstream-Status: Backport
+Signed-off-by: Eric Anholt <eric@anholt.net>
+---
+ glamor/glamor.c | 20 +++++++-------------
+ glamor/glamor_fbo.c | 33 +++++++++++++++++++--------------
+ glamor/glamor_picture.c | 2 +-
+ glamor/glamor_priv.h | 12 ++++++------
+ 4 files changed, 33 insertions(+), 34 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index c36b6ea74..f618c2128 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -106,7 +106,6 @@ glamor_set_pixmap_texture(PixmapPtr pixmap, unsigned int tex)
+ glamor_pixmap_private *pixmap_priv;
+ glamor_screen_private *glamor_priv;
+ glamor_pixmap_fbo *fbo;
+- GLenum format;
+
+ glamor_priv = glamor_get_screen_private(screen);
+ pixmap_priv = glamor_get_pixmap_private(pixmap);
+@@ -116,9 +115,9 @@ glamor_set_pixmap_texture(PixmapPtr pixmap, unsigned int tex)
+ glamor_destroy_fbo(glamor_priv, fbo);
+ }
+
+- format = gl_iformat_for_pixmap(pixmap);
+- fbo = glamor_create_fbo_from_tex(glamor_priv, pixmap->drawable.width,
+- pixmap->drawable.height, format, tex, 0);
++ fbo = glamor_create_fbo_from_tex(glamor_priv, pixmap,
++ pixmap->drawable.width,
++ pixmap->drawable.height, tex, 0);
+
+ if (fbo == NULL) {
+ ErrorF("XXX fail to create fbo.\n");
+@@ -204,7 +203,6 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth,
+ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
+ glamor_pixmap_fbo *fbo = NULL;
+ int pitch;
+- GLenum format;
+
+ if (w > 32767 || h > 32767)
+ return NullPixmap;
+@@ -223,8 +221,6 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth,
+
+ pixmap_priv->is_cbcr = (usage == GLAMOR_CREATE_FORMAT_CBCR);
+
+- format = gl_iformat_for_pixmap(pixmap);
+-
+ pitch = (((w * pixmap->drawable.bitsPerPixel + 7) / 8) + 3) & ~3;
+ screen->ModifyPixmapHeader(pixmap, w, h, 0, 0, pitch, NULL);
+
+@@ -238,12 +234,12 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth,
+ glamor_check_fbo_size(glamor_priv, w, h))
+ {
+ glamor_init_pixmap_private_small(pixmap, pixmap_priv);
+- fbo = glamor_create_fbo(glamor_priv, w, h, format, usage);
++ fbo = glamor_create_fbo(glamor_priv, pixmap, w, h, usage);
+ } else {
+ int tile_size = glamor_priv->max_fbo_size;
+ DEBUGF("Create LARGE pixmap %p width %d height %d, tile size %d\n",
+ pixmap, w, h, tile_size);
+- fbo = glamor_create_fbo_array(glamor_priv, w, h, format, usage,
++ fbo = glamor_create_fbo_array(glamor_priv, pixmap, usage,
+ tile_size, tile_size, pixmap_priv);
+ }
+
+@@ -860,8 +856,7 @@ _glamor_fds_from_pixmap(ScreenPtr screen, PixmapPtr pixmap, int *fds,
+ switch (pixmap_priv->type) {
+ case GLAMOR_TEXTURE_DRM:
+ case GLAMOR_TEXTURE_ONLY:
+- if (!glamor_pixmap_ensure_fbo(pixmap, pixmap->drawable.depth == 30 ?
+- GL_RGB10_A2 : GL_RGBA, 0))
++ if (!glamor_pixmap_ensure_fbo(pixmap, 0))
+ return 0;
+
+ if (modifier) {
+@@ -937,8 +932,7 @@ glamor_name_from_pixmap(PixmapPtr pixmap, CARD16 *stride, CARD32 *size)
+ switch (pixmap_priv->type) {
+ case GLAMOR_TEXTURE_DRM:
+ case GLAMOR_TEXTURE_ONLY:
+- if (!glamor_pixmap_ensure_fbo(pixmap, pixmap->drawable.depth == 30 ?
+- GL_RGB10_A2 : GL_RGBA, 0))
++ if (!glamor_pixmap_ensure_fbo(pixmap, 0))
+ return -1;
+ return glamor_egl_fd_name_from_pixmap(pixmap->drawable.pScreen,
+ pixmap, stride, size);
+diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c
+index 58eb97bf4..75f7e2baa 100644
+--- a/glamor/glamor_fbo.c
++++ b/glamor/glamor_fbo.c
+@@ -95,8 +95,9 @@ glamor_pixmap_ensure_fb(glamor_screen_private *glamor_priv,
+
+ glamor_pixmap_fbo *
+ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+- int w, int h, Bool is_red, GLint tex, int flag)
++ PixmapPtr pixmap, int w, int h, GLint tex, int flag)
+ {
++ GLenum format = gl_iformat_for_pixmap(pixmap);
+ glamor_pixmap_fbo *fbo;
+
+ fbo = calloc(1, sizeof(*fbo));
+@@ -106,7 +107,7 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+ fbo->tex = tex;
+ fbo->width = w;
+ fbo->height = h;
+- fbo->is_red = is_red;
++ fbo->is_red = format == GL_RED;
+
+ if (flag != GLAMOR_CREATE_FBO_NO_FBO) {
+ if (glamor_pixmap_ensure_fb(glamor_priv, fbo) != 0) {
+@@ -120,13 +121,15 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+
+ static int
+ _glamor_create_tex(glamor_screen_private *glamor_priv,
+- int w, int h, GLenum format)
++ PixmapPtr pixmap, int w, int h)
+ {
++ GLenum iformat = gl_iformat_for_pixmap(pixmap);
++ GLenum format = iformat;
+ unsigned int tex;
+- GLenum iformat = format;
+
+ if (format == GL_RGB10_A2)
+ format = GL_RGBA;
++
+ glamor_make_current(glamor_priv);
+ glGenTextures(1, &tex);
+ glBindTexture(GL_TEXTURE_2D, tex);
+@@ -156,14 +159,14 @@ _glamor_create_tex(glamor_screen_private *glamor_priv,
+
+ glamor_pixmap_fbo *
+ glamor_create_fbo(glamor_screen_private *glamor_priv,
+- int w, int h, GLenum format, int flag)
++ PixmapPtr pixmap, int w, int h, int flag)
+ {
+- GLint tex = _glamor_create_tex(glamor_priv, w, h, format);
++ GLint tex = _glamor_create_tex(glamor_priv, pixmap, w, h);
+
+ if (!tex) /* Texture creation failed due to GL_OUT_OF_MEMORY */
+ return NULL;
+
+- return glamor_create_fbo_from_tex(glamor_priv, w, h, format == GL_RED,
++ return glamor_create_fbo_from_tex(glamor_priv, pixmap, w, h,
+ tex, flag);
+ }
+
+@@ -173,10 +176,12 @@ glamor_create_fbo(glamor_screen_private *glamor_priv,
+ */
+ glamor_pixmap_fbo *
+ glamor_create_fbo_array(glamor_screen_private *glamor_priv,
+- int w, int h, GLenum format, int flag,
++ PixmapPtr pixmap, int flag,
+ int block_w, int block_h,
+ glamor_pixmap_private *priv)
+ {
++ int w = pixmap->drawable.width;
++ int h = pixmap->drawable.height;
+ int block_wcnt;
+ int block_hcnt;
+ glamor_pixmap_fbo **fbo_array;
+@@ -216,8 +221,8 @@ glamor_create_fbo_array(glamor_screen_private *glamor_priv,
+ box_array[i * block_wcnt + j].x2 - box_array[i * block_wcnt +
+ j].x1;
+ fbo_array[i * block_wcnt + j] = glamor_create_fbo(glamor_priv,
++ pixmap,
+ fbo_w, fbo_h,
+- format,
+ GLAMOR_CREATE_PIXMAP_FIXUP);
+ if (fbo_array[i * block_wcnt + j] == NULL)
+ goto cleanup;
+@@ -315,7 +320,7 @@ glamor_pixmap_destroy_fbo(PixmapPtr pixmap)
+ }
+
+ Bool
+-glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag)
++glamor_pixmap_ensure_fbo(PixmapPtr pixmap, int flag)
+ {
+ glamor_screen_private *glamor_priv;
+ glamor_pixmap_private *pixmap_priv;
+@@ -325,8 +330,8 @@ glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag)
+ pixmap_priv = glamor_get_pixmap_private(pixmap);
+ if (pixmap_priv->fbo == NULL) {
+
+- fbo = glamor_create_fbo(glamor_priv, pixmap->drawable.width,
+- pixmap->drawable.height, format, flag);
++ fbo = glamor_create_fbo(glamor_priv, pixmap, pixmap->drawable.width,
++ pixmap->drawable.height, flag);
+ if (fbo == NULL)
+ return FALSE;
+
+@@ -336,8 +341,8 @@ glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag)
+ /* We do have a fbo, but it may lack of fb or tex. */
+ if (!pixmap_priv->fbo->tex)
+ pixmap_priv->fbo->tex =
+- _glamor_create_tex(glamor_priv, pixmap->drawable.width,
+- pixmap->drawable.height, format);
++ _glamor_create_tex(glamor_priv, pixmap, pixmap->drawable.width,
++ pixmap->drawable.height);
+
+ if (flag != GLAMOR_CREATE_FBO_NO_FBO && pixmap_priv->fbo->fb == 0)
+ if (glamor_pixmap_ensure_fb(glamor_priv, pixmap_priv->fbo) != 0)
+diff --git a/glamor/glamor_picture.c b/glamor/glamor_picture.c
+index 685d8d618..e6d387d42 100644
+--- a/glamor/glamor_picture.c
++++ b/glamor/glamor_picture.c
+@@ -340,7 +340,7 @@ glamor_upload_picture_to_texture(PicturePtr picture)
+ else
+ iformat = format;
+
+- if (!glamor_pixmap_ensure_fbo(pixmap, iformat, GLAMOR_CREATE_FBO_NO_FBO)) {
++ if (!glamor_pixmap_ensure_fbo(pixmap, GLAMOR_CREATE_FBO_NO_FBO)) {
+ ret = FALSE;
+ goto fail;
+ }
+diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h
+index e70d349da..a87caec9b 100644
+--- a/glamor/glamor_priv.h
++++ b/glamor/glamor_priv.h
+@@ -531,11 +531,11 @@ glamor_pixmap_fbo *glamor_pixmap_detach_fbo(glamor_pixmap_private *
+ pixmap_priv);
+ void glamor_pixmap_attach_fbo(PixmapPtr pixmap, glamor_pixmap_fbo *fbo);
+ glamor_pixmap_fbo *glamor_create_fbo_from_tex(glamor_screen_private *
+- glamor_priv, int w, int h,
+- Bool is_red, GLint tex,
++ glamor_priv, PixmapPtr pixmap,
++ int w, int h, GLint tex,
+ int flag);
+-glamor_pixmap_fbo *glamor_create_fbo(glamor_screen_private *glamor_priv, int w,
+- int h, GLenum format, int flag);
++glamor_pixmap_fbo *glamor_create_fbo(glamor_screen_private *glamor_priv,
++ PixmapPtr pixmap, int w, int h, int flag);
+ void glamor_destroy_fbo(glamor_screen_private *glamor_priv,
+ glamor_pixmap_fbo *fbo);
+ void glamor_pixmap_destroy_fbo(PixmapPtr pixmap);
+@@ -563,7 +563,7 @@ void glamor_bind_texture(glamor_screen_private *glamor_priv,
+ Bool destination_red);
+
+ glamor_pixmap_fbo *glamor_create_fbo_array(glamor_screen_private *glamor_priv,
+- int w, int h, GLenum format,
++ PixmapPtr pixmap,
+ int flag, int block_w, int block_h,
+ glamor_pixmap_private *);
+
+@@ -673,7 +673,7 @@ glamor_put_vbo_space(ScreenPtr screen);
+ * the fbo has valid texture and attach to a valid fb.
+ * If the fbo already has a valid glfbo then do nothing.
+ */
+-Bool glamor_pixmap_ensure_fbo(PixmapPtr pixmap, GLenum format, int flag);
++Bool glamor_pixmap_ensure_fbo(PixmapPtr pixmap, int flag);
+
+ glamor_pixmap_clipped_regions *
+ glamor_compute_clipped_regions(PixmapPtr pixmap,
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch
new file mode 100644
index 00000000..f2947f32
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch
@@ -0,0 +1,287 @@
+From 3a03576d672d24f19fdb930b08afde9a3a3f55da Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Tue, 26 Mar 2019 15:02:38 -0700
+Subject: [PATCH 7/8] glamor: Switch the gl_flavor to a boolean is_gles.
+
+There are only 2 flavors we are distinguishing -- GL versions are
+handled separately.
+
+Upstream-Status: Backport
+Signed-off-by: Eric Anholt <eric@anholt.net>
+---
+ glamor/glamor.c | 20 +++++++++-----------
+ glamor/glamor_picture.c | 22 +++++++++++-----------
+ glamor/glamor_pixmap.c | 2 +-
+ glamor/glamor_priv.h | 7 +------
+ glamor/glamor_program.c | 2 +-
+ glamor/glamor_render.c | 2 +-
+ glamor/glamor_utils.h | 6 +++---
+ 7 files changed, 27 insertions(+), 34 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index f618c2128..019edbbb1 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -505,10 +505,8 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+
+ glamor_make_current(glamor_priv);
+
+- if (epoxy_is_desktop_gl())
+- glamor_priv->gl_flavor = GLAMOR_GL_DESKTOP;
+- else
+- glamor_priv->gl_flavor = GLAMOR_GL_ES2;
++ if (!epoxy_is_desktop_gl())
++ glamor_priv->is_gles = TRUE;
+
+ gl_version = epoxy_gl_version();
+
+@@ -540,7 +538,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+ }
+ glamor_priv->glsl_version = glsl_major * 100 + glsl_minor;
+
+- if (glamor_priv->gl_flavor == GLAMOR_GL_ES2) {
++ if (glamor_priv->is_gles) {
+ /* Force us back to the base version of our programs on an ES
+ * context, anyway. Basically glamor only uses desktop 1.20
+ * or 1.30 currently. 1.30's new features are also present in
+@@ -564,7 +562,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+ * have support for it, with most of the ones lacking it being on
+ * Windows with Intel 4-series (G45) graphics or older.
+ */
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ if (gl_version < 21) {
+ ErrorF("Require OpenGL version 2.1 or later.\n");
+ goto fail;
+@@ -610,7 +608,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+ }
+
+ glamor_priv->has_rw_pbo = FALSE;
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP)
++ if (!glamor_priv->is_gles)
+ glamor_priv->has_rw_pbo = TRUE;
+
+ glamor_priv->has_khr_debug = epoxy_has_gl_extension("GL_KHR_debug");
+@@ -628,11 +626,11 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+ glamor_priv->has_nv_texture_barrier =
+ epoxy_has_gl_extension("GL_NV_texture_barrier");
+ glamor_priv->has_unpack_subimage =
+- glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP ||
++ !glamor_priv->is_gles ||
+ epoxy_gl_version() >= 30 ||
+ epoxy_has_gl_extension("GL_EXT_unpack_subimage");
+ glamor_priv->has_pack_subimage =
+- glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP ||
++ !glamor_priv->is_gles ||
+ epoxy_gl_version() >= 30 ||
+ epoxy_has_gl_extension("GL_NV_pack_subimage");
+ glamor_priv->has_dual_blend =
+@@ -643,7 +641,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+
+ glamor_setup_debug_output(screen);
+
+- glamor_priv->use_quads = (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) &&
++ glamor_priv->use_quads = !glamor_priv->is_gles &&
+ !glamor_priv->is_core_profile;
+
+ /* Driver-specific hack: Avoid using GL_QUADS on VC4, where
+@@ -665,7 +663,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+
+ glamor_priv->has_texture_swizzle =
+ (epoxy_has_gl_extension("GL_ARB_texture_swizzle") ||
+- (glamor_priv->gl_flavor != GLAMOR_GL_DESKTOP && gl_version >= 30));
++ (glamor_priv->is_gles && gl_version >= 30));
+
+ glamor_priv->one_channel_format = GL_ALPHA;
+ if (epoxy_has_gl_extension("GL_ARB_texture_rg") &&
+diff --git a/glamor/glamor_picture.c b/glamor/glamor_picture.c
+index e6d387d42..ed2decc83 100644
+--- a/glamor/glamor_picture.c
++++ b/glamor/glamor_picture.c
+@@ -90,7 +90,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_b8g8r8x8:
+ case PICT_b8g8r8a8:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_BGRA;
+ *tex_type = GL_UNSIGNED_INT_8_8_8_8;
+ } else {
+@@ -109,7 +109,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_x8r8g8b8:
+ case PICT_a8r8g8b8:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_BGRA;
+ *tex_type = GL_UNSIGNED_INT_8_8_8_8_REV;
+ } else {
+@@ -128,7 +128,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+ case PICT_x8b8g8r8:
+ case PICT_a8b8g8r8:
+ *tex_format = GL_RGBA;
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_type = GL_UNSIGNED_INT_8_8_8_8_REV;
+ } else {
+ *tex_format = GL_RGBA;
+@@ -141,7 +141,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_x2r10g10b10:
+ case PICT_a2r10g10b10:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_BGRA;
+ *tex_type = GL_UNSIGNED_INT_2_10_10_10_REV;
+ } else {
+@@ -151,7 +151,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_x2b10g10r10:
+ case PICT_a2b10g10r10:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_RGBA;
+ *tex_type = GL_UNSIGNED_INT_2_10_10_10_REV;
+ } else {
+@@ -165,7 +165,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+ break;
+ case PICT_b5g6r5:
+ *tex_format = GL_RGB;
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_type = GL_UNSIGNED_SHORT_5_6_5_REV;
+ } else {
+ *tex_type = GL_UNSIGNED_SHORT_5_6_5;
+@@ -177,7 +177,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+ case PICT_x1b5g5r5:
+ case PICT_a1b5g5r5:
+ *tex_format = GL_RGBA;
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_type = GL_UNSIGNED_SHORT_1_5_5_5_REV;
+ } else {
+ return FALSE;
+@@ -186,7 +186,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_x1r5g5b5:
+ case PICT_a1r5g5b5:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_BGRA;
+ *tex_type = GL_UNSIGNED_SHORT_1_5_5_5_REV;
+ } else {
+@@ -201,7 +201,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_x4r4g4b4:
+ case PICT_a4r4g4b4:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_BGRA;
+ *tex_type = GL_UNSIGNED_SHORT_4_4_4_4_REV;
+ } else {
+@@ -213,7 +213,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ case PICT_x4b4g4r4:
+ case PICT_a4b4g4r4:
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP) {
++ if (!glamor_priv->is_gles) {
+ *tex_format = GL_RGBA;
+ *tex_type = GL_UNSIGNED_SHORT_4_4_4_4_REV;
+ } else {
+@@ -335,7 +335,7 @@ glamor_upload_picture_to_texture(PicturePtr picture)
+ stride = pixman_image_get_stride(converted_image);
+ }
+
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP)
++ if (!glamor_priv->is_gles)
+ iformat = gl_iformat_for_pixmap(pixmap);
+ else
+ iformat = format;
+diff --git a/glamor/glamor_pixmap.c b/glamor/glamor_pixmap.c
+index 166bde509..9aa169cdc 100644
+--- a/glamor/glamor_pixmap.c
++++ b/glamor/glamor_pixmap.c
+@@ -124,7 +124,7 @@ glamor_set_alu(ScreenPtr screen, unsigned char alu)
+ {
+ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
+
+- if (glamor_priv->gl_flavor == GLAMOR_GL_ES2) {
++ if (glamor_priv->is_gles) {
+ if (alu != GXcopy)
+ return FALSE;
+ else
+diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h
+index a87caec9b..8e8433ff3 100644
+--- a/glamor/glamor_priv.h
++++ b/glamor/glamor_priv.h
+@@ -155,11 +155,6 @@ enum gradient_shader {
+ struct glamor_screen_private;
+ struct glamor_pixmap_private;
+
+-enum glamor_gl_flavor {
+- GLAMOR_GL_DESKTOP, // OPENGL API
+- GLAMOR_GL_ES2 // OPENGL ES2.0 API
+-};
+-
+ #define GLAMOR_COMPOSITE_VBO_VERT_CNT (64*1024)
+
+ struct glamor_saved_procs {
+@@ -185,7 +180,7 @@ struct glamor_saved_procs {
+ };
+
+ typedef struct glamor_screen_private {
+- enum glamor_gl_flavor gl_flavor;
++ Bool is_gles;
+ int glsl_version;
+ Bool has_pack_invert;
+ Bool has_fbo_blit;
+diff --git a/glamor/glamor_program.c b/glamor/glamor_program.c
+index 830deb38b..b0a9d07a4 100644
+--- a/glamor/glamor_program.c
++++ b/glamor/glamor_program.c
+@@ -459,7 +459,7 @@ glamor_set_blend(CARD8 op, glamor_program_alpha alpha, PicturePtr dst)
+ break;
+ }
+
+- if (glamor_priv->gl_flavor != GLAMOR_GL_ES2)
++ if (!glamor_priv->is_gles)
+ glDisable(GL_COLOR_LOGIC_OP);
+
+ if (op == PictOpSrc)
+diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c
+index 6db6bfbc3..d3859e4d1 100644
+--- a/glamor/glamor_render.c
++++ b/glamor/glamor_render.c
+@@ -1091,7 +1091,7 @@ glamor_composite_set_shader_blend(glamor_screen_private *glamor_priv,
+ }
+ }
+
+- if (glamor_priv->gl_flavor != GLAMOR_GL_ES2)
++ if (!glamor_priv->is_gles)
+ glDisable(GL_COLOR_LOGIC_OP);
+
+ if (op_info->source_blend == GL_ONE && op_info->dest_blend == GL_ZERO) {
+diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h
+index 8a147ca7e..cbb808294 100644
+--- a/glamor/glamor_utils.h
++++ b/glamor/glamor_utils.h
+@@ -615,13 +615,13 @@ gl_iformat_for_pixmap(PixmapPtr pixmap)
+ glamor_get_screen_private((pixmap)->drawable.pScreen);
+ glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap);
+
+- if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP &&
++ if (!glamor_priv->is_gles &&
+ ((pixmap)->drawable.depth == 1 || (pixmap)->drawable.depth == 8)) {
+ return glamor_priv->one_channel_format;
+- } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP &&
++ } else if (!glamor_priv->is_gles &&
+ (pixmap)->drawable.depth == 16 && pixmap_priv->is_cbcr) {
+ return GL_RG;
+- } else if (glamor_priv->gl_flavor == GLAMOR_GL_DESKTOP &&
++ } else if (!glamor_priv->is_gles &&
+ (pixmap)->drawable.depth == 30) {
+ return GL_RGB10_A2;
+ } else {
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch
new file mode 100644
index 00000000..dd82340a
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch
@@ -0,0 +1,669 @@
+From b75296bee6ab3578f3a13cfb6de5d77ec02b9047 Mon Sep 17 00:00:00 2001
+From: Eric Anholt <eric@anholt.net>
+Date: Tue, 26 Mar 2019 15:10:49 -0700
+Subject: [PATCH 8/8] glamor: Introduce a central place for our pixmap
+ format/type handling.
+
+We had various helper functions trying to come up with the
+internalformat/format/type/render formats for pixmaps, and it's much
+nicer to just detect what those should be once at startup. This gives
+us a chance to do the right thing for GLES.
+
+It also, notably, fixes our format/type for depth 15 and 16 setup for
+desktop GL, so that we actually allocate 16bpp (GL_RGB/565) on most
+drivers instead of 32bpp (GL_RGB/UBYTE).
+
+GLES still has regressions over desktop (2 regressions in llvmpipe
+XTS, many in rendercheck), but I think this is a good baseline.
+
+Upstream-Status: Backport
+Signed-off-by: Eric Anholt <eric@anholt.net>
+---
+ glamor/glamor.c | 167 ++++++++++++++++++++++++++++++++++++--
+ glamor/glamor_fbo.c | 16 ++--
+ glamor/glamor_picture.c | 7 +-
+ glamor/glamor_priv.h | 22 ++++-
+ glamor/glamor_render.c | 7 +-
+ glamor/glamor_spans.c | 14 ++--
+ glamor/glamor_transfer.c | 56 ++-----------
+ glamor/glamor_transfer.h | 3 -
+ glamor/glamor_transform.c | 5 +-
+ glamor/glamor_utils.h | 57 -------------
+ 10 files changed, 209 insertions(+), 145 deletions(-)
+
+diff --git a/glamor/glamor.c b/glamor/glamor.c
+index 019edbbb1..3450113e0 100644
+--- a/glamor/glamor.c
++++ b/glamor/glamor.c
+@@ -212,7 +212,7 @@ glamor_create_pixmap(ScreenPtr screen, int w, int h, int depth,
+ w <= glamor_priv->glyph_max_dim &&
+ h <= glamor_priv->glyph_max_dim)
+ || (w == 0 && h == 0)
+- || !glamor_check_pixmap_fbo_depth(depth)))
++ || !glamor_priv->formats[depth].format))
+ return fbCreatePixmap(screen, w, h, depth, usage);
+ else
+ pixmap = fbCreatePixmap(screen, 0, 0, depth, usage);
+@@ -440,6 +440,165 @@ glamor_setup_debug_output(ScreenPtr screen)
+ glEnable(GL_DEBUG_OUTPUT);
+ }
+
++const struct glamor_format *
++glamor_format_for_pixmap(PixmapPtr pixmap)
++{
++ ScreenPtr pScreen = pixmap->drawable.pScreen;
++ glamor_screen_private *glamor_priv = glamor_get_screen_private(pScreen);
++ glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap);
++
++ if (pixmap_priv->is_cbcr)
++ return &glamor_priv->cbcr_format;
++ else
++ return &glamor_priv->formats[pixmap->drawable.depth];
++}
++
++static void
++glamor_add_format(ScreenPtr screen, int depth, CARD32 render_format,
++ GLenum internalformat, GLenum format, GLenum type)
++{
++ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
++ struct glamor_format *f = &glamor_priv->formats[depth];
++
++ /* If we're trying to run on GLES, make sure that we get the read
++ * formats that we're expecting, since glamor_transfer relies on
++ * them matching to get data back out. To avoid this limitation, we
++ * would need to have a more general glReadPixels() path in
++ * glamor_transfer that re-encoded the bits to the pixel format that
++ * we intended after.
++ *
++ * Note that we can't just create a pixmap because we're in
++ * screeninit.
++ */
++ if (glamor_priv->is_gles) {
++ unsigned fbo, tex;
++ int read_format, read_type;
++ GLenum status;
++
++ glGenTextures(1, &tex);
++ glBindTexture(GL_TEXTURE_2D, tex);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
++ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
++ glTexImage2D(GL_TEXTURE_2D, 0, internalformat, 1, 1, 0,
++ format, type, NULL);
++
++ glGenFramebuffers(1, &fbo);
++ glBindFramebuffer(GL_FRAMEBUFFER, fbo);
++ glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0,
++ GL_TEXTURE_2D, tex, 0);
++ status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
++ if (status != GL_FRAMEBUFFER_COMPLETE) {
++ ErrorF("glamor: Test fbo for depth %d incomplete. "
++ "Falling back to software.\n", depth);
++ glDeleteTextures(1, &tex);
++ glDeleteFramebuffers(1, &fbo);
++ return;
++ }
++
++ glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_FORMAT, &read_format);
++ glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_TYPE, &read_type);
++
++ glDeleteTextures(1, &tex);
++ glDeleteFramebuffers(1, &fbo);
++
++ if (format != read_format || type != read_type) {
++ ErrorF("glamor: Implementation returned 0x%x/0x%x read format/type "
++ "for depth %d, expected 0x%x/0x%x. "
++ "Falling back to software.\n",
++ read_format, read_type, depth, format, type);
++ return;
++ }
++ }
++
++ f->depth = depth;
++ f->render_format = render_format;
++ f->internalformat = internalformat;
++ f->format = format;
++ f->type = type;
++}
++
++/* Set up the GL format/types that glamor will use for the various depths
++ *
++ * X11's pixel data doesn't have channels, but to store our data in GL
++ * we have to pick some sort of format to move X11 pixel data in and
++ * out with in glamor_transfer.c. For X11 core operations, other than
++ * GL logic ops (non-GXcopy GC ops) what the driver chooses internally
++ * doesn't matter as long as it doesn't drop any bits (we expect them
++ * to generally expand, if anything). For Render, we can expect
++ * clients to tend to render with PictFormats matching our channel
++ * layouts here since ultimately X11 pixels tend to end up on the
++ * screen. The render implementation will fall back to fb if the
++ * channels don't match.
++ *
++ * Note that these formats don't affect what glamor_egl.c or
++ * Xwayland's EGL layer choose for surfaces exposed through DRI or
++ * scanout. For now, those layers need to match what we're choosing
++ * here, or channels will end up swizzled around. Similarly, the
++ * driver's visual masks also need to match what we're doing here.
++ */
++static void
++glamor_setup_formats(ScreenPtr screen)
++{
++ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
++
++ /* Prefer r8 textures since they're required by GLES3 and core,
++ * only falling back to a8 if we can't do them.
++ */
++ if (glamor_priv->is_gles || epoxy_has_gl_extension("GL_ARB_texture_rg")) {
++ glamor_add_format(screen, 8, PICT_a8,
++ GL_R8, GL_RED, GL_UNSIGNED_BYTE);
++ } else {
++ glamor_add_format(screen, 8, PICT_a8,
++ GL_ALPHA, GL_ALPHA, GL_UNSIGNED_BYTE);
++ }
++
++ if (glamor_priv->is_gles) {
++ /* For 15bpp, GLES supports format/type RGBA/5551, rather than
++ * bgra/1555_rev. GL_EXT_bgra lets the impl say the color
++ * read format/type is bgra/1555 even if we had to create it
++ * with rgba/5551, with Mesa does. That means we can't use
++ * the same format/type for TexSubImage and readpixels.
++ *
++ * Instead, just store 16 bits using the trusted 565 path, and
++ * disable render accel for now.
++ */
++ glamor_add_format(screen, 15, PICT_x1r5g5b5,
++ GL_RGB5_A1, GL_RGBA, GL_UNSIGNED_SHORT_5_5_5_1);
++ } else {
++ glamor_add_format(screen, 15, PICT_x1r5g5b5,
++ GL_RGBA, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV);
++ }
++
++ glamor_add_format(screen, 16, PICT_r5g6b5,
++ GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5);
++
++ if (glamor_priv->is_gles) {
++ assert(X_BYTE_ORDER == X_LITTLE_ENDIAN);
++ glamor_add_format(screen, 24, PICT_x8b8g8r8,
++ GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE);
++ glamor_add_format(screen, 32, PICT_a8b8g8r8,
++ GL_RGBA8, GL_RGBA, GL_UNSIGNED_BYTE);
++ } else {
++ glamor_add_format(screen, 24, PICT_x8r8g8b8,
++ GL_RGBA, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV);
++ glamor_add_format(screen, 32, PICT_a8r8g8b8,
++ GL_RGBA, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV);
++ }
++
++ if (glamor_priv->is_gles) {
++ glamor_add_format(screen, 30, PICT_x2b10g10r10,
++ GL_RGB10_A2, GL_RGBA, GL_UNSIGNED_INT_2_10_10_10_REV);
++ } else {
++ glamor_add_format(screen, 30, PICT_x2r10g10b10,
++ GL_RGB10_A2, GL_BGRA, GL_UNSIGNED_INT_2_10_10_10_REV);
++ }
++
++ glamor_priv->cbcr_format.depth = 16;
++ glamor_priv->cbcr_format.internalformat = GL_RG8;
++ glamor_priv->cbcr_format.format = GL_RG;
++ glamor_priv->cbcr_format.type = GL_UNSIGNED_BYTE;
++}
++
+ /** Set up glamor for an already-configured GL context. */
+ Bool
+ glamor_init(ScreenPtr screen, unsigned int flags)
+@@ -665,11 +824,7 @@ glamor_init(ScreenPtr screen, unsigned int flags)
+ (epoxy_has_gl_extension("GL_ARB_texture_swizzle") ||
+ (glamor_priv->is_gles && gl_version >= 30));
+
+- glamor_priv->one_channel_format = GL_ALPHA;
+- if (epoxy_has_gl_extension("GL_ARB_texture_rg") &&
+- glamor_priv->has_texture_swizzle) {
+- glamor_priv->one_channel_format = GL_RED;
+- }
++ glamor_setup_formats(screen);
+
+ glamor_set_debug_level(&glamor_debug_level);
+
+diff --git a/glamor/glamor_fbo.c b/glamor/glamor_fbo.c
+index 75f7e2baa..dfb3f754d 100644
+--- a/glamor/glamor_fbo.c
++++ b/glamor/glamor_fbo.c
+@@ -97,7 +97,7 @@ glamor_pixmap_fbo *
+ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+ PixmapPtr pixmap, int w, int h, GLint tex, int flag)
+ {
+- GLenum format = gl_iformat_for_pixmap(pixmap);
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+ glamor_pixmap_fbo *fbo;
+
+ fbo = calloc(1, sizeof(*fbo));
+@@ -107,7 +107,7 @@ glamor_create_fbo_from_tex(glamor_screen_private *glamor_priv,
+ fbo->tex = tex;
+ fbo->width = w;
+ fbo->height = h;
+- fbo->is_red = format == GL_RED;
++ fbo->is_red = f->format == GL_RED;
+
+ if (flag != GLAMOR_CREATE_FBO_NO_FBO) {
+ if (glamor_pixmap_ensure_fb(glamor_priv, fbo) != 0) {
+@@ -123,23 +123,19 @@ static int
+ _glamor_create_tex(glamor_screen_private *glamor_priv,
+ PixmapPtr pixmap, int w, int h)
+ {
+- GLenum iformat = gl_iformat_for_pixmap(pixmap);
+- GLenum format = iformat;
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+ unsigned int tex;
+
+- if (format == GL_RGB10_A2)
+- format = GL_RGBA;
+-
+ glamor_make_current(glamor_priv);
+ glGenTextures(1, &tex);
+ glBindTexture(GL_TEXTURE_2D, tex);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
+- if (format == glamor_priv->one_channel_format && format == GL_RED)
++ if (f->format == GL_RED)
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_SWIZZLE_A, GL_RED);
+ glamor_priv->suppress_gl_out_of_memory_logging = true;
+- glTexImage2D(GL_TEXTURE_2D, 0, iformat, w, h, 0,
+- format, GL_UNSIGNED_BYTE, NULL);
++ glTexImage2D(GL_TEXTURE_2D, 0, f->internalformat, w, h, 0,
++ f->format, f->type, NULL);
+ glamor_priv->suppress_gl_out_of_memory_logging = false;
+
+ if (glGetError() == GL_OUT_OF_MEMORY) {
+diff --git a/glamor/glamor_picture.c b/glamor/glamor_picture.c
+index ed2decc83..33b3bebd9 100644
+--- a/glamor/glamor_picture.c
++++ b/glamor/glamor_picture.c
+@@ -83,7 +83,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+
+ switch (format) {
+ case PICT_a1:
+- *tex_format = glamor_priv->one_channel_format;
++ *tex_format = glamor_priv->formats[1].format;
+ *tex_type = GL_UNSIGNED_BYTE;
+ *temp_format = PICT_a8;
+ break;
+@@ -195,7 +195,7 @@ glamor_get_tex_format_type_from_pictformat(ScreenPtr pScreen,
+ break;
+
+ case PICT_a8:
+- *tex_format = glamor_priv->one_channel_format;
++ *tex_format = glamor_priv->formats[8].format;
+ *tex_type = GL_UNSIGNED_BYTE;
+ break;
+
+@@ -286,6 +286,7 @@ glamor_upload_picture_to_texture(PicturePtr picture)
+ Bool ret = TRUE;
+ Bool needs_swizzle;
+ pixman_image_t *converted_image = NULL;
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+
+ assert(glamor_pixmap_is_memory(pixmap));
+ assert(!pixmap_priv->fbo);
+@@ -336,7 +337,7 @@ glamor_upload_picture_to_texture(PicturePtr picture)
+ }
+
+ if (!glamor_priv->is_gles)
+- iformat = gl_iformat_for_pixmap(pixmap);
++ iformat = f->internalformat;
+ else
+ iformat = format;
+
+diff --git a/glamor/glamor_priv.h b/glamor/glamor_priv.h
+index 8e8433ff3..b8e2b932e 100644
+--- a/glamor/glamor_priv.h
++++ b/glamor/glamor_priv.h
+@@ -157,6 +157,21 @@ struct glamor_pixmap_private;
+
+ #define GLAMOR_COMPOSITE_VBO_VERT_CNT (64*1024)
+
++struct glamor_format {
++ /** X Server's "depth" value */
++ int depth;
++ /** GL internalformat for creating textures of this type */
++ GLenum internalformat;
++ /** GL format transferring pixels in/out of textures of this type. */
++ GLenum format;
++ /** GL type transferring pixels in/out of textures of this type. */
++ GLenum type;
++ /* Render PICT_* matching GL's channel layout for pixels
++ * transferred using format/type.
++ */
++ CARD32 render_format;
++};
++
+ struct glamor_saved_procs {
+ CloseScreenProcPtr close_screen;
+ CreateGCProcPtr create_gc;
+@@ -199,7 +214,8 @@ typedef struct glamor_screen_private {
+ Bool can_copyplane;
+ int max_fbo_size;
+
+- GLuint one_channel_format;
++ struct glamor_format formats[33];
++ struct glamor_format cbcr_format;
+
+ /* glamor point shader */
+ glamor_program point_prog;
+@@ -537,6 +553,8 @@ void glamor_pixmap_destroy_fbo(PixmapPtr pixmap);
+ Bool glamor_pixmap_fbo_fixup(ScreenPtr screen, PixmapPtr pixmap);
+ void glamor_pixmap_clear_fbo(glamor_screen_private *glamor_priv, glamor_pixmap_fbo *fbo);
+
++const struct glamor_format *glamor_format_for_pixmap(PixmapPtr pixmap);
++
+ /* Return whether 'picture' is alpha-only */
+ static inline Bool glamor_picture_is_alpha(PicturePtr picture)
+ {
+@@ -549,7 +567,7 @@ glamor_picture_red_is_alpha(PicturePtr picture)
+ {
+ /* True when the picture is alpha only and the screen is using GL_RED for alpha pictures */
+ return glamor_picture_is_alpha(picture) &&
+- glamor_get_screen_private(picture->pDrawable->pScreen)->one_channel_format == GL_RED;
++ glamor_get_screen_private(picture->pDrawable->pScreen)->formats[8].format == GL_RED;
+ }
+
+ void glamor_bind_texture(glamor_screen_private *glamor_priv,
+diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c
+index d3859e4d1..a8dc3924b 100644
+--- a/glamor/glamor_render.c
++++ b/glamor/glamor_render.c
+@@ -772,12 +772,15 @@ static Bool
+ glamor_render_format_is_supported(PicturePtr picture)
+ {
+ PictFormatShort storage_format;
++ glamor_screen_private *glamor_priv;
+
+ /* Source-only pictures should always work */
+ if (!picture->pDrawable)
+ return TRUE;
+
+- storage_format = format_for_depth(picture->pDrawable->depth);
++ glamor_priv = glamor_get_screen_private(picture->pDrawable->pScreen);
++ storage_format =
++ glamor_priv->formats[picture->pDrawable->depth].render_format;
+
+ switch (picture->format) {
+ case PICT_x2r10g10b10:
+@@ -898,7 +901,7 @@ glamor_composite_choose_shader(CARD8 op,
+ }
+
+ if (dest_pixmap->drawable.bitsPerPixel <= 8 &&
+- glamor_priv->one_channel_format == GL_RED) {
++ glamor_priv->formats[8].format == GL_RED) {
+ key.dest_swizzle = SHADER_DEST_SWIZZLE_ALPHA_TO_RED;
+ } else {
+ key.dest_swizzle = SHADER_DEST_SWIZZLE_DEFAULT;
+diff --git a/glamor/glamor_spans.c b/glamor/glamor_spans.c
+index b3c028d67..b5f297d2f 100644
+--- a/glamor/glamor_spans.c
++++ b/glamor/glamor_spans.c
+@@ -187,9 +187,8 @@ glamor_get_spans_gl(DrawablePtr drawable, int wmax,
+ int box_index;
+ int n;
+ char *d;
+- GLenum type;
+- GLenum format;
+ int off_x, off_y;
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+
+ pixmap_priv = glamor_get_pixmap_private(pixmap);
+ if (!GLAMOR_PIXMAP_PRIV_HAS_FBO(pixmap_priv))
+@@ -197,8 +196,6 @@ glamor_get_spans_gl(DrawablePtr drawable, int wmax,
+
+ glamor_get_drawable_deltas(drawable, pixmap, &off_x, &off_y);
+
+- glamor_format_for_pixmap(pixmap, &format, &type);
+-
+ glamor_make_current(glamor_priv);
+
+ glamor_pixmap_loop(pixmap_priv, box_index) {
+@@ -234,7 +231,8 @@ glamor_get_spans_gl(DrawablePtr drawable, int wmax,
+ if (y >= box->y2)
+ continue;
+
+- glReadPixels(x1 - box->x1, y - box->y1, x2 - x1, 1, format, type, l);
++ glReadPixels(x1 - box->x1, y - box->y1, x2 - x1, 1,
++ f->format, f->type, l);
+ }
+ }
+
+@@ -269,11 +267,10 @@ glamor_set_spans_gl(DrawablePtr drawable, GCPtr gc, char *src,
+ glamor_screen_private *glamor_priv = glamor_get_screen_private(screen);
+ PixmapPtr pixmap = glamor_get_drawable_pixmap(drawable);
+ glamor_pixmap_private *pixmap_priv;
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+ int box_index;
+ int n;
+ char *s;
+- GLenum type;
+- GLenum format;
+ int off_x, off_y;
+
+ pixmap_priv = glamor_get_pixmap_private(pixmap);
+@@ -287,7 +284,6 @@ glamor_set_spans_gl(DrawablePtr drawable, GCPtr gc, char *src,
+ goto bail;
+
+ glamor_get_drawable_deltas(drawable, pixmap, &off_x, &off_y);
+- glamor_format_for_pixmap(pixmap, &format, &type);
+
+ glamor_make_current(glamor_priv);
+
+@@ -348,7 +344,7 @@ glamor_set_spans_gl(DrawablePtr drawable, GCPtr gc, char *src,
+
+ glTexSubImage2D(GL_TEXTURE_2D, 0,
+ x1 - box->x1, y1 - box->y1, x2 - x1, 1,
+- format, type,
++ f->format, f->type,
+ l);
+ }
+ s += PixmapBytePad(w, drawable->depth);
+diff --git a/glamor/glamor_transfer.c b/glamor/glamor_transfer.c
+index 215752d7b..e706e0fb4 100644
+--- a/glamor/glamor_transfer.c
++++ b/glamor/glamor_transfer.c
+@@ -23,44 +23,6 @@
+ #include "glamor_priv.h"
+ #include "glamor_transfer.h"
+
+-/* XXX a kludge for now */
+-void
+-glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type)
+-{
+- glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap);
+- switch (pixmap->drawable.depth) {
+- case 24:
+- case 32:
+- *format = GL_BGRA;
+- *type = GL_UNSIGNED_INT_8_8_8_8_REV;
+- break;
+- case 30:
+- *format = GL_BGRA;
+- *type = GL_UNSIGNED_INT_2_10_10_10_REV;
+- break;
+- case 16:
+- if (priv->is_cbcr) {
+- *format = GL_RG;
+- *type = GL_UNSIGNED_BYTE;
+- } else {
+- *format = GL_RGB;
+- *type = GL_UNSIGNED_SHORT_5_6_5;
+- }
+- break;
+- case 15:
+- *format = GL_BGRA;
+- *type = GL_UNSIGNED_SHORT_1_5_5_5_REV;
+- break;
+- case 8:
+- *format = glamor_get_screen_private(pixmap->drawable.pScreen)->one_channel_format;
+- *type = GL_UNSIGNED_BYTE;
+- break;
+- default:
+- FatalError("Invalid pixmap depth %d\n", pixmap->drawable.depth);
+- break;
+- }
+-}
+-
+ /*
+ * Write a region of bits into a pixmap
+ */
+@@ -75,10 +37,7 @@ glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
+ glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap);
+ int box_index;
+ int bytes_per_pixel = pixmap->drawable.bitsPerPixel >> 3;
+- GLenum type;
+- GLenum format;
+-
+- glamor_format_for_pixmap(pixmap, &format, &type);
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+
+ glamor_make_current(glamor_priv);
+
+@@ -116,14 +75,14 @@ glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
+ glTexSubImage2D(GL_TEXTURE_2D, 0,
+ x1 - box->x1, y1 - box->y1,
+ x2 - x1, y2 - y1,
+- format, type,
++ f->format, f->type,
+ bits + ofs);
+ } else {
+ for (; y1 < y2; y1++, ofs += byte_stride)
+ glTexSubImage2D(GL_TEXTURE_2D, 0,
+ x1 - box->x1, y1 - box->y1,
+ x2 - x1, 1,
+- format, type,
++ f->format, f->type,
+ bits + ofs);
+ }
+ }
+@@ -178,10 +137,7 @@ glamor_download_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
+ glamor_pixmap_private *priv = glamor_get_pixmap_private(pixmap);
+ int box_index;
+ int bytes_per_pixel = pixmap->drawable.bitsPerPixel >> 3;
+- GLenum type;
+- GLenum format;
+-
+- glamor_format_for_pixmap(pixmap, &format, &type);
++ const struct glamor_format *f = glamor_format_for_pixmap(pixmap);
+
+ glamor_make_current(glamor_priv);
+
+@@ -216,10 +172,10 @@ glamor_download_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
+
+ if (glamor_priv->has_pack_subimage ||
+ x2 - x1 == byte_stride / bytes_per_pixel) {
+- glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, y2 - y1, format, type, bits + ofs);
++ glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, y2 - y1, f->format, f->type, bits + ofs);
+ } else {
+ for (; y1 < y2; y1++, ofs += byte_stride)
+- glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, 1, format, type, bits + ofs);
++ glReadPixels(x1 - box->x1, y1 - box->y1, x2 - x1, 1, f->format, f->type, bits + ofs);
+ }
+ }
+ }
+diff --git a/glamor/glamor_transfer.h b/glamor/glamor_transfer.h
+index de8186a70..a6137b3ff 100644
+--- a/glamor/glamor_transfer.h
++++ b/glamor/glamor_transfer.h
+@@ -23,9 +23,6 @@
+ #ifndef _GLAMOR_TRANSFER_H_
+ #define _GLAMOR_TRANSFER_H_
+
+-void
+-glamor_format_for_pixmap(PixmapPtr pixmap, GLenum *format, GLenum *type);
+-
+ void
+ glamor_upload_boxes(PixmapPtr pixmap, BoxPtr in_boxes, int in_nbox,
+ int dx_src, int dy_src,
+diff --git a/glamor/glamor_transform.c b/glamor/glamor_transform.c
+index 2d5a634a8..348d00be1 100644
+--- a/glamor/glamor_transform.c
++++ b/glamor/glamor_transform.c
+@@ -121,10 +121,9 @@ glamor_set_color_depth(ScreenPtr pScreen,
+
+ glamor_get_rgba_from_pixel(pixel,
+ &color[0], &color[1], &color[2], &color[3],
+- format_for_depth(depth));
++ glamor_priv->formats[depth].render_format);
+
+- if ((depth == 1 || depth == 8) &&
+- glamor_priv->one_channel_format == GL_RED)
++ if ((depth <= 8) && glamor_priv->formats[8].format == GL_RED)
+ color[0] = color[3];
+
+ glUniform4fv(uniform, 1, color);
+diff --git a/glamor/glamor_utils.h b/glamor/glamor_utils.h
+index cbb808294..651faf2fe 100644
+--- a/glamor/glamor_utils.h
++++ b/glamor/glamor_utils.h
+@@ -570,65 +570,8 @@
+ && (_w_) <= _glamor_->max_fbo_size \
+ && (_h_) <= _glamor_->max_fbo_size)
+
+-/* For 1bpp pixmap, we don't store it as texture. */
+-#define glamor_check_pixmap_fbo_depth(_depth_) ( \
+- _depth_ == 8 \
+- || _depth_ == 15 \
+- || _depth_ == 16 \
+- || _depth_ == 24 \
+- || _depth_ == 30 \
+- || _depth_ == 32)
+-
+ #define GLAMOR_PIXMAP_PRIV_HAS_FBO(pixmap_priv) (pixmap_priv->gl_fbo == GLAMOR_FBO_NORMAL)
+
+-/**
+- * Borrow from uxa.
+- */
+-static inline CARD32
+-format_for_depth(int depth)
+-{
+- switch (depth) {
+- case 1:
+- return PICT_a1;
+- case 4:
+- return PICT_a4;
+- case 8:
+- return PICT_a8;
+- case 15:
+- return PICT_x1r5g5b5;
+- case 16:
+- return PICT_r5g6b5;
+- default:
+- case 24:
+- return PICT_x8r8g8b8;
+- case 30:
+- return PICT_x2r10g10b10;
+- case 32:
+- return PICT_a8r8g8b8;
+- }
+-}
+-
+-static inline GLenum
+-gl_iformat_for_pixmap(PixmapPtr pixmap)
+-{
+- glamor_screen_private *glamor_priv =
+- glamor_get_screen_private((pixmap)->drawable.pScreen);
+- glamor_pixmap_private *pixmap_priv = glamor_get_pixmap_private(pixmap);
+-
+- if (!glamor_priv->is_gles &&
+- ((pixmap)->drawable.depth == 1 || (pixmap)->drawable.depth == 8)) {
+- return glamor_priv->one_channel_format;
+- } else if (!glamor_priv->is_gles &&
+- (pixmap)->drawable.depth == 16 && pixmap_priv->is_cbcr) {
+- return GL_RG;
+- } else if (!glamor_priv->is_gles &&
+- (pixmap)->drawable.depth == 30) {
+- return GL_RGB10_A2;
+- } else {
+- return GL_RGBA;
+- }
+-}
+-
+ #define REVERT_NONE 0
+ #define REVERT_NORMAL 1
+ #define REVERT_UPLOADING_A1 3
+--
+2.17.1
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
index 22d950c7..b73e89fe 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -6,7 +6,14 @@ SRC_URI_append_imxgpu = " \
file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch \
file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch \
file://0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch \
- file://0001-hw-xwayland-Makefile.am-fix-build-without-glx.patch \
+ file://0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch \
+ file://0002-glamor-add-support-for-GL_RG.patch \
+ file://0003-glamor-add-support-for-NV12-in-Xv.patch \
+ file://0004-glamor-Remove-unused-format_for_pixmap-helper.patch \
+ file://0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch \
+ file://0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch \
+ file://0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch \
+ file://0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch \
"
IMX_OPENGL_PKGCONFIGS_REMOVE = ""
diff --git a/recipes-kernel/ceetm/ceetm_git.bb b/recipes-kernel/ceetm/ceetm_git.bb
index 2e92ad49..ca145ba4 100644
--- a/recipes-kernel/ceetm/ceetm_git.bb
+++ b/recipes-kernel/ceetm/ceetm_git.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "CEETM TC QDISC"
LICENSE = "GPLv2 & BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=bac620b9883d38a84dfb73ca7122d915"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/ceetm;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/ceetm;nobranch=1"
SRCREV = "6a7f2ec2091df2f4380cb8d25a36c399aed5af1b"
SRC_URI_append = " file://0001-Makefile-update-CFLAGS.patch \
file://0001-use-new-api-tc_print_rate.patch \
diff --git a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
index feddc8fa..18130bee 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-ar_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b5881ecf398da8a03a3f4c501e29d287"
inherit module
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/auto-resp;branch=nxp/sdk-v2.0.x"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/auto-resp;branch=nxp/sdk-v2.0.x"
SRCREV = "9a74743167dcfcfbca5056eedbff9a52337c9712"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.4.bb b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p2.0.bb
index 581bef95..bb0bd26e 100644
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p1.4.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p2.0.bb
@@ -1,5 +1,5 @@
# Copyright (C) 2015-2016 Freescale Semiconductor
-# Copyright (C) 2017-2020 NXP
+# Copyright (C) 2017-2021 NXP
SUMMARY = "Kernel loadable module for Vivante GPU"
DESCRIPTION = "Builds the Vivante GPU kernel driver as a loadable kernel module, \
@@ -7,14 +7,14 @@ allowing flexibility to use a newer graphics release with an older kernel."
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
-SRCBRANCH = "imx_5.4.70_2.3.0"
-LOCALVERSION = "-imx_5.4.70_2.3.2"
-KERNEL_SRC ?= "git://source.codeaurora.org/external/imx/linux-imx.git;protocol=https"
+SRCBRANCH = "lf-5.10.y"
+LOCALVERSION = "-5.10.52-2.1.0"
+KERNEL_SRC ?= "git://github.com/nxp-imx/linux-imx.git;protocol=https"
SRC_URI = " \
${KERNEL_SRC};branch=${SRCBRANCH};subpath=drivers/mxc/gpu-viv;destsuffix=git/src \
file://Add-makefile.patch \
"
-SRCREV = "13b3c469663da0c79d385ce15887f6b5805f060d"
+SRCREV = "5b2559d9d66b0b9561fc42dd8007dfe4569573df"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ipc.inc b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
index 350ba186..d0a23e5a 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ipc.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=fa38cd73d71527dc6efb546474f64d10"
inherit module qoriq_build_64bit_kernel
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/ipc;protocol=https;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/ipc;protocol=https;nobranch=1"
SRCREV = "74d662707558290f070f9589177db730444bc435"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.11.0.bb b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.13.0.bb
index 973cc51b..531e723b 100644
--- a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.11.0.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.13.0.bb
@@ -4,13 +4,13 @@ DESCRIPTION = "Kernel loadable module for ISP"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://${WORKDIR}/git/vvcam/LICENSE;md5=64381a6ea83b48c39fe524c85f65fb44"
-SRCBRANCH = "imx_5.4.70_2.3.2"
-ISP_KERNEL_SRC ?= "git://source.codeaurora.org/external/imx/isp-vvcam.git;protocol=https"
+SRCBRANCH = "imx_5.10_2.0.0"
+ISP_KERNEL_SRC ?= "git://github.com/nxp-imx/isp-vvcam.git;protocol=https"
SRC_URI = " \
${ISP_KERNEL_SRC};branch=${SRCBRANCH} \
"
-SRCREV = "6cbf264313b4859c985c8d66bae19b522996de6c"
+SRCREV = "47588cb88cc75400b5d2c35a17527e99b752d9be"
S = "${WORKDIR}/git/vvcam/v4l2"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb b/recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb
index cad18b69..955ecaf0 100644
--- a/recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94263f12f9416f9fd0493c8f9e8085a3"
inherit module autotools-brokensep
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/ls-dbg;branch=nxp/master"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/ls-dbg;branch=nxp/master"
SRCREV = "40501f6659e880d38508cdd34a4df2d348d1c68e"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-perf-qoriq_0.8.2.bb b/recipes-kernel/kernel-modules/kernel-module-perf-qoriq_0.8.2.bb
index 4a31f1e3..830b5248 100644
--- a/recipes-kernel/kernel-modules/kernel-module-perf-qoriq_0.8.2.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-perf-qoriq_0.8.2.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "QorIQ extension to Perf for supporting non core counters"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=e29234dd5d40dc352cc60cc0c93437ba"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/qoriq-perf;branch=nxp/master"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/qoriq-perf;branch=nxp/master"
SRCREV = "7beb3783edac66bab00c85d99a7b073f569af7fd"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-qca6174_3.0.bb b/recipes-kernel/kernel-modules/kernel-module-qca6174_3.0.bb
deleted file mode 100644
index f78a4c5b..00000000
--- a/recipes-kernel/kernel-modules/kernel-module-qca6174_3.0.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require kernel-module-qcacld-lea.inc
-
-SUMMARY = "Qualcomm WiFi driver for QCA module 6174"
-
-EXTRA_OEMAKE += " \
- CONFIG_ROME_IF=pci \
- CONFIG_WLAN_FEATURE_11W=y \
- CONFIG_WLAN_FEATURE_FILS=y \
- CONFIG_WLAN_WAPI_MODE_11AC_DISABLE=y \
- MODNAME=qca6174 \
- CONFIG_WLAN_FEATURE_DSRC=y \
-"
-
-RDEPENDS_${PN} += "firmware-qca6174"
diff --git a/recipes-kernel/kernel-modules/kernel-module-qca9377_3.1.bb b/recipes-kernel/kernel-modules/kernel-module-qca9377_3.1.bb
deleted file mode 100644
index fbc87ea2..00000000
--- a/recipes-kernel/kernel-modules/kernel-module-qca9377_3.1.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-require kernel-module-qcacld-lea.inc
-
-SUMMARY = "Qualcomm WiFi driver for QCA module 9377"
-
-EXTRA_OEMAKE += " \
- CONFIG_CLD_HL_SDIO_CORE=y \
- CONFIG_FEATURE_COEX_PTA_CONFIG_ENABLE=y \
- CONFIG_PER_VDEV_TX_DESC_POOL=1 \
- CONFIG_QCA_LL_TX_FLOW_CT=1 \
- CONFIG_QCA_SUPPORT_TXRX_DRIVER_TCP_DEL_ACK=y \
- CONFIG_WLAN_FEATURE_FILS=y \
- CONFIG_WLAN_WAPI_MODE_11AC_DISABLE=y \
- MODNAME=qca9377 \
- SAP_AUTH_OFFLOAD=1 \
-"
-
-RDEPENDS_${PN} += "firmware-qca9377"
diff --git a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
deleted file mode 100644
index 0b23a47c..00000000
--- a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "Qualcomm WiFi driver for QCA module 9377 and 6174"
-LICENSE = "BSD & GPLv2"
-LIC_FILES_CHKSUM = "file://CORE/HDD/src/wlan_hdd_main.c;beginline=1;endline=20;md5=ec8d62116b13db773825ebf7cf91be1d;"
-
-QCACLD_SRC ?= "git://source.codeaurora.org/external/imx/qcacld-2.0-imx.git;protocol=https"
-SRC_URI = "${QCACLD_SRC};branch=IMX_CNSS.LEA.NRT_3.0_KRL5.4"
-SRCREV = "7dc91e5977f31d60741c55682564788c0f930163"
-
-S = "${WORKDIR}/git"
-
-inherit module
-
-EXTRA_OEMAKE += " \
- CONFIG_CFG80211_INTERNAL_REGDB=y \
- CONFIG_HDD_WLAN_WAIT_TIME=10000 \
- CONFIG_LINUX_QCMBR=y \
- CONFIG_NON_QC_PLATFORM=y \
- CONFIG_PMF_SUPPORT=y \
- TARGET_BUILD_VARIANT=user \
-"
-
-COMPATIBLE_MACHINE = "(imx)"
-COMPATIBLE_HOST_libc-musl = 'null'
diff --git a/recipes-kernel/kernel-modules/kernel-module-scatter-gather_git.bb b/recipes-kernel/kernel-modules/kernel-module-scatter-gather_git.bb
index 20d894ed..9ce53bef 100644
--- a/recipes-kernel/kernel-modules/kernel-module-scatter-gather_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-scatter-gather_git.bb
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=e9605a22ea50467bd2bfe4cdd66e69ae"
inherit module
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/scatter-gather;branch=nxp/master"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/scatter-gather;branch=nxp/master"
SRCREV = "97db173d08a70abe2b9a6fa928299a117f3febc2"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb b/recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb
index f7beed21..f0fb7979 100644
--- a/recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "UIO driver for T1040 L2 Switch"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/l2switch-uio;branch=nxp/sdk-v2.0.x"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/l2switch-uio;branch=nxp/sdk-v2.0.x"
SRCREV = "0f31fbcbe9ab1ab9c424da34f70c82314b16f8de"
inherit module
diff --git a/recipes-kernel/linux/linux-fslc-imx/imx/defconfig b/recipes-kernel/linux/linux-fslc-imx/imx/defconfig
index 3029043b..6ca0833e 100644
--- a/recipes-kernel/linux/linux-fslc-imx/imx/defconfig
+++ b/recipes-kernel/linux/linux-fslc-imx/imx/defconfig
@@ -17,14 +17,10 @@ CONFIG_USER_NS=y
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_EXPERT=y
-CONFIG_KALLSYMS_ALL=y
CONFIG_PERF_EVENTS=y
# CONFIG_SLUB_DEBUG is not set
# CONFIG_COMPAT_BRK is not set
CONFIG_ARCH_MXC=y
-CONFIG_SOC_IMX50=y
-CONFIG_SOC_IMX51=y
-CONFIG_SOC_IMX53=y
CONFIG_SOC_IMX6Q=y
CONFIG_SOC_IMX6SL=y
CONFIG_SOC_IMX6SLL=y
@@ -32,7 +28,6 @@ CONFIG_SOC_IMX6SX=y
CONFIG_SOC_IMX6UL=y
CONFIG_SOC_IMX7D=y
CONFIG_SOC_IMX7ULP=y
-CONFIG_SOC_VF610=y
CONFIG_SMP=y
CONFIG_VMSPLIT_2G=y
CONFIG_ARM_PSCI=y
@@ -49,7 +44,6 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPUFREQ_DT=y
CONFIG_ARM_IMX6Q_CPUFREQ=y
CONFIG_ARM_IMX_CPUFREQ_DT=y
-CONFIG_ARM_IMX7ULP_CPUFREQ=y
CONFIG_CPU_IDLE=y
CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
@@ -64,7 +58,6 @@ CONFIG_MODULE_SRCVERSION_ALL=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_BINFMT_MISC=m
CONFIG_CMA=y
-CONFIG_SECCOMP=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
@@ -125,7 +118,6 @@ CONFIG_MTD_DATAFLASH=y
CONFIG_MTD_SST25L=y
CONFIG_MTD_RAW_NAND=y
CONFIG_MTD_NAND_GPMI_NAND=y
-CONFIG_MTD_NAND_VF610_NFC=y
CONFIG_MTD_NAND_MXC=y
CONFIG_MTD_SPI_NOR=y
# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
@@ -160,7 +152,7 @@ CONFIG_NETDEVICES=y
CONFIG_CS89x0=y
CONFIG_CS89x0_PLATFORM=y
# CONFIG_NET_VENDOR_FARADAY is not set
-CONFIG_E1000E=y
+# CONFIG_NET_VENDOR_INTEL is not set
# CONFIG_NET_VENDOR_MARVELL is not set
# CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MICROCHIP is not set
@@ -170,9 +162,8 @@ CONFIG_SMC91X=y
CONFIG_SMC911X=y
CONFIG_SMSC911X=y
# CONFIG_NET_VENDOR_STMICRO is not set
-CONFIG_AT803X_PHY=y
CONFIG_MICREL_PHY=y
-CONFIG_SMSC_PHY=y
+CONFIG_AT803X_PHY=y
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=y
@@ -181,9 +172,7 @@ CONFIG_USB_USBNET=y
CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_SMSC95XX=y
CONFIG_USB_NET_MCS7830=y
-CONFIG_BRCMFMAC=m
CONFIG_HOSTAP=y
-CONFIG_MXMWIFIEX=m
CONFIG_WL12XX=m
CONFIG_WL18XX=m
CONFIG_WLCORE_SDIO=m
@@ -197,9 +186,14 @@ CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ADS7846=y
+CONFIG_TOUCHSCREEN_AD7879=y
+CONFIG_TOUCHSCREEN_AD7879_I2C=y
+CONFIG_TOUCHSCREEN_ATMEL_MXT=y
+CONFIG_TOUCHSCREEN_DA9052=y
CONFIG_TOUCHSCREEN_EGALAX=y
CONFIG_TOUCHSCREEN_ELAN_TS=y
CONFIG_TOUCHSCREEN_GOODIX=y
+CONFIG_TOUCHSCREEN_ILI210X=y
CONFIG_TOUCHSCREEN_MAX11801=y
CONFIG_TOUCHSCREEN_IMX6UL_TSC=y
CONFIG_TOUCHSCREEN_EDT_FT5X06=y
@@ -238,12 +232,12 @@ CONFIG_SPI_FSL_LPSPI=y
CONFIG_SPI_FSL_QUADSPI=y
CONFIG_SPI_GPIO=y
CONFIG_SPI_IMX=y
-CONFIG_SPI_FSL_DSPI=y
CONFIG_SPI_SPIDEV=y
CONFIG_SPI_SLAVE=y
CONFIG_SPI_SLAVE_TIME=y
CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y
CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_MXC=y
CONFIG_GPIO_SIOX=m
CONFIG_GPIO_IMX_RPMSG=y
CONFIG_GPIO_MAX732X=y
@@ -282,6 +276,7 @@ CONFIG_MFD_MAX17135=y
CONFIG_MFD_RN5T618=y
CONFIG_MFD_SI476X_CORE=y
CONFIG_MFD_STMPE=y
+CONFIG_REGULATOR=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_ANATOP=y
CONFIG_REGULATOR_DA9052=y
@@ -298,12 +293,9 @@ CONFIG_RC_CORE=y
CONFIG_RC_DEVICES=y
CONFIG_IR_GPIO_CIR=y
CONFIG_MEDIA_SUPPORT=y
-CONFIG_MEDIA_CAMERA_SUPPORT=y
-CONFIG_MEDIA_RADIO_SUPPORT=y
-CONFIG_MEDIA_CONTROLLER=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
+CONFIG_RADIO_SI476X=y
CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_VIDEO_MUX=y
CONFIG_VIDEO_MXC_CAPTURE=m
@@ -322,15 +314,14 @@ CONFIG_VIDEO_MXC_PXP_V4L2=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_CODA=m
CONFIG_VIDEO_IMX_PXP=y
-CONFIG_RADIO_SI476X=y
CONFIG_VIDEO_ADV7180=m
CONFIG_VIDEO_OV2680=m
CONFIG_VIDEO_OV5645=m
CONFIG_DRM=y
-CONFIG_DRM_MSM=y
CONFIG_DRM_PANEL_LVDS=y
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_SEIKO_43WVF1G=y
+CONFIG_DRM_TI_TFP410=y
CONFIG_FB_MXS=y
CONFIG_FB_MXC_SYNC_PANEL=y
CONFIG_FB_MXC_OVERLAY=y
@@ -359,28 +350,31 @@ CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_SOC=y
+CONFIG_SND_SOC_FSL_ASRC=y
+CONFIG_SND_SOC_FSL_MQS=y
+CONFIG_SND_SOC_FSL_RPMSG=y
CONFIG_SND_IMX_SOC=y
CONFIG_SND_SOC_EUKREA_TLV320=y
-CONFIG_SND_SOC_IMX_WM8960=y
CONFIG_SND_SOC_IMX_SII902X=y
CONFIG_SND_SOC_IMX_WM8958=y
-CONFIG_SND_SOC_IMX_CS42888=y
-CONFIG_SND_SOC_IMX_WM8962=y
CONFIG_SND_SOC_IMX_RPMSG=y
CONFIG_SND_SOC_IMX_ES8328=y
CONFIG_SND_SOC_IMX_SGTL5000=y
-CONFIG_SND_SOC_IMX_MQS=y
CONFIG_SND_SOC_IMX_SPDIF=y
CONFIG_SND_SOC_IMX_MC13783=y
+CONFIG_SND_SOC_FSL_ASOC_CARD=y
CONFIG_SND_SOC_IMX_SI476X=y
CONFIG_SND_SOC_IMX_HDMI=y
CONFIG_SND_SOC_AC97_CODEC=y
+CONFIG_SND_SOC_CS42XX8_I2C=y
CONFIG_SND_SOC_TLV320AIC3X=y
+CONFIG_SND_SOC_WM8960=y
+CONFIG_SND_SOC_RPMSG_WM8960=y
+CONFIG_SND_SOC_WM8962=y
CONFIG_SND_SIMPLE_CARD=y
CONFIG_HID_MULTITOUCH=y
CONFIG_USB=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-CONFIG_USB_OTG_WHITELIST=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_MXC=y
CONFIG_USB_HCD_TEST_MODE=y
@@ -447,6 +441,7 @@ CONFIG_RTC_DRV_ISL1208=y
CONFIG_RTC_DRV_PCF8523=y
CONFIG_RTC_DRV_PCF8563=y
CONFIG_RTC_DRV_M41T80=y
+CONFIG_RTC_DRV_RC5T619=y
CONFIG_RTC_DRV_DA9063=y
CONFIG_RTC_DRV_MC13XXX=y
CONFIG_RTC_DRV_MXC=y
@@ -464,12 +459,12 @@ CONFIG_STAGING=y
CONFIG_STAGING_MEDIA=y
CONFIG_COMMON_CLK_PWM=y
CONFIG_MAILBOX=y
-CONFIG_IMX_MBOX=y
CONFIG_REMOTEPROC=y
CONFIG_IMX_REMOTEPROC=y
CONFIG_EXTCON_USB_GPIO=y
CONFIG_IIO=y
CONFIG_IMX7D_ADC=y
+CONFIG_RN5T618_ADC=y
CONFIG_VF610_ADC=y
CONFIG_PWM=y
CONFIG_PWM_FSL_FTM=y
@@ -478,7 +473,6 @@ CONFIG_PWM_IMX_TPM=y
CONFIG_PHY_MIXEL_LVDS=y
CONFIG_PHY_MIXEL_LVDS_COMBO=y
CONFIG_NVMEM_IMX_OCOTP=y
-CONFIG_NVMEM_VF610_OCOTP=y
CONFIG_NVMEM_SNVS_LPGPR=y
CONFIG_TEE=y
CONFIG_OPTEE=y
@@ -511,12 +505,15 @@ CONFIG_ZISOFS=y
CONFIG_UDF_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=y
+CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_JFFS2_FS=y
CONFIG_UBIFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
CONFIG_ROOT_NFS=y
CONFIG_NLS_DEFAULT="cp437"
CONFIG_NLS_CODEPAGE_437=y
@@ -533,7 +530,9 @@ CONFIG_CRYPTO_CFB=m
CONFIG_CRYPTO_CTS=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_OFB=m
-CONFIG_CRYPTO_XTS=y
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=m
CONFIG_CRYPTO_RMD128=m
@@ -542,35 +541,32 @@ CONFIG_CRYPTO_RMD256=m
CONFIG_CRYPTO_RMD320=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA3=m
+CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_STREEBOG=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_DES=m
-CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_TWOFISH=m
-CONFIG_CRYPTO_DEV_FSL_CAAM=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SM=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
-CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=y
-CONFIG_CRYPTO_DEV_SAHARA=y
-CONFIG_CRYPTO_DEV_MXS_DCP=y
-CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_XCBC=m
-CONFIG_CRYPTO_VMAC=m
-CONFIG_CRYPTO_SM3=m
-CONFIG_CRYPTO_STREEBOG=m
-CONFIG_CRYPTO_ANUBIS=m
CONFIG_CRYPTO_FCRYPT=m
CONFIG_CRYPTO_KHAZAD=m
CONFIG_CRYPTO_SALSA20=m
CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SM4=m
CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_ANSI_CPRNG=m
-CONFIG_CRYPTO_SHA1=m
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m
+CONFIG_CRYPTO_DEV_FSL_CAAM=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
+CONFIG_CRYPTO_DEV_SAHARA=y
+CONFIG_CRYPTO_DEV_MXS_DCP=y
CONFIG_CRC_CCITT=m
CONFIG_CRC_T10DIF=y
CONFIG_CRC7=m
@@ -580,9 +576,9 @@ CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_PRINTK_TIME=y
-CONFIG_DEBUG_FS=y
+# CONFIG_DEBUG_BUGVERBOSE is not set
CONFIG_MAGIC_SYSRQ=y
+CONFIG_DEBUG_FS=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_PREEMPT is not set
-# CONFIG_DEBUG_BUGVERBOSE is not set
# CONFIG_FTRACE is not set
diff --git a/recipes-kernel/linux/linux-fslc-imx/mx8/defconfig b/recipes-kernel/linux/linux-fslc-imx/mx8/defconfig
index dbe4597f..ab8c97e3 100644
--- a/recipes-kernel/linux/linux-fslc-imx/mx8/defconfig
+++ b/recipes-kernel/linux/linux-fslc-imx/mx8/defconfig
@@ -7,15 +7,12 @@ CONFIG_PREEMPT=y
CONFIG_IRQ_TIME_ACCOUNTING=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
-CONFIG_TASKSTATS=y
-CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_NUMA_BALANCING=y
CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_HUGETLB=y
@@ -36,9 +33,10 @@ CONFIG_ARCH_S32=y
CONFIG_SOC_S32V234=y
CONFIG_ARM64_VA_BITS_48=y
CONFIG_SCHED_MC=y
+CONFIG_SCHED_SMT=y
CONFIG_NUMA=y
-CONFIG_SECCOMP=y
CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
CONFIG_CRASH_DUMP=y
CONFIG_XEN=y
CONFIG_FORCE_MAX_ZONEORDER=14
@@ -47,6 +45,7 @@ CONFIG_RANDOMIZE_BASE=y
CONFIG_PM_DEBUG=y
CONFIG_PM_TEST_SUSPEND=y
CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
+CONFIG_ENERGY_MODEL=y
CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
CONFIG_CPU_FREQ=y
@@ -61,16 +60,15 @@ CONFIG_ACPI_CPPC_CPUFREQ=m
CONFIG_ARM_SCPI_CPUFREQ=y
CONFIG_ARM_IMX_CPUFREQ_DT=y
CONFIG_QORIQ_CPUFREQ=y
+CONFIG_ARM_SCMI_PROTOCOL=y
CONFIG_ARM_SCPI_PROTOCOL=y
CONFIG_EFI_CAPSULE_LOADER=y
CONFIG_IMX_DSP=y
CONFIG_IMX_SCU=y
CONFIG_IMX_SCU_PD=y
-CONFIG_IMX_SECO_MU=y
CONFIG_ACPI=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
-CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=y
CONFIG_VIRTUALIZATION=y
@@ -125,20 +123,30 @@ CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
CONFIG_BRIDGE=m
CONFIG_BRIDGE_VLAN_FILTERING=y
+CONFIG_NET_DSA=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q_MVRP=y
CONFIG_LLC2=y
CONFIG_NET_SCHED=y
-CONFIG_NET_SCH_MULTIQ=y
-CONFIG_NET_SCH_CBS=y
-CONFIG_NET_SCH_TAPRIO=y
-CONFIG_NET_SCH_MQPRIO=y
-CONFIG_NET_CLS_BASIC=y
-CONFIG_NET_CLS_TCINDEX=y
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_TAPRIO=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_FLOWER=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_GACT=m
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_GATE=m
CONFIG_TSN=y
-CONFIG_NET_SWITCHDEV=y
+CONFIG_QRTR=m
+CONFIG_QRTR_SMD=m
+CONFIG_QRTR_TUN=m
CONFIG_BPF_JIT=y
-CONFIG_NET_PKTGEN=y
+CONFIG_NET_PKTGEN=m
CONFIG_CAN=m
CONFIG_CAN_FLEXCAN=m
CONFIG_BT=y
@@ -148,8 +156,6 @@ CONFIG_BT_BNEP=y
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_HIDP=y
-# CONFIG_BT_HS is not set
-# CONFIG_BT_LE is not set
CONFIG_BT_LEDS=y
# CONFIG_BT_DEBUGFS is not set
CONFIG_BT_HCIBTUSB=m
@@ -168,9 +174,13 @@ CONFIG_MAC80211=y
CONFIG_MAC80211_LEDS=y
CONFIG_NET_9P=y
CONFIG_NET_9P_VIRTIO=y
+CONFIG_NFC=m
+CONFIG_NFC_NCI=m
+CONFIG_NFC_S3FWRN5_I2C=m
CONFIG_PCI=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCI_IOV=y
+CONFIG_PCI_PASID=y
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_PCI_HOST_GENERIC=y
@@ -184,11 +194,11 @@ CONFIG_PCI_IMX6_EP=y
CONFIG_PCI_LAYERSCAPE=y
CONFIG_PCI_HISI=y
CONFIG_PCIE_KIRIN=y
+CONFIG_PCI_MESON=m
CONFIG_PCIE_LAYERSCAPE_GEN4=y
CONFIG_PCI_ENDPOINT=y
CONFIG_PCI_ENDPOINT_CONFIGFS=y
CONFIG_PCI_EPF_TEST=y
-CONFIG_IMX_MIC_EPF=m
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_FW_LOADER_USER_HELPER=y
@@ -196,7 +206,6 @@ CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
CONFIG_BRCMSTB_GISB_ARB=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_VEXPRESS_CONFIG=y
-CONFIG_FSL_MC_BUS=y
CONFIG_FSL_MC_UAPI_SUPPORT=y
CONFIG_MTD=y
CONFIG_MTD_CMDLINE_PARTS=y
@@ -226,20 +235,15 @@ CONFIG_SENSORS_FXOS8700=y
CONFIG_SENSORS_FXAS2100X=y
CONFIG_SRAM=y
CONFIG_PCI_ENDPOINT_TEST=y
-CONFIG_EEPROM_AT24=y
+CONFIG_EEPROM_AT24=m
CONFIG_EEPROM_AT25=m
-CONFIG_SCIF_BUS=m
-CONFIG_VOP_BUS=m
-CONFIG_IMX_MIC_HOST=m
-CONFIG_IMX_MIC_CARD=m
-CONFIG_SCIF=m
-CONFIG_MIC_COSM=m
-CONFIG_VOP=m
+CONFIG_UACCE=m
# CONFIG_SCSI_PROC_FS is not set
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_HISI_SAS=y
CONFIG_SCSI_HISI_SAS_PCI=y
+CONFIG_MEGARAID_SAS=y
CONFIG_SCSI_MPT3SAS=m
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_UFSHCD_PLATFORM=y
@@ -265,16 +269,23 @@ CONFIG_MACVTAP=m
CONFIG_TUN=y
CONFIG_VETH=m
CONFIG_VIRTIO_NET=y
+CONFIG_NET_DSA_MSCC_FELIX=m
CONFIG_AMD_XGBE=y
CONFIG_ATL1C=m
+CONFIG_BCMGENET=m
CONFIG_BNX2X=m
CONFIG_MACB=y
CONFIG_THUNDER_NIC_PF=y
CONFIG_FEC=y
-CONFIG_FSL_SDK_DPAA_ETH=y
+CONFIG_FEC_UIO=y
+CONFIG_FSL_FMAN=y
+CONFIG_FSL_DPAA_ETH=y
CONFIG_FSL_DPAA2_ETH=y
+CONFIG_FSL_DPAA2_MAC=y
CONFIG_FSL_ENETC=y
CONFIG_FSL_ENETC_VF=y
+CONFIG_FSL_ENETC_QOS=y
+CONFIG_ENETC_TSN=y
CONFIG_HIX5HD2_GMAC=y
CONFIG_HNS_DSAF=y
CONFIG_HNS_ENET=y
@@ -292,37 +303,38 @@ CONFIG_MLX5_CORE=m
CONFIG_MLX5_CORE_EN=y
CONFIG_MSCC_OCELOT_SWITCH=y
CONFIG_QCOM_EMAC=m
+CONFIG_RMNET=m
CONFIG_SMC91X=y
CONFIG_SMSC911X=y
CONFIG_STMMAC_ETH=y
-CONFIG_MDIO_BITBANG=y
-CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
+CONFIG_DWMAC_GENERIC=m
CONFIG_AQUANTIA_PHY=y
-CONFIG_AT803X_PHY=y
+CONFIG_BROADCOM_PHY=m
CONFIG_INPHI_PHY=y
CONFIG_MARVELL_PHY=m
CONFIG_MARVELL_10G_PHY=m
CONFIG_MICREL_PHY=y
CONFIG_MICROSEMI_PHY=y
CONFIG_NXP_TJA11XX_PHY=y
+CONFIG_AT803X_PHY=y
CONFIG_REALTEK_PHY=y
CONFIG_ROCKCHIP_PHY=y
CONFIG_VITESSE_PHY=y
+CONFIG_MDIO_BITBANG=y
+CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
+CONFIG_MDIO_BUS_MUX_MMIOREG=y
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
-CONFIG_USB_RTL8152=m
+CONFIG_USB_RTL8152=y
CONFIG_USB_LAN78XX=m
-CONFIG_USB_USBNET=m
+CONFIG_USB_USBNET=y
CONFIG_USB_NET_DM9601=m
CONFIG_USB_NET_SR9800=m
CONFIG_USB_NET_SMSC75XX=m
CONFIG_USB_NET_SMSC95XX=m
CONFIG_USB_NET_PLUSB=m
CONFIG_USB_NET_MCS7830=m
-CONFIG_BRCMFMAC=m
-CONFIG_BRCMFMAC_PCIE=y
CONFIG_HOSTAP=y
-CONFIG_MXMWIFIEX=m
CONFIG_WL18XX=m
CONFIG_WLCORE_SDIO=m
CONFIG_XEN_NETDEV_BACKEND=m
@@ -332,6 +344,7 @@ CONFIG_KEYBOARD_ADC=m
CONFIG_KEYBOARD_GPIO=y
CONFIG_KEYBOARD_SNVS_PWRKEY=y
CONFIG_KEYBOARD_IMX_SC_PWRKEY=y
+CONFIG_KEYBOARD_RPMSG=y
CONFIG_KEYBOARD_CROS_EC=y
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ATMEL_MXT=m
@@ -378,7 +391,10 @@ CONFIG_I2C_RPBUS=y
CONFIG_I2C_CROS_EC_TUNNEL=y
CONFIG_XEN_I2C_BACKEND=y
CONFIG_I2C_SLAVE=y
+CONFIG_I3C=y
+CONFIG_SVC_I3C_MASTER=y
CONFIG_SPI=y
+CONFIG_SPI_CADENCE_QUADSPI=y
CONFIG_SPI_FSL_LPSPI=y
CONFIG_SPI_FSL_QUADSPI=y
CONFIG_SPI_NXP_FLEXSPI=y
@@ -400,29 +416,34 @@ CONFIG_PINCTRL_IMX8MQ=y
CONFIG_PINCTRL_IMX8QM=y
CONFIG_PINCTRL_IMX8QXP=y
CONFIG_PINCTRL_IMX8DXL=y
+CONFIG_PINCTRL_IMX8ULP=y
CONFIG_PINCTRL_S32V234=y
-CONFIG_GPIOLIB=y
CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_ALTERA=m
CONFIG_GPIO_DWAPB=y
+CONFIG_GPIO_IMX_RPMSG=y
CONFIG_GPIO_MB86S7X=y
CONFIG_GPIO_MPC8XXX=y
CONFIG_GPIO_PL061=y
+CONFIG_GPIO_WCD934X=m
CONFIG_GPIO_XGENE=y
CONFIG_GPIO_MAX732X=y
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
-CONFIG_POWER_AVS=y
+CONFIG_GPIO_SL28CPLD=m
CONFIG_POWER_RESET_BRCMSTB=y
-CONFIG_POWER_RESET_VEXPRESS=y
CONFIG_POWER_RESET_XGENE=y
CONFIG_POWER_RESET_SYSCON=y
CONFIG_SYSCON_REBOOT_MODE=y
CONFIG_BATTERY_SBS=m
CONFIG_BATTERY_BQ27XXX=y
CONFIG_SENSORS_ARM_SCPI=y
+CONFIG_SENSORS_FP9931=y
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_PWM_FAN=m
+CONFIG_SENSORS_SL28CPLD=m
CONFIG_SENSORS_INA2XX=m
CONFIG_SENSORS_INA3221=m
CONFIG_THERMAL_WRITABLE_TRIPS=y
@@ -430,25 +451,30 @@ CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
CONFIG_CPU_THERMAL=y
CONFIG_THERMAL_EMULATION=y
CONFIG_IMX_SC_THERMAL=y
-CONFIG_DEVICE_THERMAL=y
CONFIG_IMX8MM_THERMAL=y
+CONFIG_DEVICE_THERMAL=y
CONFIG_QORIQ_THERMAL=y
CONFIG_WATCHDOG=y
+CONFIG_SL28CPLD_WATCHDOG=m
CONFIG_ARM_SP805_WATCHDOG=y
CONFIG_ARM_SBSA_WATCHDOG=y
CONFIG_DW_WATCHDOG=y
CONFIG_IMX2_WDT=y
CONFIG_IMX_SC_WDT=y
+CONFIG_IMX7ULP_WDT=y
+CONFIG_ARM_SMC_WATCHDOG=y
CONFIG_XEN_WDT=y
CONFIG_MFD_BD9571MWV=y
CONFIG_MFD_AXP20X_I2C=y
-CONFIG_MFD_IMX_AUDIOMIX=y
+CONFIG_MFD_IMX_MIX=y
CONFIG_MFD_HI6421_PMIC=y
+CONFIG_MFD_FP9931=y
CONFIG_MFD_MAX77620=y
CONFIG_MFD_RK808=y
CONFIG_MFD_SEC_CORE=y
+CONFIG_MFD_SL28CPLD=y
CONFIG_MFD_ROHM_BD718XX=y
-CONFIG_MFD_PCA9450=y
+CONFIG_MFD_WCD934X=m
CONFIG_REGULATOR=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_AXP20X=y
@@ -459,6 +485,7 @@ CONFIG_REGULATOR_GPIO=y
CONFIG_REGULATOR_HI6421V530=y
CONFIG_REGULATOR_MAX77620=y
CONFIG_REGULATOR_MAX8973=y
+CONFIG_REGULATOR_FP9931=y
CONFIG_REGULATOR_PCA9450=y
CONFIG_REGULATOR_PFUZE100=y
CONFIG_REGULATOR_PWM=y
@@ -485,19 +512,22 @@ CONFIG_MEDIA_SUPPORT=y
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
-CONFIG_MEDIA_CONTROLLER=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
+CONFIG_MEDIA_SDR_SUPPORT=y
+CONFIG_MEDIA_PLATFORM_SUPPORT=y
# CONFIG_DVB_NET is not set
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_V4L_PLATFORM_DRIVERS=y
-CONFIG_VIDEO_MX8_CAPTURE=y
CONFIG_VIDEO_MXC_CAPTURE=y
+CONFIG_VIDEO_MX8_CAPTURE=y
CONFIG_VIDEO_MXC_CSI_CAMERA=y
CONFIG_MXC_MIPI_CSI=y
CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_SDR_PLATFORM_DRIVERS=y
+CONFIG_VIDEO_IMX219=m
CONFIG_VIDEO_OV5640=y
+CONFIG_VIDEO_OV5645=m
CONFIG_IMX_DPU_CORE=y
CONFIG_IMX_LCDIF_CORE=y
CONFIG_IMX_LCDIFV3_CORE=y
@@ -505,21 +535,34 @@ CONFIG_DRM=y
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_MALI_DISPLAY=m
CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_RCAR_DW_HDMI=m
CONFIG_DRM_RCAR_LVDS=m
+CONFIG_DRM_PANEL_LVDS=m
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_RAYDIUM_RM67191=y
+CONFIG_DRM_PANEL_RAYDIUM_RM68200=y
CONFIG_DRM_PANEL_SEIKO_43WVF1G=y
+CONFIG_DRM_PANEL_SITRONIX_ST7703=m
+CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m
CONFIG_DRM_PANEL_WKS_101WX001=y
+CONFIG_DRM_DISPLAY_CONNECTOR=m
+CONFIG_DRM_LONTIUM_LT9611=m
CONFIG_DRM_FSL_IMX_LVDS_BRIDGE=y
+CONFIG_DRM_NWL_MIPI_DSI=y
CONFIG_DRM_NXP_SEIKO_43WVFIG=y
CONFIG_DRM_SII902X=m
+CONFIG_DRM_SIMPLE_BRIDGE=m
+CONFIG_DRM_THINE_THC63LVD1024=m
+CONFIG_DRM_TI_SN65DSI86=m
CONFIG_DRM_I2C_ADV7511=y
-CONFIG_DRM_NWL_MIPI_DSI=y
+CONFIG_DRM_I2C_ADV7511_AUDIO=y
CONFIG_DRM_CDNS_HDMI_CEC=y
+CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI_GP_AUDIO=y
CONFIG_DRM_DW_HDMI_CEC=y
CONFIG_DRM_ITE_IT6263=y
+CONFIG_DRM_ITE_IT6161=y
CONFIG_DRM_IMX=y
CONFIG_DRM_IMX_LCDIF_MUX_DISPLAY=y
CONFIG_DRM_IMX_PARALLEL_DISPLAY=y
@@ -530,6 +573,7 @@ CONFIG_DRM_IMX8QXP_LDB=y
CONFIG_DRM_IMX8MP_LDB=y
CONFIG_DRM_IMX_HDMI=y
CONFIG_DRM_IMX_SEC_DSIM=y
+CONFIG_DRM_IMX_DCNANO=y
CONFIG_DRM_IMX_DCSS=y
CONFIG_DRM_IMX_CDNS_MHDP=y
CONFIG_DRM_ETNAVIV=m
@@ -541,7 +585,7 @@ CONFIG_DRM_LIMA=m
CONFIG_DRM_PANFROST=m
CONFIG_FB_ARMCLCD=y
CONFIG_FB_EFI=y
-CONFIG_BACKLIGHT_GENERIC=m
+CONFIG_FB_MXC_EINK_V2_PANEL=y
CONFIG_BACKLIGHT_PWM=y
CONFIG_BACKLIGHT_LP855X=m
CONFIG_LOGO=y
@@ -552,45 +596,62 @@ CONFIG_SND=y
CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_SOC=y
+CONFIG_SND_SOC_FSL_ASRC=y
+CONFIG_SND_SOC_FSL_MQS=y
CONFIG_SND_SOC_FSL_EASRC=y
+CONFIG_SND_SOC_FSL_ESAI_CLIENT=y
+CONFIG_SND_SOC_FSL_RPMSG=y
CONFIG_SND_IMX_SOC=y
CONFIG_SND_SOC_IMX_AK4458=y
CONFIG_SND_SOC_IMX_AK5558=y
CONFIG_SND_SOC_IMX_AK4497=y
-CONFIG_SND_SOC_IMX_WM8960=y
-CONFIG_SND_SOC_IMX_WM8524=y
-CONFIG_SND_SOC_IMX_CS42888=y
CONFIG_SND_SOC_IMX_MICFIL=y
CONFIG_SND_SOC_IMX_RPMSG=y
-CONFIG_SND_SOC_IMX_MQS=y
CONFIG_SND_SOC_IMX_SPDIF=y
+CONFIG_SND_SOC_FSL_ASOC_CARD=y
CONFIG_SND_SOC_IMX_AUDMIX=y
+CONFIG_SND_SOC_IMX_XCVR=y
+CONFIG_SND_SOC_IMX_PCM512X=y
CONFIG_SND_SOC_IMX_PDM_MIC=y
CONFIG_SND_SOC_IMX_DSP=y
CONFIG_SND_SOC_IMX_CDNHDMI=y
-CONFIG_SND_SOC_IMX_XCVR=y
-CONFIG_SND_SOC_IMX_PCM512X=y
CONFIG_SND_SOC_SOF_TOPLEVEL=y
CONFIG_SND_SOC_SOF_OF=m
+CONFIG_SND_SOC_SOF_COMPRESS=y
CONFIG_SND_SOC_SOF_IMX_TOPLEVEL=y
-CONFIG_SND_SOC_SOF_IMX8_SUPPORT=m
-CONFIG_SND_SOC_SOF_IMX8M_SUPPORT=m
+CONFIG_SND_SOC_SOF_IMX8_SUPPORT=y
+CONFIG_SND_SOC_SOF_IMX8M_SUPPORT=y
+CONFIG_SND_SOC_SOF_IMX8ULP_SUPPORT=y
+CONFIG_SND_SOC_SOF_IMX8ULP=y
CONFIG_SND_SOC_AK4613=m
CONFIG_SND_SOC_BT_SCO=y
+CONFIG_SND_SOC_CROS_EC_CODEC=m
+CONFIG_SND_SOC_CS42XX8_I2C=y
CONFIG_SND_SOC_DMIC=m
CONFIG_SND_SOC_ES7134=m
CONFIG_SND_SOC_ES7241=m
CONFIG_SND_SOC_MAX98357A=m
+CONFIG_SND_SOC_MAX98927=m
CONFIG_SND_SOC_PCM3168A_I2C=m
CONFIG_SND_SOC_SGTL5000=m
+CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS571X=m
+CONFIG_SND_SOC_WCD934X=m
+CONFIG_SND_SOC_WM8524=y
+CONFIG_SND_SOC_WM8904=m
+CONFIG_SND_SOC_WM8960=y
+CONFIG_SND_SOC_RPMSG_WM8960=y
+CONFIG_SND_SOC_RPMSG_WM8960_I2C=y
+CONFIG_SND_SOC_RPMSG_AK4497=y
+CONFIG_SND_SOC_WSA881X=m
CONFIG_SND_SIMPLE_CARD=y
CONFIG_SND_AUDIO_GRAPH_CARD=y
+CONFIG_SND_ALOOP=m
CONFIG_I2C_HID=m
+CONFIG_USB_CONN_GPIO=y
CONFIG_USB=y
CONFIG_USB_OTG=y
-CONFIG_USB_OTG_WHITELIST=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_HCD_PLATFORM=y
@@ -650,6 +711,8 @@ CONFIG_USB_G_SERIAL=m
CONFIG_TYPEC=y
CONFIG_TYPEC_TCPM=y
CONFIG_TYPEC_TCPCI=y
+CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC_HD3SS3220=m
CONFIG_TYPEC_SWITCH_GPIO=y
CONFIG_MMC=y
CONFIG_MMC_BLOCK_MINORS=32
@@ -668,11 +731,13 @@ CONFIG_MMC_DW_EXYNOS=y
CONFIG_MMC_DW_HI3798CV200=y
CONFIG_MMC_DW_K3=y
CONFIG_MMC_SDHCI_XENON=y
+CONFIG_MMC_SDHCI_AM654=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_SYSCON=y
+CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_DISK=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_CPU=y
@@ -682,22 +747,26 @@ CONFIG_EDAC=y
CONFIG_EDAC_GHES=y
CONFIG_EDAC_SYNOPSYS=y
CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_DS1307=y
+CONFIG_RTC_DRV_DS1307=m
CONFIG_RTC_DRV_MAX77686=y
CONFIG_RTC_DRV_RK808=m
-CONFIG_RTC_DRV_PCF85363=y
+CONFIG_RTC_DRV_PCF85363=m
CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RV8803=m
CONFIG_RTC_DRV_S5M=y
CONFIG_RTC_DRV_DS3232=y
-CONFIG_RTC_DRV_PCF2127=y
+CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_EFI=y
CONFIG_RTC_DRV_CROS_EC=y
+CONFIG_RTC_DRV_FSL_FTM_ALARM=y
CONFIG_RTC_DRV_PL031=y
CONFIG_RTC_DRV_SNVS=y
CONFIG_RTC_DRV_IMX_SC=y
+CONFIG_RTC_DRV_IMX_RPMSG=y
CONFIG_DMADEVICES=y
CONFIG_BCM_SBA_RAID=m
CONFIG_FSL_EDMA=y
+CONFIG_FSL_QDMA=m
CONFIG_FSL_EDMA_V3=y
CONFIG_IMX_SDMA=y
CONFIG_MV_XOR_V2=y
@@ -705,7 +774,12 @@ CONFIG_MXS_DMA=y
CONFIG_PL330_DMA=y
CONFIG_QCOM_HIDMA_MGMT=y
CONFIG_QCOM_HIDMA=y
+CONFIG_FSL_DPAA2_QDMA=m
CONFIG_DMATEST=y
+CONFIG_DMABUF_HEAPS=y
+CONFIG_DMABUF_HEAPS_SYSTEM=y
+CONFIG_DMABUF_HEAPS_CMA=y
+CONFIG_DMABUF_HEAPS_DSP=y
CONFIG_UIO=y
CONFIG_UIO_PCI_GENERIC=y
CONFIG_UIO_IVSHMEM=y
@@ -715,6 +789,7 @@ CONFIG_VFIO_FSL_MC=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_MMIO=y
+CONFIG_VIRTIO_IVSHMEM=y
CONFIG_XEN_GNTDEV=y
CONFIG_XEN_GRANT_DEV_ALLOC=y
CONFIG_STAGING=y
@@ -726,27 +801,27 @@ CONFIG_ION_SYSTEM_HEAP=y
CONFIG_ION_CMA_HEAP=y
CONFIG_FSL_DPAA2=y
CONFIG_FSL_DPAA2_ETHSW=y
-CONFIG_FSL_DPAA2_MAC=y
-CONFIG_FSL_SDK_DPA=y
CONFIG_FSL_PPFE=y
CONFIG_FSL_PPFE_UTIL_DISABLED=y
-CONFIG_MFD_CROS_EC=y
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=y
CONFIG_CROS_EC_I2C=y
CONFIG_CROS_EC_SPI=y
-CONFIG_COMMON_CLK_VERSATILE=y
-CONFIG_CLK_SP810=y
-CONFIG_CLK_VEXPRESS_OSC=y
+CONFIG_CROS_EC_CHARDEV=m
CONFIG_COMMON_CLK_RK808=y
CONFIG_COMMON_CLK_SCPI=y
CONFIG_COMMON_CLK_CS2000_CP=y
+CONFIG_COMMON_CLK_FSL_SAI=y
CONFIG_COMMON_CLK_S2MPS11=y
CONFIG_COMMON_CLK_XGENE=y
CONFIG_COMMON_CLK_PWM=y
+CONFIG_COMMON_CLK_VC5=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
CONFIG_CLK_IMX8MQ=y
CONFIG_CLK_IMX8QXP=y
+CONFIG_CLK_IMX8ULP=y
CONFIG_HWSPINLOCK=y
CONFIG_ARM_MHU=y
CONFIG_IMX_MBOX=y
@@ -755,32 +830,50 @@ CONFIG_ARM_SMMU=y
CONFIG_ARM_SMMU_V3=y
CONFIG_REMOTEPROC=y
CONFIG_IMX_REMOTEPROC=y
+CONFIG_IMX_DSP_REMOTEPROC=y
+CONFIG_RPMSG_CHAR=y
CONFIG_RPMSG_QCOM_GLINK_RPM=y
+CONFIG_SOUNDWIRE=m
+CONFIG_SOUNDWIRE_QCOM=m
CONFIG_SOC_BRCMSTB=y
+CONFIG_FSL_DPAA=y
CONFIG_FSL_MC_DPIO=y
+CONFIG_FSL_RCPM=y
CONFIG_FSL_QIXIS=y
-CONFIG_IMX_SCU_SOC=y
-CONFIG_SECVIO_SC=y
CONFIG_SOC_TI=y
+CONFIG_EXTCON_PTN5150=m
CONFIG_EXTCON_USB_GPIO=y
CONFIG_EXTCON_USBC_CROS_EC=y
CONFIG_IIO=y
CONFIG_IMX8QXP_ADC=y
+CONFIG_MAX9611=m
+CONFIG_QCOM_SPMI_ADC5=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_BARO=m
+CONFIG_IIO_ST_LSM6DSX=y
CONFIG_PWM=y
CONFIG_PWM_CROS_EC=m
+CONFIG_PWM_FSL_FTM=m
CONFIG_PWM_IMX27=y
+CONFIG_PWM_RPCHIP=y
+CONFIG_PWM_SL28CPLD=m
+CONFIG_SL28CPLD_INTC=y
+CONFIG_MST_IRQ=y
+CONFIG_RESET_BRCMSTB_RESCAL=y
+CONFIG_RESET_IMX7=y
+CONFIG_RESET_IMX8ULP_SIM=y
CONFIG_PHY_XGENE=y
CONFIG_PHY_MIXEL_LVDS=y
CONFIG_PHY_MIXEL_LVDS_COMBO=y
+CONFIG_PHY_CADENCE_SALVO=y
CONFIG_PHY_FSL_IMX8MP_LVDS=y
CONFIG_PHY_MIXEL_MIPI_DPHY=y
CONFIG_PHY_SAMSUNG_HDMI_PHY=y
CONFIG_PHY_QCOM_USB_HS=y
CONFIG_PHY_SAMSUNG_USB2=y
+CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_FSL_IMX8_DDR_PMU=y
CONFIG_HISI_PMU=y
CONFIG_NVMEM_IMX_OCOTP=y
@@ -793,9 +886,10 @@ CONFIG_OF_FPGA_REGION=m
CONFIG_TEE=y
CONFIG_OPTEE=y
CONFIG_MUX_MMIO=y
+CONFIG_SLIM_QCOM_CTRL=m
+CONFIG_INTERCONNECT=y
CONFIG_MXC_SIM=y
CONFIG_MXC_EMVSIM=y
-CONFIG_MXC_MLB150=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_EXT4_FS_POSIX_ACL=y
@@ -833,20 +927,18 @@ CONFIG_CRYPTO_CTS=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_OFB=m
CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_XTS=y
CONFIG_CRYPTO_XCBC=m
CONFIG_CRYPTO_VMAC=m
CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MD5=m
CONFIG_CRYPTO_RMD128=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RMD256=m
CONFIG_CRYPTO_RMD320=m
-CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_STREEBOG=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_WP512=m
CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_CAST5=m
@@ -856,26 +948,35 @@ CONFIG_CRYPTO_KHAZAD=m
CONFIG_CRYPTO_SALSA20=m
CONFIG_CRYPTO_SEED=m
CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_SM4=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_ANSI_CPRNG=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=y
-CONFIG_CRYPTO_DEV_FSL_CAAM=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SM=y
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m
+CONFIG_CRYPTO_DEV_FSL_CAAM=m
CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
-CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=y
+CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=m
+CONFIG_CRYPTO_DEV_CCREE=m
+CONFIG_CRYPTO_DEV_HISI_SEC2=m
+CONFIG_CRYPTO_DEV_HISI_ZIP=m
+CONFIG_CRYPTO_DEV_HISI_HPRE=m
+CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m
CONFIG_INDIRECT_PIO=y
-CONFIG_CMA_SIZE_MBYTES=320
+CONFIG_CRC_CCITT=m
+CONFIG_CMA_SIZE_MBYTES=32
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_INFO=y
-CONFIG_DEBUG_FS=y
CONFIG_MAGIC_SYSRQ=y
+CONFIG_DEBUG_FS=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_PREEMPT is not set
# CONFIG_FTRACE is not set
-CONFIG_MEMTEST=y
CONFIG_CORESIGHT=y
CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y
CONFIG_CORESIGHT_SOURCE_ETM4X=y
+CONFIG_MEMTEST=y
+CONFIG_MXC_PXP_V3=y
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_CRYPTO_USER_API_AEAD=m
diff --git a/recipes-kernel/linux/linux-fslc-imx_5.4.bb b/recipes-kernel/linux/linux-fslc-imx_5.10.bb
index 92423890..66fcbd6b 100644
--- a/recipes-kernel/linux/linux-fslc-imx_5.4.bb
+++ b/recipes-kernel/linux/linux-fslc-imx_5.10.bb
@@ -12,8 +12,8 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
###############################################################################
# This recipe (and corresponding kernel repository and branch) receives updates
# from 3 different sources:
-# 1. Stable [linux-5.4.y] branch updates of korg;
-# 2. NXP-specific updates via branch [5.4-2.2.x-imx] shared via CodeAurora forum;
+# 1. Stable [linux-5.10.y] branch updates of korg;
+# 2. NXP-specific updates via branch [5.10-2.1.x-imx] shared via CodeAurora forum;
# 3. Critical patches, which are not (yet) integrated into either of 2 above
# sources, but are required to be applied to the kernel tree.
#
@@ -28,36 +28,21 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
# ------------------------------------------------------------------------------
# 1. Stable (tag or SHA(s))
# ------------------------------------------------------------------------------
-# tag: v5.4.114
+# tag: v5.10.69
#
# ------------------------------------------------------------------------------
# 2. NXP-specific (tag or SHA(s))
# ------------------------------------------------------------------------------
-# tag: rel_imx_5.4.70_2.3.2
+# tag: lf-5.10.52-2.1.0
#
# ------------------------------------------------------------------------------
# 3. Critical patches (SHA(s))
# ------------------------------------------------------------------------------
-# b598b85172f7 irq-imx-irqsteer: fix compile error if CONFIG_PM_SLEEP is not set
-# 845099bfd0b8 fbdev: fix fbinfo flag dropped upstream
-# 847bfb09bb3b arm64: dts: imx8m: change ocotp node name on i.MX8M SoCs
-# d7ca6973c6d4 arm64: dts: imx8mm: Remove incorrect fallback compatible for ocotp
-# 539d19f12066 arm: imx: include i.MX6SX DDR freq implementation for i.MX6UL
-# 169b71ce3f8a arm: imx: do not include smp_wfe_imx6.S for i.MX6SX
-# 60be4c625594 arm: imx: enable HAVE_IMX_BUSFREQ for i.MX6
-# f393781fa575 arm: imx: do not build busfreq without HAVE_IMX_BUSFREQ
-# e0e74faf6af4 ARM: dts: imx6ul-kontron-n6x1x-s: Remove an obsolete comment and fix indentation
-# ad24781aecc3 ARM: dts: imx6ul-kontron-n6x1x-s: Add vbus-supply and overcurrent polarity to usb nodes
-# d56aa09ed0e0 ARM: dts: imx6ul-kontron-n6x1x: Add 'chosen' node with 'stdout-path'
-# 923bc9e57b24 ARM: dts: Add support for two more Kontron evalkit boards 'N6311 S' and 'N6411 S'
-# f952a6404d10 ARM: dts: imx6ul-kontron-n6310-s: Move common nodes to a separate file
-# 1fdb6565a632 ARM: dts: Add support for two more Kontron SoMs N6311 and N6411
-# 4fb833f01c30 ARM: dts: imx6ul-kontron-n6310: Move common SoM nodes to a separate file
-# 54c975dabcde ARM: imx: Fix boot crash if ocotp is not found
-# 1041cd02b33c ARM: imx: Correct ocotp id for serial number support of i.MX6ULL/ULZ SoCs
-# 974b100d789c soc: imx-scu: Using existing serial_number instead of UID
-# 6fbfed9afe99 soc: imx8: Using existing serial_number instead of UID
-# 64d8ea803af5 ARM: imx: Add serial number support for i.MX6/7 SoCs
+# fb3e7593ee84 ("irq-imx-irqsteer: fix compile error if CONFIG_PM_SLEEP is not set")
+# 96613ac4e960 ("arm: imx: include i.MX6SX DDR freq implementation for i.MX6UL")
+# 36fea22d04f4 ("arm: imx: do not include smp_wfe_imx6.S for i.MX6SX")
+# f86c8a4736f2 ("arm: imx: enable HAVE_IMX_BUSFREQ for i.MX6")
+# 05f7280c8648 ("arm: imx: do not build busfreq without HAVE_IMX_BUSFREQ")
#
# NOTE to upgraders:
# This recipe should NOT collect individual patches, they should be applied to
@@ -68,20 +53,20 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
include linux-fslc.inc
LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-KBRANCH = "5.4-2.3.x-imx"
-SRCREV = "f5b1a0c923d04cd49158bfb94fcfc5273474c076"
+KBRANCH = "5.10-2.1.x-imx"
+SRCREV = "54bd61ba352bffaf33ee2c956f140a565c9e2201"
# PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition
# required by kernel-yocto.bbclass.
#
# LINUX_VERSION define should match to the kernel version referenced by SRC_URI and
# should be updated once patchlevel is merged.
-LINUX_VERSION = "5.4.114"
+LINUX_VERSION = "5.10.69"
# Local version indicates the branch name in the NXP kernel tree where patches are collected from.
-LOCALVERSION = "-imx-5.4.70-2.3.0"
+LOCALVERSION = "-5.10.52-2.1.0"
DEFAULT_PREFERENCE = "1"
diff --git a/recipes-kernel/linux/linux-fslc_5.10.bb b/recipes-kernel/linux/linux-fslc_5.10.bb
index c5e99f86..6af937a7 100644
--- a/recipes-kernel/linux/linux-fslc_5.10.bb
+++ b/recipes-kernel/linux/linux-fslc_5.10.bb
@@ -19,9 +19,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
#
# LINUX_VERSION define should match to the kernel version referenced by SRC_URI and
# should be updated once patchlevel is merged.
-LINUX_VERSION = "5.10.32"
+LINUX_VERSION = "5.10.52"
KBRANCH = "5.10.x+fslc"
-SRCREV = "692b5e03f4be94f8e6ce381336cd290858841f49"
+SRCREV = "cb67a3e29a88e06e2891f8e2aac289305d8f08ff"
COMPATIBLE_MACHINE = "(mxs|mx5|mx6|vf|use-mainline-bsp)"
diff --git a/recipes-kernel/linux/linux-imx-headers_5.4.bb b/recipes-kernel/linux/linux-imx-headers_5.10.bb
index 70aea7e7..9f0ad03f 100644
--- a/recipes-kernel/linux/linux-imx-headers_5.4.bb
+++ b/recipes-kernel/linux/linux-imx-headers_5.10.bb
@@ -5,12 +5,12 @@ SUMMARY = "Installs i.MX-specific kernel headers"
DESCRIPTION = "Installs i.MX-specific kernel headers to userspace. \
New headers are installed in ${includedir}/imx."
LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-SRCBRANCH = "imx_5.4.70_2.3.0"
-LOCALVERSION = "-2.3.2"
-SRC_URI = "git://source.codeaurora.org/external/imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
-SRCREV = "dea2fede7e024ee7029b13e8d82a00ec14427777"
+SRCBRANCH = "lf-5.10.y"
+LOCALVERSION = "-5.10.52-2.1.0"
+SRC_URI = "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
+SRCREV = "ef3f2cfc6010c13feb40cfb7fd7490832cf86f45"
S = "${WORKDIR}/git"
@@ -25,6 +25,7 @@ IMX_UAPI_HEADERS = " \
ion.h \
ipu.h \
isl29023.h \
+ imx_vpu.h \
mxc_asrc.h \
mxc_dcic.h \
mxc_mlb.h \
@@ -33,6 +34,7 @@ IMX_UAPI_HEADERS = " \
mxcfb.h \
pxp_device.h \
pxp_dma.h \
+ version.h \
videodev2.h \
"
diff --git a/recipes-kernel/linux/linux-imx-mfgtool_5.4.bb b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
index 0a9f5259..0a9f5259 100644
--- a/recipes-kernel/linux/linux-imx-mfgtool_5.4.bb
+++ b/recipes-kernel/linux/linux-imx-mfgtool_5.10.bb
diff --git a/recipes-kernel/linux/linux-imx.inc b/recipes-kernel/linux/linux-imx.inc
index 96d4df90..bc05625f 100644
--- a/recipes-kernel/linux/linux-imx.inc
+++ b/recipes-kernel/linux/linux-imx.inc
@@ -14,7 +14,7 @@ SRCBRANCH ?= ""
# Set the PV to the correct kernel version to satisfy the kernel version sanity check
PV = "${LINUX_VERSION}+git${SRCPV}"
-SRC_URI = "git://source.codeaurora.org/external/imx/linux-imx;protocol=https;branch=${SRCBRANCH} \
+SRC_URI = "git://github.com/nxp-imx/linux-imx;protocol=https;branch=${SRCBRANCH} \
file://defconfig \
"
diff --git a/recipes-kernel/linux/linux-imx/imx/defconfig b/recipes-kernel/linux/linux-imx/imx/defconfig
index c6d83c3b..b2a0351d 100644
--- a/recipes-kernel/linux/linux-imx/imx/defconfig
+++ b/recipes-kernel/linux/linux-imx/imx/defconfig
@@ -17,14 +17,10 @@ CONFIG_USER_NS=y
CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_EXPERT=y
-CONFIG_KALLSYMS_ALL=y
CONFIG_PERF_EVENTS=y
# CONFIG_SLUB_DEBUG is not set
# CONFIG_COMPAT_BRK is not set
CONFIG_ARCH_MXC=y
-CONFIG_SOC_IMX50=y
-CONFIG_SOC_IMX51=y
-CONFIG_SOC_IMX53=y
CONFIG_SOC_IMX6Q=y
CONFIG_SOC_IMX6SL=y
CONFIG_SOC_IMX6SLL=y
@@ -32,7 +28,6 @@ CONFIG_SOC_IMX6SX=y
CONFIG_SOC_IMX6UL=y
CONFIG_SOC_IMX7D=y
CONFIG_SOC_IMX7ULP=y
-CONFIG_SOC_VF610=y
CONFIG_SMP=y
CONFIG_VMSPLIT_2G=y
CONFIG_ARM_PSCI=y
@@ -49,7 +44,6 @@ CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_CPUFREQ_DT=y
CONFIG_ARM_IMX6Q_CPUFREQ=y
CONFIG_ARM_IMX_CPUFREQ_DT=y
-CONFIG_ARM_IMX7ULP_CPUFREQ=y
CONFIG_CPU_IDLE=y
CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
@@ -64,7 +58,6 @@ CONFIG_MODULE_SRCVERSION_ALL=y
# CONFIG_BLK_DEV_BSG is not set
CONFIG_BINFMT_MISC=m
CONFIG_CMA=y
-CONFIG_SECCOMP=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
@@ -125,7 +118,6 @@ CONFIG_MTD_DATAFLASH=y
CONFIG_MTD_SST25L=y
CONFIG_MTD_RAW_NAND=y
CONFIG_MTD_NAND_GPMI_NAND=y
-CONFIG_MTD_NAND_VF610_NFC=y
CONFIG_MTD_NAND_MXC=y
CONFIG_MTD_SPI_NOR=y
# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
@@ -160,7 +152,7 @@ CONFIG_NETDEVICES=y
CONFIG_CS89x0=y
CONFIG_CS89x0_PLATFORM=y
# CONFIG_NET_VENDOR_FARADAY is not set
-CONFIG_E1000E=y
+# CONFIG_NET_VENDOR_INTEL is not set
# CONFIG_NET_VENDOR_MARVELL is not set
# CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MICROCHIP is not set
@@ -170,9 +162,8 @@ CONFIG_SMC91X=y
CONFIG_SMC911X=y
CONFIG_SMSC911X=y
# CONFIG_NET_VENDOR_STMICRO is not set
-CONFIG_AT803X_PHY=y
CONFIG_MICREL_PHY=y
-CONFIG_SMSC_PHY=y
+CONFIG_AT803X_PHY=y
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=y
@@ -181,9 +172,7 @@ CONFIG_USB_USBNET=y
CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_SMSC95XX=y
CONFIG_USB_NET_MCS7830=y
-CONFIG_BRCMFMAC=m
CONFIG_HOSTAP=y
-CONFIG_MXMWIFIEX=m
CONFIG_WL12XX=m
CONFIG_WL18XX=m
CONFIG_WLCORE_SDIO=m
@@ -197,9 +186,14 @@ CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ADS7846=y
+CONFIG_TOUCHSCREEN_AD7879=y
+CONFIG_TOUCHSCREEN_AD7879_I2C=y
+CONFIG_TOUCHSCREEN_ATMEL_MXT=y
+CONFIG_TOUCHSCREEN_DA9052=y
CONFIG_TOUCHSCREEN_EGALAX=y
CONFIG_TOUCHSCREEN_ELAN_TS=y
CONFIG_TOUCHSCREEN_GOODIX=y
+CONFIG_TOUCHSCREEN_ILI210X=y
CONFIG_TOUCHSCREEN_MAX11801=y
CONFIG_TOUCHSCREEN_IMX6UL_TSC=y
CONFIG_TOUCHSCREEN_EDT_FT5X06=y
@@ -238,12 +232,12 @@ CONFIG_SPI_FSL_LPSPI=y
CONFIG_SPI_FSL_QUADSPI=y
CONFIG_SPI_GPIO=y
CONFIG_SPI_IMX=y
-CONFIG_SPI_FSL_DSPI=y
CONFIG_SPI_SPIDEV=y
CONFIG_SPI_SLAVE=y
CONFIG_SPI_SLAVE_TIME=y
CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y
CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_MXC=y
CONFIG_GPIO_SIOX=m
CONFIG_GPIO_IMX_RPMSG=y
CONFIG_GPIO_MAX732X=y
@@ -282,6 +276,7 @@ CONFIG_MFD_MAX17135=y
CONFIG_MFD_RN5T618=y
CONFIG_MFD_SI476X_CORE=y
CONFIG_MFD_STMPE=y
+CONFIG_REGULATOR=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_ANATOP=y
CONFIG_REGULATOR_DA9052=y
@@ -298,12 +293,9 @@ CONFIG_RC_CORE=y
CONFIG_RC_DEVICES=y
CONFIG_IR_GPIO_CIR=y
CONFIG_MEDIA_SUPPORT=y
-CONFIG_MEDIA_CAMERA_SUPPORT=y
-CONFIG_MEDIA_RADIO_SUPPORT=y
-CONFIG_MEDIA_CONTROLLER=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
+CONFIG_RADIO_SI476X=y
CONFIG_V4L_PLATFORM_DRIVERS=y
CONFIG_VIDEO_MUX=y
CONFIG_VIDEO_MXC_CAPTURE=m
@@ -322,15 +314,14 @@ CONFIG_VIDEO_MXC_PXP_V4L2=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_CODA=m
CONFIG_VIDEO_IMX_PXP=y
-CONFIG_RADIO_SI476X=y
CONFIG_VIDEO_ADV7180=m
CONFIG_VIDEO_OV2680=m
CONFIG_VIDEO_OV5645=m
CONFIG_DRM=y
-CONFIG_DRM_MSM=y
CONFIG_DRM_PANEL_LVDS=y
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_SEIKO_43WVF1G=y
+CONFIG_DRM_TI_TFP410=y
CONFIG_FB_MXS=y
CONFIG_FB_MXC_SYNC_PANEL=y
CONFIG_FB_MXC_OVERLAY=y
@@ -359,28 +350,29 @@ CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_SOC=y
+CONFIG_SND_SOC_FSL_ASRC=y
+CONFIG_SND_SOC_FSL_MQS=y
CONFIG_SND_IMX_SOC=y
CONFIG_SND_SOC_EUKREA_TLV320=y
-CONFIG_SND_SOC_IMX_WM8960=y
CONFIG_SND_SOC_IMX_SII902X=y
CONFIG_SND_SOC_IMX_WM8958=y
-CONFIG_SND_SOC_IMX_CS42888=y
-CONFIG_SND_SOC_IMX_WM8962=y
CONFIG_SND_SOC_IMX_RPMSG=y
CONFIG_SND_SOC_IMX_ES8328=y
CONFIG_SND_SOC_IMX_SGTL5000=y
-CONFIG_SND_SOC_IMX_MQS=y
CONFIG_SND_SOC_IMX_SPDIF=y
CONFIG_SND_SOC_IMX_MC13783=y
+CONFIG_SND_SOC_FSL_ASOC_CARD=y
CONFIG_SND_SOC_IMX_SI476X=y
CONFIG_SND_SOC_IMX_HDMI=y
CONFIG_SND_SOC_AC97_CODEC=y
+CONFIG_SND_SOC_CS42XX8_I2C=y
CONFIG_SND_SOC_TLV320AIC3X=y
+CONFIG_SND_SOC_WM8960=y
+CONFIG_SND_SOC_WM8962=y
CONFIG_SND_SIMPLE_CARD=y
CONFIG_HID_MULTITOUCH=y
CONFIG_USB=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-CONFIG_USB_OTG_WHITELIST=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_MXC=y
CONFIG_USB_HCD_TEST_MODE=y
@@ -447,6 +439,7 @@ CONFIG_RTC_DRV_ISL1208=y
CONFIG_RTC_DRV_PCF8523=y
CONFIG_RTC_DRV_PCF8563=y
CONFIG_RTC_DRV_M41T80=y
+CONFIG_RTC_DRV_RC5T619=y
CONFIG_RTC_DRV_DA9063=y
CONFIG_RTC_DRV_MC13XXX=y
CONFIG_RTC_DRV_MXC=y
@@ -464,12 +457,12 @@ CONFIG_STAGING=y
CONFIG_STAGING_MEDIA=y
CONFIG_COMMON_CLK_PWM=y
CONFIG_MAILBOX=y
-CONFIG_IMX_MBOX=y
CONFIG_REMOTEPROC=y
CONFIG_IMX_REMOTEPROC=y
CONFIG_EXTCON_USB_GPIO=y
CONFIG_IIO=y
CONFIG_IMX7D_ADC=y
+CONFIG_RN5T618_ADC=y
CONFIG_VF610_ADC=y
CONFIG_PWM=y
CONFIG_PWM_FSL_FTM=y
@@ -478,7 +471,6 @@ CONFIG_PWM_IMX_TPM=y
CONFIG_PHY_MIXEL_LVDS=y
CONFIG_PHY_MIXEL_LVDS_COMBO=y
CONFIG_NVMEM_IMX_OCOTP=y
-CONFIG_NVMEM_VF610_OCOTP=y
CONFIG_NVMEM_SNVS_LPGPR=y
CONFIG_TEE=y
CONFIG_OPTEE=y
@@ -511,12 +503,15 @@ CONFIG_ZISOFS=y
CONFIG_UDF_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=y
+CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_JFFS2_FS=y
CONFIG_UBIFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3_ACL=y
CONFIG_NFS_V4=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
CONFIG_ROOT_NFS=y
CONFIG_NLS_DEFAULT="cp437"
CONFIG_NLS_CODEPAGE_437=y
@@ -533,7 +528,9 @@ CONFIG_CRYPTO_CFB=m
CONFIG_CRYPTO_CTS=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_OFB=m
-CONFIG_CRYPTO_XTS=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
CONFIG_CRYPTO_MD4=m
CONFIG_CRYPTO_MD5=m
CONFIG_CRYPTO_RMD128=m
@@ -542,37 +539,32 @@ CONFIG_CRYPTO_RMD256=m
CONFIG_CRYPTO_RMD320=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA3=m
+CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_STREEBOG=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_CAST5=m
CONFIG_CRYPTO_CAST6=m
CONFIG_CRYPTO_DES=m
-CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_TWOFISH=m
-CONFIG_CRYPTO_DEV_FSL_CAAM=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SM=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
-CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=y
-CONFIG_CRYPTO_DEV_SAHARA=y
-CONFIG_CRYPTO_DEV_MXS_DCP=y
-CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_XCBC=m
-CONFIG_CRYPTO_VMAC=m
-CONFIG_CRYPTO_SM3=m
-CONFIG_CRYPTO_STREEBOG=m
-CONFIG_CRYPTO_ANUBIS=m
CONFIG_CRYPTO_FCRYPT=m
CONFIG_CRYPTO_KHAZAD=m
CONFIG_CRYPTO_SALSA20=m
CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
CONFIG_CRYPTO_SM4=m
CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_ANSI_CPRNG=m
-# meta-freescale change: Set CRYPTO_SHA1 to y to prevent kernel_configcheck warning
-#CONFIG_CRYPTO_SHA1=m
-CONFIG_CRYPTO_SHA1=y
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m
+CONFIG_CRYPTO_DEV_FSL_CAAM=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
+CONFIG_CRYPTO_DEV_SAHARA=y
+CONFIG_CRYPTO_DEV_MXS_DCP=y
CONFIG_CRC_CCITT=m
CONFIG_CRC_T10DIF=y
CONFIG_CRC7=m
@@ -582,9 +574,9 @@ CONFIG_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_PRINTK_TIME=y
-CONFIG_DEBUG_FS=y
+# CONFIG_DEBUG_BUGVERBOSE is not set
CONFIG_MAGIC_SYSRQ=y
+CONFIG_DEBUG_FS=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_PREEMPT is not set
-# CONFIG_DEBUG_BUGVERBOSE is not set
# CONFIG_FTRACE is not set
diff --git a/recipes-kernel/linux/linux-imx/mx8/defconfig b/recipes-kernel/linux/linux-imx/mx8/defconfig
index 1de0c724..65c676a9 100644
--- a/recipes-kernel/linux/linux-imx/mx8/defconfig
+++ b/recipes-kernel/linux/linux-imx/mx8/defconfig
@@ -7,15 +7,12 @@ CONFIG_PREEMPT=y
CONFIG_IRQ_TIME_ACCOUNTING=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
-CONFIG_TASKSTATS=y
-CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_NUMA_BALANCING=y
CONFIG_MEMCG=y
-CONFIG_MEMCG_SWAP=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_HUGETLB=y
@@ -36,9 +33,10 @@ CONFIG_ARCH_S32=y
CONFIG_SOC_S32V234=y
CONFIG_ARM64_VA_BITS_48=y
CONFIG_SCHED_MC=y
+CONFIG_SCHED_SMT=y
CONFIG_NUMA=y
-CONFIG_SECCOMP=y
CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
CONFIG_CRASH_DUMP=y
CONFIG_XEN=y
CONFIG_FORCE_MAX_ZONEORDER=14
@@ -47,6 +45,7 @@ CONFIG_RANDOMIZE_BASE=y
CONFIG_PM_DEBUG=y
CONFIG_PM_TEST_SUSPEND=y
CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
+CONFIG_ENERGY_MODEL=y
CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
CONFIG_CPU_FREQ=y
@@ -66,11 +65,9 @@ CONFIG_EFI_CAPSULE_LOADER=y
CONFIG_IMX_DSP=y
CONFIG_IMX_SCU=y
CONFIG_IMX_SCU_PD=y
-CONFIG_IMX_SECO_MU=y
CONFIG_ACPI=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
-CONFIG_ACPI_APEI_PCIEAER=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=y
CONFIG_VIRTUALIZATION=y
@@ -125,20 +122,30 @@ CONFIG_IP6_NF_NAT=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
CONFIG_BRIDGE=m
CONFIG_BRIDGE_VLAN_FILTERING=y
+CONFIG_NET_DSA=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q_MVRP=y
CONFIG_LLC2=y
CONFIG_NET_SCHED=y
-CONFIG_NET_SCH_MULTIQ=y
-CONFIG_NET_SCH_CBS=y
-CONFIG_NET_SCH_TAPRIO=y
-CONFIG_NET_SCH_MQPRIO=y
-CONFIG_NET_CLS_BASIC=y
-CONFIG_NET_CLS_TCINDEX=y
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_TAPRIO=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_TCINDEX=m
+CONFIG_NET_CLS_FLOWER=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_GACT=m
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_GATE=m
CONFIG_TSN=y
-CONFIG_NET_SWITCHDEV=y
+CONFIG_QRTR=m
+CONFIG_QRTR_SMD=m
+CONFIG_QRTR_TUN=m
CONFIG_BPF_JIT=y
-CONFIG_NET_PKTGEN=y
+CONFIG_NET_PKTGEN=m
CONFIG_CAN=m
CONFIG_CAN_FLEXCAN=m
CONFIG_BT=y
@@ -148,8 +155,6 @@ CONFIG_BT_BNEP=y
CONFIG_BT_BNEP_MC_FILTER=y
CONFIG_BT_BNEP_PROTO_FILTER=y
CONFIG_BT_HIDP=y
-# CONFIG_BT_HS is not set
-# CONFIG_BT_LE is not set
CONFIG_BT_LEDS=y
# CONFIG_BT_DEBUGFS is not set
CONFIG_BT_HCIBTUSB=m
@@ -168,9 +173,13 @@ CONFIG_MAC80211=y
CONFIG_MAC80211_LEDS=y
CONFIG_NET_9P=y
CONFIG_NET_9P_VIRTIO=y
+CONFIG_NFC=m
+CONFIG_NFC_NCI=m
+CONFIG_NFC_S3FWRN5_I2C=m
CONFIG_PCI=y
CONFIG_PCIEPORTBUS=y
CONFIG_PCI_IOV=y
+CONFIG_PCI_PASID=y
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_PCI_HOST_GENERIC=y
@@ -184,11 +193,11 @@ CONFIG_PCI_IMX6_EP=y
CONFIG_PCI_LAYERSCAPE=y
CONFIG_PCI_HISI=y
CONFIG_PCIE_KIRIN=y
+CONFIG_PCI_MESON=m
CONFIG_PCIE_LAYERSCAPE_GEN4=y
CONFIG_PCI_ENDPOINT=y
CONFIG_PCI_ENDPOINT_CONFIGFS=y
CONFIG_PCI_EPF_TEST=y
-CONFIG_IMX_MIC_EPF=m
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_FW_LOADER_USER_HELPER=y
@@ -196,7 +205,6 @@ CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
CONFIG_BRCMSTB_GISB_ARB=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_VEXPRESS_CONFIG=y
-CONFIG_FSL_MC_BUS=y
CONFIG_FSL_MC_UAPI_SUPPORT=y
CONFIG_MTD=y
CONFIG_MTD_CMDLINE_PARTS=y
@@ -226,20 +234,15 @@ CONFIG_SENSORS_FXOS8700=y
CONFIG_SENSORS_FXAS2100X=y
CONFIG_SRAM=y
CONFIG_PCI_ENDPOINT_TEST=y
-CONFIG_EEPROM_AT24=y
+CONFIG_EEPROM_AT24=m
CONFIG_EEPROM_AT25=m
-CONFIG_SCIF_BUS=m
-CONFIG_VOP_BUS=m
-CONFIG_IMX_MIC_HOST=m
-CONFIG_IMX_MIC_CARD=m
-CONFIG_SCIF=m
-CONFIG_MIC_COSM=m
-CONFIG_VOP=m
+CONFIG_UACCE=m
# CONFIG_SCSI_PROC_FS is not set
CONFIG_BLK_DEV_SD=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_HISI_SAS=y
CONFIG_SCSI_HISI_SAS_PCI=y
+CONFIG_MEGARAID_SAS=y
CONFIG_SCSI_MPT3SAS=m
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_UFSHCD_PLATFORM=y
@@ -265,16 +268,22 @@ CONFIG_MACVTAP=m
CONFIG_TUN=y
CONFIG_VETH=m
CONFIG_VIRTIO_NET=y
+CONFIG_NET_DSA_MSCC_FELIX=m
CONFIG_AMD_XGBE=y
CONFIG_ATL1C=m
+CONFIG_BCMGENET=m
CONFIG_BNX2X=m
CONFIG_MACB=y
CONFIG_THUNDER_NIC_PF=y
CONFIG_FEC=y
-CONFIG_FSL_SDK_DPAA_ETH=y
+CONFIG_FSL_FMAN=y
+CONFIG_FSL_DPAA_ETH=y
CONFIG_FSL_DPAA2_ETH=y
+CONFIG_FSL_DPAA2_MAC=y
CONFIG_FSL_ENETC=y
CONFIG_FSL_ENETC_VF=y
+CONFIG_FSL_ENETC_QOS=y
+CONFIG_ENETC_TSN=y
CONFIG_HIX5HD2_GMAC=y
CONFIG_HNS_DSAF=y
CONFIG_HNS_ENET=y
@@ -292,22 +301,26 @@ CONFIG_MLX5_CORE=m
CONFIG_MLX5_CORE_EN=y
CONFIG_MSCC_OCELOT_SWITCH=y
CONFIG_QCOM_EMAC=m
+CONFIG_RMNET=m
CONFIG_SMC91X=y
CONFIG_SMSC911X=y
CONFIG_STMMAC_ETH=y
-CONFIG_MDIO_BITBANG=y
-CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
+CONFIG_DWMAC_GENERIC=m
CONFIG_AQUANTIA_PHY=y
-CONFIG_AT803X_PHY=y
+CONFIG_BROADCOM_PHY=m
CONFIG_INPHI_PHY=y
CONFIG_MARVELL_PHY=m
CONFIG_MARVELL_10G_PHY=m
CONFIG_MICREL_PHY=y
CONFIG_MICROSEMI_PHY=y
CONFIG_NXP_TJA11XX_PHY=y
+CONFIG_AT803X_PHY=y
CONFIG_REALTEK_PHY=y
CONFIG_ROCKCHIP_PHY=y
CONFIG_VITESSE_PHY=y
+CONFIG_MDIO_BITBANG=y
+CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
+CONFIG_MDIO_BUS_MUX_MMIOREG=y
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=m
@@ -319,10 +332,7 @@ CONFIG_USB_NET_SMSC75XX=m
CONFIG_USB_NET_SMSC95XX=m
CONFIG_USB_NET_PLUSB=m
CONFIG_USB_NET_MCS7830=m
-CONFIG_BRCMFMAC=m
-CONFIG_BRCMFMAC_PCIE=y
CONFIG_HOSTAP=y
-CONFIG_MXMWIFIEX=m
CONFIG_WL18XX=m
CONFIG_WLCORE_SDIO=m
CONFIG_XEN_NETDEV_BACKEND=m
@@ -379,6 +389,7 @@ CONFIG_I2C_CROS_EC_TUNNEL=y
CONFIG_XEN_I2C_BACKEND=y
CONFIG_I2C_SLAVE=y
CONFIG_SPI=y
+CONFIG_SPI_CADENCE_QUADSPI=y
CONFIG_SPI_FSL_LPSPI=y
CONFIG_SPI_FSL_QUADSPI=y
CONFIG_SPI_NXP_FLEXSPI=y
@@ -401,20 +412,21 @@ CONFIG_PINCTRL_IMX8QM=y
CONFIG_PINCTRL_IMX8QXP=y
CONFIG_PINCTRL_IMX8DXL=y
CONFIG_PINCTRL_S32V234=y
-CONFIG_GPIOLIB=y
CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_ALTERA=m
CONFIG_GPIO_DWAPB=y
CONFIG_GPIO_MB86S7X=y
CONFIG_GPIO_MPC8XXX=y
CONFIG_GPIO_PL061=y
+CONFIG_GPIO_WCD934X=m
CONFIG_GPIO_XGENE=y
CONFIG_GPIO_MAX732X=y
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
-CONFIG_POWER_AVS=y
+CONFIG_GPIO_SL28CPLD=m
CONFIG_POWER_RESET_BRCMSTB=y
-CONFIG_POWER_RESET_VEXPRESS=y
CONFIG_POWER_RESET_XGENE=y
CONFIG_POWER_RESET_SYSCON=y
CONFIG_SYSCON_REBOOT_MODE=y
@@ -423,6 +435,7 @@ CONFIG_BATTERY_BQ27XXX=y
CONFIG_SENSORS_ARM_SCPI=y
CONFIG_SENSORS_LM90=m
CONFIG_SENSORS_PWM_FAN=m
+CONFIG_SENSORS_SL28CPLD=m
CONFIG_SENSORS_INA2XX=m
CONFIG_SENSORS_INA3221=m
CONFIG_THERMAL_WRITABLE_TRIPS=y
@@ -430,25 +443,28 @@ CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
CONFIG_CPU_THERMAL=y
CONFIG_THERMAL_EMULATION=y
CONFIG_IMX_SC_THERMAL=y
-CONFIG_DEVICE_THERMAL=y
CONFIG_IMX8MM_THERMAL=y
+CONFIG_DEVICE_THERMAL=y
CONFIG_QORIQ_THERMAL=y
CONFIG_WATCHDOG=y
+CONFIG_SL28CPLD_WATCHDOG=m
CONFIG_ARM_SP805_WATCHDOG=y
CONFIG_ARM_SBSA_WATCHDOG=y
CONFIG_DW_WATCHDOG=y
CONFIG_IMX2_WDT=y
CONFIG_IMX_SC_WDT=y
+CONFIG_ARM_SMC_WATCHDOG=y
CONFIG_XEN_WDT=y
CONFIG_MFD_BD9571MWV=y
CONFIG_MFD_AXP20X_I2C=y
-CONFIG_MFD_IMX_AUDIOMIX=y
+CONFIG_MFD_IMX_MIX=y
CONFIG_MFD_HI6421_PMIC=y
CONFIG_MFD_MAX77620=y
CONFIG_MFD_RK808=y
CONFIG_MFD_SEC_CORE=y
+CONFIG_MFD_SL28CPLD=y
CONFIG_MFD_ROHM_BD718XX=y
-CONFIG_MFD_PCA9450=y
+CONFIG_MFD_WCD934X=m
CONFIG_REGULATOR=y
CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_REGULATOR_AXP20X=y
@@ -485,19 +501,22 @@ CONFIG_MEDIA_SUPPORT=y
CONFIG_MEDIA_CAMERA_SUPPORT=y
CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
-CONFIG_MEDIA_CONTROLLER=y
-CONFIG_VIDEO_V4L2_SUBDEV_API=y
+CONFIG_MEDIA_SDR_SUPPORT=y
+CONFIG_MEDIA_PLATFORM_SUPPORT=y
# CONFIG_DVB_NET is not set
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_V4L_PLATFORM_DRIVERS=y
-CONFIG_VIDEO_MX8_CAPTURE=y
CONFIG_VIDEO_MXC_CAPTURE=y
+CONFIG_VIDEO_MX8_CAPTURE=y
CONFIG_VIDEO_MXC_CSI_CAMERA=y
CONFIG_MXC_MIPI_CSI=y
CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_SDR_PLATFORM_DRIVERS=y
+CONFIG_VIDEO_IMX219=m
CONFIG_VIDEO_OV5640=y
+CONFIG_VIDEO_OV5645=m
CONFIG_IMX_DPU_CORE=y
CONFIG_IMX_LCDIF_CORE=y
CONFIG_IMX_LCDIFV3_CORE=y
@@ -505,17 +524,28 @@ CONFIG_DRM=y
CONFIG_DRM_I2C_NXP_TDA998X=m
CONFIG_DRM_MALI_DISPLAY=m
CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_RCAR_DW_HDMI=m
CONFIG_DRM_RCAR_LVDS=m
+CONFIG_DRM_PANEL_LVDS=m
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_RAYDIUM_RM67191=y
CONFIG_DRM_PANEL_SEIKO_43WVF1G=y
+CONFIG_DRM_PANEL_SITRONIX_ST7703=m
+CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m
CONFIG_DRM_PANEL_WKS_101WX001=y
+CONFIG_DRM_DISPLAY_CONNECTOR=m
+CONFIG_DRM_LONTIUM_LT9611=m
CONFIG_DRM_FSL_IMX_LVDS_BRIDGE=y
+CONFIG_DRM_NWL_MIPI_DSI=y
CONFIG_DRM_NXP_SEIKO_43WVFIG=y
CONFIG_DRM_SII902X=m
+CONFIG_DRM_SIMPLE_BRIDGE=m
+CONFIG_DRM_THINE_THC63LVD1024=m
+CONFIG_DRM_TI_SN65DSI86=m
CONFIG_DRM_I2C_ADV7511=y
-CONFIG_DRM_NWL_MIPI_DSI=y
+CONFIG_DRM_I2C_ADV7511_AUDIO=y
CONFIG_DRM_CDNS_HDMI_CEC=y
+CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_I2S_AUDIO=m
CONFIG_DRM_DW_HDMI_GP_AUDIO=y
CONFIG_DRM_DW_HDMI_CEC=y
@@ -541,7 +571,6 @@ CONFIG_DRM_LIMA=m
CONFIG_DRM_PANFROST=m
CONFIG_FB_ARMCLCD=y
CONFIG_FB_EFI=y
-CONFIG_BACKLIGHT_GENERIC=m
CONFIG_BACKLIGHT_PWM=y
CONFIG_BACKLIGHT_LP855X=m
CONFIG_LOGO=y
@@ -552,45 +581,55 @@ CONFIG_SND=y
CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_USB_AUDIO=m
CONFIG_SND_SOC=y
+CONFIG_SND_SOC_FSL_ASRC=y
+CONFIG_SND_SOC_FSL_MQS=y
CONFIG_SND_SOC_FSL_EASRC=y
+CONFIG_SND_SOC_FSL_ESAI_CLIENT=y
CONFIG_SND_IMX_SOC=y
CONFIG_SND_SOC_IMX_AK4458=y
CONFIG_SND_SOC_IMX_AK5558=y
CONFIG_SND_SOC_IMX_AK4497=y
-CONFIG_SND_SOC_IMX_WM8960=y
-CONFIG_SND_SOC_IMX_WM8524=y
-CONFIG_SND_SOC_IMX_CS42888=y
CONFIG_SND_SOC_IMX_MICFIL=y
CONFIG_SND_SOC_IMX_RPMSG=y
-CONFIG_SND_SOC_IMX_MQS=y
CONFIG_SND_SOC_IMX_SPDIF=y
+CONFIG_SND_SOC_FSL_ASOC_CARD=y
CONFIG_SND_SOC_IMX_AUDMIX=y
+CONFIG_SND_SOC_IMX_XCVR=y
+CONFIG_SND_SOC_IMX_PCM512X=y
CONFIG_SND_SOC_IMX_PDM_MIC=y
CONFIG_SND_SOC_IMX_DSP=y
CONFIG_SND_SOC_IMX_CDNHDMI=y
-CONFIG_SND_SOC_IMX_XCVR=y
-CONFIG_SND_SOC_IMX_PCM512X=y
CONFIG_SND_SOC_SOF_TOPLEVEL=y
CONFIG_SND_SOC_SOF_OF=m
+CONFIG_SND_SOC_SOF_COMPRESS=y
CONFIG_SND_SOC_SOF_IMX_TOPLEVEL=y
-CONFIG_SND_SOC_SOF_IMX8_SUPPORT=m
-CONFIG_SND_SOC_SOF_IMX8M_SUPPORT=m
+CONFIG_SND_SOC_SOF_IMX8_SUPPORT=y
+CONFIG_SND_SOC_SOF_IMX8M_SUPPORT=y
CONFIG_SND_SOC_AK4613=m
CONFIG_SND_SOC_BT_SCO=y
+CONFIG_SND_SOC_CROS_EC_CODEC=m
+CONFIG_SND_SOC_CS42XX8_I2C=y
CONFIG_SND_SOC_DMIC=m
CONFIG_SND_SOC_ES7134=m
CONFIG_SND_SOC_ES7241=m
CONFIG_SND_SOC_MAX98357A=m
+CONFIG_SND_SOC_MAX98927=m
CONFIG_SND_SOC_PCM3168A_I2C=m
CONFIG_SND_SOC_SGTL5000=m
+CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
CONFIG_SND_SOC_SPDIF=m
CONFIG_SND_SOC_TAS571X=m
+CONFIG_SND_SOC_WCD934X=m
+CONFIG_SND_SOC_WM8524=y
+CONFIG_SND_SOC_WM8904=m
+CONFIG_SND_SOC_WM8960=y
+CONFIG_SND_SOC_WSA881X=m
CONFIG_SND_SIMPLE_CARD=y
CONFIG_SND_AUDIO_GRAPH_CARD=y
CONFIG_I2C_HID=m
+CONFIG_USB_CONN_GPIO=y
CONFIG_USB=y
CONFIG_USB_OTG=y
-CONFIG_USB_OTG_WHITELIST=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_HCD_PLATFORM=y
@@ -650,6 +689,8 @@ CONFIG_USB_G_SERIAL=m
CONFIG_TYPEC=y
CONFIG_TYPEC_TCPM=y
CONFIG_TYPEC_TCPCI=y
+CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC_HD3SS3220=m
CONFIG_TYPEC_SWITCH_GPIO=y
CONFIG_MMC=y
CONFIG_MMC_BLOCK_MINORS=32
@@ -668,11 +709,13 @@ CONFIG_MMC_DW_EXYNOS=y
CONFIG_MMC_DW_HI3798CV200=y
CONFIG_MMC_DW_K3=y
CONFIG_MMC_SDHCI_XENON=y
+CONFIG_MMC_SDHCI_AM654=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_SYSCON=y
+CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_DISK=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_CPU=y
@@ -682,22 +725,25 @@ CONFIG_EDAC=y
CONFIG_EDAC_GHES=y
CONFIG_EDAC_SYNOPSYS=y
CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_DS1307=y
+CONFIG_RTC_DRV_DS1307=m
CONFIG_RTC_DRV_MAX77686=y
CONFIG_RTC_DRV_RK808=m
-CONFIG_RTC_DRV_PCF85363=y
+CONFIG_RTC_DRV_PCF85363=m
CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RV8803=m
CONFIG_RTC_DRV_S5M=y
CONFIG_RTC_DRV_DS3232=y
-CONFIG_RTC_DRV_PCF2127=y
+CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_EFI=y
CONFIG_RTC_DRV_CROS_EC=y
+CONFIG_RTC_DRV_FSL_FTM_ALARM=y
CONFIG_RTC_DRV_PL031=y
CONFIG_RTC_DRV_SNVS=y
CONFIG_RTC_DRV_IMX_SC=y
CONFIG_DMADEVICES=y
CONFIG_BCM_SBA_RAID=m
CONFIG_FSL_EDMA=y
+CONFIG_FSL_QDMA=m
CONFIG_FSL_EDMA_V3=y
CONFIG_IMX_SDMA=y
CONFIG_MV_XOR_V2=y
@@ -705,7 +751,11 @@ CONFIG_MXS_DMA=y
CONFIG_PL330_DMA=y
CONFIG_QCOM_HIDMA_MGMT=y
CONFIG_QCOM_HIDMA=y
+CONFIG_FSL_DPAA2_QDMA=m
CONFIG_DMATEST=y
+CONFIG_DMABUF_HEAPS=y
+CONFIG_DMABUF_HEAPS_SYSTEM=y
+CONFIG_DMABUF_HEAPS_CMA=y
CONFIG_UIO=y
CONFIG_UIO_PCI_GENERIC=y
CONFIG_UIO_IVSHMEM=y
@@ -715,6 +765,7 @@ CONFIG_VFIO_FSL_MC=y
CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO_BALLOON=y
CONFIG_VIRTIO_MMIO=y
+CONFIG_VIRTIO_IVSHMEM=y
CONFIG_XEN_GNTDEV=y
CONFIG_XEN_GRANT_DEV_ALLOC=y
CONFIG_STAGING=y
@@ -726,22 +777,21 @@ CONFIG_ION_SYSTEM_HEAP=y
CONFIG_ION_CMA_HEAP=y
CONFIG_FSL_DPAA2=y
CONFIG_FSL_DPAA2_ETHSW=y
-CONFIG_FSL_DPAA2_MAC=y
-CONFIG_FSL_SDK_DPA=y
CONFIG_FSL_PPFE=y
CONFIG_FSL_PPFE_UTIL_DISABLED=y
-CONFIG_MFD_CROS_EC=y
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=y
CONFIG_CROS_EC_I2C=y
CONFIG_CROS_EC_SPI=y
-CONFIG_COMMON_CLK_VERSATILE=y
-CONFIG_CLK_SP810=y
-CONFIG_CLK_VEXPRESS_OSC=y
+CONFIG_CROS_EC_CHARDEV=m
CONFIG_COMMON_CLK_RK808=y
CONFIG_COMMON_CLK_SCPI=y
CONFIG_COMMON_CLK_CS2000_CP=y
+CONFIG_COMMON_CLK_FSL_SAI=y
CONFIG_COMMON_CLK_S2MPS11=y
CONFIG_COMMON_CLK_XGENE=y
CONFIG_COMMON_CLK_PWM=y
+CONFIG_COMMON_CLK_VC5=y
CONFIG_CLK_IMX8MM=y
CONFIG_CLK_IMX8MN=y
CONFIG_CLK_IMX8MP=y
@@ -756,31 +806,44 @@ CONFIG_ARM_SMMU_V3=y
CONFIG_REMOTEPROC=y
CONFIG_IMX_REMOTEPROC=y
CONFIG_RPMSG_QCOM_GLINK_RPM=y
+CONFIG_SOUNDWIRE=m
+CONFIG_SOUNDWIRE_QCOM=m
CONFIG_SOC_BRCMSTB=y
+CONFIG_FSL_DPAA=y
CONFIG_FSL_MC_DPIO=y
+CONFIG_FSL_RCPM=y
CONFIG_FSL_QIXIS=y
-CONFIG_IMX_SCU_SOC=y
-CONFIG_SECVIO_SC=y
CONFIG_SOC_TI=y
+CONFIG_EXTCON_PTN5150=m
CONFIG_EXTCON_USB_GPIO=y
CONFIG_EXTCON_USBC_CROS_EC=y
CONFIG_IIO=y
CONFIG_IMX8QXP_ADC=y
+CONFIG_MAX9611=m
+CONFIG_QCOM_SPMI_ADC5=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_PWM=y
CONFIG_PWM_CROS_EC=m
+CONFIG_PWM_FSL_FTM=m
CONFIG_PWM_IMX27=y
+CONFIG_PWM_SL28CPLD=m
+CONFIG_SL28CPLD_INTC=y
+CONFIG_MST_IRQ=y
+CONFIG_RESET_BRCMSTB_RESCAL=y
+CONFIG_RESET_IMX7=y
CONFIG_PHY_XGENE=y
CONFIG_PHY_MIXEL_LVDS=y
CONFIG_PHY_MIXEL_LVDS_COMBO=y
+CONFIG_PHY_CADENCE_SALVO=y
CONFIG_PHY_FSL_IMX8MP_LVDS=y
CONFIG_PHY_MIXEL_MIPI_DPHY=y
CONFIG_PHY_SAMSUNG_HDMI_PHY=y
CONFIG_PHY_QCOM_USB_HS=y
CONFIG_PHY_SAMSUNG_USB2=y
+CONFIG_ARM_SMMU_V3_PMU=m
CONFIG_FSL_IMX8_DDR_PMU=y
CONFIG_HISI_PMU=y
CONFIG_NVMEM_IMX_OCOTP=y
@@ -793,9 +856,10 @@ CONFIG_OF_FPGA_REGION=m
CONFIG_TEE=y
CONFIG_OPTEE=y
CONFIG_MUX_MMIO=y
+CONFIG_SLIM_QCOM_CTRL=m
+CONFIG_INTERCONNECT=y
CONFIG_MXC_SIM=y
CONFIG_MXC_EMVSIM=y
-CONFIG_MXC_MLB150=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_EXT4_FS_POSIX_ACL=y
@@ -833,20 +897,18 @@ CONFIG_CRYPTO_CTS=m
CONFIG_CRYPTO_LRW=m
CONFIG_CRYPTO_OFB=m
CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_XTS=m
CONFIG_CRYPTO_XCBC=m
CONFIG_CRYPTO_VMAC=m
CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MD5=m
CONFIG_CRYPTO_RMD128=m
CONFIG_CRYPTO_RMD160=m
CONFIG_CRYPTO_RMD256=m
CONFIG_CRYPTO_RMD320=m
-CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_STREEBOG=m
CONFIG_CRYPTO_TGR192=m
CONFIG_CRYPTO_WP512=m
CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
CONFIG_CRYPTO_BLOWFISH=m
CONFIG_CRYPTO_CAMELLIA=m
CONFIG_CRYPTO_CAST5=m
@@ -856,26 +918,31 @@ CONFIG_CRYPTO_KHAZAD=m
CONFIG_CRYPTO_SALSA20=m
CONFIG_CRYPTO_SEED=m
CONFIG_CRYPTO_SERPENT=m
-CONFIG_CRYPTO_SM4=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TWOFISH=m
CONFIG_CRYPTO_ANSI_CPRNG=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=y
-CONFIG_CRYPTO_DEV_FSL_CAAM=y
-CONFIG_CRYPTO_DEV_FSL_CAAM_SM=y
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_SECVIO=m
+CONFIG_CRYPTO_DEV_FSL_CAAM=m
CONFIG_CRYPTO_DEV_FSL_CAAM_SM_TEST=m
-CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=y
+CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=m
+CONFIG_CRYPTO_DEV_CCREE=m
+CONFIG_CRYPTO_DEV_HISI_SEC2=m
+CONFIG_CRYPTO_DEV_HISI_ZIP=m
+CONFIG_CRYPTO_DEV_HISI_HPRE=m
+CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m
CONFIG_INDIRECT_PIO=y
-CONFIG_CMA_SIZE_MBYTES=320
+CONFIG_CRC_CCITT=m
+CONFIG_CMA_SIZE_MBYTES=32
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_INFO=y
-CONFIG_DEBUG_FS=y
CONFIG_MAGIC_SYSRQ=y
+CONFIG_DEBUG_FS=y
CONFIG_DEBUG_KERNEL=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_PREEMPT is not set
# CONFIG_FTRACE is not set
-CONFIG_MEMTEST=y
CONFIG_CORESIGHT=y
CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y
CONFIG_CORESIGHT_SOURCE_ETM4X=y
+CONFIG_MEMTEST=y
diff --git a/recipes-kernel/linux/linux-imx_5.4.bb b/recipes-kernel/linux/linux-imx_5.10.bb
index ad8e5957..62ecf4bc 100644
--- a/recipes-kernel/linux/linux-imx_5.4.bb
+++ b/recipes-kernel/linux/linux-imx_5.10.bb
@@ -13,20 +13,20 @@ i.MX Family Reference Boards. It includes support for many IPs such as GPU, VPU
require recipes-kernel/linux/linux-imx.inc
LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
DEPENDS += "lzop-native bc-native"
-SRCBRANCH = "imx_5.4.70_2.3.0"
-LOCALVERSION = "-2.3.2"
-SRCREV = "5f2220e87dd8a8fb86f524ea7945ab1d4155bc73"
+SRCBRANCH = "lf-5.10.y"
+LOCALVERSION = "-5.10.52-2.1.0"
+SRCREV = "a11753a89ec610768301d4070e10b8bd60fde8cd"
# PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition
# required by kernel-yocto.bbclass.
#
# LINUX_VERSION define should match to the kernel version referenced by SRC_URI and
# should be updated once patchlevel is merged.
-LINUX_VERSION = "5.4.70"
+LINUX_VERSION = "5.10.52"
DEFAULT_PREFERENCE = "1"
diff --git a/recipes-kernel/linux/linux-qoriq_5.4.bb b/recipes-kernel/linux/linux-qoriq_5.4.bb
index 54fd700c..be587ec3 100644
--- a/recipes-kernel/linux/linux-qoriq_5.4.bb
+++ b/recipes-kernel/linux/linux-qoriq_5.4.bb
@@ -2,7 +2,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
LINUX_VERSION = "5.4.47"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/linux;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/linux;nobranch=1 \
file://0001-Makfefile-linux-5.4-add-warning-cflags-on-LSDK-20.04.patch \
file://0001-perf-tests-bp_account-Make-global-variable-static.patch \
file://0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch \
diff --git a/recipes-kernel/skmm-host/skmm-host_git.bb b/recipes-kernel/skmm-host/skmm-host_git.bb
index 4b111b5d..2f961fb3 100644
--- a/recipes-kernel/skmm-host/skmm-host_git.bb
+++ b/recipes-kernel/skmm-host/skmm-host_git.bb
@@ -5,7 +5,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=99803d8e9a595c0bdb45ca710f353813"
inherit module qoriq_build_64bit_kernel
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-yocto-sdk/skmm-host;protocol=https;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-yocto-sdk/skmm-host;protocol=https;nobranch=1"
SRCREV = "d5912ebdb8d3b29b1e2df52710e8821d1ce3eb80"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/alsa/alsa-lib/0001-add-conf-for-multichannel-support-in-imx.patch b/recipes-multimedia/alsa/alsa-lib/0001-add-conf-for-multichannel-support-in-imx.patch
index 747b62c5..6894deae 100644
--- a/recipes-multimedia/alsa/alsa-lib/0001-add-conf-for-multichannel-support-in-imx.patch
+++ b/recipes-multimedia/alsa/alsa-lib/0001-add-conf-for-multichannel-support-in-imx.patch
@@ -1,4 +1,4 @@
-From cc06048dcd722049f92ab17958760bd798fb4781 Mon Sep 17 00:00:00 2001
+From e6cea74cad98963d3b0b1c267d4988be4263215c Mon Sep 17 00:00:00 2001
From: Shengjiu Wang <b02247@freescale.com>
Date: Thu, 5 Jun 2014 17:37:47 +0800
Subject: [PATCH] add conf for multichannel support in imx
@@ -6,9 +6,10 @@ Subject: [PATCH] add conf for multichannel support in imx
Upstream Status: Inappropriate [platform specific]
Signed-off-by: Shengjiu Wang <b02247@freescale.com>
+
---
- src/conf/cards/CS42888.conf | 94 ++++++++++++++++++++++++++++++++++++++++++++
- src/conf/cards/IMX-HDMI.conf | 67 +++++++++++++++++++++++++++++++
+ src/conf/cards/CS42888.conf | 94 ++++++++++++++++++++++++++++++++++++
+ src/conf/cards/IMX-HDMI.conf | 67 +++++++++++++++++++++++++
src/conf/cards/Makefile.am | 4 +-
src/conf/cards/aliases.conf | 2 +
4 files changed, 166 insertions(+), 1 deletion(-)
@@ -204,18 +205,15 @@ index 00999f0..fbf0697 100644
if BUILD_ALISP
cfg_files += aliases.alisp
diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf
-index 18a920f..2c422ee 100644
+index 18a920f..7a4f444 100644
--- a/src/conf/cards/aliases.conf
+++ b/src/conf/cards/aliases.conf
@@ -57,6 +57,8 @@ CMI8786 cards.CMI8788
CMI8787 cards.CMI8788
pistachio cards.pistachio-card
VC4-HDMI cards.vc4-hdmi
-+cs42888-audio cards.CS42888
++imx-cs42888 cards.CS42888
+imx-hdmi-soc cards.IMX-HDMI
<confdir:pcm/default.conf>
<confdir:pcm/dmix.conf>
---
-2.7.4
-
diff --git a/recipes-multimedia/alsa/alsa-lib/0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch b/recipes-multimedia/alsa/alsa-lib/0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch
index 4d28a77f..1d58aeba 100755..100644
--- a/recipes-multimedia/alsa/alsa-lib/0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch
+++ b/recipes-multimedia/alsa/alsa-lib/0004-pcm-Don-t-store-the-state-for-SND_PCM_STATE_SUSPENDE.patch
@@ -1,7 +1,7 @@
-From 93607819d90ddf9bbdad8bbbe4af5d917ca572dc Mon Sep 17 00:00:00 2001
+From 754e0c6112a181b30bd46aa13812f37db01c3387 Mon Sep 17 00:00:00 2001
From: Shengjiu Wang <shengjiu.wang@freescale.com>
Date: Tue, 10 May 2016 15:09:26 +0800
-Subject: [PATCH 2/2] pcm: Don't store the state for SND_PCM_STATE_SUSPENDED
+Subject: [PATCH] pcm: Don't store the state for SND_PCM_STATE_SUSPENDED
The resume function don't update the dmix->state, if store SUSPENDED
state in snd_pcm_dmix_state, the write function after resume will
@@ -13,6 +13,7 @@ for dmix,dshare,dsnoop.
Upstream-Status: Pending
Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
+
---
src/pcm/pcm_dmix.c | 2 +-
src/pcm/pcm_dshare.c | 2 +-
@@ -20,10 +21,10 @@ Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/pcm/pcm_dmix.c b/src/pcm/pcm_dmix.c
-index a6a8f3a..89c07d1 100644
+index 5b7472d..e08e46f 100644
--- a/src/pcm/pcm_dmix.c
+++ b/src/pcm/pcm_dmix.c
-@@ -466,9 +466,9 @@ static snd_pcm_state_t snd_pcm_dmix_state(snd_pcm_t *pcm)
+@@ -460,9 +460,9 @@ static snd_pcm_state_t snd_pcm_dmix_state(snd_pcm_t *pcm)
snd_pcm_state_t state;
state = snd_pcm_state(dmix->spcm);
switch (state) {
@@ -35,10 +36,10 @@ index a6a8f3a..89c07d1 100644
case SND_PCM_STATE_XRUN:
if ((err = snd_pcm_direct_slave_recover(dmix)) < 0)
diff --git a/src/pcm/pcm_dshare.c b/src/pcm/pcm_dshare.c
-index 7cdfea2..e0b4ea7 100644
+index 8a67257..8ba61b4 100644
--- a/src/pcm/pcm_dshare.c
+++ b/src/pcm/pcm_dshare.c
-@@ -261,9 +261,9 @@ static snd_pcm_state_t snd_pcm_dshare_state(snd_pcm_t *pcm)
+@@ -258,9 +258,9 @@ static snd_pcm_state_t snd_pcm_dshare_state(snd_pcm_t *pcm)
snd_pcm_state_t state;
state = snd_pcm_state(dshare->spcm);
switch (state) {
@@ -50,10 +51,10 @@ index 7cdfea2..e0b4ea7 100644
case SND_PCM_STATE_XRUN:
if ((err = snd_pcm_direct_slave_recover(dshare)) < 0)
diff --git a/src/pcm/pcm_dsnoop.c b/src/pcm/pcm_dsnoop.c
-index 539b671..03df6ff 100644
+index c6e8cd2..9610482 100644
--- a/src/pcm/pcm_dsnoop.c
+++ b/src/pcm/pcm_dsnoop.c
-@@ -212,9 +212,9 @@ static snd_pcm_state_t snd_pcm_dsnoop_state(snd_pcm_t *pcm)
+@@ -208,9 +208,9 @@ static snd_pcm_state_t snd_pcm_dsnoop_state(snd_pcm_t *pcm)
snd_pcm_state_t state;
state = snd_pcm_state(dsnoop->spcm);
switch (state) {
@@ -64,6 +65,3 @@ index 539b671..03df6ff 100644
return state;
case SND_PCM_STATE_XRUN:
if ((err = snd_pcm_direct_slave_recover(dsnoop)) < 0)
---
-2.7.4
-
diff --git a/recipes-multimedia/alsa/alsa-lib/0005-add-ak4458-conf-for-multichannel-support.patch b/recipes-multimedia/alsa/alsa-lib/0005-add-ak4458-conf-for-multichannel-support.patch
index a07f60d6..63af83f7 100644
--- a/recipes-multimedia/alsa/alsa-lib/0005-add-ak4458-conf-for-multichannel-support.patch
+++ b/recipes-multimedia/alsa/alsa-lib/0005-add-ak4458-conf-for-multichannel-support.patch
@@ -1,7 +1,14 @@
-From 1641ce8c724018365d7fa598f9a70c6492e7c271 Mon Sep 17 00:00:00 2001
+From bbfa5f555f8d2c448c9f36fbea11ea3e32dcdcc6 Mon Sep 17 00:00:00 2001
From: Shengjiu Wang <shengjiu.wang@nxp.com>
Date: Wed, 31 Jan 2018 15:06:53 +0800
Subject: [PATCH] add ak4458 conf for multichannel support
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
one limitation is that ALSA and pulseaudio only support
maximum 8 channels, but ak4458 may support 16 channels
@@ -9,17 +16,19 @@ maximum 8 channels, but ak4458 may support 16 channels
Upstream-Status: Inappropriate [i.MX specific]
Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
+
---
- src/conf/cards/AK4458.conf | 74 +++++++++++++++++++++++++++++++++++++++++++++
+ src/conf/cards/AK4458.conf | 74 +++++++++++++++++++++++++++++++++++++
src/conf/cards/Makefile.am | 3 +-
src/conf/cards/aliases.conf | 1 +
3 files changed, 77 insertions(+), 1 deletion(-)
create mode 100644 src/conf/cards/AK4458.conf
-Index: alsa-lib-1.1.6/src/conf/cards/AK4458.conf
-===================================================================
+diff --git a/src/conf/cards/AK4458.conf b/src/conf/cards/AK4458.conf
+new file mode 100644
+index 0000000..3b5b195
--- /dev/null
-+++ alsa-lib-1.1.6/src/conf/cards/AK4458.conf
++++ b/src/conf/cards/AK4458.conf
@@ -0,0 +1,74 @@
+#
+# Configuration for the AK4458 chip
@@ -95,10 +104,10 @@ Index: alsa-lib-1.1.6/src/conf/cards/AK4458.conf
+ }
+ slave.channels 8
+}
-Index: alsa-lib-1.1.6/src/conf/cards/Makefile.am
-===================================================================
---- alsa-lib-1.1.6.orig/src/conf/cards/Makefile.am
-+++ alsa-lib-1.1.6/src/conf/cards/Makefile.am
+diff --git a/src/conf/cards/Makefile.am b/src/conf/cards/Makefile.am
+index fbf0697..34fa5a3 100644
+--- a/src/conf/cards/Makefile.am
++++ b/src/conf/cards/Makefile.am
@@ -60,7 +60,8 @@ cfg_files = aliases.conf \
VXPocket.conf \
VXPocket440.conf \
@@ -109,13 +118,13 @@ Index: alsa-lib-1.1.6/src/conf/cards/Makefile.am
if BUILD_ALISP
cfg_files += aliases.alisp
-Index: alsa-lib-1.1.6/src/conf/cards/aliases.conf
-===================================================================
---- alsa-lib-1.1.6.orig/src/conf/cards/aliases.conf
-+++ alsa-lib-1.1.6/src/conf/cards/aliases.conf
+diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf
+index 7a4f444..e41f89e 100644
+--- a/src/conf/cards/aliases.conf
++++ b/src/conf/cards/aliases.conf
@@ -59,6 +59,7 @@ pistachio cards.pistachio-card
VC4-HDMI cards.vc4-hdmi
- cs42888-audio cards.CS42888
+ imx-cs42888 cards.CS42888
imx-hdmi-soc cards.IMX-HDMI
+ak4458-audio cards.AK4458
diff --git a/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch b/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch
index d72fb02c..3b5f90ec 100755..100644
--- a/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch
+++ b/recipes-multimedia/alsa/alsa-lib/0006-add-conf-for-iMX-XCVR-sound-card.patch
@@ -1,4 +1,4 @@
-From 2fd2737a1a0553e164d1b4f78687edf573f8e621 Mon Sep 17 00:00:00 2001
+From dec68918e07d6a7f4397b55b35dd5bed9c114ea9 Mon Sep 17 00:00:00 2001
From: Viorel Suman <viorel.suman@nxp.com>
Date: Mon, 9 Mar 2020 14:25:46 +0200
Subject: [PATCH] add conf for iMX XCVR sound card
@@ -6,8 +6,9 @@ Subject: [PATCH] add conf for iMX XCVR sound card
Upstream Status: Pending
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
+
---
- src/conf/cards/IMX-XCVR.conf | 69 ++++++++++++++++++++++++++++++++++++++++++++
+ src/conf/cards/IMX-XCVR.conf | 69 ++++++++++++++++++++++++++++++++++++
src/conf/cards/Makefile.am | 3 +-
src/conf/cards/aliases.conf | 1 +
3 files changed, 72 insertions(+), 1 deletion(-)
@@ -103,17 +104,14 @@ index 34fa5a3..70b9bab 100644
if BUILD_ALISP
cfg_files += aliases.alisp
diff --git a/src/conf/cards/aliases.conf b/src/conf/cards/aliases.conf
-index 5d92ac7..c195848 100644
+index e41f89e..d9bfcd6 100644
--- a/src/conf/cards/aliases.conf
+++ b/src/conf/cards/aliases.conf
@@ -60,6 +60,7 @@ VC4-HDMI cards.vc4-hdmi
- cs42888-audio cards.CS42888
+ imx-cs42888 cards.CS42888
imx-hdmi-soc cards.IMX-HDMI
ak4458-audio cards.AK4458
+imx-audio-xcvr cards.IMX-XCVR
<confdir:pcm/default.conf>
<confdir:pcm/dmix.conf>
---
-2.7.4
-
diff --git a/recipes-multimedia/alsa/imx-alsa-plugins_1.0.26.bb b/recipes-multimedia/alsa/imx-alsa-plugins_1.0.26.bb
index db2f71fd..237b4925 100644
--- a/recipes-multimedia/alsa/imx-alsa-plugins_1.0.26.bb
+++ b/recipes-multimedia/alsa/imx-alsa-plugins_1.0.26.bb
@@ -18,7 +18,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f"
inherit autotools pkgconfig use-imx-headers
SRCBRANCH = "MM_04.05.01_1909_L4.19.35"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-alsa-plugins.git;protocol=https;branch=${SRCBRANCH}"
+SRC_URI = "git://github.com/nxp-imx/imx-alsa-plugins.git;protocol=https;branch=${SRCBRANCH}"
SRCREV = "cde60d68ab2acee913dbfacb8aabb53d87dd3e38"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
deleted file mode 100644
index 3f1ec99d..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.0.bb
+++ /dev/null
@@ -1,70 +0,0 @@
-SUMMARY = "Libav-based GStreamer 1.x plugin"
-HOMEPAGE = "http://gstreamer.freedesktop.org/"
-SECTION = "multimedia"
-
-LICENSE = "GPLv2+ & LGPLv2+ & ( (GPLv2+ & LGPLv2.1+) | (GPLv3+ & LGPLv3+) )"
-LICENSE_FLAGS = "commercial"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://COPYING.LIB;md5=6762ed442b3822387a51c92d928ead0d \
- file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
- file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
- file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \
- file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
-
-SRC_URI = "http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz \
- file://0001-Disable-yasm-for-libav-when-disable-yasm.patch \
- file://workaround-to-build-gst-libav-for-i586-with-gcc.patch \
- file://mips64_cpu_detection.patch \
- file://0001-configure-check-for-armv7ve-variant.patch \
- file://0001-fix-host-contamination.patch \
- "
-SRC_URI[md5sum] = "e3a201a45985ddc1327cd496046ca818"
-SRC_URI[sha256sum] = "dfac119043a9cfdcacd7acde77f674ab172cf2537b5812be52f49e9cddc53d9a"
-
-S = "${WORKDIR}/gst-libav-${PV}"
-
-DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base zlib bzip2 xz"
-
-inherit autotools pkgconfig upstream-version-is-even gtk-doc
-
-# CAUTION: Using the system libav is not recommended. Since the libav API is changing all the time,
-# compilation errors (and other, more subtle bugs) can happen. It is usually better to rely on the
-# libav copy included in the gst-libav package.
-PACKAGECONFIG ??= "orc yasm"
-
-PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl,"
-PACKAGECONFIG[libav] = "--with-system-libav,,libav"
-PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc"
-PACKAGECONFIG[yasm] = "--enable-yasm,--disable-yasm,nasm-native"
-PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,valgrind"
-
-GSTREAMER_1_0_DEBUG ?= "--disable-debug"
-
-LIBAV_EXTRA_CONFIGURE = "--with-libav-extra-configure"
-
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
- --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
- --ranlib='${RANLIB}' \
- ${GSTREAMER_1_0_DEBUG} \
- --cross-prefix='${HOST_PREFIX}'"
-
-# Disable assembly optimizations for X32, as this libav lacks the support
-PACKAGECONFIG_remove_linux-gnux32 = "yasm"
-LIBAV_EXTRA_CONFIGURE_COMMON_ARG_append_linux-gnux32 = " --disable-asm"
-
-LIBAV_EXTRA_CONFIGURE_COMMON = \
-'${LIBAV_EXTRA_CONFIGURE}="${LIBAV_EXTRA_CONFIGURE_COMMON_ARG}"'
-
-EXTRA_OECONF = "${LIBAV_EXTRA_CONFIGURE_COMMON}"
-
-FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
-FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.la"
-FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
-
-# http://errors.yoctoproject.org/Errors/Details/20493/
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-
-# ffmpeg/libav disables PIC on some platforms (e.g. x86-32)
-INSANE_SKIP_${PN} = "textrel"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.0.bb
new file mode 100644
index 00000000..d67313a6
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Libav-based GStreamer 1.x plugin"
+DESCRIPTION = "Contains a GStreamer plugin for using the encoders, decoders, \
+muxers, and demuxers provided by FFmpeg."
+HOMEPAGE = "http://gstreamer.freedesktop.org/"
+SECTION = "multimedia"
+
+# ffmpeg has comercial license flags so add it as we need ffmpeg as a dependency
+LICENSE_FLAGS = "commercial"
+LICENSE = "LGPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
+ file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
+ "
+
+SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz"
+SRC_URI[sha256sum] = "42f93f5ce9a3fc22051e5f783a4574b56ebf213f331f75dcbc3552459bd3a06a"
+
+S = "${WORKDIR}/gst-libav-${PV}"
+
+DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg"
+
+inherit meson pkgconfig upstream-version-is-even
+
+FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
+FILES_${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.0.imx.bb
index 6925611a..3f90395b 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.3.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.0.imx.bb
@@ -3,28 +3,20 @@ require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
DEPENDS_append_imxgpu2d = " virtual/libg2d"
DEPENDS_append_mx8 = " libdrm"
-PACKAGECONFIG_append_mx8 = " kms"
+PACKAGECONFIG_append_mx8 = " kms tinycompress"
DEFAULT_PREFERENCE = "-1"
PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}"
PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
-GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https"
-SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
+GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https"
+SRCBRANCH = "MM_04.06.01_2105_L5.10.y"
SRC_URI = " \
${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} \
- file://0001-ext-wayland-fix-meson-build-in-nxp-fork.patch \
- file://0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch \
- file://opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
- file://0001-opencv-allow-compilation-against-4.4.x.patch \
- file://0001-vulkan-Drop-use-of-VK_RESULT_BEGIN_RANGE.patch \
- file://fix-maybe-uninitialized-warnings-when-compiling-with-Os.patch \
- file://avoid-including-sys-poll.h-directly.patch \
- file://ensure-valid-sentinels-for-gst_structure_get-etc.patch \
"
-SRCREV = "cf7f2d0125424ce0d63ddc7f1eadc9ef71d10db1"
+SRCREV = "227af57d23cb6b3564fc94446ab2c9fe8c8cff22"
S = "${WORKDIR}/git"
@@ -42,7 +34,7 @@ PACKAGECONFIG_GL_imxpxp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl
PACKAGECONFIG ??= " \
${GSTREAMER_ORC} \
${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
- ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
${PACKAGECONFIG_GL} \
bz2 closedcaption curl dash dtls hls rsvg sbc smoothstreaming sndfile \
@@ -91,6 +83,7 @@ PACKAGECONFIG[smoothstreaming] = "-Dsmoothstreaming=enabled,-Dsmoothstreaming=di
PACKAGECONFIG[sndfile] = "-Dsndfile=enabled,-Dsndfile=disabled,libsndfile1"
PACKAGECONFIG[srtp] = "-Dsrtp=enabled,-Dsrtp=disabled,libsrtp"
PACKAGECONFIG[tinyalsa] = "-Dtinyalsa=enabled,-Dtinyalsa=disabled,tinyalsa"
+PACKAGECONFIG[tinycompress] = "-Dtinycompress=enabled,-Dtinycompress=disabled,tinycompress"
PACKAGECONFIG[ttml] = "-Dttml=enabled,-Dttml=disabled,libxml2 pango cairo"
PACKAGECONFIG[uvch264] = "-Duvch264=enabled,-Duvch264=disabled,libusb1 libgudev"
PACKAGECONFIG[voaacenc] = "-Dvoaacenc=enabled,-Dvoaacenc=disabled,vo-aacenc"
@@ -102,9 +95,6 @@ PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice"
PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing"
PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar"
-# Following package config in not available in NXP fork:
-#PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms"
-
# these plugins currently have no corresponding library in OE-core or meta-openembedded:
# aom androidmedia applemedia bs2b chromaprint d3dvideosink
# directsound dts fdkaac gme gsm iq kate ladspa lv2 mpeg2enc
@@ -139,8 +129,6 @@ EXTRA_OEMESON += " \
-Dmplex=disabled \
-Dmsdk=disabled \
-Dmusepack=disabled \
- -Dnvdec=disabled \
- -Dnvenc=disabled \
-Dofa=disabled \
-Dopenexr=disabled \
-Dopenmpt=disabled \
@@ -150,7 +138,6 @@ EXTRA_OEMESON += " \
-Dspandsp=disabled \
-Dsrt=disabled \
-Dteletext=disabled \
- -Dvdpau=disabled \
-Dwasapi=disabled \
-Dwildmidi=disabled \
-Dwinks=disabled \
@@ -168,6 +155,7 @@ ARM_INSTRUCTION_SET_armv5 = "arm"
FILES_${PN}-freeverb += "${datadir}/gstreamer-1.0/presets/GstFreeverb.prs"
FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/1.0/opencv*"
+FILES_${PN}-transcode += "${datadir}/gstreamer-1.0/encoding-profiles"
FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs"
# include fragment shaders
FILES_${PN}-opengl += "/usr/share/*.fs"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch
deleted file mode 100644
index 61baf2f9..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gst-libs-gst-gl-wayland-fix-meson-build.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From a145a129a8122f21c1e243b3dc2e5708f4c13bef Mon Sep 17 00:00:00 2001
-From: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
-Date: Thu, 23 Jan 2020 12:54:10 +0000
-Subject: [PATCH] gst-libs gst gl wayland: fix meson build
-
-Since introduction of meson build system, modifications introduced in
-NXP fork are breaking the build, where xdg-shell-client-protocol.h
-is searched via relative path. This code is only present in NXP fork and
-should be removed.
-
-This reverts commit [48bde732b00fb42df636ebbaf3b06e5e7971c206]
-("wayland: fix build break in yocto") from upstream.
-
-Upstream-Status: Pending
-
-Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
----
- gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h
-index d1795591f..89dedd9b5 100644
---- a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h
-+++ b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h
-@@ -22,7 +22,7 @@
- #define __GST_GL_WINDOW_WAYLAND_EGL_H__
-
- #include <wayland-client.h>
--#include <gst/gl/wayland/xdg-shell-client-protocol.h>
-+#include "xdg-shell-client-protocol.h"
- #include <wayland-egl.h>
- #include <wayland-cursor.h>
-
---
-2.17.1
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch
deleted file mode 100644
index da152531..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-From def285f623bc30b9d1acede00393188e693cc741 Mon Sep 17 00:00:00 2001
-From: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
-Date: Sat, 22 Feb 2020 13:22:57 +0000
-Subject: [PATCH] gstreamer-plugins-base: fix meson build in nxp fork
-
-- Add missing IMX header file into istall target;
-- Allocator's meta data files are missing in meson.build, bring them back;
-- Add ION NXP-specific allocator to meson.build;
-- Introduce additional configuration option to pass extra include paths,
- which are required to build ION allocator;
-- Some video sources are missing, bring them also into the build;
-
-Upstream-Status: Pending
-
-Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
----
- gst-libs/gst/allocators/meson.build | 30 +++++++++++++++++++++++++++--
- gst-libs/gst/gl/gstglconfig.h.meson | 2 ++
- gst-libs/gst/gl/meson.build | 20 +++++++++++++++++++
- gst-libs/gst/meson.build | 6 ++++++
- gst-libs/gst/video/meson.build | 11 +++++++++++
- meson.build | 3 +++
- meson_options.txt | 4 ++++
- 7 files changed, 74 insertions(+), 2 deletions(-)
-
-diff --git a/gst-libs/gst/allocators/meson.build b/gst-libs/gst/allocators/meson.build
-index 364baeebf..30b1495c9 100644
---- a/gst-libs/gst/allocators/meson.build
-+++ b/gst-libs/gst/allocators/meson.build
-@@ -5,18 +5,44 @@ gst_allocators_headers = [
- 'gstphysmemory.h',
- 'gstdmabuf.h',
- ]
-+
-+imx_gst_allocators_headers = [
-+ 'gstphymemmeta.h',
-+ 'gstdmabufmeta.h',
-+ 'gstallocatorphymem.h',
-+]
-+
-+if cc.has_header('linux/ion.h', include_directories : imx_includes)
-+ imx_gst_allocators_headers += [
-+ 'gstionmemory.h',
-+ ]
-+endif
-+
-+gst_allocators_headers += imx_gst_allocators_headers
-+
- install_headers(gst_allocators_headers, subdir : 'gstreamer-1.0/gst/allocators/')
-
- gst_allocators_sources = [ 'gstdmabuf.c', 'gstfdmemory.c', 'gstphysmemory.c']
-+
-+imx_gst_allocators_sources = ['gstdmabufmeta.c', 'gstphymemmeta.c', 'gstallocatorphymem.c']
-+
-+if cc.has_header('linux/ion.h', include_directories : imx_includes)
-+ imx_gst_allocators_sources += [
-+ 'gstionmemory.c',
-+ ]
-+endif
-+
-+gst_allocators_sources += imx_gst_allocators_sources
-+
- gstallocators = library('gstallocators-@0@'.format(api_version),
- gst_allocators_sources,
- c_args : gst_plugins_base_args + ['-DBUILDING_GST_ALLOCATORS'],
-- include_directories: [configinc, libsinc],
-+ include_directories: [configinc, libsinc, imx_includes],
- version : libversion,
- soversion : soversion,
- darwin_versions : osxversion,
- install : true,
-- dependencies : [gst_dep],
-+ dependencies : [video_dep, gst_dep],
- )
-
- allocators_gen_sources = []
-diff --git a/gst-libs/gst/gl/gstglconfig.h.meson b/gst-libs/gst/gl/gstglconfig.h.meson
-index 11795c16c..66cd54a7e 100644
---- a/gst-libs/gst/gl/gstglconfig.h.meson
-+++ b/gst-libs/gst/gl/gstglconfig.h.meson
-@@ -32,8 +32,10 @@ G_BEGIN_DECLS
- #mesondefine GST_GL_HAVE_PLATFORM_CGL
- #mesondefine GST_GL_HAVE_PLATFORM_EAGL
-
-+#mesondefine GST_GL_HAVE_IONDMA
- #mesondefine GST_GL_HAVE_DMABUF
- #mesondefine GST_GL_HAVE_VIV_DIRECTVIV
-+#mesondefine GST_GL_HAVE_PHYMEM
-
- #mesondefine GST_GL_HAVE_GLEGLIMAGEOES
- #mesondefine GST_GL_HAVE_GLCHAR
-diff --git a/gst-libs/gst/gl/meson.build b/gst-libs/gst/gl/meson.build
-index 0e0ba1b7d..6f6c6866d 100644
---- a/gst-libs/gst/gl/meson.build
-+++ b/gst-libs/gst/gl/meson.build
-@@ -123,8 +123,10 @@ glconf_options = [
- 'GST_GL_HAVE_PLATFORM_CGL',
- 'GST_GL_HAVE_PLATFORM_EAGL',
-
-+ 'GST_GL_HAVE_IONDMA',
- 'GST_GL_HAVE_DMABUF',
- 'GST_GL_HAVE_VIV_DIRECTVIV',
-+ 'GST_GL_HAVE_PHYMEM',
-
- 'GST_GL_HAVE_GLEGLIMAGEOES',
- 'GST_GL_HAVE_GLCHAR',
-@@ -146,6 +148,18 @@ if unneeded_dep.found()
- error ('Found unfindable dependency')
- endif
-
-+if cc.has_header('linux/ion.h', include_directories : imx_includes)
-+ glconf.set10('GST_GL_HAVE_IONDMA', 1)
-+ gl_sources += [
-+ 'gstglmemorydma.c',
-+ ]
-+ gl_headers += [
-+ 'gstglmemorydma.h',
-+ ]
-+else
-+ error('i.MX platform requires ION support to be enabled!')
-+endif
-+
- # OpenGL/GLES2 libraries
- gl_lib_deps = []
- # GL platform - EGL, GLX, CGL, WGL, etc
-@@ -501,6 +515,7 @@ if need_platform_egl != 'no'
- glconf.set10('GST_GL_HAVE_DMABUF', 1)
- endif
-
-+
- egl_includes = '''
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-@@ -808,9 +823,14 @@ if need_platform_egl != 'no' and need_win_viv_fb != 'no'
- enabled_gl_winsys += 'viv-fb'
- glconf.set10('GST_GL_HAVE_WINDOW_VIV_FB', 1)
- glconf.set10('GST_GL_HAVE_VIV_DIRECTVIV', 1)
-+ glconf.set10('GST_GL_HAVE_PHYMEM', 1)
- gl_sources += [
- 'viv-fb/gstgldisplay_viv_fb.c',
- 'viv-fb/gstglwindow_viv_fb_egl.c',
-+ 'gstglphymemory.c',
-+ ]
-+ gl_headers += [
-+ 'gstglphymemory.h',
- ]
- gl_cpp_args += ['-DEGL_API_FB']
- endif
-diff --git a/gst-libs/gst/meson.build b/gst-libs/gst/meson.build
-index cd3b5b043..1935f46e5 100644
---- a/gst-libs/gst/meson.build
-+++ b/gst-libs/gst/meson.build
-@@ -11,3 +11,9 @@ subdir('app')
- subdir('allocators')
- # FIXME: gl deps are automagic
- subdir('gl')
-+
-+# Install dangling imx header, required by other plugins
-+gst_imx_header = [
-+ 'gstimxcommon.h',
-+]
-+install_headers(gst_imx_header, subdir : 'gstreamer-1.0/')
-diff --git a/gst-libs/gst/video/meson.build b/gst-libs/gst/video/meson.build
-index b4dfcdf65..d8531f199 100644
---- a/gst-libs/gst/video/meson.build
-+++ b/gst-libs/gst/video/meson.build
-@@ -35,6 +35,11 @@ video_sources = [
- 'videooverlay.c',
- ]
-
-+imx_video_sources = [
-+ 'gstvideohdr10meta.c',
-+]
-+video_sources += imx_video_sources
-+
- video_headers = [
- 'colorbalance.h',
- 'colorbalancechannel.h',
-@@ -70,6 +75,12 @@ video_headers = [
- 'video-overlay-composition.h',
- 'video-multiview.h',
- ]
-+
-+imx_video_headers = [
-+ 'gstvideohdr10meta.h',
-+]
-+video_headers += imx_video_headers
-+
- install_headers(video_headers, subdir : 'gstreamer-1.0/gst/video/')
-
- video_mkenum_headers = [
-diff --git a/meson.build b/meson.build
-index 2fca28205..7781934cd 100644
---- a/meson.build
-+++ b/meson.build
-@@ -103,6 +103,9 @@ if glib_checks.disabled() or (glib_checks.auto() and not gst_version_is_dev)
- add_project_arguments('-DG_DISABLE_CHECKS', language: 'c')
- endif
-
-+# Define i.MX-specific include path as variable from options
-+imx_includes = include_directories(get_option('extra_imx_incdir'))
-+
- check_headers = [
- ['HAVE_DLFCN_H', 'dlfcn.h'],
- ['HAVE_EMMINTRIN_H', 'emmintrin.h'],
-diff --git a/meson_options.txt b/meson_options.txt
-index e7af4dd45..d44401ca6 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -85,3 +85,7 @@ option('package-name', type : 'string', yield : true,
- description : 'package name to use in plugins')
- option('package-origin', type : 'string', value : 'Unknown package origin', yield : true,
- description : 'package origin URL to use in plugins')
-+
-+# NXP specific options
-+option('extra_imx_incdir', type : 'string', yield : true, description : 'i.MX specific header include path')
-+
---
-2.17.1
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch
deleted file mode 100644
index 55871883..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From f82db8496df8ffb8352248e895258c19f8f4776b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
-Date: Thu, 17 Oct 2019 20:06:24 +0100
-Subject: [PATCH] meson: build gir even when cross-compiling if introspection
- was enabled explicitly
-
-This can be made to work in certain circumstances when
-cross-compiling, so default to not building g-i stuff
-when cross-compiling, but allow it if introspection was
-enabled explicitly via -Dintrospection=enabled.
-
-See gstreamer/gstreamer#454 and gstreamer/gstreamer#381.
-
-Upstream-Status: Backport [30672ba7d134553e59935ddc875104adba26f25c]
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
-
----
- meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 2fca28205..2714af718 100644
---- a/meson.build
-+++ b/meson.build
-@@ -355,7 +355,7 @@ endif
-
- gir = find_program('g-ir-scanner', required : get_option('introspection'))
- gnome = import('gnome')
--build_gir = gir.found() and not meson.is_cross_build()
-+build_gir = gir.found() and (not meson.is_cross_build() or get_option('introspection').enabled())
- gir_init_section = [ '--add-init-section=extern void gst_init(gint*,gchar**);' + \
- 'g_setenv("GST_REGISTRY_DISABLE", "yes", TRUE);' + \
- 'g_setenv("GST_REGISTRY_1.0", "@0@", TRUE);'.format(meson.current_build_dir() + '/gir_empty_registry.reg') + \
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-viv-fb-code-must-link-against-libg2d.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-viv-fb-code-must-link-against-libg2d.patch
deleted file mode 100644
index c761619f..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-meson-viv-fb-code-must-link-against-libg2d.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 8153e86dac04076fb80fc272c8374d4ba019fa3c Mon Sep 17 00:00:00 2001
-From: Zan Dobersek <zdobersek@igalia.com>
-Date: Wed, 4 Nov 2020 14:02:10 +0100
-Subject: [PATCH] meson: viv-fb code must link against libg2d
-
-Find the libg2d library and link against it, if necessary, avoiding
-linking errors for couple of libg2d symbols.
-
-Upstream-Status: Pending
-
-Signed-off-by: Zan Dobersek <zdobersek@igalia.com>
----
- gst-libs/gst/gl/meson.build | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/gst-libs/gst/gl/meson.build b/gst-libs/gst/gl/meson.build
-index 6f6c6866d..fb6a9aabf 100644
---- a/gst-libs/gst/gl/meson.build
-+++ b/gst-libs/gst/gl/meson.build
-@@ -818,9 +818,11 @@ if need_win_gbm != 'no'
- endif
-
- if need_platform_egl != 'no' and need_win_viv_fb != 'no'
-- if egl_dep.found() and cc.has_function ('fbGetDisplay', dependencies : egl_dep)
-+ g2d_dep = cc.find_library('g2d', required : false)
-+ if egl_dep.found() and g2d_dep.found() and cc.has_function ('fbGetDisplay', dependencies : egl_dep)
- if cc.has_function ('glTexDirectVIV', dependencies : gles2_dep)
- enabled_gl_winsys += 'viv-fb'
-+ gl_winsys_deps += [g2d_dep]
- glconf.set10('GST_GL_HAVE_WINDOW_VIV_FB', 1)
- glconf.set10('GST_GL_HAVE_VIV_DIRECTVIV', 1)
- glconf.set10('GST_GL_HAVE_PHYMEM', 1)
-@@ -834,6 +836,8 @@ if need_platform_egl != 'no' and need_win_viv_fb != 'no'
- ]
- gl_cpp_args += ['-DEGL_API_FB']
- endif
-+ else
-+ g2d_dep = unneeded_dep
- endif
- endif
-
---
-2.28.0
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch
deleted file mode 100644
index 9494f622..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0002-meson-Add-variables-for-gir-files.patch
+++ /dev/null
@@ -1,233 +0,0 @@
-From 7a21c86a3facfc7fe8285e764324839b2e55df8a Mon Sep 17 00:00:00 2001
-From: Thibault Saunier <tsaunier@igalia.com>
-Date: Mon, 22 Oct 2018 11:44:37 +0200
-Subject: [PATCH] meson: Add variables for gir files
-
-And flatten list of sources for dependencies
-
-Upstream-Status: Backport [685731e989dc074a4b0d48b6c8062e2738f09719]
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
-
----
- gst-libs/gst/allocators/meson.build | 5 +++--
- gst-libs/gst/app/meson.build | 6 ++++--
- gst-libs/gst/audio/meson.build | 5 +++--
- gst-libs/gst/pbutils/meson.build | 5 +++--
- gst-libs/gst/rtp/meson.build | 6 ++++--
- gst-libs/gst/rtsp/meson.build | 5 +++--
- gst-libs/gst/sdp/meson.build | 6 ++++--
- gst-libs/gst/tag/meson.build | 5 +++--
- gst-libs/gst/video/meson.build | 5 +++--
- 9 files changed, 30 insertions(+), 18 deletions(-)
-
-diff --git a/gst-libs/gst/allocators/meson.build b/gst-libs/gst/allocators/meson.build
-index 364baeebf..56f156dc3 100644
---- a/gst-libs/gst/allocators/meson.build
-+++ b/gst-libs/gst/allocators/meson.build
-@@ -22,7 +22,7 @@ gstallocators = library('gstallocators-@0@'.format(api_version),
- allocators_gen_sources = []
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/allocators/allocators.h' ]
-- allocators_gen_sources += [gnome.generate_gir(gstallocators,
-+ allocators_gir = gnome.generate_gir(gstallocators,
- sources : gst_allocators_sources + gst_allocators_headers,
- namespace : 'GstAllocators',
- nsversion : api_version,
-@@ -33,7 +33,8 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : [gst_dep]
-- )]
-+ )
-+ allocators_gen_sources += allocators_gir
- endif
-
- allocators_dep = declare_dependency(link_with: gstallocators,
-diff --git a/gst-libs/gst/app/meson.build b/gst-libs/gst/app/meson.build
-index 81dd0f42c..7a90f5e10 100644
---- a/gst-libs/gst/app/meson.build
-+++ b/gst-libs/gst/app/meson.build
-@@ -32,7 +32,7 @@ gstapp = library('gstapp-@0@'.format(api_version),
-
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/app/app.h' ]
-- app_gen_sources += [gnome.generate_gir(gstapp,
-+ app_gir = gnome.generate_gir(gstapp,
- sources : app_sources + app_headers + [gstapp_c] + [gstapp_h],
- namespace : 'GstApp',
- nsversion : api_version,
-@@ -43,7 +43,9 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : [gst_dep, gst_base_dep]
-- )]
-+ )
-+
-+ app_gen_sources += app_gir
- endif
-
- app_dep = declare_dependency(link_with: gstapp,
-diff --git a/gst-libs/gst/audio/meson.build b/gst-libs/gst/audio/meson.build
-index 0e4efab2e..2a449d4bf 100644
---- a/gst-libs/gst/audio/meson.build
-+++ b/gst-libs/gst/audio/meson.build
-@@ -153,7 +153,7 @@ gstaudio = library('gstaudio-@0@'.format(api_version),
-
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/audio/audio.h' ]
-- audio_gen_sources += [gnome.generate_gir(gstaudio,
-+ audio_gir = gnome.generate_gir(gstaudio,
- sources : audio_src + audio_headers + [gstaudio_c] + [gstaudio_h],
- namespace : 'GstAudio',
- nsversion : api_version,
-@@ -164,7 +164,8 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : gstaudio_deps
-- )]
-+ )
-+ audio_gen_sources += [audio_gir]
- endif
-
- audio_dep = declare_dependency(link_with : gstaudio,
-diff --git a/gst-libs/gst/pbutils/meson.build b/gst-libs/gst/pbutils/meson.build
-index 2faf62622..0e96722fd 100644
---- a/gst-libs/gst/pbutils/meson.build
-+++ b/gst-libs/gst/pbutils/meson.build
-@@ -63,7 +63,7 @@ pbutils = library('gstpbutils-@0@'.format(api_version),
- pbutils_gen_sources = [gstpbutils_h, gst_pbutils_version_h]
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/pbutils/pbutils.h' ]
-- pbutils_gen_sources += [gnome.generate_gir(pbutils,
-+ pbutils_gir = gnome.generate_gir(pbutils,
- sources : pbutils_sources + pbutils_headers + [gstpbutils_h, gst_pbutils_version_h],
- namespace : 'GstPbutils',
- nsversion : api_version,
-@@ -74,7 +74,8 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : gstpbutils_deps
-- )]
-+ )
-+ pbutils_gen_sources += [pbutils_gir]
- endif
-
- pbutils_dep = declare_dependency(link_with : pbutils,
-diff --git a/gst-libs/gst/rtp/meson.build b/gst-libs/gst/rtp/meson.build
-index f47ec6592..7ea6658d5 100644
---- a/gst-libs/gst/rtp/meson.build
-+++ b/gst-libs/gst/rtp/meson.build
-@@ -49,7 +49,7 @@ gst_rtp = library('gstrtp-@0@'.format(api_version),
- rtp_gen_sources = [gstrtp_enum_h]
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/rtp/rtp.h' ]
-- rtp_gen_sources += [gnome.generate_gir(gst_rtp,
-+ rtp_gir = gnome.generate_gir(gst_rtp,
- sources : rtp_sources + rtp_headers + [gstrtp_enum_c] + [gstrtp_enum_h],
- namespace : 'GstRtp',
- nsversion : api_version,
-@@ -60,7 +60,9 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : gstrtp_deps
-- )]
-+ )
-+
-+ rtp_gen_sources += [rtp_gir]
- endif
-
-
-diff --git a/gst-libs/gst/rtsp/meson.build b/gst-libs/gst/rtsp/meson.build
-index 27e309d5a..3632adceb 100644
---- a/gst-libs/gst/rtsp/meson.build
-+++ b/gst-libs/gst/rtsp/meson.build
-@@ -54,7 +54,7 @@ gst_rtsp = library('gstrtsp-@0@'.format(api_version),
- rtsp_gen_sources = [gstrtsp_h]
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/rtsp/rtsp.h' ]
-- rtsp_gen_sources += [gnome.generate_gir(gst_rtsp,
-+ rtsp_gir = gnome.generate_gir(gst_rtsp,
- sources : rtsp_sources + rtsp_headers + [gstrtsp_c] + [gstrtsp_h],
- namespace : 'GstRtsp',
- nsversion : api_version,
-@@ -65,7 +65,8 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : gstrtsp_deps + [sdp_dep]
-- )]
-+ )
-+ rtsp_gen_sources += [rtsp_gir]
- endif
-
- rtsp_dep = declare_dependency(link_with : gst_rtsp,
-diff --git a/gst-libs/gst/sdp/meson.build b/gst-libs/gst/sdp/meson.build
-index 62c18b732..24cdb5293 100644
---- a/gst-libs/gst/sdp/meson.build
-+++ b/gst-libs/gst/sdp/meson.build
-@@ -23,7 +23,7 @@ gstsdp = library('gstsdp-@0@'.format(api_version),
- sdp_gen_sources = []
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/sdp/sdp.h' ]
-- sdp_gen_sources += [gnome.generate_gir(gstsdp,
-+ sdp_gir = gnome.generate_gir(gstsdp,
- sources : gst_sdp_sources + gst_sdp_headers,
- namespace : 'GstSdp',
- nsversion : api_version,
-@@ -34,7 +34,9 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : rtsp_deps
-- )]
-+ )
-+
-+ sdp_gen_sources += [sdp_gir]
- endif
-
- sdp_dep = declare_dependency(link_with: gstsdp,
-diff --git a/gst-libs/gst/tag/meson.build b/gst-libs/gst/tag/meson.build
-index 27e66fd63..5ec37392a 100644
---- a/gst-libs/gst/tag/meson.build
-+++ b/gst-libs/gst/tag/meson.build
-@@ -93,7 +93,7 @@ gsttag = library('gsttag-@0@'.format(api_version),
-
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/tag/tag.h' ]
-- tag_gen_sources += [gnome.generate_gir(gsttag,
-+ tag_gir = gnome.generate_gir(gsttag,
- sources : tag_sources + tag_headers + [gsttag_h] + [gsttag_c],
- namespace : 'GstTag',
- nsversion : api_version,
-@@ -104,7 +104,8 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : tag_deps
-- )]
-+ )
-+ tag_gen_sources += [tag_gir]
- endif
-
- tag_dep = declare_dependency(link_with: gsttag,
-diff --git a/gst-libs/gst/video/meson.build b/gst-libs/gst/video/meson.build
-index b4dfcdf65..036c3a6a7 100644
---- a/gst-libs/gst/video/meson.build
-+++ b/gst-libs/gst/video/meson.build
-@@ -135,7 +135,7 @@ gstvideo = library('gstvideo-@0@'.format(api_version),
-
- if build_gir
- gst_gir_extra_args = gir_init_section + [ '--c-include=gst/video/video.h' ]
-- video_gen_sources += [gnome.generate_gir(gstvideo,
-+ video_gir = gnome.generate_gir(gstvideo,
- sources : video_sources + video_headers + [gstvideo_c] + [gstvideo_h],
- namespace : 'GstVideo',
- nsversion : api_version,
-@@ -146,7 +146,8 @@ if build_gir
- install : true,
- extra_args : gst_gir_extra_args,
- dependencies : gstvideo_deps
-- )]
-+ )
-+ video_gen_sources += [video_gir]
- endif
-
- video_dep = declare_dependency(link_with : gstvideo,
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0005-viv-fb-Make-sure-config.h-is-included.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch
index 731ba873..b8fc8827 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0005-viv-fb-Make-sure-config.h-is-included.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch
@@ -1,4 +1,4 @@
-From 616cf194dfd26818ed7b776321582b8e0ff9b3f1 Mon Sep 17 00:00:00 2001
+From 70a702af3a3a4afcadbc53d61c4c45f31f96b2cc Mon Sep 17 00:00:00 2001
From: Carlos Rafael Giani <crg7475@mailbox.org>
Date: Tue, 21 May 2019 14:01:11 +0200
Subject: [PATCH] viv-fb: Make sure config.h is included
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0009-glimagesink-Downrank-to-marginal.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch
index fc67a486..94a61465 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0009-glimagesink-Downrank-to-marginal.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0004-glimagesink-Downrank-to-marginal.patch
@@ -1,4 +1,4 @@
-From f18f1206ec44f4154e60546ecb82823f7a6569d7 Mon Sep 17 00:00:00 2001
+From b975be9c4630536ec1315773be29900371d21930 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 24 Sep 2015 19:47:32 +0300
Subject: [PATCH] glimagesink: Downrank to marginal
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/4ef5c91697a141fea7317aff7f0f28e5a861db99.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/4ef5c91697a141fea7317aff7f0f28e5a861db99.patch
new file mode 100644
index 00000000..0fa3dd30
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/4ef5c91697a141fea7317aff7f0f28e5a861db99.patch
@@ -0,0 +1,48 @@
+From 1718197bf6ebf3d8784a55126609aa8770fff682 Mon Sep 17 00:00:00 2001
+From: Xavier Claessens <xavier.claessens@collabora.com>
+Date: Mon, 26 Apr 2021 14:25:03 -0400
+Subject: [PATCH] gstgl: Fix build when Meson >= 0.58.0rc1
+
+"implicit_include_directories: false" now also means that current build
+directory is not added to include paths by default any more. We have to
+add it manually because we have some custom_target() that generate
+headers in current build directory.
+
+See https://github.com/mesonbuild/meson/issues/8700.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1125>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
+---
+ gst-libs/gst/gl/meson.build | 15 ++++++++++++---
+ 1 file changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/gst-libs/gst/gl/meson.build b/gst-libs/gst/gl/meson.build
+index ae19d7aca..3ad7ddcf6 100644
+--- a/gst-libs/gst/gl/meson.build
++++ b/gst-libs/gst/gl/meson.build
+@@ -1023,11 +1023,20 @@ if build_gstgl
+ command : [mkenums, glib_mkenums, '@OUTPUT@', '@INPUT@'])
+ gen_sources = [gl_enumtypes_h]
+
++ common_args = gst_plugins_base_args + gl_cpp_args + ['-DBUILDING_GST_GL']
++
++ # We have custom_target() that generate headers in the current build dir,
++ # but with implicit_include_directories: false, meson >= 0.58.0 won't include
++ # it by default. We cannot use include_directories('.') here because it would
++ # also include current source dir which is what we want to avoid because
++ # case-insensitive FS would include gst-libs/gl/egl/egl.h as EGL/egl.h.
++ common_args += '-I@0@'.format(meson.current_build_dir())
++
+ gstgl = library('gstgl-' + api_version,
+ gl_sources, gl_egl_sources, gl_x11_sources, gl_wayland_sources, gl_priv_sources, gl_enumtypes_c, gl_enumtypes_h,
+- c_args : gst_plugins_base_args + gl_cpp_args + ['-DBUILDING_GST_GL'],
+- cpp_args : gst_plugins_base_args + gl_cpp_args + ['-DBUILDING_GST_GL'],
+- objc_args : gst_plugins_base_args + gl_cpp_args + gl_objc_args + ['-DBUILDING_GST_GL'],
++ c_args : common_args,
++ cpp_args : common_args,
++ objc_args : common_args + gl_objc_args,
+ include_directories : [configinc, libsinc, gl_includes],
+ version : libversion,
+ soversion : soversion,
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.%.bbappend
index d92bdf3c..d92bdf3c 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.%.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.%.bbappend
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.0.imx.bb
index db0b740f..e0a886e3 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.0.imx.bb
@@ -1,28 +1,26 @@
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
+DESCRIPTION = "'Base' GStreamer plugins and helper libraries"
+HOMEPAGE = "https://gstreamer.freedesktop.org/"
+BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues"
LICENSE = "GPLv2+ & LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
- file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607"
+LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d"
-GST1.0-PLUGINS-BASE_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-base.git;protocol=https"
-SRCBRANCH = "MM_04.05.06_2008_L5.4.47"
-SRCREV = "3c4aa2a58576d68f6e684efa58609665679c9969"
+GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https"
+SRCBRANCH = "MM_04.06.01_2105_L5.10.y"
SRC_URI = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} \
- file://0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch \
- file://0001-gstreamer-plugins-base-fix-meson-build-in-nxp-fork.patch \
- file://0002-meson-Add-variables-for-gir-files.patch \
- file://0005-viv-fb-Make-sure-config.h-is-included.patch \
- file://0009-glimagesink-Downrank-to-marginal.patch \
- file://0001-gst-libs-gst-gl-wayland-fix-meson-build.patch \
- file://0001-meson-viv-fb-code-must-link-against-libg2d.patch \
+ file://0003-viv-fb-Make-sure-config.h-is-included.patch \
+ file://0004-glimagesink-Downrank-to-marginal.patch \
+ file://4ef5c91697a141fea7317aff7f0f28e5a861db99.patch \
"
+SRCREV = "69554a26c932481acb7c5691038c367eca60e5bc"
S = "${WORKDIR}/git"
DEPENDS += "iso-codes util-linux zlib"
DEPENDS_append_imxgpu2d = " virtual/libg2d"
-inherit use-imx-headers gobject-introspection gtk-doc
+inherit gobject-introspection use-imx-headers
DEFAULT_PREFERENCE = "-1"
@@ -36,7 +34,7 @@ PACKAGECONFIG ??= " \
${GSTREAMER_ORC} \
${PACKAGECONFIG_GL} \
${@bb.utils.filter('DISTRO_FEATURES', 'alsa x11', d)} \
- ogg pango png theora vorbis \
+ jpeg ogg pango png theora vorbis \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \
"
@@ -71,25 +69,24 @@ PACKAGECONFIG[egl] = ",,virtual/egl"
# OpenGL window systems (except for X11)
PACKAGECONFIG[gbm] = ",,virtual/libgbm libgudev libdrm"
PACKAGECONFIG[wayland] = ",,wayland-native wayland wayland-protocols libdrm"
+PACKAGECONFIG[dispmanx] = ",,virtual/libomxil"
PACKAGECONFIG[viv-fb] = ",,virtual/libgles2 virtual/libg2d"
+OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx egl viv-fb', d)}"
+
EXTRA_OEMESON += " \
+ -Ddoc=disabled \
-Dgl-graphene=disabled \
${@get_opengl_cmdline_list('gl_api', d.getVar('OPENGL_APIS'), d)} \
${@get_opengl_cmdline_list('gl_platform', d.getVar('OPENGL_PLATFORMS'), d)} \
${@get_opengl_cmdline_list('gl_winsys', d.getVar('OPENGL_WINSYS'), d)} \
- -Dextra_imx_incdir=${STAGING_INCDIR_IMX} \
+ -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \
"
-GTKDOC_MESON_OPTION = "gtk_doc"
-GTKDOC_MESON_ENABLE_FLAG = "enabled"
-GTKDOC_MESON_DISABLE_FLAG = "disabled"
-
FILES_${PN} += "${libdir}/gstreamer-1.0/include"
+FILES_${PN}-dev += "${libdir}/gstreamer-1.0/include/gst/gl/gstglconfig.h"
FILES_${MLPREFIX}libgsttag-1.0 += "${datadir}/gst-plugins-base/1.0/license-translations.dict"
-COMPATIBLE_MACHINE = "(mx6|mx7|mx8)"
-
def get_opengl_cmdline_list(switch_name, options, d):
selected_options = []
if bb.utils.contains('DISTRO_FEATURES', 'opengl', True, False, d):
@@ -100,3 +97,7 @@ def get_opengl_cmdline_list(switch_name, options, d):
return '-D' + switch_name + '=' + ','.join(selected_options)
else:
return ''
+
+CVE_PRODUCT += "gst-plugins-base"
+
+COMPATIBLE_MACHINE = "(mx6|mx7|mx8)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
deleted file mode 100644
index 8565c6a5..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.%.bbappend
+++ /dev/null
@@ -1,3 +0,0 @@
-PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
-PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
-PACKAGECONFIG_GL_use-mainline-bsp = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.3.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.0.imx.bb
index 8413bf10..4150d2b7 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.3.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.0.imx.bb
@@ -1,13 +1,12 @@
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
-
-GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-good.git;protocol=https"
-SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
+GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https"
+SRCBRANCH = "MM_04.06.01_2105_L5.10.y"
SRC_URI = " \
${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} \
"
-SRCREV = "6005e8199ea19878f269b058ffbbbcaa314472d8"
+SRCREV = "3160acd37304f67238b8ceae2a95ee4951f9c718"
DEFAULT_PREFERENCE = "-1"
@@ -15,7 +14,6 @@ S = "${WORKDIR}/git"
LICENSE = "GPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
- file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=a4e1830fce078028c8f0974161272607 \
file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
DEPENDS += "gstreamer1.0-plugins-base libcap zlib"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.0.bb
index 2a1cc3fd..8668ccfd 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.16.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.0.bb
@@ -1,5 +1,9 @@
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
+DESCRIPTION = "'Ugly GStreamer plugins"
+HOMEPAGE = "https://gstreamer.freedesktop.org/"
+BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/issues"
+
LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
file://tests/check/elements/xingmux.c;beginline=1;endline=21;md5=4c771b8af188724855cb99cadd390068"
@@ -7,10 +11,9 @@ LICENSE = "GPLv2+ & LGPLv2.1+ & LGPLv2+"
LICENSE_FLAGS = "commercial"
SRC_URI = " \
- http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
+ https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
"
-SRC_URI[md5sum] = "1ec343c58d4b17d682f7befa8453c11c"
-SRC_URI[sha256sum] = "e30964c5f031c32289e0b25e176c3c95a5737f2052dfc81d0f7427ef0233a4c2"
+SRC_URI[sha256sum] = "686644e45e08258ae240c4519376668ad8d34ea6d0f6ab556473c317bfb7e082"
S = "${WORKDIR}/gst-plugins-ugly-${PV}"
@@ -32,6 +35,7 @@ PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec"
PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264"
EXTRA_OEMESON += " \
+ -Ddoc=disabled \
-Dsidplay=disabled \
"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.16.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.0.bb
index 0a3c35ff..4ac30c28 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.16.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.0.bb
@@ -8,12 +8,11 @@ DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base"
PNREAL = "gst-rtsp-server"
-SRC_URI = "http://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \
- file://0001-meson-build-gir-even-when-cross-compiling-if-introsp.patch \
+SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \
"
-SRC_URI[md5sum] = "adc4460239ec2eccf58ad9752ce53bfd"
-SRC_URI[sha256sum] = "198e9eec1a3e32dc810d3fbf3a714850a22c6288d4a5c8e802c5ff984af03f19"
+SRC_URI[md5sum] = "77fe28c702a83566811ab5c7bbe99ab2"
+SRC_URI[sha256sum] = "2ad19311054cbf2df0d0622936bc703dedc06ced706df46a3d3a3ea5a4b7c70f"
S = "${WORKDIR}/${PNREAL}-${PV}"
@@ -28,5 +27,4 @@ GIR_MESON_ENABLE_FLAG = "enabled"
GIR_MESON_DISABLE_FLAG = "disabled"
# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well
-LIBV = "1.0"
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch
index 67a872cd..23ebd5c6 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch
@@ -1,25 +1,44 @@
-From a1d7c582392c8bc87fa9411af77b20e011944357 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin@gmail.com>
-Date: Thu, 25 Jan 2018 17:55:02 +0200
-Subject: [PATCH] gst/gstpluginloader.c: when env var is set do not fall
- through to system plugin scanner
+From fd8f49dba8c09d47425da80f5faab3bfa4a7c962 Mon Sep 17 00:00:00 2001
+From: Jose Quaresma <quaresma.jose@gmail.com>
+Date: Sat, 10 Oct 2020 19:09:03 +0000
+Subject: [PATCH 1/3] gstpluginloader: when env var is set do not fall through
+ to system plugin scanner
If we set a custom GST_PLUGIN_SCANNER env var, then we probably want to use that and only that.
Falling through to the one installed on the system is problamatic in cross-compilation
environemnts, regardless of whether one pointed to by the env var succeeded or failed.
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+taken from:
+http://cgit.openembedded.org/openembedded-core/commit/meta/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch?id=0db7ba34ca41b107042306d13a6f0162885c123b
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/669>
+
+Upstream-Status: Backport [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/9f958058697e6fbf5bde325228034572331d1a3a]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
---
- gst/gstpluginloader.c | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
+ gst/gstpluginloader.c | 15 +++++++--------
+ 1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c
-index 430829d..3a75731 100644
+index d1e404d98..c626bf263 100644
--- a/gst/gstpluginloader.c
+++ b/gst/gstpluginloader.c
-@@ -471,9 +471,7 @@ gst_plugin_loader_spawn (GstPluginLoader * loader)
+@@ -464,20 +464,19 @@ gst_plugin_loader_spawn (GstPluginLoader * loader)
+ if (loader->child_running)
+ return TRUE;
+
+- /* Find the gst-plugin-scanner: first try the env-var if it is set,
+- * otherwise use the installed version */
++ /* Find the gst-plugin-scanner */
+ env = g_getenv ("GST_PLUGIN_SCANNER_1_0");
+ if (env == NULL)
+ env = g_getenv ("GST_PLUGIN_SCANNER");
+
+ if (env != NULL && *env != '\0') {
++ /* use the env-var if it is set */
+ GST_LOG ("Trying GST_PLUGIN_SCANNER env var: %s", env);
helper_bin = g_strdup (env);
res = gst_plugin_loader_try_helper (loader, helper_bin);
g_free (helper_bin);
@@ -27,9 +46,24 @@ index 430829d..3a75731 100644
-
- if (!res) {
+ } else {
++ /* use the installed version */
GST_LOG ("Trying installed plugin scanner");
#ifdef G_OS_WIN32
+@@ -497,10 +496,10 @@ gst_plugin_loader_spawn (GstPluginLoader * loader)
+ #endif
+ res = gst_plugin_loader_try_helper (loader, helper_bin);
+ g_free (helper_bin);
++ }
+
+- if (!res) {
+- GST_INFO ("No gst-plugin-scanner available, or not working");
+- }
++ if (!res) {
++ GST_INFO ("No gst-plugin-scanner available, or not working");
+ }
+
+ return loader->child_running;
--
-2.15.1
+2.29.2
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch
new file mode 100644
index 00000000..96abef17
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch
@@ -0,0 +1,112 @@
+From 598d108e2c438d8f2ecd3bf948fa3ebbd3681490 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
+Date: Fri, 14 Aug 2020 16:38:26 +0100
+Subject: [PATCH 2/3] Remove unused valgrind detection
+
+Having this just to log a debug message in case we're
+running inside valgrind doesn't seem very useful, and
+the code that used to use this no longer exists it seems.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/595>
+
+Upstream-Status: Backport [a2cbf75523cdf8a4df1baa7007d86ef455972245]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ gst/gst_private.h | 2 --
+ gst/gstinfo.c | 39 ---------------------------------------
+ meson.build | 1 -
+ 3 files changed, 42 deletions(-)
+
+diff --git a/gst/gst_private.h b/gst/gst_private.h
+index eefd044d9..8252ede51 100644
+--- a/gst/gst_private.h
++++ b/gst/gst_private.h
+@@ -116,8 +116,6 @@ G_GNUC_INTERNAL gboolean _priv_plugin_deps_env_vars_changed (GstPlugin * plugin
+
+ G_GNUC_INTERNAL gboolean _priv_plugin_deps_files_changed (GstPlugin * plugin);
+
+-G_GNUC_INTERNAL gboolean _priv_gst_in_valgrind (void);
+-
+ /* init functions called from gst_init(). */
+ G_GNUC_INTERNAL void _priv_gst_quarks_initialize (void);
+ G_GNUC_INTERNAL void _priv_gst_mini_object_initialize (void);
+diff --git a/gst/gstinfo.c b/gst/gstinfo.c
+index 5d317877b..097f8b20d 100644
+--- a/gst/gstinfo.c
++++ b/gst/gstinfo.c
+@@ -305,36 +305,6 @@ static gboolean pretty_tags = PRETTY_TAGS_DEFAULT;
+ static volatile gint G_GNUC_MAY_ALIAS __default_level = GST_LEVEL_DEFAULT;
+ static volatile gint G_GNUC_MAY_ALIAS __use_color = GST_DEBUG_COLOR_MODE_ON;
+
+-/* FIXME: export this? */
+-gboolean
+-_priv_gst_in_valgrind (void)
+-{
+- static enum
+- {
+- GST_VG_UNCHECKED,
+- GST_VG_NO_VALGRIND,
+- GST_VG_INSIDE
+- }
+- in_valgrind = GST_VG_UNCHECKED;
+-
+- if (in_valgrind == GST_VG_UNCHECKED) {
+-#ifdef HAVE_VALGRIND_VALGRIND_H
+- if (RUNNING_ON_VALGRIND) {
+- GST_CAT_INFO (GST_CAT_GST_INIT, "we're running inside valgrind");
+- in_valgrind = GST_VG_INSIDE;
+- } else {
+- GST_CAT_LOG (GST_CAT_GST_INIT, "not doing extra valgrind stuff");
+- in_valgrind = GST_VG_NO_VALGRIND;
+- }
+-#else
+- in_valgrind = GST_VG_NO_VALGRIND;
+-#endif
+- g_assert (in_valgrind == GST_VG_NO_VALGRIND ||
+- in_valgrind == GST_VG_INSIDE);
+- }
+- return (in_valgrind == GST_VG_INSIDE);
+-}
+-
+ static gchar *
+ _replace_pattern_in_gst_debug_file_name (gchar * name, const char *token,
+ guint val)
+@@ -463,9 +433,6 @@ _priv_gst_debug_init (void)
+ _priv_GST_CAT_PROTECTION =
+ _gst_debug_category_new ("GST_PROTECTION", 0, "protection");
+
+- /* print out the valgrind message if we're in valgrind */
+- _priv_gst_in_valgrind ();
+-
+ env = g_getenv ("GST_DEBUG_OPTIONS");
+ if (env != NULL) {
+ if (strstr (env, "full_tags") || strstr (env, "full-tags"))
+@@ -2503,12 +2470,6 @@ gst_debug_construct_win_color (guint colorinfo)
+ return 0;
+ }
+
+-gboolean
+-_priv_gst_in_valgrind (void)
+-{
+- return FALSE;
+-}
+-
+ void
+ _gst_debug_dump_mem (GstDebugCategory * cat, const gchar * file,
+ const gchar * func, gint line, GObject * obj, const gchar * msg,
+diff --git a/meson.build b/meson.build
+index ce1921aa4..7a84d0981 100644
+--- a/meson.build
++++ b/meson.build
+@@ -200,7 +200,6 @@ check_headers = [
+ 'sys/wait.h',
+ 'ucontext.h',
+ 'unistd.h',
+- 'valgrind/valgrind.h',
+ 'sys/resource.h',
+ 'sys/uio.h',
+ ]
+--
+2.29.2
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0002-meson-build-gir-even-when-cross-compiling-if-introsp.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0002-meson-build-gir-even-when-cross-compiling-if-introsp.patch
deleted file mode 100644
index 1ed7198a..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0002-meson-build-gir-even-when-cross-compiling-if-introsp.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 35db4a2433fbdf8612cf98b5aab5b14aeb5372f8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= <tim@centricular.com>
-Date: Thu, 17 Oct 2019 12:13:35 +0100
-Subject: [PATCH] meson: build gir even when cross-compiling if introspection
- was enabled explicitly
-
-This can be made to work in certain circumstances when
-cross-compiling, so default to not building g-i stuff
-when cross-compiling, but allow it if introspection was
-enabled explicitly via -Dintrospection=enabled.
-
-Fixes #454 and #381.
-
-Upstream-Status: Backport [35db4a2433fbdf8612cf98b5aab5b14aeb5372f8]
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
----
- meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index 90d98d8eb..a47e7f34e 100644
---- a/meson.build
-+++ b/meson.build
-@@ -466,7 +466,7 @@ rt_lib = cc.find_library('rt', required : false)
- gir = find_program('g-ir-scanner', required : get_option('introspection'))
- gnome = import('gnome')
-
--build_gir = gir.found() and not meson.is_cross_build()
-+build_gir = gir.found() and (not meson.is_cross_build() or get_option('introspection').enabled())
-
- gir_init_section = [ '--add-init-section=extern void gst_init(gint*,gchar**);' + \
- 'g_setenv("GST_REGISTRY_DISABLE", "yes", TRUE);' + \
---
-2.17.1
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-valgrind-feature.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-valgrind-feature.patch
deleted file mode 100644
index f553340f..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0003-meson-Add-valgrind-feature.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From f6c7973c03d9ba7dab60c496e768c5e6c4ee824c Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <crg7475@mailbox.org>
-Date: Sun, 20 Oct 2019 10:36:44 +0200
-Subject: [PATCH] meson: Add valgrind feature
-
-This allows for enabling/disabling Valgrind support. Since Valgrind is
-an external dependency, such a feature is needed by build environemnts
-such as Yocto to make sure builds are deterministic. These changes also
-add more Valgrind specific configure log output.
-
-Upstream-Status: Pending
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
----
- meson.build | 23 ++++++++++++++++++++++-
- meson_options.txt | 1 +
- 2 files changed, 23 insertions(+), 1 deletion(-)
-
-diff --git a/meson.build b/meson.build
-index b55ecc5..4751761 100644
---- a/meson.build
-+++ b/meson.build
-@@ -199,7 +199,6 @@ check_headers = [
- 'sys/wait.h',
- 'ucontext.h',
- 'unistd.h',
-- 'valgrind/valgrind.h',
- 'sys/resource.h',
- ]
-
-@@ -214,6 +213,28 @@ foreach h : check_headers
- endif
- endforeach
-
-+valgrind_option = get_option('valgrind')
-+if valgrind_option.disabled()
-+ message('Valgrind support not requested; disabled.')
-+else
-+ valgrind_header = 'valgrind/valgrind.h'
-+ has_valgrind_header = cc.has_header(valgrind_header)
-+ if has_valgrind_header
-+ message('Valgrind support requested, and header ' + valgrind_header + \
-+ ' found. Enabled Valgrind support.')
-+ define = 'HAVE_' + valgrind_header.underscorify().to_upper()
-+ cdata.set(define, 1)
-+ else
-+ if valgrind_option.enabled()
-+ error('Valgrind support requested and set as required, but header ' + \
-+ valgrind_header + ' not found.')
-+ else
-+ message('Valgrind support requested, but header ' + valgrind_header + \
-+ ' not found. Disabling Valgrind support.')
-+ endif
-+ endif
-+endif
-+
- if cc.has_member('struct tm', 'tm_gmtoff', prefix : '#include <time.h>')
- cdata.set('HAVE_TM_GMTOFF', 1)
- endif
-diff --git a/meson_options.txt b/meson_options.txt
-index e7ff7ba..8afde39 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -19,6 +19,7 @@ option('memory-alignment', type: 'combo',
-
- # Feature options
- option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries')
-+option('valgrind', type : 'feature', value : 'auto', description : 'Enable Valgrind support')
- option('libunwind', type : 'feature', value : 'auto', description : 'Use libunwind to generate backtraces')
- option('libdw', type : 'feature', value : 'auto', description : 'Use libdw to generate better backtraces from libunwind')
- option('dbghelp', type : 'feature', value : 'auto', description : 'Use dbghelp to generate backtraces')
---
-2.17.1
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch
new file mode 100644
index 00000000..e0e64e2c
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch
@@ -0,0 +1,32 @@
+From 1db36347d05d88835519368442e9aa89c64091ad Mon Sep 17 00:00:00 2001
+From: Seungha Yang <seungha@centricular.com>
+Date: Tue, 15 Sep 2020 00:54:58 +0900
+Subject: [PATCH] tests: seek: Don't use too strict timeout for validation
+
+Expected segment-done message might not be seen within expected
+time if system is not powerful enough.
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/625>
+
+Upstream-Status: Backport [https://cgit.freedesktop.org/gstreamer/gstreamer/commit?id=f44312ae5d831438fcf8041162079c65321c588c]
+Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
+---
+ tests/check/pipelines/seek.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/check/pipelines/seek.c b/tests/check/pipelines/seek.c
+index 28bb8846d..5f7447bc5 100644
+--- a/tests/check/pipelines/seek.c
++++ b/tests/check/pipelines/seek.c
+@@ -521,7 +521,7 @@ GST_START_TEST (test_loopback_2)
+
+ GST_INFO ("wait for segment done message");
+
+- msg = gst_bus_timed_pop_filtered (bus, (GstClockTime) 2 * GST_SECOND,
++ msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE,
+ GST_MESSAGE_SEGMENT_DONE | GST_MESSAGE_ERROR);
+ fail_unless (msg, "no message within the timed window");
+ fail_unless_equals_string (GST_MESSAGE_TYPE_NAME (msg), "segment-done");
+--
+2.29.2
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0004-meson-Add-option-for-installed-tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0004-meson-Add-option-for-installed-tests.patch
deleted file mode 100644
index 0e6c44ea..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0004-meson-Add-option-for-installed-tests.patch
+++ /dev/null
@@ -1,257 +0,0 @@
-From b843400284751968862751dfe93853f151551c64 Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <crg7475@mailbox.org>
-Date: Fri, 25 Oct 2019 00:06:26 +0200
-Subject: [PATCH] meson: Add option for installed tests
-
-This adds an option for producing installed versions of the unit tests.
-These versions don't need meson to run (only a small shell script). This
-makes it easier to run cross compiled tests on a target machine.
-
-Upstream-Status: Pending
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
----
- build-aux/gen-installed-test-desc.py | 18 ++++++
- build-aux/gen-installed-test-shscript.py | 25 ++++++++
- meson_options.txt | 2 +
- tests/check/meson.build | 46 +++++++++++++-
- tests/files/testfile | 80 ++++++++++++++++++++++++
- 5 files changed, 170 insertions(+), 1 deletion(-)
- create mode 100644 build-aux/gen-installed-test-desc.py
- create mode 100644 build-aux/gen-installed-test-shscript.py
- create mode 100644 tests/files/testfile
-
-diff --git a/build-aux/gen-installed-test-desc.py b/build-aux/gen-installed-test-desc.py
-new file mode 100644
-index 0000000..69e8a0f
---- /dev/null
-+++ b/build-aux/gen-installed-test-desc.py
-@@ -0,0 +1,18 @@
-+import sys
-+import os
-+import argparse
-+
-+def write_template(filename, data):
-+ with open(filename, 'w') as f:
-+ f.write(data)
-+
-+def build_template(testdir, testname):
-+ return "[Test]\nType=session\nExec={}\n".format(os.path.join(testdir, testname))
-+
-+argparser = argparse.ArgumentParser(description='Generate installed-test data.')
-+argparser.add_argument('--test-execdir', metavar='dir', required=True, help='Installed test directory')
-+argparser.add_argument('--testname', metavar='name', required=True, help='Installed test name')
-+argparser.add_argument('--output', metavar='file', required=True, help='Output file')
-+args = argparser.parse_args()
-+
-+write_template(args.output, build_template(args.test_execdir, args.testname))
-diff --git a/build-aux/gen-installed-test-shscript.py b/build-aux/gen-installed-test-shscript.py
-new file mode 100644
-index 0000000..5da86fb
---- /dev/null
-+++ b/build-aux/gen-installed-test-shscript.py
-@@ -0,0 +1,25 @@
-+import sys
-+import os
-+import argparse
-+
-+def write_template(filename, data):
-+ with open(filename, 'w') as f:
-+ f.write(data)
-+
-+def build_template(testdir, testname):
-+ return ''.join([
-+ "#!/usr/bin/env sh\n",
-+ "export GST_STATE_IGNORE_ELEMENTS=''\n",
-+ "export CK_DEFAULT_TIMEOUT=20\n",
-+ "export GST_PLUGIN_LOADING_WHITELIST='gstreamer'\n",
-+ "{}\n".format(os.path.join(testdir, testname)),
-+ ])
-+
-+argparser = argparse.ArgumentParser(description='Generate installed-test data.')
-+argparser.add_argument('--test-execdir', metavar='dir', required=True, help='Installed test directory')
-+argparser.add_argument('--testname', metavar='name', required=True, help='Installed test name')
-+argparser.add_argument('--output', metavar='file', required=True, help='Output file')
-+args = argparser.parse_args()
-+
-+write_template(args.output, build_template(args.test_execdir, args.testname))
-+os.chmod(args.output, 0o755)
-diff --git a/meson_options.txt b/meson_options.txt
-index 8afde39..8884dcc 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -16,6 +16,8 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso
- option('memory-alignment', type: 'combo',
- choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'],
- value: 'malloc')
-+option('installed-tests', type : 'boolean', value : false, description : 'enable installed tests')
-+option('test-files-path', type : 'string', description : 'Path where to find test files')
-
- # Feature options
- option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries')
-diff --git a/tests/check/meson.build b/tests/check/meson.build
-index 04da83f..2db7f76 100644
---- a/tests/check/meson.build
-+++ b/tests/check/meson.build
-@@ -118,11 +118,17 @@ if add_languages('cpp', required : false)
- ]
- endif
-
-+test_files_path = get_option('test-files-path')
-+if test_files_path == ''
-+ test_files_path = meson.current_source_dir() + '/../files'
-+endif
-+message('Using path "@0@" as the path to read test files from'.format(test_files_path))
-+
- test_defines = [
- '-UG_DISABLE_ASSERT',
- '-UG_DISABLE_CAST_CHECKS',
- '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"',
-- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"',
-+ '-DTESTFILE="@0@"'.format(test_files_path + '/testfile'),
- '-DGST_USE_UNSTABLE_API',
- '-DGST_DISABLE_DEPRECATED',
- ]
-@@ -137,6 +143,14 @@ endif
- glib_deps = [gio_dep, gobject_dep, gmodule_dep, glib_dep]
- gst_deps = [gst_dep, gst_base_dep, gst_check_dep, gst_net_dep, gst_controller_dep]
-
-+installed_tests_datadir = join_paths(prefix, get_option('datadir'), 'installed-tests', 'gstreamer-1.0')
-+installed_tests_execdir = join_paths(prefix, libexecdir, 'installed-tests', 'gstreamer-1.0')
-+installed_tests_enabled = get_option('installed-tests')
-+
-+python = import('python').find_installation()
-+gen_installed_test_desc = files('../../build-aux/gen-installed-test-desc.py')
-+gen_installed_test_shscript = files('../../build-aux/gen-installed-test-shscript.py')
-+
- foreach t : core_tests
- fname = t[0]
- test_name = fname.split('.')[0].underscorify()
-@@ -150,8 +164,38 @@ foreach t : core_tests
- include_directories : [configinc],
- link_with : link_with_libs,
- dependencies : test_deps + glib_deps + gst_deps,
-+ install_dir: installed_tests_execdir,
-+ install: installed_tests_enabled
- )
-
-+ if installed_tests_enabled
-+ installed_test_shscript = test_name + '.sh'
-+ shscript = custom_target (test_name + '_shscript',
-+ output: installed_test_shscript,
-+ command: [
-+ python,
-+ gen_installed_test_shscript,
-+ '--test-execdir=@0@'.format(installed_tests_execdir),
-+ '--testname=@0@'.format(test_name),
-+ '--output=@0@'.format(join_paths('@OUTDIR@', installed_test_shscript)),
-+ ],
-+ install: true,
-+ install_dir: installed_tests_execdir)
-+
-+ installed_test_desc = test_name + '.test'
-+ data = custom_target(test_name + '_desc',
-+ output: installed_test_desc,
-+ command: [
-+ python,
-+ gen_installed_test_desc,
-+ '--test-execdir=@0@'.format(installed_tests_execdir),
-+ '--testname=@0@'.format(installed_test_shscript),
-+ '--output=@0@'.format(join_paths('@OUTDIR@', installed_test_desc)),
-+ ],
-+ install: true,
-+ install_dir: installed_tests_datadir)
-+ endif
-+
- env = environment()
- env.set('GST_PLUGIN_PATH_1_0', meson.build_root())
- env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
-diff --git a/tests/files/testfile b/tests/files/testfile
-new file mode 100644
-index 0000000..89954e0
---- /dev/null
-+++ b/tests/files/testfile
-@@ -0,0 +1,80 @@
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
-+................................................................................
---
-2.17.1
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch
new file mode 100644
index 00000000..6f571a12
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch
@@ -0,0 +1,36 @@
+From 122e5ac3dd16a461b6ae595605490c8f5d1c3a9d Mon Sep 17 00:00:00 2001
+From: Jose Quaresma <quaresma.jose@gmail.com>
+Date: Sun, 11 Apr 2021 19:48:13 +0100
+Subject: [PATCH 1/4] tests: respect the idententaion used in meson
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ tests/check/meson.build | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/tests/check/meson.build b/tests/check/meson.build
+index a617cf159..b2636714b 100644
+--- a/tests/check/meson.build
++++ b/tests/check/meson.build
+@@ -146,11 +146,11 @@ foreach t : core_tests
+
+ if not skip_test
+ exe = executable(test_name, fname,
+- c_args : gst_c_args + test_defines,
+- cpp_args : gst_c_args + test_defines,
+- include_directories : [configinc],
+- link_with : link_with_libs,
+- dependencies : test_deps + glib_deps + gst_deps,
++ c_args : gst_c_args + test_defines,
++ cpp_args : gst_c_args + test_defines,
++ include_directories : [configinc],
++ link_with : link_with_libs,
++ dependencies : test_deps + glib_deps + gst_deps,
+ )
+
+ env = environment()
+--
+2.31.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch
new file mode 100644
index 00000000..b77fb579
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch
@@ -0,0 +1,110 @@
+From c9e93c7a3e4d2773abef4f5e1464af24f36700b3 Mon Sep 17 00:00:00 2001
+From: Jose Quaresma <quaresma.jose@gmail.com>
+Date: Sun, 11 Apr 2021 19:48:13 +0100
+Subject: [PATCH 2/4] tests: add support for install the tests
+
+This will provide to run the tests using the gnome-desktop-testing [1]
+
+[1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ meson.build | 5 +++++
+ meson_options.txt | 1 +
+ template.test.in | 3 +++
+ tests/check/meson.build | 22 +++++++++++++++++++++-
+ 4 files changed, 30 insertions(+), 1 deletion(-)
+ create mode 100644 template.test.in
+
+diff --git a/meson.build b/meson.build
+index c4e8774f5..1abf4eb26 100644
+--- a/meson.build
++++ b/meson.build
+@@ -562,6 +562,11 @@ if bashcomp_dep.found()
+ endif
+ endif
+
++installed_tests_metadir = join_paths(datadir, 'installed-tests', meson.project_name())
++installed_tests_execdir = join_paths(libexecdir, 'installed-tests', meson.project_name())
++installed_tests_enabled = get_option('installed-tests')
++installed_tests_template = files('template.test.in')
++
+ plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0')
+
+ pkgconfig = import('pkgconfig')
+diff --git a/meson_options.txt b/meson_options.txt
+index c8cee3762..b5da40eaa 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -15,6 +15,7 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso
+ option('memory-alignment', type: 'combo',
+ choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'],
+ value: 'malloc')
++option('installed-tests', type : 'boolean', value : false, description : 'Enable installed tests')
+
+ # Feature options
+ option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries')
+diff --git a/template.test.in b/template.test.in
+new file mode 100644
+index 000000000..f701627f8
+--- /dev/null
++++ b/template.test.in
+@@ -0,0 +1,3 @@
++[Test]
++Type=session
++Exec=@installed_tests_dir@/@program@
+diff --git a/tests/check/meson.build b/tests/check/meson.build
+index b2636714b..a697a7b06 100644
+--- a/tests/check/meson.build
++++ b/tests/check/meson.build
+@@ -124,10 +124,16 @@ test_defines = [
+ '-UG_DISABLE_ASSERT',
+ '-UG_DISABLE_CAST_CHECKS',
+ '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"',
+- '-DTESTFILE="' + meson.current_source_dir() + '/meson.build"',
+ '-DGST_DISABLE_DEPRECATED',
+ ]
+
++testfile = meson.current_source_dir() + '/meson.build'
++if installed_tests_enabled
++ install_data(testfile, install_dir : installed_tests_metadir, rename : 'testfile')
++ testfile = installed_tests_metadir + '/testfile'
++endif
++test_defines += '-DTESTFILE="@0@"'.format(testfile)
++
+ # sanity checking
+ if get_option('check').disabled()
+ if get_option('tests').enabled()
+@@ -151,6 +157,8 @@ foreach t : core_tests
+ include_directories : [configinc],
+ link_with : link_with_libs,
+ dependencies : test_deps + glib_deps + gst_deps,
++ install_dir: installed_tests_execdir,
++ install: installed_tests_enabled,
+ )
+
+ env = environment()
+@@ -162,6 +170,18 @@ foreach t : core_tests
+ env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
+ env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
+
++ if installed_tests_enabled
++ test_conf = configuration_data()
++ test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir))
++ test_conf.set('program', test_name)
++ configure_file(
++ input: installed_tests_template,
++ output: test_name + '.test',
++ install_dir: installed_tests_metadir,
++ configuration: test_conf
++ )
++ endif
++
+ test(test_name, exe, env: env, timeout : 3 * 60)
+ endif
+ endforeach
+--
+2.31.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch
new file mode 100644
index 00000000..46813cec
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch
@@ -0,0 +1,48 @@
+From e82dedec1803922656e92285fc1bb75b2cdc0aad Mon Sep 17 00:00:00 2001
+From: Jose Quaresma <quaresma.jose@gmail.com>
+Date: Sat, 24 Apr 2021 10:34:47 +0100
+Subject: [PATCH 3/4] tests: use a dictionaries for environment
+
+meson environment() can't be passed to configure_file and it is needed for installed_tests,
+use a dictionary as this is simplest solution to install the environment.
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ tests/check/meson.build | 19 +++++++++++--------
+ 1 file changed, 11 insertions(+), 8 deletions(-)
+
+diff --git a/tests/check/meson.build b/tests/check/meson.build
+index a697a7b06..f64524904 100644
+--- a/tests/check/meson.build
++++ b/tests/check/meson.build
+@@ -161,14 +161,17 @@ foreach t : core_tests
+ install: installed_tests_enabled,
+ )
+
+- env = environment()
+- env.set('GST_PLUGIN_PATH_1_0', meson.build_root())
+- env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '')
+- env.set('GST_STATE_IGNORE_ELEMENTS', '')
+- env.set('CK_DEFAULT_TIMEOUT', '20')
+- env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name))
+- env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner')
+- env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer')
++ # environment() can't be passed to configure_file and it is needed for installed_tests
++ # use a dictionary as this is simplest solution to install the environment
++ env = {
++ 'GST_PLUGIN_PATH_1_0': meson.build_root(),
++ 'GST_PLUGIN_SYSTEM_PATH_1_0': '',
++ 'GST_STATE_IGNORE_ELEMENTS': '',
++ 'CK_DEFAULT_TIMEOUT': '20',
++ 'GST_REGISTRY': '@0@/@1@.registry'.format(meson.current_build_dir(), test_name),
++ 'GST_PLUGIN_SCANNER_1_0': gst_scanner_dir + '/gst-plugin-scanner',
++ 'GST_PLUGIN_LOADING_WHITELIST': 'gstreamer',
++ }
+
+ if installed_tests_enabled
+ test_conf = configuration_data()
+--
+2.31.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch
new file mode 100644
index 00000000..eabe7bcb
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch
@@ -0,0 +1,58 @@
+From 57d2965e979f886e03eecd7e351bf01812053971 Mon Sep 17 00:00:00 2001
+From: Jose Quaresma <quaresma.jose@gmail.com>
+Date: Sun, 2 May 2021 01:58:01 +0100
+Subject: [PATCH 4/4] tests: install the environment for installed_tests
+
+- adapt the test environment for installed_tests
+- install the test environment for installed_tests
+- run the tests using the installed environment
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ template.test.in | 2 +-
+ tests/check/meson.build | 18 ++++++++++++++++++
+ 2 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/template.test.in b/template.test.in
+index f701627f8..9a3fbdd09 100644
+--- a/template.test.in
++++ b/template.test.in
+@@ -1,3 +1,3 @@
+ [Test]
+ Type=session
+-Exec=@installed_tests_dir@/@program@
++Exec=sh -c 'set -aex && source @installed_tests_dir@/@program@.env && exec @installed_tests_dir@/@program@'
+diff --git a/tests/check/meson.build b/tests/check/meson.build
+index f64524904..a67e0f8dd 100644
+--- a/tests/check/meson.build
++++ b/tests/check/meson.build
+@@ -183,6 +183,24 @@ foreach t : core_tests
+ install_dir: installed_tests_metadir,
+ configuration: test_conf
+ )
++
++ env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)}
++ configure_file(
++ output: test_name + '.env',
++ install_dir: installed_tests_execdir,
++ configuration : env,
++ )
++ # helper to convert a meson environment dictionay object exported with configure_file
++ # this also remove not needed variables for the installed tests
++ meson.add_postconf_script('sed', '-i',
++ '-e', '/^#define/!d',
++ '-e', 's/^#define //g',
++ '-e', '/^GST_PLUGIN_PATH_1_0/d',
++ '-e', '/^GST_PLUGIN_SYSTEM_PATH_1_0/d',
++ '-e', '/^GST_PLUGIN_SCANNER_1_0/d',
++ '-e', 's/ /=/',
++ join_paths(meson.current_build_dir(), test_name + '.env')
++ )
+ endif
+
+ test(test_name, exe, env: env, timeout : 3 * 60)
+--
+2.31.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch b/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch
deleted file mode 100644
index 7ca3d5ad..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/capfix.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Currently gstreamer configuration depends on whether setcap is found on the host
-system. Turn this into a configure option to make builds deterinistic.
-
-RP 2020/2/19
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-Upstream-Status: Pending
-
-Index: gstreamer-1.16.1/libs/gst/helpers/meson.build
-===================================================================
---- gstreamer-1.16.1.orig/libs/gst/helpers/meson.build
-+++ gstreamer-1.16.1/libs/gst/helpers/meson.build
-@@ -73,7 +73,12 @@ if have_ptp
- endif
- endif
-
-- setcap = find_program('setcap', '/usr/sbin/setcap', '/sbin/setcap', required : false)
-+ setcap_feature = get_option('setcap')
-+ if setcap_feature.disabled()
-+ setcap = find_program('dontexist', required : false)
-+ else
-+ setcap = find_program('setcap', '/usr/sbin/setcap', '/sbin/setcap', required : false)
-+ endif
-
- # user/group to change to in gst-ptp-helper
- ptp_helper_setuid_user = get_option('ptp-helper-setuid-user')
-Index: gstreamer-1.16.1/meson_options.txt
-===================================================================
---- gstreamer-1.16.1.orig/meson_options.txt
-+++ gstreamer-1.16.1/meson_options.txt
-@@ -26,6 +26,7 @@ option('libunwind', type : 'feature', va
- option('libdw', type : 'feature', value : 'auto', description : 'Use libdw to generate better backtraces from libunwind')
- option('dbghelp', type : 'feature', value : 'auto', description : 'Use dbghelp to generate backtraces')
- option('bash-completion', type : 'feature', value : 'auto', description : 'Install bash completion files')
-+option('setcap', type : 'feature', value : 'auto', description : 'Use setcap')
-
- # Common feature options
- option('examples', type : 'feature', value : 'auto', yield : true)
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest b/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
new file mode 100755
index 00000000..0cfa955f
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/run-ptest
@@ -0,0 +1,2 @@
+#!/usr/bin/env sh
+gnome-desktop-testing-runner gstreamer
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0_1.18.0.imx.bb
index 8bbc16c8..57b450ee 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0_1.18.0.imx.bb
@@ -6,29 +6,30 @@ BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
SECTION = "multimedia"
LICENSE = "LGPLv2+"
-DEPENDS = "glib-2.0 glib-2.0-native libcap libxml2 bison-native flex-native"
+DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native"
-inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection gtk-doc
+inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome
LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
-# Use i.MX fork of GST for customizations
-GST1.0_SRC ?= "gitsm://source.codeaurora.org/external/imx/gstreamer.git;protocol=https"
-SRCBRANCH = "MM_04.05.06_2008_L5.4.47"
-
-SRC_URI = " \
- ${GST1.0_SRC};branch=${SRCBRANCH} \
- file://0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch \
- file://0002-meson-build-gir-even-when-cross-compiling-if-introsp.patch \
- file://0003-meson-Add-valgrind-feature.patch \
- file://0004-meson-Add-option-for-installed-tests.patch \
- file://capfix.patch \
-"
-SRCREV = "8514bc61ccab208a65e387eab9347276a8e770e7"
-
S = "${WORKDIR}/git"
+# Use i.MX fork of GST for customizations
+GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https"
+SRCBRANCH = "MM_04.06.01_2105_L5.10.y"
+SRC_URI = "${GST1.0_SRC};branch=${SRCBRANCH} \
+ file://run-ptest \
+ file://0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch \
+ file://0002-Remove-unused-valgrind-detection.patch \
+ file://0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch \
+ file://0004-tests-respect-the-idententaion-used-in-meson.patch \
+ file://0005-tests-add-support-for-install-the-tests.patch \
+ file://0006-tests-use-a-dictionaries-for-environment.patch \
+ file://0007-tests-install-the-environment-for-installed_tests.patch \
+ "
+SRCREV = "2f20fd10eaf8629b3e8c134424c38412c4d3bd86"
+
DEFAULT_PREFERENCE = "-1"
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
@@ -38,14 +39,14 @@ PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
PACKAGECONFIG[debug] = "-Dgst_debug=true,-Dgst_debug=false"
PACKAGECONFIG[tracer-hooks] = "-Dtracer_hooks=true,-Dtracer_hooks=false"
+PACKAGECONFIG[coretracers] = "-Dcoretracers=enabled,-Dcoretracers=disabled"
PACKAGECONFIG[check] = "-Dcheck=enabled,-Dcheck=disabled"
PACKAGECONFIG[tests] = "-Dtests=enabled -Dinstalled-tests=true,-Dtests=disabled -Dinstalled-tests=false"
-PACKAGECONFIG[valgrind] = "-Dvalgrind=enabled,-Dvalgrind=disabled,valgrind,"
PACKAGECONFIG[unwind] = "-Dlibunwind=enabled,-Dlibunwind=disabled,libunwind"
PACKAGECONFIG[dw] = "-Dlibdw=enabled,-Dlibdw=disabled,elfutils"
PACKAGECONFIG[bash-completion] = "-Dbash-completion=enabled,-Dbash-completion=disabled,bash-completion"
PACKAGECONFIG[tools] = "-Dtools=enabled,-Dtools=disabled"
-PACKAGECONFIG[setcap] = "-Dsetcap=enabled,-Dsetcap=disabled,libcap libcap-native"
+PACKAGECONFIG[setcap] = "-Dptp-helper-permissions=capabilities,,libcap libcap-native"
# TODO: put this in a gettext.bbclass patch
def gettext_oemeson(d):
@@ -57,15 +58,12 @@ def gettext_oemeson(d):
return '-Dnls=enabled'
EXTRA_OEMESON += " \
+ -Ddoc=disabled \
-Dexamples=disabled \
-Ddbghelp=disabled \
${@gettext_oemeson(d)} \
"
-GTKDOC_MESON_OPTION = "gtk_doc"
-GTKDOC_MESON_ENABLE_FLAG = "enabled"
-GTKDOC_MESON_DISABLE_FLAG = "disabled"
-
GIR_MESON_ENABLE_FLAG = "enabled"
GIR_MESON_DISABLE_FLAG = "disabled"
@@ -75,10 +73,10 @@ PACKAGES += "${PN}-bash-completion"
FILES_${PN} += "${libdir}/gstreamer-1.0/*.so"
FILES_${PN}-dev += "${libdir}/gstreamer-1.0/*.a ${libdir}/gstreamer-1.0/include"
FILES_${PN}-bash-completion += "${datadir}/bash-completion/completions/ ${datadir}/bash-completion/helpers/gst*"
-FILES_${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb ${datadir}/glib-2.0/gdb"
+FILES_${PN}-dbg += "${datadir}/gdb ${datadir}/gstreamer-1.0/gdb"
CVE_PRODUCT = "gstreamer"
-require recipes-multimedia/gstreamer/gstreamer1.0-ptest.inc
+PTEST_BUILD_HOST_FILES = ""
COMPATIBLE_MACHINE = "(mx6|mx7|mx8)"
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.6.1.bb
index c8bb6cd8..cf25e59d 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.6.1.bb
@@ -1,5 +1,5 @@
# Copyright (C) 2014,2016 Freescale Semiconductor
-# Copyright 2017-2019 NXP
+# Copyright 2017-2021 NXP
# Copyright (C) 2012-2015 O.S. Systems Software LTDA.
# Released under the MIT license (see COPYING.MIT for the terms)
@@ -20,16 +20,15 @@ RCONFLICTS_${PN} = "gst1.0-fsl-plugin"
LIC_FILES_CHKSUM = "file://COPYING-LGPL-2;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
file://COPYING-LGPL-2.1;md5=fbc093901857fcd118f065f900982c24"
-SRCBRANCH = "MM_04.05.07_2011_L5.4.70"
+SRCBRANCH = "MM_04.06.01_2105_L5.10.y"
-SRC_URI = " \
- git://source.codeaurora.org/external/imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH} \
-"
-SRCREV = "659ec4947d6b1903d26e4ec9e40ae251a659935d"
+
+SRC_URI = "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH}"
+SRCREV = "057e6bfbc208ce31e8ed0af0264dd1e86de05808"
S = "${WORKDIR}/git"
-inherit autotools pkgconfig use-imx-headers
+inherit meson pkgconfig use-imx-headers
PLATFORM_mx6 = "MX6"
PLATFORM_mx6sl = "MX6SL"
@@ -41,16 +40,19 @@ PLATFORM_mx7ulp= "MX7ULP"
PLATFORM_mx8 = "MX8"
# Todo add a mechanism to map possible build targets
-EXTRA_OECONF = "PLATFORM=${PLATFORM} \
- CPPFLAGS="-I${STAGING_INCDIR_IMX}" \
- CROSS_ROOT=${PKG_CONFIG_SYSROOT_DIR} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', bb.utils.contains('DISTRO_FEATURES', 'x11', '--disable-x11', '', d), '', d)}"
+EXTRA_OEMESON = "-Dplatform=${PLATFORM} \
+ -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \
+"
PACKAGES =+ "${PN}-gplay ${PN}-libgplaycore ${PN}-libgstfsl ${PN}-grecorder ${PN}-librecorder-engine ${PN}-libplayengine"
# Add codec list that the beep plugin run-time depended
BEEP_RDEPENDS = "imx-codec-aac imx-codec-mp3 imx-codec-oggvorbis"
RDEPENDS_${PN} += "imx-parser ${BEEP_RDEPENDS} gstreamer1.0-plugins-good-id3demux "
+RDEPENDS_${PN}_append_mx8qm = " imx-dsp"
+RDEPENDS_${PN}_append_mx8qxp = " imx-dsp"
+RDEPENDS_${PN}_append_mx8mp = " imx-dsp"
+RDEPENDS_${PN}_append_mx8ulp = " imx-dsp"
# overlaysink rely on G2D,
# cannot be supported on i.MX6SLL & i.MX6UL & i.MX6ULL & i.MX7D
@@ -60,14 +62,13 @@ PACKAGECONFIG_imxgpu2d = "overlaysink"
# FIXME: Add all features
# feature from excluded mm packages
-PACKAGECONFIG[ac3] += ",,imx-ac3codec,imx-ac3codec"
+PACKAGECONFIG[ac3] = ",,imx-ac3codec,imx-ac3codec"
# feature from special mm packages
-PACKAGECONFIG[aacp] += ",,imx-aacpcodec,imx-aacpcodec"
+PACKAGECONFIG[aacp] = ",,imx-aacpcodec,imx-aacpcodec"
MSDEPENDS = "imx-msparser imx-mscodec"
-PACKAGECONFIG[wma10dec] += ",,${MSDEPENDS},${MSDEPENDS}"
-PACKAGECONFIG[wma8enc] += "--enable-wma8enc,--disable-wma8enc,${MSDEPENDS},${MSDEPENDS}"
-OVDEPENDS = "virtual/libg2d"
-PACKAGECONFIG[overlaysink] += "--enable-overlaysink,--disable-overlaysink, ${OVDEPENDS}"
+PACKAGECONFIG[wma10dec] = ",,${MSDEPENDS},${MSDEPENDS}"
+PACKAGECONFIG[wma8enc] = ",,${MSDEPENDS},${MSDEPENDS}"
+PACKAGECONFIG[overlaysink] += ",,virtual/libg2d"
FILES_${PN} = "${libdir}/gstreamer-1.0/*.so ${datadir}"
diff --git a/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb b/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb
new file mode 100644
index 00000000..fe653c18
--- /dev/null
+++ b/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb
@@ -0,0 +1,21 @@
+# Copyright 2018-2021 NXP
+
+DESCRIPTION = "i.MX DSP Codec Wrapper and Lib owned by NXP"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=03bcadc8dc0a788f66ca9e2b89f56c6f"
+
+inherit fsl-eula-unpack autotools pkgconfig
+
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
+
+SRC_URI[md5sum] = "9e1d0e06f4fed47a37cb390e135f453f"
+SRC_URI[sha256sum] = "2703a9dc619a2ac32352d65cfa58f8217e65abcabd33b77b0be02425dc896ae2"
+
+# Fix strip command failed: 'Unable to recognise the format of the input file'
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_SYSROOT_STRIP = "1"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INSANE_SKIP:${PN} = "arch dev-so"
+
+FILES:${PN} += "${libdir}/imx-mm/audio-codec ${datadir}/imx-mm"
+COMPATIBLE_MACHINE = "(mx8qm|mx8qxp|mx8mp|mx8ulp)"
diff --git a/recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb b/recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb
new file mode 100644
index 00000000..fe650eb1
--- /dev/null
+++ b/recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb
@@ -0,0 +1,45 @@
+# Copyright 2017-2021 NXP
+
+DESCRIPTION = "i.MX DSP Wrapper, Firmware Binary, Codec Libraries"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=03bcadc8dc0a788f66ca9e2b89f56c6f"
+
+inherit fsl-eula-unpack autotools pkgconfig
+
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
+
+SRC_URI[md5sum] = "238d3f0256573ca657228d7090bcb7d3"
+SRC_URI[sha256sum] = "13f67f267d6d33e8be2a6c258a46cde3667258ac86435776cbf1a370de611476"
+
+EXTRA_OECONF += " \
+ -datadir=${base_libdir}/firmware --bindir=/unit_tests \
+ ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8', ' ', d)} \
+"
+
+RDEPENDS:${PN} += " imx-dsp-codec-ext"
+
+HIFI4_BIN ?= "hifi4_imx8qmqxp.bin"
+HIFI4_BIN:mx8mp = "hifi4_imx8mp.bin"
+HIFI4_BIN:mx8ulp = "hifi4_imx8ulp.bin"
+
+do_install:append () {
+ # Rename DSP Firmware into hifi4.bin and remove unneeded binary
+ mv ${D}/lib/firmware/imx/dsp/${HIFI4_BIN} ${D}/lib/firmware/imx/dsp/hifi4.bin
+ find ${D}/lib/firmware/imx/dsp -name hifi4_*.bin -exec rm {} \;
+}
+
+FILES:${PN} = "${libdir}/imx-mm/audio-codec/dsp \
+ ${libdir}/imx-mm/audio-codec/wrap \
+ ${base_libdir}/firmware/imx/dsp \
+ /unit_tests \
+"
+
+INSANE_SKIP:${PN} = "already-stripped arch ldflags dev-so"
+
+# Fix strip command failed: 'Unable to recognise the format of the input file'
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_SYSROOT_STRIP = "1"
+
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx8qm|mx8qxp|mx8mp|mx8ulp)"
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.0.bb b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.0.bb
deleted file mode 100644
index f6b4baae..00000000
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.0.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-DESCRIPTION = "frontend for the i.MX6 / i.MX8 VPU hardware video engines"
-HOMEPAGE = "https://github.com/Freescale/libimxvpuapi"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=38fa42a5a6425b26d2919b17b1527324"
-SECTION = "multimedia"
-DEPENDS = "virtual/imxvpu libimxdmabuffer"
-
-PV .= "+git${SRCPV}"
-
-SRCBRANCH ?= "master"
-SRCREV = "49cb1b34d759aa7a51269ca0f58fcc1f9647da5b"
-SRC_URI = "git://github.com/Freescale/libimxvpuapi.git;branch=${SRCBRANCH}"
-
-S = "${WORKDIR}/git"
-
-inherit waf pkgconfig use-imx-headers
-
-IMX_PLATFORM_mx6 = "imx6"
-IMX_PLATFORM_mx8mq = "imx8m"
-IMX_PLATFORM_mx8mm = "imx8mm"
-IMX_PLATFORM_mx8mp = "imx8mm"
-
-EXTRA_OECONF = "--imx-platform=${IMX_PLATFORM} --libdir=${libdir} --imx-headers=${STAGING_INCDIR_IMX} --sysroot-path=${RECIPE_SYSROOT}"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(imxvpu)"
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.2.bb b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
index f8a670e4..f66eff27 100644
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.1.2.bb
+++ b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.0.bb
@@ -8,7 +8,7 @@ DEPENDS = "virtual/imxvpu libimxdmabuffer"
PV .= "+git${SRCPV}"
SRCBRANCH ?= "master"
-SRCREV = "29c90975dcbb52ca09512693af417d73ab2800a9"
+SRCREV = "a650f13fb5de94e0c7c9e77f4d07ea275ea80dac"
SRC_URI = "git://github.com/Freescale/libimxvpuapi.git;branch=${SRCBRANCH}"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/tinycompress/tinycompress/0001-tinycompress-Add-id3-decoding.patch b/recipes-multimedia/tinycompress/tinycompress/0001-tinycompress-Add-id3-decoding.patch
new file mode 100755
index 00000000..f578148a
--- /dev/null
+++ b/recipes-multimedia/tinycompress/tinycompress/0001-tinycompress-Add-id3-decoding.patch
@@ -0,0 +1,1001 @@
+From 16f6b7a5baec41f18fde75fd311fb988e3c31810 Mon Sep 17 00:00:00 2001
+From: Shengjiu Wang <shengjiu.wang@nxp.com>
+Date: Fri, 13 Jul 2018 18:13:24 +0800
+Subject: [PATCH] tinycompress: Add id3 decoding
+
+Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
+---
+ include/tinycompress/id3_tag_decode.h | 198 +++++++++++
+ src/utils/Makefile.am | 2 +-
+ src/utils/cplay.c | 88 +++++
+ src/utils/id3_tag_decode.c | 642 ++++++++++++++++++++++++++++++++++
+ 4 files changed, 929 insertions(+), 1 deletion(-)
+ create mode 100644 include/tinycompress/id3_tag_decode.h
+ create mode 100644 src/utils/id3_tag_decode.c
+
+diff --git a/include/tinycompress/id3_tag_decode.h b/include/tinycompress/id3_tag_decode.h
+new file mode 100644
+index 0000000..1a911d7
+--- /dev/null
++++ b/include/tinycompress/id3_tag_decode.h
+@@ -0,0 +1,198 @@
++/*
++ * Copyright (c) 2006-2017 Cadence Design Systems, Inc.
++ * Copyright 2018 NXP
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sublicense, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
++ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
++ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
++ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
++ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++/******************************************************************
++ * file name : id3_tag_decode.h
++ *
++ * description : stores typedefs of structures specific to MP3 tag
++ *
++ * revision history:
++ * 29 04 2004 DK creation
++ *****************************************************************/
++
++#ifndef ID3_TAG_DECODE_H
++#define ID3_TAG_DECODE_H
++
++typedef signed char WORD8;
++typedef signed char * pWORD8;
++typedef unsigned char UWORD8;
++typedef unsigned char * pUWORD8;
++
++typedef signed short WORD16;
++typedef signed short * pWORD16;
++typedef unsigned short UWORD16;
++typedef unsigned short * pUWORD16;
++
++typedef signed int WORD24;
++typedef signed int * pWORD24;
++typedef unsigned int UWORD24;
++typedef unsigned int * pUWORD24;
++
++typedef signed int WORD32;
++typedef signed int * pWORD32;
++typedef unsigned int UWORD32;
++typedef unsigned int * pUWORD32;
++
++typedef void VOID;
++typedef void * pVOID;
++
++typedef signed int BOOL;
++typedef unsigned int UBOOL;
++typedef signed int FLAG;
++typedef unsigned int UFLAG;
++typedef signed int LOOPIDX;
++typedef unsigned int ULOOPIDX;
++typedef signed int WORD;
++typedef unsigned int UWORD;
++
++#define MAX_TAG_FRAME_SIZE 100
++
++#define ID3V1 (0x544147) /* 0x544147 is TAG in WORD8 */
++
++#define ID3V2 (0x494433) /* 0x494433 is ID3 in WORD8 */
++
++/*
++ * structure corresponding to ID3 tag v1 header.
++ * this structure has all the field corresponding to ID3 tag v1 header.
++ */
++
++typedef struct {
++ WORD32 tag; // 3 bytes
++
++ WORD16 version; // 2 bytes
++
++ WORD8 flag; //1 byte
++
++ WORD32 size; //4 bytes
++
++} id3_v2_header_struct;
++
++/* structure which will store the frame data and
++ * also put a limit max data to be stored
++ */
++typedef struct {
++ WORD8 frame_data[MAX_TAG_FRAME_SIZE];
++
++ WORD32 max_size; //4 bytes
++
++ WORD16 tag_present;
++
++ WORD16 exceeds_buffer_size;
++
++} id3_v2_frame_struct;
++
++/*
++ * structure corresponding to ID3 tag v2.
++ * this structure has some of the field corresponding to ID3 tag v2.
++ * if user wants to read some more tag information from
++ * the MP3 file, he can add that field in this structure and pass address
++ * of that element to get_inf function in id3_tag_decode.c under the
++ * corresponding field frame header. few fields which are needed are already
++ * populated by reading from the TAG header.
++ */
++typedef struct {
++ id3_v2_frame_struct album_movie_show_title;
++
++ id3_v2_frame_struct composer_name;
++
++ id3_v2_frame_struct content_type;
++
++ id3_v2_frame_struct encoded_by;
++
++ id3_v2_frame_struct lyricist_text_writer;
++
++ id3_v2_frame_struct content_group_description;
++
++ id3_v2_frame_struct title_songname_content_description;
++
++ id3_v2_frame_struct medxa_type;
++
++ id3_v2_frame_struct original_album_movie_show_title;
++
++ id3_v2_frame_struct original_filename;
++
++ id3_v2_frame_struct original_lyricist_text_writer;
++
++ id3_v2_frame_struct original_artist_performer;
++
++ id3_v2_frame_struct file_owner_licensee;
++
++ id3_v2_frame_struct lead_performer_soloist;
++
++ id3_v2_frame_struct publisher;
++
++ id3_v2_frame_struct private_frame;
++
++ id3_v2_frame_struct other_info;
++
++ id3_v2_header_struct id3_v2_header;
++
++ WORD32 header_end;
++
++ WORD32 bytes_consumed;
++
++} id3v2_struct;
++
++/*
++ * structure corresponding to ID3 tag v1.
++ * this structure has all the field corresponding to ID3 tag v1.
++ */
++typedef struct {
++ WORD8 song_title[30]; //30 word8acters
++
++ WORD8 artist[30]; //30 word8acters
++
++ WORD8 album[30]; //30 word8acters
++
++ WORD8 year[4]; //4 word8acters
++
++ WORD8 comment[30]; //30 word8acters
++
++ WORD8 genre[1]; //1 byte
++
++} id3v1_struct;
++
++WORD32 get_info(const char *inp_buffer,
++ unsigned int avail_inp,
++ WORD32 tag_size,
++ id3_v2_frame_struct *dest);
++
++WORD32 search_id3_v2(UWORD8 *buffer);
++
++WORD32 decode_id3_v2(const char *const buffer,
++ id3v2_struct *id3v2,
++ WORD32 continue_flag,
++ WORD32 insize);
++
++WORD32 get_id3_v2_bytes(UWORD8 *buffer);
++
++WORD32 get_v1_info(UWORD8 *buffer, id3v1_struct *id3v1);
++
++WORD32 search_id3_v1(UWORD8 *buffer);
++
++WORD32 decode_id3_v1(UWORD8 *buffer, id3v1_struct *id3v1);
++
++void init_id3v2_field(id3v2_struct *id3v2);
++
++#endif
+diff --git a/src/utils/Makefile.am b/src/utils/Makefile.am
+index 1b996d4..e813689 100644
+--- a/src/utils/Makefile.am
++++ b/src/utils/Makefile.am
+@@ -1,6 +1,6 @@
+ bin_PROGRAMS = cplay crecord
+
+-cplay_SOURCES = cplay.c
++cplay_SOURCES = cplay.c id3_tag_decode.c
+ crecord_SOURCES = crecord.c
+
+ cplay_CFLAGS = -I$(top_srcdir)/include
+diff --git a/src/utils/cplay.c b/src/utils/cplay.c
+index 87863a3..2a52b52 100644
+--- a/src/utils/cplay.c
++++ b/src/utils/cplay.c
+@@ -72,6 +72,7 @@
+ #include "sound/compress_params.h"
+ #include "tinycompress/tinycompress.h"
+ #include "tinycompress/tinymp3.h"
++#include "tinycompress/id3_tag_decode.h"
+
+ static int verbose;
+ static const unsigned int DEFAULT_CODEC_ID = SND_AUDIOCODEC_PCM;
+@@ -245,12 +246,97 @@ int main(int argc, char **argv)
+ exit(EXIT_SUCCESS);
+ }
+
++void shift_buffer(char *buf, int buf_size, int bytes_consumed)
++{
++ int i;
++
++ if (bytes_consumed <= 0)
++ return;
++
++ for (i = 0; i < buf_size - bytes_consumed; i++)
++ buf[i] = buf[i + bytes_consumed];
++}
++
++void parse_id3(FILE *file, int *offset) {
++ /* ID3 tag specific declarations */
++ unsigned char id3_buf[128];
++ unsigned char id3v2_buf[4096];
++ signed int id3_v1_found = 0, id3_v1_decoded = 0;
++ signed int id3_v2_found = 0, id3_v2_complete = 0;
++ signed int i_bytes_consumed = 0;
++ signed int i_fread_bytes;
++ id3v1_struct id3v1;
++ id3v2_struct id3v2;
++
++ {
++ fseek(file, -128, SEEK_END);
++ fread(id3_buf, 1, 128, file);
++
++ /* search for ID3V1 */
++ id3_v1_found = search_id3_v1(id3_buf + 0);
++ if (id3_v1_found) {
++ /* if ID3V1 is found, decode ID3V1 */
++ decode_id3_v1(id3_buf + 3, &id3v1);
++ id3_v1_decoded = 1;
++ }
++ fseek(file, 0, SEEK_SET);
++ }
++
++ {
++ signed int flag = 0;
++ signed int continue_flag = 0;
++
++ i_fread_bytes = fread(id3v2_buf,
++ sizeof(char), 0x1000, file);
++
++ /* search for ID3V2 */
++ id3_v2_found =
++ search_id3_v2(id3v2_buf);
++
++ if (id3_v2_found) {
++ /* initialise the max fields */
++ init_id3v2_field(&id3v2);
++
++ while (!id3_v2_complete && id3_v2_found) {
++ /* if ID3V2 is found, decode ID3V2 */
++ id3_v2_complete = decode_id3_v2((const char *const)id3v2_buf,
++ &id3v2, continue_flag, i_fread_bytes);
++
++ if (!id3_v2_complete) {
++ continue_flag = 1;
++ i_bytes_consumed = id3v2.bytes_consumed;
++
++ fseek(file, i_bytes_consumed, SEEK_SET);
++
++ i_fread_bytes = fread(id3v2_buf,
++ sizeof(unsigned char), 0x1000, file);
++ if (i_fread_bytes <= 0) {
++ return;
++ }
++ }
++ }
++
++ if (id3_v2_complete) {
++ i_bytes_consumed = id3v2.bytes_consumed;
++ fseek(file, i_bytes_consumed, SEEK_SET);
++ }
++ }
++ }
++
++ *offset = i_bytes_consumed;
++}
++
+ void get_codec_mp3(FILE *file, struct compr_config *config,
+ struct snd_codec *codec)
+ {
+ size_t read;
+ struct mp3_header header;
+ unsigned int channels, rate, bits;
++ int offset = 0;
++
++ parse_id3(file, &offset);
++
++ fseek(file, offset, SEEK_SET);
+
+ read = fread(&header, 1, sizeof(header), file);
+ if (read != sizeof(header)) {
+@@ -279,6 +365,8 @@ void get_codec_mp3(FILE *file, struct compr_config *config,
+ codec->level = 0;
+ codec->ch_mode = 0;
+ codec->format = 0;
++
++ fseek(file, offset, SEEK_SET);
+ }
+
+ void get_codec_iec(FILE *file, struct compr_config *config,
+diff --git a/src/utils/id3_tag_decode.c b/src/utils/id3_tag_decode.c
+new file mode 100644
+index 0000000..393967a
+--- /dev/null
++++ b/src/utils/id3_tag_decode.c
+@@ -0,0 +1,642 @@
++/*
++ * Copyright (c) 2006-2017 Cadence Design Systems, Inc.
++ * Copyright 2018 NXP
++ *
++ * Permission is hereby granted, free of charge, to any person obtaining
++ * a copy of this software and associated documentation files (the
++ * "Software"), to deal in the Software without restriction, including
++ * without limitation the rights to use, copy, modify, merge, publish,
++ * distribute, sublicense, and/or sell copies of the Software, and to
++ * permit persons to whom the Software is furnished to do so, subject to
++ * the following conditions:
++ *
++ * The above copyright notice and this permission notice shall be included
++ * in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
++ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
++ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
++ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
++ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++ */
++#include <ctype.h>
++#include "tinycompress/id3_tag_decode.h"
++
++#define CHAR4(c1, c2, c3, c4) \
++ (int)(((unsigned char)(c1) << 24) | \
++ ((unsigned char)(c2) << 16) | \
++ ((unsigned char)(c3) << 8) | \
++ ((unsigned char)c4))
++
++#ifndef MSVC_BUILD
++unsigned int umin(unsigned int a, unsigned int b)
++{
++ return (a < b ? a : b);
++}
++
++#else
++unsigned int umin(unsigned int a, unsigned int b)
++{
++ return (a < b ? a : b);
++}
++#endif
++
++/***********************************************************
++ * function name : display
++ *
++ * description : display ID3 tag contents.
++ *
++ * arguments : input parameters
++ *
++ * values returned : 0
++ ***********************************************************/
++
++static void display2(const id3_v2_frame_struct * const src,
++ int size,
++ const char * const disp)
++{
++ int j;
++
++
++ for (j = 0; j < size; j++) {
++ int c = src->frame_data[j];
++
++ if (c) {
++ if (!isprint(c))
++ break;
++ }
++ }
++}
++
++static VOID display1(WORD8 src[], WORD32 size, WORD8 disp[])
++{
++ WORD32 j;
++
++ for (j = 0; j < size ; j++) {
++ int c = src[j];
++
++ if (c) {
++ if (!isprint(c))
++ break;
++ }
++ }
++}
++
++/*****************************************************************
++ * function name : init_id3_header
++ *
++ * description : initialise the max filed size of teh farem.
++ *
++ * arguments : input parameters
++ *
++ * values returned : 0
++ ****************************************************************/
++
++VOID init_id3v2_field(id3v2_struct *id3v2)
++{
++ id3v2->album_movie_show_title.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->composer_name.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->content_type.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->encoded_by.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->lyricist_text_writer.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->content_group_description.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->title_songname_content_description.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->medxa_type.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->original_album_movie_show_title.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->original_filename.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->original_lyricist_text_writer.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->original_artist_performer.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->file_owner_licensee.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->lead_performer_soloist.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->publisher.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->private_frame.max_size = MAX_TAG_FRAME_SIZE;
++ id3v2->other_info.max_size = MAX_TAG_FRAME_SIZE;
++
++ /* resetting the flag to indicate presese of frame */
++ id3v2->album_movie_show_title.tag_present = 0;
++ id3v2->composer_name.tag_present = 0;
++ id3v2->content_type.tag_present = 0;
++ id3v2->encoded_by.tag_present = 0;
++ id3v2->lyricist_text_writer.tag_present = 0;
++ id3v2->content_group_description.tag_present = 0;
++ id3v2->title_songname_content_description.tag_present = 0;
++ id3v2->medxa_type.tag_present = 0;
++ id3v2->original_album_movie_show_title.tag_present = 0;
++ id3v2->original_filename.tag_present = 0;
++ id3v2->original_lyricist_text_writer.tag_present = 0;
++ id3v2->original_artist_performer.tag_present = 0;
++ id3v2->file_owner_licensee.tag_present = 0;
++ id3v2->lead_performer_soloist.tag_present = 0;
++ id3v2->publisher.tag_present = 0;
++ id3v2->private_frame.tag_present = 0;
++ id3v2->other_info.tag_present = 0;
++
++ /* resetting the flag which indicates that size of the frame has
++ * exceeded the max buffer size
++ */
++ id3v2->album_movie_show_title.exceeds_buffer_size = 0;
++ id3v2->composer_name.exceeds_buffer_size = 0;
++ id3v2->content_type.exceeds_buffer_size = 0;
++ id3v2->encoded_by.exceeds_buffer_size = 0;
++ id3v2->lyricist_text_writer.exceeds_buffer_size = 0;
++ id3v2->content_group_description.exceeds_buffer_size = 0;
++ id3v2->title_songname_content_description.exceeds_buffer_size = 0;
++ id3v2->medxa_type.exceeds_buffer_size = 0;
++ id3v2->original_album_movie_show_title.exceeds_buffer_size = 0;
++ id3v2->original_filename.exceeds_buffer_size = 0;
++ id3v2->original_lyricist_text_writer.exceeds_buffer_size = 0;
++ id3v2->original_artist_performer.exceeds_buffer_size = 0;
++ id3v2->file_owner_licensee.exceeds_buffer_size = 0;
++ id3v2->lead_performer_soloist.exceeds_buffer_size = 0;
++ id3v2->publisher.exceeds_buffer_size = 0;
++ id3v2->private_frame.exceeds_buffer_size = 0;
++ id3v2->other_info.exceeds_buffer_size = 0;
++
++ id3v2->bytes_consumed = 0;
++ id3v2->header_end = 0;
++}
++
++/***************************************************************
++ * function name : search_id3_v2
++ *
++ * description : finds if ID3V2 starts at the start of given buffer.
++ *
++ * arguments : input parameters
++ * buffer input buffer
++ *
++ * values returned : FLAG 1: ID3 found 0: ID3 not found
++ ***************************************************************/
++WORD32 search_id3_v2(UWORD8 *buffer)
++{
++ UWORD32 temp;
++
++ temp = buffer[0] << 16;
++ temp |= buffer[1] << 8;
++ temp |= buffer[2];
++
++ if (temp == ID3V2)
++ return 1; /* ID3 found */
++
++ return 0; /* ID3 not found */
++}
++
++/**************************************************************
++ * function name : search_id3_v1
++ *
++ * description : finds if ID3V1 starts at the start of given buffer.
++ *
++ * arguments : input parameters
++ * buffer input buffer
++ *
++ * values returned : FLAG 1: ID3 found 0: ID3 not found
++ **************************************************************/
++WORD32 search_id3_v1(UWORD8 *buffer)
++{
++ UWORD32 temp;
++
++ temp = buffer[0] << 16;
++ temp |= buffer[1] << 8;
++ temp |= buffer[2];
++
++ if (temp == ID3V1)
++ return 1; /* ID3 found */
++
++ return 0; /* ID3 not found */
++}
++
++/***************************************************************
++ * function name : decode_id3_v1
++ *
++ * description : decodes ID3V1 tag.
++ *
++ * arguments : input parameters
++ * buffer input buffer
++ * id3v1 structure
++ *
++ * values returned : bytes consumed
++ **************************************************************/
++WORD32 decode_id3_v1(UWORD8 *buffer, id3v1_struct *id3v1)
++{
++ WORD32 bytes_consumed = 0;
++ short tag_type;
++
++ /* setting the tag type */
++ tag_type = 1;
++
++ bytes_consumed = get_v1_info(buffer, id3v1);
++
++ return bytes_consumed;
++}
++
++/***********************************************************
++ * function name : get_v1_info
++ *
++ * description : gets ID3V1 information fields.
++ *
++ * arguments : input parameters
++ * buffer input buffer
++ * id3v1 structure
++ *
++ * values returned : bytes consumed
++ ***********************************************************/
++WORD32 get_v1_info(UWORD8 *buffer, id3v1_struct *id3v1)
++{
++ WORD32 i;
++ WORD32 bytes_consumed = 0;
++
++ /* get song_title */
++ for (i = 0; i < 30; i++)
++ id3v1->song_title[i] = buffer[i];
++
++ buffer += 30;
++ bytes_consumed += 30;
++ display1(id3v1->song_title, 30, (WORD8 *)"song_title : ");
++
++ /* get artist */
++ for (i = 0; i < 30; i++)
++ id3v1->artist[i] = buffer[i];
++
++ buffer += 30;
++ bytes_consumed += 30;
++ display1(id3v1->artist, 30, (WORD8 *)"artist : ");
++
++ /* get album */
++ for (i = 0; i < 30; i++)
++ id3v1->album[i] = buffer[i];
++
++ buffer += 30;
++ bytes_consumed += 30;
++ display1(id3v1->album, 30, (WORD8 *)"album : ");
++
++ /* get year */
++ for (i = 0; i < 4; i++)
++ id3v1->year[i] = buffer[i];
++
++ buffer += 4;
++ bytes_consumed += 4;
++ display1(id3v1->year, 4, (WORD8 *)"year : ");
++
++ /* get comment */
++ for (i = 0; i < 30; i++)
++ id3v1->comment[i] = buffer[i];
++
++ buffer += 30;
++ bytes_consumed += 30;
++ display1(id3v1->comment, 30, (WORD8 *)"comment : ");
++
++ /* get genre */
++ for (i = 0; i < 1; i++)
++ id3v1->genre[i] = buffer[i];
++
++ buffer += 1;
++ bytes_consumed += 1;
++
++ return bytes_consumed;
++}
++
++/*****************************************************
++ * function name : decode_id3_v2
++ *
++ * description : decodes ID3V2 tag.
++ *
++ * arguments : input parameters
++ * buffer input buffer
++ * id3v2 structure
++ * continue_flag FLAG to indicate whether
++ * it is first call or not
++ * insize input buffer size
++ *
++ * values returned : bytes consumed
++ ******************************************************/
++WORD32 decode_id3_v2(const char *const buffer,
++ id3v2_struct *const id3v2,
++ WORD32 continue_flag,
++ WORD32 insize)
++{
++ UWORD32 size = 0, flag;
++ WORD32 i, buf_update_val;
++ UWORD8 buf[4], frame_header[10], id3_buffer[10];
++ WORD8 *bitstream_ptr;
++ short tag_type;
++
++ WORD32 bytes_consumed = 0;
++
++ if (id3v2->header_end == 1) {
++ id3v2->bytes_consumed += insize;
++ if (id3v2->bytes_consumed < id3v2->id3_v2_header.size)
++ return 0;
++
++ id3v2->bytes_consumed = (id3v2->id3_v2_header.size + 10);
++ return 1;
++ }
++
++ bitstream_ptr = (WORD8 *)id3_buffer;
++
++ if (!continue_flag) {
++ bytes_consumed += 3;
++ /* setting the tag type */
++ tag_type = 2;
++ id3v2->id3_v2_header.version = buffer[bytes_consumed + 0] << 8;
++ id3v2->id3_v2_header.version |= buffer[bytes_consumed + 1];
++ id3v2->id3_v2_header.flag = buffer[bytes_consumed + 2];
++
++ /* making the msb of each byte zero */
++ buf[0] = buffer[bytes_consumed + 6] & 0x7f;
++ buf[1] = buffer[bytes_consumed + 5] & 0x7f;
++ buf[2] = buffer[bytes_consumed + 4] & 0x7f;
++ buf[3] = buffer[bytes_consumed + 3] & 0x7f;
++
++ bytes_consumed += 7;
++
++ /* concatenation the bytes after making
++ * 7th bit zero to get 28 bits size
++ */
++ size = buf[0];
++ size |= (buf[1] << 7);
++ size |= (buf[2] << 14);
++ size |= (buf[3] << 21);
++ /* storing the size */
++ id3v2->id3_v2_header.size = size;
++
++ /* check for extended header */
++ if (id3v2->id3_v2_header.flag & 0x20) {
++ for (i = 0; i < 10; i++)
++ bitstream_ptr[i] = buffer[bytes_consumed + i];
++
++ i = 0;
++ bytes_consumed += 10;
++
++ size = bitstream_ptr[i++] << 24;
++ size |= bitstream_ptr[i++] << 16;
++ size |= bitstream_ptr[i++] << 8;
++ size |= bitstream_ptr[i++];
++
++ /* two bytes for flag */
++ i += 2;
++ {
++ UWORD32 padding_size;
++
++ padding_size = bitstream_ptr[i++] << 24;
++ padding_size |= bitstream_ptr[i++] << 16;
++ padding_size |= bitstream_ptr[i++] << 8;
++ padding_size |= bitstream_ptr[i++];
++
++ /* skipping the padding and frame size
++ * number of bytes
++ */
++ bytes_consumed += (padding_size + size);
++ }
++ }
++ }
++
++ while (id3v2->header_end != 1) {
++ char *key;
++ id3_v2_frame_struct *value;
++ unsigned int avail_inp;
++
++ /* reading the 10 bytes to get the frame header */
++
++ for (i = 0; i < 10; i++)
++ frame_header[i] = buffer[bytes_consumed + i];
++ bytes_consumed += 10;
++
++ /* getting the size from the header */
++ size = frame_header[4] << 24;
++ size |= frame_header[5] << 16;
++ size |= frame_header[6] << 8;
++ size |= frame_header[7];
++
++ /* decoding the flag, currently not used */
++ flag = frame_header[8] << 8;
++ flag |= frame_header[9];
++
++ avail_inp = insize - bytes_consumed;
++
++ /* switching to the frame type */
++ switch (CHAR4(frame_header[0],
++ frame_header[1],
++ frame_header[2],
++ frame_header[3])) {
++ case CHAR4('A', 'E', 'N', 'C'):
++ case CHAR4('A', 'P', 'I', 'C'):
++ case CHAR4('C', 'O', 'M', 'M'):
++ case CHAR4('C', 'O', 'M', 'R'):
++ case CHAR4('E', 'N', 'C', 'R'):
++ case CHAR4('E', 'Q', 'U', 'A'):
++ case CHAR4('E', 'T', 'C', 'O'):
++ case CHAR4('G', 'E', 'O', 'B'):
++ case CHAR4('G', 'R', 'I', 'D'):
++ case CHAR4('I', 'P', 'L', 'S'):
++ case CHAR4('L', 'I', 'N', 'K'):
++ case CHAR4('M', 'C', 'D', 'I'):
++ case CHAR4('M', 'L', 'L', 'T'):
++ case CHAR4('O', 'W', 'N', 'E'):
++ case CHAR4('P', 'C', 'N', 'T'):
++ case CHAR4('P', 'O', 'P', 'M'):
++ case CHAR4('P', 'O', 'S', 'S'):
++ case CHAR4('R', 'B', 'U', 'F'):
++ case CHAR4('R', 'V', 'A', 'D'):
++ case CHAR4('R', 'V', 'R', 'B'):
++ case CHAR4('S', 'Y', 'L', 'T'):
++ case CHAR4('S', 'Y', 'T', 'C'):
++ case CHAR4('T', 'B', 'P', 'M'):
++ case CHAR4('T', 'C', 'O', 'P'):
++ case CHAR4('T', 'D', 'A', 'T'):
++ case CHAR4('T', 'D', 'L', 'Y'):
++ case CHAR4('T', 'F', 'L', 'T'):
++ case CHAR4('T', 'I', 'M', 'E'):
++ case CHAR4('T', 'K', 'E', 'Y'):
++ case CHAR4('T', 'L', 'A', 'N'):
++ case CHAR4('T', 'L', 'E', 'N'):
++ case CHAR4('T', 'M', 'E', 'D'):
++ case CHAR4('T', 'O', 'F', 'N'):
++ case CHAR4('T', 'O', 'L', 'Y'):
++ case CHAR4('T', 'O', 'R', 'Y'):
++ case CHAR4('T', 'P', 'E', '2'):
++ case CHAR4('T', 'P', 'E', '3'):
++ case CHAR4('T', 'P', 'E', '4'):
++ case CHAR4('T', 'P', 'O', 'S'):
++ case CHAR4('T', 'R', 'C', 'K'):
++ case CHAR4('T', 'R', 'D', 'A'):
++ case CHAR4('T', 'R', 'S', 'N'):
++ case CHAR4('T', 'R', 'S', 'O'):
++ case CHAR4('T', 'S', 'I', 'Z'):
++ case CHAR4('T', 'S', 'R', 'C'):
++ case CHAR4('T', 'S', 'S', 'E'):
++ case CHAR4('T', 'Y', 'E', 'R'):
++ case CHAR4('T', 'X', 'X', 'X'):
++ case CHAR4('U', 'F', 'I', 'D'):
++ case CHAR4('U', 'S', 'E', 'R'):
++ case CHAR4('U', 'S', 'L', 'T'):
++ case CHAR4('W', 'C', 'O', 'M'):
++ case CHAR4('W', 'C', 'O', 'P'):
++ case CHAR4('W', 'O', 'A', 'F'):
++ case CHAR4('W', 'O', 'A', 'R'):
++ case CHAR4('W', 'O', 'A', 'S'):
++ case CHAR4('W', 'O', 'R', 'S'):
++ case CHAR4('W', 'P', 'A', 'Y'):
++ case CHAR4('W', 'P', 'U', 'B'):
++ case CHAR4('W', 'X', 'X', 'X'):
++ case CHAR4('T', 'I', 'T', '3'):
++ key = "other_info : ";
++ value = &id3v2->other_info;
++ break;
++ case CHAR4('P', 'R', 'I', 'V'):
++ key = "private_frame : ";
++ value = &id3v2->private_frame;
++ break;
++ case CHAR4('T', 'A', 'L', 'B'):
++ key = "album_movie_show_title : ";
++ value = &id3v2->album_movie_show_title;
++ break;
++ case CHAR4('T', 'C', 'O', 'M'):
++ key = "composer_name : ";
++ value = &id3v2->composer_name;
++ break;
++ case CHAR4('T', 'C', 'O', 'N'):
++ key = "content_type : ";
++ value = &id3v2->content_type;
++ break;
++ case CHAR4('T', 'E', 'N', 'C'):
++ key = "encoded_by : ";
++ value = &id3v2->encoded_by;
++ break;
++ case CHAR4('T', 'E', 'X', 'T'):
++ key = "lyricist_text_writer : ";
++ value = &id3v2->lyricist_text_writer;
++ break;
++ case CHAR4('T', 'I', 'T', '1'):
++ key = "content_group_description : ";
++ value = &id3v2->content_group_description;
++ break;
++ case CHAR4('T', 'I', 'T', '2'):
++ key = "title_songname_content_description : ";
++ value = &id3v2->title_songname_content_description;
++ break;
++ case CHAR4('T', 'O', 'A', 'L'):
++ key = "original_album_movie_show_title : ";
++ value = &id3v2->original_album_movie_show_title;
++ break;
++ case CHAR4('T', 'O', 'P', 'E'):
++ key = "original_artist_performer : ";
++ value = &id3v2->original_artist_performer;
++ break;
++ case CHAR4('T', 'O', 'W', 'N'):
++ key = "file_owner_licensee : ";
++ value = &id3v2->file_owner_licensee;
++ break;
++ case CHAR4('T', 'P', 'E', '1'):
++ key = "lead_performer_soloist : ";
++ value = &id3v2->lead_performer_soloist;
++ break;
++ case CHAR4('T', 'P', 'U', 'B'):
++ key = "publisher : ";
++ value = &id3v2->publisher;
++ break;
++ default:
++ /* skipping the read 10 bytes */
++ buf_update_val = -10;
++ id3v2->header_end = 1;
++ value = 0;
++ key = 0;
++ break;
++ }
++
++ if (value != 0)
++ buf_update_val = get_info(&buffer[bytes_consumed],
++ avail_inp, size, value);
++
++ /* Negative value for buf_update_val means one of two things:
++ * 1. The default case happened and we're done with ID3V2 tag
++ * frames, or
++ * 2. get_info() returned -1 to indicate that more input is
++ * required to decode this frame of the tag.
++ */
++ if (buf_update_val >= 0)
++ display2(value,
++ umin(value->max_size, buf_update_val), key);
++
++ if (buf_update_val == -1) {
++ id3v2->bytes_consumed += bytes_consumed;
++ return 1;
++ }
++
++ bytes_consumed += buf_update_val;
++
++ /* Is there enough input left (10 bytes) to begin
++ * decoding another frame? If not, bag out temporarily
++ * now. The caller will refill our input buffer and
++ * call us again with continue_flag == 1.
++ */
++ if (insize - bytes_consumed < 10) {
++ id3v2->bytes_consumed += bytes_consumed;
++ return 0; /* not completely decoded */
++ }
++ }
++
++ id3v2->bytes_consumed += bytes_consumed;
++ if ((id3v2->bytes_consumed + 10) < id3v2->id3_v2_header.size)
++ return 0; /* not completely decoded */
++
++ return 1; /* completely decoded */
++}
++
++/*******************************************************
++ * function name : get_id3_v2_bytes
++ *
++ * description : tells the size of ID3V2 tag.
++ *
++ * arguments : input parameters
++ * buffer input buffer
++ *
++ * values returned : bytes consumed
++ ********************************************************/
++WORD32 get_id3_v2_bytes(UWORD8 *buffer)
++{
++ WORD32 size;
++
++ /* making the msb of each byte zero */
++ size = (buffer[9] & 0x7f);
++ size |= ((buffer[8] & 0x7f) << 7);
++ size |= ((buffer[7] & 0x7f) << 14);
++ size |= ((buffer[6] & 0x7f) << 21);
++
++ return (size + 10);
++}
++
++/****************************************************
++ * function name : get_info
++ *
++ * description : read the frame information from the input buffer.
++ *
++ * arguments : input parameters
++ *
++ * values returned : update value for buffer
++ ****************************************************/
++WORD32 get_info(const char *inp_buffer,
++ unsigned int avail_inp,
++ WORD32 tag_size,
++ id3_v2_frame_struct *dest)
++{
++ WORD32 j;
++
++ /* setting the tag to indicate the presence of frame */
++ dest->tag_present = 1;
++ /* If there isn't enough input available, we punt back to the top
++ * level and ask for more.
++ */
++ if (avail_inp < umin(tag_size, dest->max_size))
++ return -1;
++
++ if (dest->max_size >= tag_size) {
++ for (j = 0; j < tag_size ; j++)
++ dest->frame_data[j] = inp_buffer[j];
++ } else {
++ dest->exceeds_buffer_size = 1;
++ for (j = 0; j < dest->max_size ; j++)
++ dest->frame_data[j] = inp_buffer[j];
++ }
++ return tag_size;
++}
+--
+2.7.4
+
diff --git a/recipes-multimedia/tinycompress/tinycompress/0002-cplay-Support-wave-file.patch b/recipes-multimedia/tinycompress/tinycompress/0002-cplay-Support-wave-file.patch
new file mode 100755
index 00000000..79544711
--- /dev/null
+++ b/recipes-multimedia/tinycompress/tinycompress/0002-cplay-Support-wave-file.patch
@@ -0,0 +1,215 @@
+From 4d4bc0a958fe254531920095fbabc241aad88113 Mon Sep 17 00:00:00 2001
+From: Shengjiu Wang <shengjiu.wang@nxp.com>
+Date: Tue, 28 Jul 2020 13:00:36 +0800
+Subject: [PATCH] cplay: Support wave file
+
+The supported format is mono/stereo, S16_LE/S32_LE, 8kHz-192kHz.
+Command is:
+cplay -c x -I PCM test.wav
+
+Upstream-Status: Inappropriate [i.MX specific]
+Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
+---
+ include/tinycompress/wave_formats.h | 51 +++++++++++++
+ src/utils/cplay.c | 107 ++++++++++++++++++++++++++++
+ 2 files changed, 158 insertions(+)
+ create mode 100644 include/tinycompress/wave_formats.h
+
+--- /dev/null
++++ b/include/tinycompress/wave_formats.h
+@@ -0,0 +1,53 @@
++#ifndef WAVE_FORMATS_H
++#define WAVE_FORMATS_H 1
++
++#include <sys/types.h>
++
++#define COMPOSE_ID(a,b,c,d) ((a) | ((b)<<8) | ((c)<<16) | ((d)<<24))
++
++#define WAV_RIFF COMPOSE_ID('R','I','F','F')
++#define WAV_RIFX COMPOSE_ID('R','I','F','X')
++#define WAV_WAVE COMPOSE_ID('W','A','V','E')
++#define WAV_FMT COMPOSE_ID('f','m','t',' ')
++#define WAV_DATA COMPOSE_ID('d','a','t','a')
++
++/* WAVE fmt block constants from Microsoft mmreg.h header */
++#define WAV_FMT_PCM 0x0001
++#define WAV_FMT_IEEE_FLOAT 0x0003
++#define WAV_FMT_DOLBY_AC3_SPDIF 0x0092
++#define WAV_FMT_EXTENSIBLE 0xfffe
++
++/* Used with WAV_FMT_EXTENSIBLE format */
++#define WAV_GUID_TAG "\x00\x00\x00\x00\x10\x00\x80\x00\x00\xAA\x00\x38\x9B\x71"
++
++typedef struct {
++ u_int magic; /* 'RIFF' */
++ u_int length; /* filelen */
++ u_int type; /* 'WAVE' */
++} WaveHeader;
++
++typedef struct {
++ u_short format; /* see WAV_FMT_* */
++ u_short channels;
++ u_int sample_fq; /* frequence of sample */
++ u_int byte_p_sec;
++ u_short byte_p_spl; /* samplesize; 1 or 2 bytes */
++ u_short bit_p_spl; /* 8, 12 or 16 bit */
++} WaveFmtBody;
++
++typedef struct {
++ WaveFmtBody format;
++ u_short ext_size;
++ u_short bit_p_spl;
++ u_int channel_mask;
++ u_short guid_format; /* WAV_FMT_* */
++ u_char guid_tag[14]; /* WAV_GUID_TAG */
++} WaveFmtExtensibleBody;
++
++typedef struct {
++ u_int type; /* 'data' */
++ u_int length; /* samplecount */
++} WaveChunkHeader;
++
++
++#endif /* FORMATS */
+--- a/src/utils/cplay.c
++++ b/src/utils/cplay.c
+@@ -1,4 +1,6 @@
+ /*
++ * Copyright 2020 NXP
++ *
+ * This file is provided under a dual BSD/LGPLv2.1 license. When using or
+ * redistributing this file, you may do so under either license.
+ *
+@@ -73,6 +75,8 @@
+ #include "tinycompress/tinycompress.h"
+ #include "tinycompress/tinymp3.h"
+ #include "tinycompress/id3_tag_decode.h"
++#include "tinycompress/wave_formats.h"
++#include <alsa/asoundlib.h>
+
+ static int verbose;
+ static const unsigned int DEFAULT_CODEC_ID = SND_AUDIOCODEC_PCM;
+@@ -166,6 +170,77 @@ static int parse_mp3_header(struct mp3_h
+ return 0;
+ }
+
++static int parse_wav_header(FILE *file, unsigned int *num_channels, unsigned int *sample_rate,
++ unsigned int *format) {
++ WaveHeader wave_header;
++ WaveChunkHeader chunk_header;
++ WaveFmtBody fmt_body;
++ int more_chunks = 1;
++
++ fread(&wave_header, sizeof(WaveHeader), 1, file);
++ if ((wave_header.magic != WAV_RIFF) ||
++ (wave_header.type != WAV_WAVE)) {
++ fprintf(stderr, "Error: it is not a riff/wave file\n");
++ return -1;
++ }
++
++ do {
++ fread(&chunk_header, sizeof(WaveChunkHeader), 1, file);
++ switch (chunk_header.type) {
++ case WAV_FMT:
++ fread(&fmt_body, sizeof(WaveFmtBody), 1, file);
++ /* If the format header is larger, skip the rest */
++ if (chunk_header.length > sizeof(WaveFmtBody))
++ fseek(file, chunk_header.length - sizeof(WaveFmtBody), SEEK_CUR);
++
++ *num_channels = fmt_body.channels;
++ *sample_rate = fmt_body.sample_fq;
++
++ switch (fmt_body.bit_p_spl) {
++ case 8:
++ *format = SND_PCM_FORMAT_U8;
++ break;
++ case 16:
++ *format = SND_PCM_FORMAT_S16_LE;
++ break;
++ case 24:
++ switch (fmt_body.byte_p_spl / fmt_body.channels) {
++ case 3:
++ *format = SND_PCM_FORMAT_S24_3LE;
++ break;
++ case 4:
++ *format = SND_PCM_FORMAT_S24_LE;
++ break;
++ default:
++ fprintf(stderr, "format error\n");
++ return -1;
++ }
++ break;
++ case 32:
++ if (fmt_body.format == WAV_FMT_PCM) {
++ *format = SND_PCM_FORMAT_S32_LE;
++ } else if (fmt_body.format == WAV_FMT_IEEE_FLOAT) {
++ *format = SND_PCM_FORMAT_FLOAT_LE;
++ }
++ break;
++ default:
++ fprintf(stderr, "format error\n");
++ return -1;
++ }
++ break;
++ case WAV_DATA:
++ /* Stop looking for chunks */
++ more_chunks = 0;
++ break;
++ default:
++ /* Unknown chunk, skip bytes */
++ fseek(file, chunk_header.length, SEEK_CUR);
++ }
++ } while (more_chunks);
++
++ return 0;
++}
++
+ static int print_time(struct compress *compress)
+ {
+ unsigned int avail;
+@@ -385,6 +460,35 @@ void get_codec_iec(FILE *file, struct co
+ codec->format = 0;
+ }
+
++void get_codec_pcm(FILE *file, struct compr_config *config,
++ struct snd_codec *codec)
++{
++ unsigned int channels, rate, format;
++
++ if (parse_wav_header(file, &channels, &rate, &format) == -1) {
++ fclose(file);
++ exit(EXIT_FAILURE);
++ }
++
++ if (channels > 2 || (format != SND_PCM_FORMAT_S16_LE && format != SND_PCM_FORMAT_S32_LE) ||
++ rate > 192000) {
++ fprintf(stderr, "unsupported wave file\n");
++ fclose(file);
++ exit(EXIT_FAILURE);
++ }
++
++ codec->id = SND_AUDIOCODEC_PCM;
++ codec->ch_in = channels;
++ codec->ch_out = channels;
++ codec->sample_rate = rate;
++ codec->bit_rate = 0;
++ codec->rate_control = 0;
++ codec->profile = SND_AUDIOPROFILE_PCM;
++ codec->level = 0;
++ codec->ch_mode = 0;
++ codec->format = format;
++}
++
+ void play_samples(char *name, unsigned int card, unsigned int device,
+ unsigned long buffer_size, unsigned int frag,
+ unsigned long codec_id)
+@@ -411,6 +515,9 @@ void play_samples(char *name, unsigned i
+ case SND_AUDIOCODEC_IEC61937:
+ get_codec_iec(file, &config, &codec);
+ break;
++ case SND_AUDIOCODEC_PCM:
++ get_codec_pcm(file, &config, &codec);
++ break;
+ default:
+ fprintf(stderr, "codec ID %ld is not supported\n", codec_id);
+ exit(EXIT_FAILURE);
diff --git a/recipes-multimedia/tinycompress/tinycompress/0003-cplay-Add-pause-feature.patch b/recipes-multimedia/tinycompress/tinycompress/0003-cplay-Add-pause-feature.patch
new file mode 100755
index 00000000..7d8492b7
--- /dev/null
+++ b/recipes-multimedia/tinycompress/tinycompress/0003-cplay-Add-pause-feature.patch
@@ -0,0 +1,146 @@
+From 6f778c21ee357a662cdd758cff578a3e4b85eedf Mon Sep 17 00:00:00 2001
+From: Zhang Peng <peng.zhang_8@nxp.com>
+Date: Tue, 4 Aug 2020 15:29:29 +0800
+Subject: [PATCH] cplay: Add pause feature
+
+Add option: -p pause
+
+Upstream-Status: Inappropriate [i.MX specific]
+Signed-off-by: Zhang Peng <peng.zhang_8@nxp.com>
+---
+ src/utils/cplay.c | 56 +++++++++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 52 insertions(+), 4 deletions(-)
+
+diff --git a/src/utils/cplay.c b/src/utils/cplay.c
+index 8882f4d..8e3dcbb 100644
+--- a/src/utils/cplay.c
++++ b/src/utils/cplay.c
+@@ -117,6 +117,9 @@ static void usage(void)
+ "-f\tfragments\n\n"
+ "-v\tverbose mode\n"
+ "-h\tPrints this help list\n\n"
++ "-p\tpause\n"
++ "-m\tpause blocks\n"
++ "-n\tpause time duration\n"
+ "Example:\n"
+ "\tcplay -c 1 -d 2 test.mp3\n"
+ "\tcplay -f 5 test.mp3\n\n"
+@@ -133,7 +136,8 @@ static void usage(void)
+
+ void play_samples(char *name, unsigned int card, unsigned int device,
+ unsigned long buffer_size, unsigned int frag,
+- unsigned long codec_id);
++ unsigned long codec_id, int pause_count, int pause_block,
++ int pause_duration);
+
+ struct mp3_header {
+ uint16_t sync;
+@@ -262,12 +266,15 @@ int main(int argc, char **argv)
+ int c, i;
+ unsigned int card = 0, device = 0, frag = 0;
+ unsigned int codec_id = SND_AUDIOCODEC_MP3;
++ int pause_count = 0;
++ int pause_block = 6;
++ int pause_duration = 10;
+
+ if (argc < 2)
+ usage();
+
+ verbose = 0;
+- while ((c = getopt(argc, argv, "hvb:f:c:d:I:")) != -1) {
++ while ((c = getopt(argc, argv, "hvb:f:c:d:I:p:m:n:")) != -1) {
+ switch (c) {
+ case 'h':
+ usage();
+@@ -306,6 +313,23 @@ int main(int argc, char **argv)
+ case 'v':
+ verbose = 1;
+ break;
++ case 'p':
++ pause_count = strtol(optarg, NULL, 10);
++ break;
++ case 'm':
++ pause_block = strtol(optarg, NULL, 10);
++ if (pause_duration < 0) {
++ printf("Set wrong paramter! Set duration default 6.\n");
++ pause_duration = 6;
++ }
++ break;
++ case 'n':
++ pause_duration = strtol(optarg, NULL, 10);
++ if (pause_duration < 0) {
++ printf("Set wrong paramter! Set duration default 10.\n");
++ pause_duration = 10;
++ }
++ break;
+ default:
+ exit(EXIT_FAILURE);
+ }
+@@ -315,7 +339,7 @@ int main(int argc, char **argv)
+
+ file = argv[optind];
+
+- play_samples(file, card, device, buffer_size, frag, codec_id);
++ play_samples(file, card, device, buffer_size, frag, codec_id, pause_count, pause_block, pause_duration);
+
+ fprintf(stderr, "Finish Playing.... Close Normally\n");
+ exit(EXIT_SUCCESS);
+@@ -491,7 +515,8 @@ void get_codec_pcm(FILE *file, struct compr_config *config,
+
+ void play_samples(char *name, unsigned int card, unsigned int device,
+ unsigned long buffer_size, unsigned int frag,
+- unsigned long codec_id)
++ unsigned long codec_id, int pause_count, int pause_block,
++ int pause_duration)
+ {
+ struct compr_config config;
+ struct snd_codec codec;
+@@ -499,6 +524,7 @@ void play_samples(char *name, unsigned int card, unsigned int device,
+ FILE *file;
+ char *buffer;
+ int size, num_read, wrote;
++ int write_count = 0;
+
+ if (verbose)
+ printf("%s: entry\n", __func__);
+@@ -574,6 +600,13 @@ void play_samples(char *name, unsigned int card, unsigned int device,
+ if (verbose)
+ printf("%s: You should hear audio NOW!!!\n", __func__);
+
++ if (pause_count > 0) {
++ printf("sleep...\n");
++ compress_pause(compress);
++ sleep(pause_duration);
++ compress_resume(compress);
++ }
++
+ do {
+ num_read = fread(buffer, 1, size, file);
+ if (num_read > 0) {
+@@ -592,8 +625,23 @@ void play_samples(char *name, unsigned int card, unsigned int device,
+ printf("%s: wrote %d\n", __func__, wrote);
+ }
+ }
++ write_count++;
++ if ((pause_count > 0) && (write_count % pause_block == 0)) {
++ printf("pause...\n");
++ compress_pause(compress);
++ sleep(pause_duration);
++ printf("pause release...\n");
++ compress_resume(compress);
++ pause_count--;
++ }
+ } while (num_read > 0);
+
++ if (pause_count > 0) {
++ compress_pause(compress);
++ sleep(5);
++ compress_resume(compress);
++ }
++
+ if (verbose)
+ printf("%s: exit success\n", __func__);
+ /* issue drain if it supports */
+--
+2.17.1
+
diff --git a/recipes-multimedia/tinycompress/tinycompress/0004-tinycompress-pass-NULL-buffer-with-0-size-to-driver.patch b/recipes-multimedia/tinycompress/tinycompress/0004-tinycompress-pass-NULL-buffer-with-0-size-to-driver.patch
new file mode 100755
index 00000000..dfedd186
--- /dev/null
+++ b/recipes-multimedia/tinycompress/tinycompress/0004-tinycompress-pass-NULL-buffer-with-0-size-to-driver.patch
@@ -0,0 +1,40 @@
+From a2892bf5db7520689fa9cb1d1589fa804bd9dc1a Mon Sep 17 00:00:00 2001
+From: Bing Song <bing.song@nxp.com>
+Date: Tue, 18 Aug 2020 15:26:51 +0800
+Subject: [PATCH] tinycompress: pass NULL buffer with 0 size to driver.
+
+The NULL buffer with 0 size to indecate driver drain input data with
+non-block mode. The defaul drain is block mode.
+
+Upstream-Status: Inappropriate [i.MX specific]
+Signed-off-by: Bing Song <bing.song@nxp.com>
+---
+ src/lib/compress.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/lib/compress.c b/src/lib/compress.c
+index bba4fcf..d66df0b 100644
+--- a/src/lib/compress.c
++++ b/src/lib/compress.c
+@@ -315,7 +315,8 @@ int compress_write(struct compress *compress, const void *buf, unsigned int size
+ fds.events = POLLOUT;
+
+ /*TODO: treat auto start here first */
+- while (size) {
++ /* NULL buffer with 0 size for non-block drain */
++ do {
+ if (ioctl(compress->fd, SNDRV_COMPRESS_AVAIL, &avail))
+ return oops(compress, errno, "cannot get avail");
+
+@@ -357,7 +358,7 @@ int compress_write(struct compress *compress, const void *buf, unsigned int size
+ size -= written;
+ cbuf += written;
+ total += written;
+- }
++ } while (size);
+ return total;
+ }
+
+--
+2.17.1
+
diff --git a/recipes-multimedia/tinycompress/tinycompress/0005-cplay-Support-aac-streams.patch b/recipes-multimedia/tinycompress/tinycompress/0005-cplay-Support-aac-streams.patch
new file mode 100755
index 00000000..2f36551a
--- /dev/null
+++ b/recipes-multimedia/tinycompress/tinycompress/0005-cplay-Support-aac-streams.patch
@@ -0,0 +1,251 @@
+From 2912f8573cea25fbd38ac7a8b68af2ea6a05e599 Mon Sep 17 00:00:00 2001
+From: Zhang Peng <peng.zhang_8@nxp.com>
+Date: Wed, 28 Oct 2020 19:08:53 +0800
+Subject: [PATCH] cplay: Support aac streams
+
+Support run aac format streams for cplay.
+
+Upstream-Status: Inappropriate [i.MX specific]
+Signed-off-by: Zhang Peng <peng.zhang_8@nxp.com>
+---
+ src/utils/cplay.c | 210 ++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 210 insertions(+)
+
+diff --git a/src/utils/cplay.c b/src/utils/cplay.c
+index 8e3dcbb..2a1464a 100644
+--- a/src/utils/cplay.c
++++ b/src/utils/cplay.c
+@@ -245,6 +245,190 @@ static int parse_wav_header(FILE *file, unsigned int *num_channels, unsigned int
+ return 0;
+ }
+
++int find_adts_header(FILE *file, unsigned int *num_channels, unsigned int *sample_rate, unsigned int *format)
++{
++ int ret;
++ unsigned char buf[5];
++
++ ret = fread(buf, sizeof(buf), 1, file);
++ if (ret < 0) {
++ fprintf(stderr, "open file error: %d\n", ret);
++ return 0;
++ }
++ fseek(file, 0, SEEK_SET);
++
++ if ((buf[0] != 0xff) || (buf[1] & 0xf0 != 0xf0))
++ return 0;
++ /* mpeg id */
++ switch (buf[1]>>3 & 0x1) {
++ case 0x0:
++ *format = SND_AUDIOSTREAMFORMAT_MP4ADTS;
++ break;
++ case 0x1:
++ *format = SND_AUDIOSTREAMFORMAT_MP2ADTS;
++ break;
++ default:
++ fprintf(stderr, "can't find stream format\n");
++ break;
++ }
++ /* sample_rate */
++ switch (buf[2]>>2 & 0xf) {
++ case 0x0:
++ *sample_rate = 96000;
++ break;
++ case 0x1:
++ *sample_rate = 88200;
++ break;
++ case 0x2:
++ *sample_rate = 64000;
++ break;
++ case 0x3:
++ *sample_rate = 48000;
++ break;
++ case 0x4:
++ *sample_rate = 44100;
++ break;
++ case 0x5:
++ *sample_rate = 32000;
++ break;
++ case 0x6:
++ *sample_rate = 24000;
++ break;
++ case 0x7:
++ *sample_rate = 22050;
++ break;
++ case 0x8:
++ *sample_rate = 16000;
++ break;
++ case 0x9:
++ *sample_rate = 12000;
++ break;
++ case 0xa:
++ *sample_rate = 11025;
++ break;
++ case 0xb:
++ *sample_rate = 8000;
++ break;
++ case 0xc:
++ *sample_rate = 7350;
++ break;
++ default:
++ break;
++ }
++ /* channel */
++ switch (((buf[2]&0x1) << 2) | (buf[3]>>6)) {
++ case 1:
++ *num_channels = 1;
++ break;
++ case 2:
++ *num_channels = 2;
++ break;
++ case 3:
++ *num_channels = 3;
++ break;
++ case 4:
++ *num_channels = 4;
++ break;
++ case 5:
++ *num_channels = 5;
++ break;
++ case 6:
++ *num_channels = 6;
++ break;
++ case 7:
++ *num_channels = 7;
++ break;
++ default:
++ break;
++ }
++ return 1;
++}
++
++static const int aac_sample_rates[] = { 96000, 88200, 64000, 48000, 44100,
++ 32000, 24000, 22050, 16000, 12000, 11025, 8000, 7350
++};
++
++#define MAX_SR_NUM sizeof(aac_sample_rates)/sizeof(aac_sample_rates[0])
++
++static int get_sample_rate_from_index(int sr_index)
++{
++ if (sr_index >= 0 && sr_index < MAX_SR_NUM)
++ return aac_sample_rates[sr_index];
++
++ return 0;
++}
++
++int find_adif_header(FILE *file, unsigned int *num_channels, unsigned int *sample_rate, unsigned int *format)
++{
++ int ret;
++ unsigned char adif_id[4];
++ unsigned char adif_header[20];
++ int bitstream_type;
++ int bitrate;
++ int object_type;
++ int sr_index;
++ int skip_size = 0;
++
++ ret = fread(adif_id, sizeof(unsigned char), 4, file);
++ if (ret < 0) {
++ fprintf(stderr, "read data from file err: %d\n", ret);
++ return 0;
++ }
++ /* adif id */
++ if ((adif_id[0] != 0x41) || (adif_id[1] != 0x44) ||
++ (adif_id[2] != 0x49) || (adif_id[3] != 0x46))
++ return 0;
++
++ fread(adif_header, sizeof(unsigned char), 20, file);
++
++ /* copyright string */
++ if (adif_header[0] & 0x80)
++ skip_size = 9;
++
++ bitstream_type = adif_header[0 + skip_size] & 0x10;
++ bitrate =
++ ((unsigned int) (adif_header[0 + skip_size] & 0x0f) << 19) |
++ ((unsigned int) adif_header[1 + skip_size] << 11) |
++ ((unsigned int) adif_header[2 + skip_size] << 3) |
++ ((unsigned int) adif_header[3 + skip_size] & 0xe0);
++
++ if (bitstream_type == 0) {
++ object_type = ((adif_header[6 + skip_size] & 0x01) << 1) |
++ ((adif_header[7 + skip_size] & 0x80) >> 7);
++ sr_index = (adif_header[7 + skip_size] & 0x78) >> 3;
++ }
++ /* VBR */
++ else {
++ object_type = (adif_header[4 + skip_size] & 0x18) >> 3;
++ sr_index = ((adif_header[4 + skip_size] & 0x07) << 1) |
++ ((adif_header[5 + skip_size] & 0x80) >> 7);
++ }
++
++ /* sample rate */
++ *sample_rate = get_sample_rate_from_index(sr_index);
++
++ /* FIXME: assume channels is 2 */
++ *num_channels = 2;
++
++ *format = SND_AUDIOSTREAMFORMAT_ADIF;
++ fseek(file, 0, SEEK_SET);
++ return 1;
++}
++
++static int parse_aac_header(FILE *file, unsigned int *num_channels, unsigned int *sample_rate, unsigned int *format)
++{
++ if (find_adts_header(file, num_channels, sample_rate, format))
++ return 1;
++ else if (find_adif_header(file, num_channels, sample_rate, format))
++ return 1;
++ else {
++ fprintf(stderr, "can't find streams format\n");
++ return 0;
++ }
++
++ return 1;
++}
++
+ static int print_time(struct compress *compress)
+ {
+ unsigned int avail;
+@@ -513,6 +697,29 @@ void get_codec_pcm(FILE *file, struct compr_config *config,
+ codec->format = format;
+ }
+
++void get_codec_aac(FILE *file, struct compr_config *config,
++ struct snd_codec *codec)
++{
++ unsigned int channels, rate, format;
++
++ if (parse_aac_header(file, &channels, &rate, &format) == 0) {
++ fclose(file);
++ exit(EXIT_FAILURE);
++ };
++ fseek(file, 0, SEEK_SET);
++
++ codec->id = SND_AUDIOCODEC_AAC;
++ codec->ch_in = channels;
++ codec->ch_out = channels;
++ codec->sample_rate = rate;
++ codec->bit_rate = 0;
++ codec->rate_control = 0;
++ codec->profile = SND_AUDIOPROFILE_AAC;
++ codec->level = 0;
++ codec->ch_mode = 0;
++ codec->format = format;
++
++}
+ void play_samples(char *name, unsigned int card, unsigned int device,
+ unsigned long buffer_size, unsigned int frag,
+ unsigned long codec_id, int pause_count, int pause_block,
+@@ -544,6 +751,9 @@ void play_samples(char *name, unsigned int card, unsigned int device,
+ case SND_AUDIOCODEC_PCM:
+ get_codec_pcm(file, &config, &codec);
+ break;
++ case SND_AUDIOCODEC_AAC:
++ get_codec_aac(file, &config, &codec);
++ break;
+ default:
+ fprintf(stderr, "codec ID %ld is not supported\n", codec_id);
+ exit(EXIT_FAILURE);
+--
+2.17.1
+
diff --git a/recipes-multimedia/tinycompress/tinycompress_1.1.6.bb b/recipes-multimedia/tinycompress/tinycompress_1.1.6.bb
new file mode 100644
index 00000000..6c0fc72e
--- /dev/null
+++ b/recipes-multimedia/tinycompress/tinycompress_1.1.6.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "A library to handle compressed formats like MP3 etc."
+LICENSE = "LGPLv2.1 | BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=cf9105c1a2d4405cbe04bbe3367373a0"
+DEPENDS = "alsa-lib"
+
+SRC_URI = "git://git.alsa-project.org/tinycompress.git;protocol=git;branch=master \
+ file://0001-tinycompress-Add-id3-decoding.patch \
+ file://0002-cplay-Support-wave-file.patch \
+ file://0003-cplay-Add-pause-feature.patch \
+ file://0004-tinycompress-pass-NULL-buffer-with-0-size-to-driver.patch \
+ file://0005-cplay-Support-aac-streams.patch \
+"
+SRCREV = "995f2ed91045dad8c20485ab1a64727d22cd92e5"
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
diff --git a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
index 58b6b8a4..ae8a70fb 100644
--- a/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-client_3.10.0.imx.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=69663ab153298557a59c67a60a743e5b"
SRCBRANCH = "imx_5.4.70_2.3.0"
SRC_URI = " \
- git://source.codeaurora.org/external/imx/imx-optee-client.git;protocol=https;branch=${SRCBRANCH} \
+ git://github.com/nxp-imx/imx-optee-client.git;protocol=https;branch=${SRCBRANCH} \
file://tee-supplicant.service \
"
diff --git a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
index 712b1aa6..354a9f01 100644
--- a/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-os_3.10.0.imx.bb
@@ -11,7 +11,7 @@ DEPENDS = "python3-pycryptodomex-native python3-pyelftools-native u-boot-mkimage
SRCBRANCH = "imx_5.4.70_2.3.0"
SRC_URI = "\
- git://source.codeaurora.org/external/imx/imx-optee-os.git;protocol=https;branch=${SRCBRANCH} \
+ git://github.com/nxp-imx/imx-optee-os.git;protocol=https;branch=${SRCBRANCH} \
"
SRCREV = "a991c90475bb1c715651e5fe27f7f32cbe61aef9"
diff --git a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
index a8a1b245..2cf94b04 100644
--- a/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_3.10.0.imx.bb
@@ -10,7 +10,7 @@ DEPENDS = "python3-pycrypto-native python3-pycryptodomex-native optee-os optee-c
SRCBRANCH = "imx_5.4.70_2.3.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-optee-test.git;protocol=https;branch=${SRCBRANCH}"
+SRC_URI = "git://github.com/nxp-imx/imx-optee-test.git;protocol=https;branch=${SRCBRANCH}"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
diff --git a/recipes-security/optee/optee-os-qoriq_3.8.0.bb b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
index b8d764ff..4dd60890 100644
--- a/recipes-security/optee/optee-os-qoriq_3.8.0.bb
+++ b/recipes-security/optee/optee-os-qoriq_3.8.0.bb
@@ -10,7 +10,7 @@ DEPENDS += "python3-pyelftools-native python3-pycryptodome-native python3-pycryp
inherit deploy python3native
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/optee_os;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/optee_os;nobranch=1 \
file://0001-allow-setting-sysroot-for-libgcc-lookup.patch \
file://0001-arm64-Disable-outline-atomics-when-compiling.patch \
"
diff --git a/recipes-support/opencv/opencv_4.5.2.imx.bb b/recipes-support/opencv/opencv_4.5.2.imx.bb
index 2d71acfc..0235c658 100644
--- a/recipes-support/opencv/opencv_4.5.2.imx.bb
+++ b/recipes-support/opencv/opencv_4.5.2.imx.bb
@@ -243,7 +243,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
# Replace the opencv URL with the fork
SRCREV_opencv = "5423d53ae0d116ee5bbe52f8b5503f0cd8586998"
-OPENCV_SRC ?= "git://source.codeaurora.org/external/imx/opencv-imx.git;protocol=https"
+OPENCV_SRC ?= "git://github.com/nxp-imx/opencv-imx.git;protocol=https"
SRCBRANCH = "4.5.2_imx"
SRC_URI_remove = "git://github.com/opencv/opencv.git;name=opencv"
SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv"