aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--EULA50
-rw-r--r--SCR/SCR-5.15.71-2.2.0.txt (renamed from SCR/SCR-5.15.5-1.0.0.txt)656
-rw-r--r--classes/fsl-dynamic-packagearch.bbclass11
-rw-r--r--classes/fsl-eula-unpack.bbclass86
-rw-r--r--classes/fsl-kernel-localversion.bbclass42
-rw-r--r--classes/fsl-u-boot-localversion.bbclass19
-rw-r--r--classes/imx-boot-container.bbclass35
-rw-r--r--classes/use-imx-security-controller-firmware.bbclass2
-rw-r--r--classes/uuu_bootloader_tag.bbclass5
-rw-r--r--conf/layer.conf3
-rw-r--r--conf/machine/imx23evk.conf2
-rw-r--r--conf/machine/imx28evk.conf2
-rw-r--r--conf/machine/imx53qsb.conf2
-rw-r--r--conf/machine/imx6qdlsabreauto.conf29
-rw-r--r--conf/machine/imx6qdlsabresd.conf23
-rw-r--r--conf/machine/imx6slevk.conf2
-rw-r--r--conf/machine/imx6sllevk.conf5
-rw-r--r--conf/machine/imx6sxsabreauto.conf2
-rw-r--r--conf/machine/imx6sxsabresd.conf2
-rw-r--r--conf/machine/imx6ulevk.conf19
-rw-r--r--conf/machine/imx6ullevk.conf11
-rw-r--r--conf/machine/imx6ulz-14x14-evk.conf3
-rw-r--r--conf/machine/imx7dsabresd.conf21
-rw-r--r--conf/machine/imx7ulpevk.conf2
-rw-r--r--conf/machine/imx8dx-mek.conf1
-rw-r--r--conf/machine/imx8dxl-ddr3l-evk.conf5
-rw-r--r--conf/machine/imx8dxl-lpddr4-evk.conf3
-rw-r--r--conf/machine/imx8mm-ddr4-evk.conf11
-rw-r--r--conf/machine/imx8mm-lpddr4-evk.conf40
-rw-r--r--conf/machine/imx8mn-lpddr4-evk.conf4
-rw-r--r--conf/machine/imx8mnul-ddr3l-evk.conf69
-rw-r--r--conf/machine/imx8mp-lpddr4-evk.conf66
-rw-r--r--conf/machine/imx8mq-evk.conf12
-rw-r--r--conf/machine/imx8qm-mek.conf42
-rw-r--r--conf/machine/imx8qxp-mek.conf23
-rw-r--r--conf/machine/imx8ulp-lpddr4-evk.conf27
-rw-r--r--conf/machine/imx93-11x11-lpddr4x-evk.conf36
-rw-r--r--conf/machine/imx93-9x9-lpddr4-qsb.conf30
-rw-r--r--conf/machine/include/imx-base.inc254
-rw-r--r--conf/machine/include/imx8dxl-evk.inc2
-rw-r--r--conf/machine/include/imx8mm-evk.inc22
-rw-r--r--conf/machine/include/imx8mn-evk.inc26
-rw-r--r--conf/machine/include/imx8mp-evk.inc12
-rw-r--r--conf/machine/include/imx8ulp-evk.inc44
-rw-r--r--conf/machine/include/imx8x-mek.inc2
-rw-r--r--conf/machine/include/imx93-evk.inc37
-rw-r--r--conf/machine/include/qoriq-base.inc2
-rw-r--r--conf/machine/ls1046ardb.conf1
-rw-r--r--conf/machine/ls2080ardb.conf2
-rw-r--r--conf/machine/ls2088ardb.conf2
-rw-r--r--conf/machine/mpc8548cds.conf1
-rw-r--r--dynamic-layers/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_%.bbappend12
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/vlc/vlc_%.bbappend2
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/cst/files/0001-fix-err-msg-linking.patch56
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/cst/imx-cst_3.3.1.bb5
-rw-r--r--dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb2
-rw-r--r--dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc4
-rw-r--r--dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch25
-rw-r--r--dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch25
-rw-r--r--recipes-bsp/alsa-state/alsa-state.bbappend4
-rw-r--r--recipes-bsp/alsa-state/alsa-state/imx-mainline-bsp/asound.conf (renamed from recipes-bsp/alsa-state/alsa-state/imx-generic-bsp/asound.conf)0
-rw-r--r--recipes-bsp/alsa-state/alsa-state/imx-nxp-bsp/asound.conf271
-rw-r--r--recipes-bsp/atf/qoriq-atf-2.4.inc2
-rw-r--r--recipes-bsp/atf/qoriq-atf_2.4.bb2
-rw-r--r--recipes-bsp/boot-format/boot-format_git.bb2
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8.18.inc (renamed from recipes-bsp/firmware-imx/firmware-imx-8.15.inc)6
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb (renamed from recipes-bsp/firmware-imx/firmware-imx-8_8.15.bb)22
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb (renamed from recipes-bsp/firmware-imx/firmware-imx-8m_8.15.bb)0
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx_8.18.bb (renamed from recipes-bsp/firmware-imx/firmware-imx_8.15.bb)0
-rw-r--r--recipes-bsp/firmware-imx/firmware-nxp-wifi_1.0.bb90
-rw-r--r--recipes-bsp/firmware-imx/firmware-sof-imx_2.3.0.bb (renamed from recipes-bsp/firmware-imx/firmware-sof-imx_1.9.0-1.bb)6
-rw-r--r--recipes-bsp/firmware-sentinel/firmware-sentinel_0.8.bb23
-rw-r--r--recipes-bsp/firmware-upower/firmware-upower_1.1.0.bb31
-rw-r--r--recipes-bsp/fsl-tlu/fsl-tlu_1.0.0.bb2
-rw-r--r--recipes-bsp/imx-atf/imx-atf/0001-Makefile-Suppress-array-bounds-error.patch15
-rw-r--r--recipes-bsp/imx-atf/imx-atf_2.6.bb (renamed from recipes-bsp/imx-atf/imx-atf_2.4.bb)46
-rw-r--r--recipes-bsp/imx-kobs/imx-kobs_git.bb1
-rw-r--r--recipes-bsp/imx-lib/imx-lib_git.bb5
-rw-r--r--recipes-bsp/imx-mkimage/files/0001-Add-LDFLAGS-to-link-step.patch28
-rw-r--r--recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL31-BL32-and-BL33.patch62
-rw-r--r--recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL32-and-BL33-not-only-BL.patch71
-rw-r--r--recipes-bsp/imx-mkimage/files/0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch35
-rw-r--r--recipes-bsp/imx-mkimage/files/0001-mkimage_fit_atf-fix-fit-generator-node-naming.patch55
-rw-r--r--recipes-bsp/imx-mkimage/imx-boot_1.0.bb246
-rw-r--r--recipes-bsp/imx-mkimage/imx-mkimage_git.bb14
-rw-r--r--recipes-bsp/imx-mkimage/imx-mkimage_git.inc13
-rw-r--r--recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.15.0.bb (renamed from recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.12.1.bb)8
-rw-r--r--recipes-bsp/imx-seco/imx-seco-libs/0001-Fix-return-value-of-void-functions.patch57
-rw-r--r--recipes-bsp/imx-seco/imx-seco-libs_git.bb15
-rw-r--r--recipes-bsp/imx-seco/imx-seco_5.9.0.bb (renamed from recipes-bsp/imx-seco/imx-seco_3.8.5.bb)11
-rw-r--r--recipes-bsp/imx-test/imx-test_git.bb27
-rw-r--r--recipes-bsp/imx-uuc/imx-uuc_git.bb2
-rw-r--r--recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.9.0.bb (renamed from recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.7.0.bb)8
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.1.4.bb (renamed from recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.1.2.bb)8
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-buildsystem-don-t-ignore-externally-set-cflags.patch49
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.27.0.bb (renamed from recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.25.0.bb)11
-rw-r--r--recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb3
-rw-r--r--recipes-bsp/isp-imx/basler-camera_4.2.2.20.0.bb (renamed from recipes-bsp/isp-imx/basler-camera_4.2.2.16.0.bb)12
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch28
-rw-r--r--recipes-bsp/isp-imx/isp-imx_4.2.2.20.0.bb (renamed from recipes-bsp/isp-imx/isp-imx_4.2.2.16.0.bb)41
-rw-r--r--recipes-bsp/isp-imx/libtinyxml2-8_8.0.0.bb22
-rw-r--r--recipes-bsp/libimxdmabuffer/files/0001-g2d-Fix-typo.patch28
-rw-r--r--recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb (renamed from recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.2.bb)3
-rw-r--r--recipes-bsp/mc-utils/mc-utils_git.bb6
-rw-r--r--recipes-bsp/rcw/rcw_git.bb5
-rw-r--r--recipes-bsp/u-boot/u-boot-fslc-common_2022.10.inc (renamed from recipes-bsp/u-boot/u-boot-fslc-common_2022.04.inc)10
-rw-r--r--recipes-bsp/u-boot/u-boot-fslc-mfgtool_2022.10.bb (renamed from recipes-bsp/u-boot/u-boot-fslc-mfgtool_2022.04.bb)0
-rw-r--r--recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.10.bb (renamed from recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.04.bb)2
-rw-r--r--recipes-bsp/u-boot/u-boot-fslc_2022.10.bb (renamed from recipes-bsp/u-boot/u-boot-fslc_2022.04.bb)6
-rw-r--r--recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc18
-rw-r--r--recipes-bsp/u-boot/u-boot-imx-common_2022.04.inc25
-rw-r--r--recipes-bsp/u-boot/u-boot-imx-mfgtool_2022.04.bb (renamed from recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb)3
-rw-r--r--recipes-bsp/u-boot/u-boot-imx_2022.04.bb (renamed from recipes-bsp/u-boot/u-boot-imx_2021.04.bb)23
-rw-r--r--recipes-bsp/u-boot/u-boot-qoriq_2021.04.bb2
-rw-r--r--recipes-bsp/uefi/uefi_git.bb4
-rw-r--r--recipes-devtools/qemu/qemu-qoriq_4.2.bb2
-rw-r--r--recipes-devtools/qoriq-cst/qoriq-cst/0001-tools-Mark-struct-input_field-file_field-extern.patch (renamed from recipes-devtools/cst/cst/0001-tools-Mark-struct-input_field-file_field-extern.patch)0
-rw-r--r--recipes-devtools/qoriq-cst/qoriq-cst_git.bb (renamed from recipes-devtools/cst/cst_git.bb)6
-rw-r--r--recipes-devtools/uuu/files/0001-remove-unnecessary-libzip-dependency.patch135
-rw-r--r--recipes-devtools/uuu/uuu-bin_1.4.243.bb35
-rw-r--r--recipes-devtools/uuu/uuu_git.bb12
-rw-r--r--recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb22
-rw-r--r--recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb41
-rw-r--r--recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb32
-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/fm-ucode/fm-ucode_git.bb6
-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/management-complex/management-complex_10.35.0.bb41
-rw-r--r--recipes-dpaa2/restool/restool_git.bb6
-rw-r--r--recipes-dpaa2/spc/spc_git.bb2
-rw-r--r--recipes-extended/dpdk/dpdk-20.11.inc2
-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.bb42
-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.15.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-graphics/cairo/cairo_%.bbappend6
-rw-r--r--recipes-graphics/drm/libdrm_2.4.109.imx.bb6
-rw-r--r--recipes-graphics/glew/glew_%.bbappend1
-rw-r--r--recipes-graphics/gtk+/gtk+3_%.bbappend4
-rw-r--r--recipes-graphics/harfbuzz/harfbuzz_%.bbappend5
-rw-r--r--recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.4.bb (renamed from recipes-graphics/imx-g2d/imx-dpu-g2d_2.0.0.bb)15
-rw-r--r--recipes-graphics/imx-g2d/imx-g2d-samples_2.0.0.bb32
-rw-r--r--recipes-graphics/imx-g2d/imx-g2d-samples_git.bb60
-rw-r--r--recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.0.bb33
-rw-r--r--recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.6.bb46
-rw-r--r--recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb28
-rw-r--r--recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.0.0.bb2
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc185
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json7
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch64.bb6
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch32.bb (renamed from recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch32.bb)4
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch64.bb10
-rw-r--r--recipes-graphics/mesa/libglu_%.bbappend1
-rw-r--r--recipes-graphics/mesa/mesa-demos_%.bbappend31
-rw-r--r--recipes-graphics/pango/pango_%.bbappend5
-rw-r--r--recipes-graphics/piglit/piglit/0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch32
-rw-r--r--recipes-graphics/piglit/piglit_%.bbappend10
-rw-r--r--recipes-graphics/vulkan/vulkan-loader_%.bbappend3
-rw-r--r--recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend7
-rw-r--r--recipes-graphics/waffle/waffle/0001-meson-Add-missing-wayland-dependency-on-EGL.patch2
-rw-r--r--recipes-graphics/wayland/required-distro-features.inc8
-rw-r--r--recipes-graphics/wayland/wayland-protocols_1.25.imx.bb4
-rw-r--r--recipes-graphics/wayland/weston-init.bbappend9
-rw-r--r--recipes-graphics/wayland/weston/0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch40
-rw-r--r--recipes-graphics/wayland/weston/0001-g2d-renderer-Add-vsync-to-cloned-displays.patch102
-rw-r--r--recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch34
-rw-r--r--recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch52
-rw-r--r--recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch32
-rw-r--r--recipes-graphics/wayland/weston/0001-tests-Add-dependency-on-screenshooter-client-protoco.patch33
-rw-r--r--recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch199
-rw-r--r--recipes-graphics/wayland/weston_10.0.1.imx.bb (renamed from recipes-graphics/wayland/weston_9.0.0.imx.bb)74
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0001-Allow-to-enable-atomic-in-modesetting-DDX.patch9
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch30
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch34
-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-prefer-to-use-GLES2-for-glamor-EGL-config.patch49
-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-Remove-check-for-useSIGIO-option.patch47
-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_%.bbappend15
-rw-r--r--recipes-graphics/xwayland/xwayland_%.bbappend7
-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.p4.6+fslc.bb (renamed from recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p2.4+fslc.bb)2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.6.bb (renamed from recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.0.bb)12
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-ipc.inc2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-dwe_isr.c-fix-error-found-by-gcc12.patch55
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.16.0.bb20
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.19.0.bb24
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb2
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-nxp89xx_git.bb6
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-perf-qoriq_0.8.2.bb2
-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-nxp-bsp/defconfig1
-rw-r--r--recipes-kernel/linux/linux-fslc-imx/mx8-nxp-bsp/defconfig31
-rw-r--r--recipes-kernel/linux/linux-fslc-imx/mx9-nxp-bsp/defconfig1071
-rw-r--r--recipes-kernel/linux/linux-fslc-imx_5.15.bb32
-rw-r--r--recipes-kernel/linux/linux-fslc-lts/armv8a/defconfig3
-rw-r--r--recipes-kernel/linux/linux-fslc-lts_5.15.bb4
-rw-r--r--recipes-kernel/linux/linux-fslc-mfgtool_6.1.bb (renamed from recipes-kernel/linux/linux-fslc-mfgtool_5.18.bb)0
-rw-r--r--recipes-kernel/linux/linux-fslc/armv8a/defconfig163
-rw-r--r--recipes-kernel/linux/linux-fslc/defconfig15
-rw-r--r--recipes-kernel/linux/linux-fslc/mxs-generic-bsp/defconfig11
-rw-r--r--recipes-kernel/linux/linux-fslc_6.1.bb (renamed from recipes-kernel/linux/linux-fslc_5.18.bb)6
-rw-r--r--recipes-kernel/linux/linux-imx-headers_5.15.bb6
-rw-r--r--recipes-kernel/linux/linux-imx.inc2
-rw-r--r--recipes-kernel/linux/linux-imx/imx-nxp-bsp/defconfig8
-rw-r--r--recipes-kernel/linux/linux-imx/mx8-nxp-bsp/defconfig39
-rw-r--r--recipes-kernel/linux/linux-imx/mx9-nxp-bsp/defconfig1069
-rw-r--r--recipes-kernel/linux/linux-imx_5.15.bb12
-rw-r--r--recipes-kernel/linux/linux-mfgtool.inc2
-rw-r--r--recipes-kernel/linux/linux-qoriq_5.10.bb2
-rw-r--r--recipes-kernel/skmm-host/skmm-host_git.bb2
-rw-r--r--recipes-multimedia/alsa/imx-alsa-plugins_git.bb16
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb26
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch30
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch88
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch42
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch31
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.3.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.imx.bb)47
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch48
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch30
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.3.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.imx.bb)30
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.imx.bb)29
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.1.0.bb)16
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb45
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb33
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch69
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch (renamed from recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch)14
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch110
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch (renamed from recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch)67
-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/0003-tests-use-a-dictionaries-for-environment.patch (renamed from recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch)28
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch74
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch107
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0/0006-systemclock-Use-futex_time64-syscall-if-available-32.patch211
-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_1.20.3.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.imx.bb)29
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb (renamed from recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.6.4.bb)11
-rw-r--r--recipes-multimedia/imx-codec/imx-codec_4.7.2.bb (renamed from recipes-multimedia/imx-codec/imx-codec_4.6.2.bb)28
-rw-r--r--recipes-multimedia/imx-dsp/imx-dsp-codec-ext_2.0.2.bb (renamed from recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb)6
-rw-r--r--recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb45
-rw-r--r--recipes-multimedia/imx-dsp/imx-dsp_2.0.2.bb56
-rw-r--r--recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.1.bb2
-rw-r--r--recipes-multimedia/imx-parser/imx-parser_4.7.2.bb (renamed from recipes-multimedia/imx-parser/imx-parser_4.6.2.bb)10
-rw-r--r--recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb (renamed from recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.1.bb)10
-rw-r--r--recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb (renamed from recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.6.2.bb)9
-rw-r--r--recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.3.0.bb (renamed from recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.1.bb)7
-rw-r--r--recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch32
-rw-r--r--recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0100-pulseaudio-remove-the-control-for-speaker-headphone-widge.patch (renamed from recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch)0
-rw-r--r--recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/daemon.conf2
-rw-r--r--recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/default.pa2
-rw-r--r--recipes-multimedia/pulseaudio/pulseaudio_%.bbappend21
-rw-r--r--recipes-security/optee-imx/optee-client_3.19.0.imx.bb (renamed from recipes-security/optee-imx/optee-client_3.15.0.imx.bb)22
-rw-r--r--recipes-security/optee-imx/optee-os/0001-core-Define-section-attributes-for-clang.patch230
-rw-r--r--recipes-security/optee-imx/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch33
-rw-r--r--recipes-security/optee-imx/optee-os/0007-allow-setting-sysroot-for-clang.patch28
-rw-r--r--recipes-security/optee-imx/optee-os/0010-add-note-GNU-stack-section.patch114
-rw-r--r--recipes-security/optee-imx/optee-os_3.19.0.imx.bb (renamed from recipes-security/optee-imx/optee-os_3.15.0.imx.bb)90
-rw-r--r--recipes-security/optee-imx/optee-test_3.19.0.imx.bb (renamed from recipes-security/optee-imx/optee-test_3.15.0.imx.bb)12
-rw-r--r--recipes-security/optee-qoriq/optee-client-qoriq_3.13.0.bb (renamed from recipes-security/optee/optee-client-qoriq_3.13.0.bb)0
-rw-r--r--recipes-security/optee-qoriq/optee-client.nxp.inc (renamed from recipes-security/optee/optee-client.nxp.inc)2
-rw-r--r--recipes-security/optee-qoriq/optee-client/tee-supplicant.service (renamed from recipes-security/optee/optee-client/tee-supplicant.service)0
-rw-r--r--recipes-security/optee-qoriq/optee-os-qoriq_3.13.0.bb (renamed from recipes-security/optee/optee-os-qoriq_3.13.0.bb)0
-rw-r--r--recipes-security/optee-qoriq/optee-os.nxp.inc (renamed from recipes-security/optee/optee-os.nxp.inc)2
-rw-r--r--recipes-security/optee-qoriq/optee-test-qoriq_3.13.0.bb (renamed from recipes-security/optee/optee-test-qoriq_3.13.0.bb)0
-rw-r--r--recipes-security/optee-qoriq/optee-test.nxp.inc (renamed from recipes-security/optee/optee-test.nxp.inc)2
-rw-r--r--recipes-security/smw/keyctl-caam_git.bb23
-rw-r--r--recipes-security/smw/smw_git.bb64
-rw-r--r--recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch26
-rw-r--r--recipes-support/opencv/opencv/OpenCV_DNN_examples.patch26
-rw-r--r--recipes-support/opencv/opencv_4.6.0.imx.bb (renamed from recipes-support/opencv/opencv_4.5.2.imx.bb)89
-rw-r--r--v5.15.48-v5.15.47.log22
-rw-r--r--wic/imx-imx-boot.wks.in19
291 files changed, 6835 insertions, 5216 deletions
diff --git a/EULA b/EULA
index d847ba48..0e666c02 100644
--- a/EULA
+++ b/EULA
@@ -1,8 +1,8 @@
-LA_OPT_NXP_Software_License v34 February 2022
+LA_OPT_NXP_Software_License v39 August 2022
IMPORTANT. Read the following NXP Software License Agreement ("Agreement")
completely. By selecting the "I Accept" button at the end of this page, or by
downloading, installing, or using the Licensed Software, you indicate that you
-accept the terms of the Agreement and you acknowledge that you have the
+accept the terms of the Agreement, and you acknowledge that you have the
authority, for yourself or on behalf of your company, to bind your company to
these terms. You may then download or install the file. In the event of a
conflict between the terms of this Agreement and any license terms and
@@ -109,13 +109,13 @@ Section 2, are contained in Appendix A. The Licensed Software may be
accompanied by a Software Content Register which will identify that portion of
the Licensed Software, if any, that is subject to the different terms in
Appendix A.
-2.5. You may use subcontractors on your premises to exercise your
-rights under Section 2.2 and Section 2.3, if any, so long as you have an
-agreement in place with the subcontractor containing confidentiality
-restrictions no less stringent than those contained in this Agreement. You will
-remain liable for your subcontractors' adherence to the terms of this Agreement
-and for any and all acts and omissions of such subcontractors with respect to
-this Agreement and the Licensed Software.
+2.5. You may use subcontractors to exercise your rights under Section
+2.2 and Section 2.3, if any, so long as you have an agreement in place with the
+subcontractor containing confidentiality restrictions no less stringent than
+those contained in this Agreement. You will remain liable for your
+subcontractors' adherence to the terms of this Agreement and for any and all
+acts and omissions of such subcontractors with respect to this Agreement and
+the Licensed Software.
3. LICENSE LIMITATIONS AND RESTRICTIONS.
3.1. The licenses granted above in Section 2 only extend to NXP
Intellectual Property Rights that would be infringed by the unmodified Licensed
@@ -343,11 +343,11 @@ examination or audit.
22. NOTICES. All notices and communications under this
Agreement will be made in writing, and will be effective when received at the
following addresses:
- NXP: NXP B.V.
- High Tech Campus 60
+ NXP: NXP B.V.
+ High Tech Campus 60
5656 AG Eindhoven
- The Netherlands
- ATTN: Legal Department
+ The Netherlands
+ ATTN: Legal Department
You: The address provided at registration will be used.
@@ -407,6 +407,9 @@ Any dispute or claim relating to your use of the Greengrass software will be
resolved by binding arbitration, rather than in court, except that you may
assert claims in small claims court if your claims qualify.
+Amazon: AWS Fleetwise software must be used consistent with the terms found
+here: https://github.com/aws/aws-iot-fleetwise-edge/blob/main/LICENSE.
+
Amphion Semiconductor Ltd.: Distribution of Amphion software must be a part of,
or embedded within, Authorized Systems that include an Amphion Video Decoder.
@@ -505,10 +508,10 @@ Global Locate (Broadcom Corporation): Use of Global Locate, Inc. software is
limited to evaluation and demonstration only. Permitted distributions must be
similarly limited. Further rights must be obtained from Global Locate.
-LC3plus: LC3plus short frame audio codec features as defined in ETSI TS 103634
-are included in the code. To enable the LC3plus features in a final product, a
-license has to be obtained from Fraunhofer. More information can be found on
-the following web page:
+LC3plus: the LC3plus Low Complexity Communication Codec Plus (LC3plus) per ETSI
+TS 103 634 V1.3.1, is subject to ETSI Intellectual Property Rights Policy, See
+https://portal.etsi.org/directives/45_directives_jun_2022.pdf. For application
+in an End Product, Fraunhofer communication applies, see
https://www.iis.fraunhofer.de/en/ff/amm/communication/lc3.html
Microsoft: Except for Microsoft PlayReady software, if the Licensed Software
@@ -553,6 +556,10 @@ MQX RTOS Code: MQX RTOS source code may not be re-distributed by any NXP
Licensee under any circumstance, even by a signed written amendment to this
Agreement.
+NXP Voice Software: VoiceSpot, VoiceSeeker (including AEC), and Conversa may be
+used for evaluation or demonstration purposes only. Any commercial distribution
+rights are subject to a separate royalty agreement obtained from NXP.
+
NXP Wireless Charging Library: License to the Software is limited to use in
inductive coupling or wireless charging applications
@@ -616,6 +623,15 @@ Cortex-M3, Cortex-M4, Cortex-M33, Cortex-M7, and Cortex-A7 based products only.
SEGGER Microcontroller - J-Link/J-Trace Software: Segger software must be used
consistent with the terms found here: http://www.segger.com/jlink-software.html
+Synopsys/BLE Software: Your use of the Synopsys/BLE Software and related
+documentation is subject to the following:
+(1) Synopsys is third-party beneficiaries of, and thus may enforce against you,
+the license restrictions and confidentiality obligations in this agreement with
+respect to their intellectual property and proprietary information.
+(2) Your distribution of the Licensed Software shall subject any recipient to a
+written agreement at least as protective of the Licensed Software as provided
+in this Agreement.
+
Synopsys/Target Compiler Technologies: Your use of the Synopsys/Target Compiler
Technologies Licensed Software and related documentation is subject to the
following:
diff --git a/SCR/SCR-5.15.5-1.0.0.txt b/SCR/SCR-5.15.71-2.2.0.txt
index 1b2ce60b..de067127 100644
--- a/SCR/SCR-5.15.5-1.0.0.txt
+++ b/SCR/SCR-5.15.71-2.2.0.txt
@@ -1,15 +1,15 @@
NXP Software Content Register
-Release - Linux 5.15.5-1.0.0
- March 2022
+Release - Linux 5.15.71-2.2.0
+ December 2022
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
-License File: COPYING
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 - Additional distribution license granted - Section 2.3 applies
+License File: EULA.txt
Yocto Project recipe manifest:
-repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-honister -m imx_5.15.5-1.0.0.xml
+repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-kirkstone -m imx_5.15.71-2.2.0.xml
-Release tag: rel_imx_5.15.5-1.0.0
+Release tag: lf-5.15.71-2.2.0
--------------------------------------------
BSP Packages
@@ -22,20 +22,20 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/linux-imx -b lf-5.15.71-2.2.0
Origin: NXP (GPL-2.0)
kernel.org (GPL-2.0) - https://www.kernel.org/
--------------------------------------------
Package: uboot-imx.git
-Version: 2021.04
+Version: 2022.04
Outgoing License: GPL-2.0
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/uboot-imx -b lf-5.15.71-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/
@@ -44,21 +44,21 @@ Origin: NXP (GPL-2.0)
--------------------------------------------
Package: imx-atf.git
-Version: 2.4
+Version: 2.6
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-atf -b lf-5.15.71-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.12.1.bin
-Version: 1.12.1
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-sc-firmware-1.15.0.bin
+Version: 1.15.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -69,9 +69,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: firmware-imx-8.15.bin
-Version: 8.15
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: firmware-imx-8.18.bin
+Version: 8.18
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -101,9 +101,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: firmware-sentinel-0.3.bin
-Version: 0.3
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: firmware-sentinel-0.8.bin
+Version: 0.8
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -113,9 +113,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: firmware-upower-0.1.2.bin
-Version: 0.1.2
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: firmware-upower-1.1.0.bin
+Version: 1.1.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -132,7 +132,7 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-mkimage -b lf-5.15.71-2.2.0
Origin: NXP (GPL-2.0)
Das U-Boot - Universal Bootloader (GPL-2.0) - http://www.denx.de/wiki/U-Boot/WebHome
@@ -145,7 +145,7 @@ 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)
--------------------------------------------
@@ -157,7 +157,7 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-test -b lf-5.15.71-2.2.0
Origin: NXP (GPL-2.0)
module_test: NXP (GPL-2.0+)
Hantro Products Oy. (GPL-2.0+)
@@ -223,7 +223,7 @@ Origin: NXP (GPL-2.0)
Package: imx-firmware.git
Version:
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 Additional distribution license granted - Section 2.3 applies
License File: EULA.txt
Package Category: BSP
Type of Content: binary
@@ -242,14 +242,26 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/mwifiex -b lf-5.15.71-2.2.0
Origin: NXP (GPL-2.0)
--------------------------------------------
-Package: imx-seco-3.8.5.bin
-Version: 3.8.5
-Outgoing License: LA_OPT_NXP_Software_License v33 January 2022 - Additional distribution license granted - Section 2.3 applies
+Package: mwifiex-iw612.git
+Version:
+Outgoing License: GPL-2.0
+License File: gpl-2.0.txt
+Package Category: BSP
+Type of Content: source
+Description and comments: NXP Wi-Fi IW612 linux SDK
+Release Location: https://github.com/nxp-imx/mwifiex-iw612 -b lf-5.15.71-2.2.0
+Origin: NXP (GPL-2.0)
+
+--------------------------------------------
+
+Package: imx-seco-5.9.0.bin
+Version: 5.9.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: BSP
Type of Content: binary
@@ -261,18 +273,18 @@ Origin: NXP (proprietary)
Package: imx-seco-libs.git
Version:
-Outgoing License: LA_OPT_NXP_Software_License v29 August 2021 - Additional distribution license granted - Section 2.3 applies
+Outgoing License: LA_OPT_NXP_Software_License v35 May 2022 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.15.5-1.0.0
+Release Location: https://github.com/NXP/imx-seco-libs.git -b lf-5.15.71-2.2.0
Origin: NXP (proprietary)
--------------------------------------------
-Package: sof-imx-2.0.0
-Version: 2.0.0
+Package: sof-imx-2.3.0
+Version: 2.3.0
Outgoing License: BSD-3-Clause
License File: LICENCE
Package Category: BSP
@@ -280,11 +292,35 @@ Type of Content: binary
Description and comments: Sound Open Firmware
Release Location: Mirror
Origin: NXP (BSD-3-clause)
- Intel Corporation (BSD-3-clause)
- Cadence Design Systems, Inc. (MIT)
- Ulf Magnusson (ISC)
- FreeBSD (BSD-2-clause)
- source code in: https://github.com/thesofproject/sof
+ sof (BSD-3-Clause) - https://github.com/thesofproject/sof
+
+--------------------------------------------
+
+Package: sof-zephyr-2.3.0
+Version: 2.3.0
+Outgoing License: BSD-3-Clause
+License File: LICENCE
+Package Category: BSP
+Type of Content: binary
+Description and comments: Sound Open Firmware with Zephyr
+Release Location: Mirror
+Origin: NXP (BSD-3-clause)
+ sof (BSD-3-Clause) - https://github.com/thesofproject/sof
+ zephyr project (Apache-2.0) - https://github.com/zephyrproject-rtos/zephyr
+
+--------------------------------------------
+
+Package: zephyr-demo-imx-3.2.0
+Version: 3.2.0
+Outgoing License: BSD-3-Clause
+License File: LICENCE
+Package Category: BSP
+Type of Content: binary
+Description and comments: Zephyr Demo for i.MX
+Release Location: Mirror
+Origin: NXP (BSD-3-clause)
+ zephyr project (Apache-2.0) - https://github.com/zephyrproject-rtos/zephyr
+
--------------------------------------------
@@ -295,7 +331,7 @@ 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
@@ -330,26 +366,26 @@ Origin: NXP (GPL-2.0)
--------------------------------------------
Package: imx-optee-client.git
-Version: 3.15.0.imx
+Version: 3.19.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-optee-client -b lf-5.15.71-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
+Version: 3.19.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-optee-os -b lf-5.15.71-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/
@@ -357,55 +393,40 @@ Origin: NXP (BSD-2-Clause)
--------------------------------------------
Package: imx-optee-test.git
-Version: 3.15.0.imx
+Version: 3.19.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-optee-test -b lf-5.15.71-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
+Version: 0.2
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-jailhouse -b lf-5.15.71-2.2.0
Origin: NXP (GPL-2.0)
Siemens AG (GPL-2.0) - https://github.com/siemens/jailhouse
--------------------------------------------
-Package: imx8ulp-m33-demo-2.11.1.bin
-Version: 2.11.1
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
-License File: COPYING
+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: binary
-Description and comments: i.MX MCUXpresso SDK demo image on Cortex-M33 core
-Release Location: Mirror
+Type of Content: source
+Description and comments: i.MX secure enclave library
+Release Location: https://github.com/NXP/imx-secure-enclave.git -b lf-5.15.71-2.2.0
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.6.bin
-Version: 1.0.6
-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 Security
-Release Location: Mirror
-Origin: NXP (NXP Proprietary)
--------------------------------------------
@@ -416,7 +437,7 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-smw -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
@@ -428,14 +449,14 @@ 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/keyctl_caam -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/keyctl_caam -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
Package: ecdsa-lib-imx-3.3.2.3.bin
Version: 3.3.2.3
-Outgoing License: LA_OPT_NXP_Software_License v30 October 2021 - Additional distribution license granted - Section 2.3 applies
+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
@@ -453,7 +474,7 @@ License File: BSD-3-Clause.txt
Package Category: BSP
Type of Content: source
Description and comments: V2X Secure Element library
-Release Location: https://source.codeaurora.org/external/imx/v2xsehsm -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/v2xsehsm -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
@@ -465,7 +486,7 @@ License File: BSD-3-Clause.txt
Package Category: BSP
Type of Content: source
Description and comments: V2X Test Suite
-Release Location: https://source.codeaurora.org/external/imx/vtest -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/vtest -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
@@ -477,7 +498,7 @@ License File: license/bsd-3-clause.txt
Package Category: BSP
Type of Content: source
Description and comments: Data Plane Development Kit
-Release Location: https://source.codeaurora.org/external/qoriq/qoriq-components/dpdk -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-qoriq/dpdk -b lf-5.15.71-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
@@ -489,20 +510,20 @@ Graphics Packages
--------------------------------------------
Package: isp-vvcam.git
-Version: 4.2.2.17.0
+Version: 4.2.2.20.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://source.codeaurora.org/external/imx/isp-vvcam -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/isp-vvcam -b lf-5.15.71-2.2.0
Origin: VeriSilicon Holdings Co., Ltd. (GPL-2.0)
--------------------------------------------
-Package: isp-imx-4.2.2.17.0.bin
-Version: 4.2.2.17.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: isp-imx-4.2.2.20.0.bin
+Version: 4.2.2.20.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary and source
@@ -512,9 +533,9 @@ Origin: VeriSilicon Holdings Co., Ltd. (proprietary)
--------------------------------------------
-Package: basler-camera-4.2.2.17.0.bin
-Version: 4.2.2.17.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: basler-camera-4.2.2.20.0.bin
+Version: 4.2.2.20.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -532,15 +553,15 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/apitrace-imx -b lf-5.15.71-2.2.0
Origin: NXP (MIT)
apitrace (MIT) - https://github.com/apitrace/apitrace
--------------------------------------------
-Package: imx-gpu-viv-6.4.3.p4.0-aarch32.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-viv-6.4.3.p4.6-aarch32.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary and source
@@ -557,9 +578,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-gpu-viv-6.4.3.p4.0-aarch64.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-viv-6.4.3.p4.6-aarch64.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary and source
@@ -576,33 +597,14 @@ 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.15.5-1.0.0
-Origin: NXP (MIT)
- Vivante Corp. (MIT)
- xorg-server (MIT) - http://xorg.freedesktop.org/
- XFree86 Project (XFree86-1.0) - http://sourceforge.net/projects/xfree86/
-
- autohdmi utility (GPL-2.0) (source code for separate binary tool)
- NXP (GPL-2.0)
- X Consortium (MIT) - https://www.x.org/wiki/XConsortium/
-
---------------------------------------------
-
Package: gtec-demo-framework.git
-Version: 5.8.1
+Version: 6.0.3
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.8.1
+Release Location: https://github.com/nxp-imx/gtec-demo-framework -b 6.0.3
Origin: NXP (BSD-3-clause)
Demo Framework
Sascha Willems - Vulkan demo (MIT) - https://github.com/SaschaWillems/Vulkan
@@ -635,71 +637,59 @@ Origin: NXP (BSD-3-clause)
--------------------------------------------
-Package: imx-dpu-g2d-2.0.0.bin
-Version: 2.0.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
-License File: COPYING
-Package Category: Graphics
-Type of Content: binary
-Description and comments: G2D implementation using DPU
-Release Location: Mirror
-Origin: NXP (proprietary)
-
---------------------------------------------
-
Package: libdrm-imx.git
-Version: 2.4.107.imx
+Version: 2.4.109.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/libdrm-imx -b lf-5.15.71-2.2.0
Origin: NXP (MIT)
--------------------------------------------
Package: wayland-protocols-imx.git
-Version: 1.22.imx
+Version: 1.25.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/wayland-protocols-imx -b lf-5.15.71-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
+Version: 10.0.1.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/weston-imx -b lf-5.15.71-2.2.0
Origin: NXP (MIT)
Weston (MIT) - http://github.com/wayland-project/weston/
--------------------------------------------
Package: imx-gputop.git
-Version: 6.4.3.p4.0
+Version: 6.4.3.p4.6
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-gputop -b lf-5.15.71-2.2.0
Origin: NXP (MIT)
--------------------------------------------
-Package: imx-gpu-g2d-6.4.3.p4.0-arm.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-g2d-6.4.3.p4.6-arm.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -709,9 +699,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-gpu-g2d-6.4.3.p4.0-aarch64.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-gpu-g2d-6.4.3.p4.6-aarch64.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -721,21 +711,45 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-g2d-samples.git
-Version: 2.0.0
+Package: imx-dpu-g2d-2.1.4.bin
+Version: 2.1.4
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: Graphics
+Type of Content: binary
+Description and comments: G2D implementation using DPU
+Release Location: Mirror
+Origin: NXP (proprietary)
+
+--------------------------------------------
+
+Package: imx-g2d-pxp.git
+Version: 2.1.0
+Outgoing License: LA_OPT_NXP_Software_License v35 May 2022 Additional distribution license granted - Section 2.3 applies
+License File: EULA.txt
+Package Category: Graphics
+Type of Content: source
+Description and comments: G2D implementation using PXP
+Release Location: https://github.com/nxp-imx/imx-g2d-pxp -b lf-5.15.71-2.2.0
+Origin: NXP (Proprietary)
+
+--------------------------------------------
+
+Package: g2d-samples.git
+Version: 2.1
Outgoing License: BSD-3-Clause
License File: COPYING
Package Category: Graphics
Type of Content: source
Description and comments: Graphics G2D sample applications
-Release Location: https://source.codeaurora.org/external/imx/g2d-samples -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/g2d-samples -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p4.0-aarch64-wayland.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p4.6-aarch64-wayland.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -745,9 +759,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p4.0-arm-fb.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p4.6-arm-fb.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -757,9 +771,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: libgpuperfcnt-6.4.3.p4.0-arm-wayland.bin
-Version: 6.4.3.p4.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: libgpuperfcnt-6.4.3.p4.6-arm-wayland.bin
+Version: 6.4.3.p4.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Graphics
Type of Content: binary
@@ -776,7 +790,7 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/nn-imx -b lf-5.15.71-2.2.0
Origin: NXP (MIT)
Vivante Corporation (MIT)
Boost Software (Boost) - https://www.boost.org/
@@ -788,13 +802,13 @@ Origin: NXP (MIT)
--------------------------------------------
Package: opencv-imx.git
-Version: 4.5.4.imx
+Version: 4.6.0.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/opencv-imx -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Cluse)
OpenCV Foundation (BSD-3-Clause) - https://github.com/opencv/opencv
Intel Corporation (BSD-3-Clause)
@@ -806,13 +820,13 @@ Origin: NXP (BSD-3-Cluse)
--------------------------------------------
Package: arm-computelibrary-imx.git
-Version: 21.08
+Version: 22.05
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/arm-computelibrary-imx -b lf-5.15.71-2.2.0
Origin: NXP (MIT)
ARM Software (MIT) - https://github.com/ARM-software/ComputeLibrary
@@ -820,9 +834,9 @@ Origin: NXP (MIT)
Multimedia Packages
--------------------------------------------
-Package: imx-codec-4.6.4.bin
-Version: 4.6.4
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-codec-4.7.2.bin
+Version: 4.7.2
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -837,9 +851,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-parser-4.6.4.bin
-Version: 4.6.4
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-parser-4.7.2.bin
+Version: 4.7.2
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -850,13 +864,13 @@ Origin: NXP (proprietary)
--------------------------------------------
Package: imx-gst1.0-plugin.git
-Version: 4.6.4
+Version: git
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/imx-gst1.0-plugin -b lf-5.15.71-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/
@@ -865,52 +879,52 @@ Origin: NXP (LGPL-2.1)
--------------------------------------------
Package: gstreamer.git
-Version: 1.18.5.imx
-Outgoing License: LGPL-2.0
+Version: 1.20.3.imx
+Outgoing License: LGPL-2.1
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/gstreamer -b lf-5.15.71-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
+Version: 1.20.3.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/gst-plugins-good -b lf-5.15.71-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
+Version: 1.20.3.imx
+Outgoing License: LGPL-2.1
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/gst-plugins-base -b lf-5.15.71-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
-Version: 1.18.5.imx
-Outgoing License: LGPL-2.0
-License File: COPYING.LIB
+Version: 1.20.3.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/gst-plugins-bad -b lf-5.15.71-2.2.0
Origin: NXP (LGPL-2.1)
Gstreamer plugins-Bad (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-bad/
@@ -918,7 +932,7 @@ Origin: NXP (LGPL-2.1)
Package: imx-dspc-asrc-1.0.1.bin
Version: 1.0.1
-Outgoing License: LA_OPT_NXP_Software_License v8 June 2019 - Additional distribution license granted - Section 2.3 applies
+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
@@ -931,7 +945,7 @@ Origin: NXP (proprietary)
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
+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
@@ -943,12 +957,12 @@ Origin: NXP (proprietary)
Package: imx-vpuwrap.git
Version: git
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 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.15.5-1.0.0
+Release Location: https://github.com/NXP/imx-vpuwrap.git -b lf-5.15.71-2.2.0
Origin: NXP (proprietary)
sqlite (Public Domain) - http://www.hwaci.com/sw/sqlite/index.html
@@ -956,7 +970,7 @@ Origin: NXP (proprietary)
Package: imx-vpu-5.4.39.3.bin
Version: 5.4.39.3
-Outgoing License: LA_OPT_NXP_Software_License v11 February 2020 - Additional distribution license granted - Section 2.3 applies
+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
@@ -967,9 +981,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-vpu-hantro-1.25.0.bin
-Version: 1.25.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-vpu-hantro-1.27.0.bin
+Version: 1.27.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -982,8 +996,8 @@ Origin: VeriSilicon Inc. (proprietary)
--------------------------------------------
-Package: imx-vpu-hantro-daemon-1.1.2
-Version: 1.1.2
+Package: imx-vpu-hantro-daemon-1.1.5
+Version: 1.1.5
Outgoing License: MIT License
License File: LICENSE.txt
Package Category: Multimedia
@@ -996,9 +1010,9 @@ Origin: NXP (MIT)
--------------------------------------------
-Package: imx-vpu-hantro-vc-1.7.0.bin
-Version: 1.7.0
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-vpu-hantro-vc-1.9.0.bin
+Version: 1.9.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -1017,16 +1031,16 @@ 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.1.bin
-Version: 1.2.1
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-dsp-2.0.2.bin
+Version: 2.0.2
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -1038,9 +1052,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx-dsp-codec-ext-1.2.1.bin
-Version: 1.2.1
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx-dsp-codec-ext-2.0.2.bin
+Version: 2.0.2
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: Multimedia
Type of Content: binary
@@ -1059,16 +1073,32 @@ 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://source.codeaurora.org/external/imx/nxp-afe -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/nxp-afe -b lf-5.15.71-2.2.0
Origin: NXP (BSD-3-Clause)
--------------------------------------------
+
+Package: imx-voiceUI.git
+Version: 2.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
+License File: EULA.txt
+Package Category: Multimedia
+Type of Content: source
+Description and comments: NXP RetuneDSP Voice Seeker
+Release Location: https://github.com/nxp-imx/imx-voiceUI -b lf-5.15.71-2.2.0
+Origin: NXP (Proprietary)
+ Ne10 (BSD-3-Clause) - https://github.com/projectNe10/Ne10
+ pugixml (MIT) - https://github.com/zeux/pugixml
+ ARM ComputeLibrary (MIT) - https://github.com/ARM-software/ComputeLibrary
+ CMSIS-5 (Apache-2.0) - https://github.com/ARM-software/CMSIS_5
+
+--------------------------------------------
M4 Processor Packages
--------------------------------------------
-Package: imx7ulp-m4-demo-2.11.0.bin
-Version: 2.11.0
-Outgoing License: LA_OPT_NXP_Software_License v32 January 2022 - Additional distribution license granted - Section 2.3 applies
+Package: imx7ulp-m4-demo-2.12.1.bin
+Version: 2.12.1
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1082,7 +1112,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
+Outgoing License: LA_OPT_NXP_Software_License v17 October 2020 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1094,9 +1124,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mm-m4-demo-2.11.0.bin
-Version: 2.11.0
-Outgoing License: LA_OPT_NXP_Software_License v32 January 2022 - Production Use - Section 2.3 applies
+Package: imx8mm-m4-demo-2.12.1.bin
+Version: 2.12.1
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1108,9 +1138,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mq-m4-demo-2.11.0.bin
-Version: 2.11.0
-Outgoing License: LA_OPT_NXP_Software_License v32 January 2022 - Production Use - Section 2.3 applies
+Package: imx8mq-m4-demo-2.12.1.bin
+Version: 2.12.1
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1124,7 +1154,7 @@ Origin: NXP (proprietary)
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
+Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1138,7 +1168,7 @@ Origin: NXP (proprietary)
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
+Outgoing License: LA_OPT_NXP_Software_License v19 February 2021 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M4_Processor
Type of Content: binary
@@ -1152,9 +1182,9 @@ Origin: NXP (proprietary)
M7 Processor Packages
--------------------------------------------
-Package: imx8mn-m7-demo-2.11.0.bin
-Version: 2.11.0
-Outgoing License: LA_OPT_NXP_Software_License v32 January 2022 - Production Use - Section 2.3 applies
+Package: imx8mn-m7-demo-2.12.1.bin
+Version: 2.12.1
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M7_Processor
Type of Content: binary
@@ -1166,9 +1196,9 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mnddr3l-m7-demo-2.11.0.bin
-Version: 2.11.0
-Outgoing License: LA_OPT_NXP_Software_License v32 January 2022 - Production Use - Section 2.3 applies
+Package: imx8mnddr3l-m7-demo-2.12.1.bin
+Version: 2.12.1
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
License File: COPYING
Package Category: M7_Processor
Type of Content: binary
@@ -1180,52 +1210,62 @@ Origin: NXP (proprietary)
--------------------------------------------
-Package: imx8mp-m7-demo-2.11.0.bin
-Version: 2.11.0
-Outgoing License: LA_OPT_NXP_Software_License v32 January 2022 - Production Use - Section 2.3 applies
+Package: imx8mp-m7-demo-2.12.1.bin
+Version: 2.12.1
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - 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)
- ARM LIMITED (BSD-3-Clause)
+ 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
Real Time Engineers, Ltd (MIT) - https://aws.amazon.com/freertos/
Mentor Graphics, Ltd. (BSD-3-Clause) - https://github.com/OpenAMP/open-amp/
--------------------------------------------
-MachineLearning Packages
+M33 Processor 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.15.5-1.0.0
-Origin: NXP (MIT)
- armnn (MIT) - https://github.com/ARM-software/armnn
+Package: imx8ulp-m33-demo-2.13.0.bin
+Version: 2.13.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: M33_Processor
+Type of Content: binary
+Description and comments: i.MX MCUXpresso SDK demo image on Cortex-M33 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
+ Real Time Engineers, Ltd (MIT) - https://aws.amazon.com/freertos/
+ Mentor Graphics, Ltd. (BSD-3-Clause) - https://github.com/OpenAMP/open-amp/
--------------------------------------------
-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://source.codeaurora.org/external/imx/coral-posenet-imx -b rel_imx_5.15.5-1.0.0
-Origin: NXP (LGPL-2.1)
- Google LLC - Google Coral Edge Project Posenet (Apache-2.0) https://github.com/google-coral/project-posenet/
+Package: imx93-m33-demo-2.13.0.bin
+Version: 2.13.0
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 Additional distribution license granted - Section 2.3 applies
+License File: COPYING
+Package Category: M33_Processor
+Type of Content: binary
+Description and comments: i.MX MCUXpresso SDK demo image on Cortex-M33 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
+ Real Time Engineers, Ltd (MIT) - https://aws.amazon.com/freertos/
+ Mentor Graphics, Ltd. (BSD-3-Clause) - https://github.com/OpenAMP/open-amp/
+ KEYnetik, Inc (Proprietary)
--------------------------------------------
+MachineLearning Packages
+--------------------------------------------
-Package: deepview-rt-2.4.36-aarch64.bin
-Version: 2.4.36-aarch64
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: deepview-rt-2.4.46-aarch64.bin
+Version: 2.4.46-aarch64
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 No distribution license granted - Section 2.2 applies
License File: COPYING
Package Category: MachineLearning
Type of Content: binary
@@ -1235,29 +1275,18 @@ Origin: Au-Zone Technologies (proprietary)
--------------------------------------------
-Package: deepview-rt-examples-1.3.bin
-Version: 1.3
-Outgoing License: LA_OPT_NXP_Software_License v34 February 2022 - Additional distribution license granted - Section 2.3 applies
+Package: deepview-rt-examples-1.6.bin
+Version: 1.6
+Outgoing License: LA_OPT_NXP_Software_License v39 August 2022 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://source.codeaurora.org/external/imx/eiq-apps-imx -b rel_imx_5.15.5-1.0.0
-Origin: NXP (LGPL-2.1)
- Gstreamer plugins-Base (LGPL-2.1+) - http://gstreamer.freedesktop.org/src/gst-plugins-base/
+Origin: Au-Zone Technologies (proprietary)
+ mman-win32 (Author: Viktor Kutuzov, License: MIT) - https://github.com/klauspost/mman-win32
+ panda.jpg (Author: Shizhao, License: CC BY-SA 3.0) - https://commons.wikimedia.org/wiki/File:Giant_Panda_in_Beijing_Zoo_1.JPG
+ horse.jpg (public domain) - https://commons.wikimedia.org/wiki/File:Horsescd1l-095.jpg
--------------------------------------------
@@ -1268,12 +1297,55 @@ License File: LICENSE
Package Category: MachineLearning
Type of Content: source
Description and comments: Open Deep Learning Compiler Stack
-Release Location: https://source.codeaurora.org/external/imx/eiq-tvm-imx -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/eiq-tvm-imx -b lf-5.15.71-2.2.0
Origin: NXP (Apache-2.0)
Apache TVM (Apache-2.0) - https://github.com/apache/tvm
--------------------------------------------
+Package: ethos-u-vela.git
+Version: 3.5.0
+Outgoing License: Apache-2.0
+License File: LICENSE.txt
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: Tool to compile a TensorFlow Lite for Microcontrollers neural network model
+Release Location: https://github.com/nxp-imx/ethos-u-vela -b lf-5.15.71-2.2.0
+Origin: NXP (BSD-3-Clause)
+ ARM Limited ethos-u-vela v22.02 (Apache-2.0) - https://git.mlplatform.org/ml/ethos-u/ethos-u-vela.git
+ FlatBuffers (Apache-2.0)
+
+--------------------------------------------
+
+Package: ethos-u-driver-stack-imx.git
+Version: 22.08
+Outgoing License: Apache-2.0
+License File: LICENSE-APACHE-2.0.txt
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: ethos-u-driver-stack is the user space driver library for ethos-u NPU on iMX93 platform
+Release Location: https://github.com/nxp-imx/ethos-u-driver-stack-imx -b lf-5.15.71-2.2.0
+Origin: NXP (BSD-3-Clause)
+ ARM Limited ethos-u-linux-driver-stack v22.02 (Apache-2.0) - https://git.mlplatform.org/ml/ethos-u/ethos-u-linux-driver-stack.git
+ FlatBuffers (Apache-2.0)
+ Linux Kernel Header file - ARM Limited (GPL-2.0) - https://git.mlplatform.org/ml/ethos-u/ethos-u-linux-driver-stack.git
+
+--------------------------------------------
+
+Package: ethos-u-firmware.git
+Version: 22.08
+Outgoing License: Apache-2.0
+License File: LICENSE-APACHE-2.0.txt
+Package Category: MachineLearning
+Type of Content: source
+Description and comments: ethos-u-firmware is the binary NPU driver running on cortex-m33 core of NXP iMX93 platform
+Release Location: https://github.com/nxp-imx/ethos-u-firmware -b lf-5.15.71-2.2.0
+Origin: NXP (BSD-3-Clause)
+ ARM Limited ethos-u-linux-driver-stack v22.02 (Apache-2.0) - https://git.mlplatform.org/ml/ethos-u/ethos-u-core-software.git
+ Amazon.com, Inc. FreeRTOS (MIT) - https://git.mlplatform.org/ml/ethos-u/ethos-u-core-software.git/tree/rtos/freertos_config/FreeRTOSConfig.h.in
+
+--------------------------------------------
+
Package: nnshark.git
Version: 2021.10.imx
Outgoing License: LGPL-2.1
@@ -1281,7 +1353,12 @@ License File: COPYING.LESSER
Package Category: MachineLearning
Type of Content: source
Description and comments: A GStreamer NNstreamer pipelines real-time profiling plugin
-Release Location: https://source.codeaurora.org/external/imx/nnshark -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/nnshark -b lf-5.15.71-2.2.0
+Origin: NXP (LGPL-2.1)
+ GstShark (LGPL-2.1) - https://github.com/RidgeRun/gst-shark
+
+ Separate Component: Eclipse Tools (EPL-1.0) - These run separately on windows.
+
--------------------------------------------
Package: onnxruntime-imx.git
@@ -1291,7 +1368,7 @@ 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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/onnxruntime-imx -b lf-5.15.71-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
@@ -1306,69 +1383,46 @@ 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.15.5-1.0.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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/pytorch-release -b lf-5.15.71-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
+Version: 2.9.1
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/tensorflow-imx -b lf-5.15.71-2.2.0
Origin: NXP (Apache-2.0)
TensorFlow (Apache-2.0) - https://github.com/tensorflow/tensorflow/
--------------------------------------------
-Package: tensorflow-lite-extras.git
-Version:
-Outgoing License: Apache-2.0
-License File: LICENSE.txt
-Package Category: MachineLearning
-Type of Content: source
-Description and comments: TensorFlow Lite extras packages
-Release Location: https://github.com/NXPmicro/efficientdet-imx -b rel_imx_5.15.5-1.0.0
---------------------------------------------
-
Package: tflite-vx-delegate-imx.git
-Version: 2.6.0
-Outgoing License: Apache-2.0
+Version: 2.9.1
+Outgoing License: MIT
License File: LICENSE
Package Category: MachineLearning
Type of Content: source
Description and comments: TensorFlow Lite VX Delegate
-Release Location: https://source.codeaurora.org/external/imx/tflite-vx-delegate-imx -b rel_imx_5.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/tflite-vx-delegate-imx -b lf-5.15.71-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.37
+Version: 1.1.42
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.15.5-1.0.0
+Release Location: https://github.com/nxp-imx/tim-vx-imx -b lf-5.15.71-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
@@ -1377,18 +1431,20 @@ Origin: Vivante Corporation (MIT)
Tools Packages
--------------------------------------------
-Package: VivanteIDE-6.4.3.p4.0.tgz
-Version: 6.4.3.p4.0
+Package: VivanteIDE-6.4.3.p4.2.tgz
+Version: 6.4.3.p4.2
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: 1.4.193
+Version: 3
Outgoing License: BSD-3-Clause
License File: LICENSE
Package Category: Tools
@@ -1404,13 +1460,13 @@ Origin: NXP (BSD-3-clause)
--------------------------------------------
Package: bcu.git
-Version: 1.1.38
+Version: 1.1.52
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: ssh://git@bitbucket.sw.nxp.com/imx/bcu.git -b master
+Release Location: https://github.com/NXPmicro/bcu.git -b master
Origin: NXP (BSD-3-Clause)
--------------------------------------------
diff --git a/classes/fsl-dynamic-packagearch.bbclass b/classes/fsl-dynamic-packagearch.bbclass
index 9fcf37be..6cb0c0a9 100644
--- a/classes/fsl-dynamic-packagearch.bbclass
+++ b/classes/fsl-dynamic-packagearch.bbclass
@@ -54,6 +54,17 @@ python __anonymous () {
if not machine_socarch in cur_package_archs:
d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % machine_socarch)
+ multilib_variants = (d.getVar("MULTILIB_VARIANTS") or "").split()
+ for variant in multilib_variants:
+ defaulttune = d.getVar("DEFAULTTUNE:virtclass-multilib-" + variant)
+ if defaulttune:
+ package_extra_archs_tune_archs = (d.getVar("PACKAGE_EXTRA_ARCHS:tune-" + defaulttune) or "").split()
+ arch_suffix = d.getVar("MACHINE_SOCARCH_SUFFIX")
+ for arch in package_extra_archs_tune_archs:
+ socarch = arch + arch_suffix
+ if not socarch in cur_package_archs:
+ d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % socarch )
+
if d.getVar("TUNE_ARCH") == "arm":
# For ARM we have two possible machine_socarch values, one for the arm and one for the thumb instruction set
# add the other value to extra archs also, so that a image recipe searches both for packages.
diff --git a/classes/fsl-eula-unpack.bbclass b/classes/fsl-eula-unpack.bbclass
index a16a1871..ef6dc06c 100644
--- a/classes/fsl-eula-unpack.bbclass
+++ b/classes/fsl-eula-unpack.bbclass
@@ -45,6 +45,12 @@ FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V31 = "dedee5689786754f61ea3a76
FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V32 = "17d2319de7baa686e8a755ba58a9ebf5"
FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V33 = "e4098ac4459cb81b07d3f0c22b3e8370"
FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V34 = "be5ff43682ed6c57dfcbeb97651c2829"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V35 = "d3c315c6eaa43e07d8c130dc3a04a011"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V36 = "b54da624b8d2ffe8a3b47757da48e60f"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V37 = "37cb2d8c2bcf8bf2fbe0366d5d928c29"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V38 = "65c483bb431ccd9a1820e6872c604771"
+FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V39 = "5a0bf11f745e68024f37b4724a5364fe"
+
FSL_EULA_FILE_MD5SUMS = " \
${FSL_EULA_FILE_MD5SUM_LA_OPT_BASE_LICENSE_V8} \
${FSL_EULA_FILE_MD5SUM_LA_OPT_BASE_LICENSE_V10} \
@@ -85,11 +91,16 @@ FSL_EULA_FILE_MD5SUMS = " \
${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V32} \
${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V33} \
${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V34} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V35} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V36} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V37} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V38} \
+ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V39} \
"
# The checksum for the EULA in the layer
FSL_EULA_FILE_MD5SUM ?= \
- "${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V34}"
+ "${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V39}"
LIC_FILES_CHKSUM_LAYER ?= "file://${FSL_EULA_FILE};md5=${FSL_EULA_FILE_MD5SUM}"
LIC_FILES_CHKSUM_LAYER[vardepsexclude] += "FSL_EULA_FILE"
@@ -102,6 +113,28 @@ do_fetch:prepend() {
bb.fatal("The recipe LICENSE should include Proprietary but is " + d.getVar("LICENSE") + ".")
}
+do_unpack[vardepsexclude] += "FSL_EULA_FILE"
+python do_unpack() {
+ eula = d.getVar('ACCEPT_FSL_EULA')
+ eula_file = d.getVar('FSL_EULA_FILE')
+ pkg = d.getVar('PN')
+ if eula == None:
+ bb.fatal("To use '%s' you need to accept the Freescale EULA at '%s'. "
+ "Please read it and in case you accept it, write: "
+ "ACCEPT_FSL_EULA = \"1\" in your local.conf." % (pkg, eula_file))
+ elif eula == '0':
+ bb.fatal("To use '%s' you need to accept the Freescale EULA." % pkg)
+ else:
+ bb.note("Freescale EULA has been accepted for '%s'" % pkg)
+
+ try:
+ bb.build.exec_func('base_do_unpack', d)
+ except:
+ raise
+
+ bb.build.exec_func('fsl_bin_do_unpack', d)
+}
+
python fsl_bin_do_unpack() {
src_uri = (d.getVar('SRC_URI') or "").split()
if len(src_uri) == 0:
@@ -126,16 +159,28 @@ python fsl_bin_do_unpack() {
bb.note("Handling file '%s' as a Freescale EULA-licensed archive." % url.basename)
cmd = "sh %s --auto-accept --force" % (url.localpath)
bb.fetch2.runfetchcmd(cmd, d, quiet=True, workdir=rootdir)
+ if not found:
+ bb.fatal("The recipe inherits 'fsl-eula-unpack.bbclass' but does not mark any URL in SRC_URI with the option 'fsl-eula=true'")
# Check for two EULAs, one from the layer and one from the package
bb.note("Checking LIC_FILES_CHKSUM for Freescale EULA consistency...")
if found > 1:
bb.warn("The package contains multiple Freescale EULA-licensed archives. The consistency logic may not be able to detect a EULA problem.")
+ (layer_license, licenses, md5sums, found_layer_licenses, found_package_licenses) = find_nxp_eula_licenses(d)
+ if not found_layer_licenses:
+ bb.fatal("The Freescale layer EULA '%s' is not listed in LIC_FILES_CHKSUM '%s'."
+ % (layer_license, licenses))
+ if not found_package_licenses:
+ bb.fatal("A valid package EULA with md5sum in %s was not found in LIC_FILES_CHKSUM '%s'."
+ % (md5sums.split(), licenses))
+}
+
+def find_nxp_eula_licenses(d):
layer_license = d.getVar('LIC_FILES_CHKSUM_LAYER')
licenses = d.getVar('LIC_FILES_CHKSUM') or ""
md5sums = d.getVar('FSL_EULA_FILE_MD5SUMS') or ""
- found_layer_license = False
- found_package_license = False
+ found_layer_licenses = ""
+ found_package_licenses = ""
for license in licenses.split():
try:
(method, host, path, user, pswd, parm) = bb.fetch.decodeurl(license)
@@ -145,37 +190,8 @@ python fsl_bin_do_unpack() {
bb.fatal("%s: LIC_FILES_CHKSUM contains an invalid URL: %s" % (d.getVar('PF'), license))
if license == layer_license:
bb.note("Found Freescale EULA for the layer %s." % license)
- found_layer_license = True
+ found_layer_licenses += license
elif parm.get('md5') in md5sums:
bb.note("Found Freescale EULA for the package %s." % license)
- found_package_license = True
- if not found_layer_license:
- bb.fatal("The Freescale layer EULA '%s' is not listed in LIC_FILES_CHKSUM '%s'."
- % (layer_license, licenses))
- if not found_package_license:
- bb.fatal("A valid package EULA with md5sum in %s was not found in LIC_FILES_CHKSUM '%s'."
- % (md5sums.split(), licenses))
-}
-
-python do_unpack() {
- eula = d.getVar('ACCEPT_FSL_EULA')
- eula_file = d.getVar('FSL_EULA_FILE')
- pkg = d.getVar('PN')
- if eula == None:
- bb.fatal("To use '%s' you need to accept the Freescale EULA at '%s'. "
- "Please read it and in case you accept it, write: "
- "ACCEPT_FSL_EULA = \"1\" in your local.conf." % (pkg, eula_file))
- elif eula == '0':
- bb.fatal("To use '%s' you need to accept the Freescale EULA." % pkg)
- else:
- bb.note("Freescale EULA has been accepted for '%s'" % pkg)
-
- try:
- bb.build.exec_func('base_do_unpack', d)
- except:
- raise
-
- bb.build.exec_func('fsl_bin_do_unpack', d)
-}
-
-do_unpack[vardepsexclude] += "FSL_EULA_FILE"
+ found_package_licenses += license
+ return (layer_license, licenses, md5sums, found_layer_licenses, found_package_licenses)
diff --git a/classes/fsl-kernel-localversion.bbclass b/classes/fsl-kernel-localversion.bbclass
index c782a3d3..9ef0a62f 100644
--- a/classes/fsl-kernel-localversion.bbclass
+++ b/classes/fsl-kernel-localversion.bbclass
@@ -12,34 +12,36 @@
SCMVERSION ??= "y"
LOCALVERSION ??= "+fslc"
-kernel_conf_variable() {
- CONF_SED_SCRIPT="$CONF_SED_SCRIPT /CONFIG_$1[ =]/d;"
- if test "$2" = "n"
- then
- echo "# CONFIG_$1 is not set" >> ${B}/.config
- else
- echo "CONFIG_$1=$2" >> ${B}/.config
- fi
-}
+# LINUX_VERSION_EXTENSION is used as CONFIG_LOCALVERSION by kernel-yocto class
+LINUX_VERSION_EXTENSION ?= "${LOCALVERSION}"
do_kernel_localversion[dirs] += "${S} ${B}"
do_kernel_localversion() {
- mkdir -p ${B}
- echo "" > ${B}/.config
- CONF_SED_SCRIPT=""
- kernel_conf_variable LOCALVERSION "\"${LOCALVERSION}\""
- if [ "${SCMVERSION}" = "y" ]; then
- kernel_conf_variable LOCALVERSION_AUTO y
+ # Fallback for recipes not able to use LINUX_VERSION_EXTENSION
+ if [ "${@bb.data.inherits_class('kernel-yocto', d)}" = "False" ]; then
+ echo 'CONFIG_LOCALVERSION="${LOCALVERSION}"' >> ${B}/.config
fi
- sed -e "${CONF_SED_SCRIPT}" < '${WORKDIR}/defconfig' >> '${B}/.config'
-
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
- head=`git --git-dir=${S}/.git rev-parse --verify --short HEAD 2> /dev/null`
- printf "%s%s" +g $head > ${S}/.scmversion
+ if [ "${SRCREV}" = "INVALID" ]; then
+ hash=${SRCREV_machine}
+ else
+ hash=${SRCREV}
+ fi
+ if [ "$hash" = "AUTOINC" ]; then
+ branch=`git --git-dir=${S}/.git symbolic-ref --short -q HEAD`
+ head=`git --git-dir=${S}/.git rev-parse --verify --short origin/${branch} 2> /dev/null`
+ else
+ head=`git --git-dir=${S}/.git rev-parse --verify --short $hash 2> /dev/null`
+ fi
+ patches=`git --git-dir=${S}/.git rev-list --count $head..HEAD 2> /dev/null`
+ printf "%s%s%s%s" +g $head +p $patches > ${S}/.scmversion
+
+ sed -i -e "/CONFIG_LOCALVERSION_AUTO[ =]/d" ${B}/.config
+ echo "CONFIG_LOCALVERSION_AUTO=y" >> ${B}/.config
fi
}
-addtask kernel_localversion before do_configure after do_patch do_kernel_metadata
+addtask kernel_localversion before do_configure after do_patch do_kernel_configme
diff --git a/classes/fsl-u-boot-localversion.bbclass b/classes/fsl-u-boot-localversion.bbclass
index ebde8ea7..94b30c04 100644
--- a/classes/fsl-u-boot-localversion.bbclass
+++ b/classes/fsl-u-boot-localversion.bbclass
@@ -17,10 +17,21 @@ UBOOT_LOCALVERSION = "${LOCALVERSION}"
do_compile:prepend() {
if [ "${SCMVERSION}" = "y" ]; then
# Add GIT revision to the local version
- head=`cd ${S} ; git rev-parse --verify --short HEAD 2> /dev/null`
- printf "%s%s%s" "${UBOOT_LOCALVERSION}" +g $head > ${S}/.scmversion
- printf "%s%s%s" "${UBOOT_LOCALVERSION}" +g $head > ${B}/.scmversion
- else
+ if [ "${SRCREV}" = "INVALID" ]; then
+ hash=${SRCREV_machine}
+ else
+ hash=${SRCREV}
+ fi
+ if [ "$hash" = "AUTOINC" ]; then
+ branch=`git --git-dir=${S}/.git symbolic-ref --short -q HEAD`
+ head=`git --git-dir=${S}/.git rev-parse --verify --short origin/${branch} 2> /dev/null`
+ else
+ head=`git --git-dir=${S}/.git rev-parse --verify --short $hash 2> /dev/null`
+ fi
+ patches=`git --git-dir=${S}/.git rev-list --count $head..HEAD 2> /dev/null`
+ printf "%s%s%s%s" +g $head +p $patches > ${S}/.scmversion
+ printf "%s%s%s%s" +g $head +p $patches > ${B}/.scmversion
+ else
printf "%s" "${UBOOT_LOCALVERSION}" > ${S}/.scmversion
printf "%s" "${UBOOT_LOCALVERSION}" > ${B}/.scmversion
fi
diff --git a/classes/imx-boot-container.bbclass b/classes/imx-boot-container.bbclass
index 711bbd9e..3c6a89ed 100644
--- a/classes/imx-boot-container.bbclass
+++ b/classes/imx-boot-container.bbclass
@@ -20,11 +20,24 @@
# by variable UBOOT_PROVIDES_BOOT_CONTAINER, which is defined in the
# base machine include file (imx-base.inc), and is set to "1" when the
# 'imx-boot-container' is present in MACHINEOVERRIDES.
+#
+# NOTE: A backwards-compatible symlink is added for 'flash.bin', named
+# 'imx-boot', during the deployment task.
# Define ATF binary file to be deployed to the U-Boot build folder
ATF_MACHINE_NAME = "bl31-${ATF_PLATFORM}.bin"
ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
+IMX_BOOT_CONTAINER_FIRMWARE_SOC = ""
+IMX_BOOT_CONTAINER_FIRMWARE_SOC:mx8mq-generic-bsp = " \
+ signed_dp_imx8m.bin \
+ signed_hdmi_imx8m.bin \
+"
+IMX_BOOT_CONTAINER_FIRMWARE ?= " \
+ ${IMX_BOOT_CONTAINER_FIRMWARE_SOC} \
+ ${DDR_FIRMWARE_NAME} \
+"
+
# This package aggregates output deployed by other packages, so set the
# appropriate dependencies for populate binaries task
do_resolve_and_populate_binaries[depends] += " \
@@ -42,9 +55,9 @@ do_resolve_and_populate_binaries() {
for type in ${UBOOT_CONFIG}; do
j=$(expr $j + 1);
if [ $j -eq $i ]; then
- for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
- bbnote "Copy ddr_firmware: ${ddr_firmware} from ${DEPLOY_DIR_IMAGE} -> ${B}/${config}/${ddr_firmware_name}"
- cp ${DEPLOY_DIR_IMAGE}/${ddr_firmware} ${B}/${config}/
+ for firmware in ${IMX_BOOT_CONTAINER_FIRMWARE}; do
+ bbnote "Copy firmware: ${firmware} from ${DEPLOY_DIR_IMAGE} -> ${B}/${config}/"
+ cp ${DEPLOY_DIR_IMAGE}/${firmware} ${B}/${config}/
done
if [ -n "${ATF_MACHINE_NAME}" ]; then
cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${B}/${config}/bl31.bin
@@ -80,14 +93,14 @@ do_deploy:append() {
then
install -m 0644 ${B}/${config}/flash.bin ${DEPLOYDIR}/flash.bin-${MACHINE}-${type}
# When there's more than one word in UBOOT_CONFIG,
- # this will overwrite the links created in
- # previous loop iterations, effectively making
- # u-boot.itb and flash.bin correspond to the _last_
- # word in UBOOT_CONFIG. This is also how all other
- # artifacts handled by oe-core's u-boot.inc are
- # treated.
- ln -sf flash.bin-${MACHINE}-${type} flash.bin
- ln -sf flash.bin-${MACHINE}-${type} imx-boot
+ # the first UBOOT_CONFIG listed will be the imx-boot binary
+ if [ ! -f "${DEPLOYDIR}/imx-boot" ]; then
+ ln -sf flash.bin-${MACHINE}-${type} flash.bin
+ ln -sf flash.bin-${MACHINE}-${type} imx-boot
+
+ else
+ bbwarn "Use custom wks.in for $UBOOT_CONFIG = $type"
+ fi
fi
done
unset j
diff --git a/classes/use-imx-security-controller-firmware.bbclass b/classes/use-imx-security-controller-firmware.bbclass
index eb88fb99..062d6455 100644
--- a/classes/use-imx-security-controller-firmware.bbclass
+++ b/classes/use-imx-security-controller-firmware.bbclass
@@ -23,6 +23,8 @@ SECO_FIRMWARE_NAME:mx8qxp-nxp-bsp = \
'mx8qxc0-ahab-container.img', d)}"
SECO_FIRMWARE_NAME:mx8dx-nxp-bsp = "mx8qxc0-ahab-container.img"
SECO_FIRMWARE_NAME:mx8dxl-nxp-bsp = "mx8dxla1-ahab-container.img"
+SECO_FIRMWARE_NAME:mx8ulp-nxp-bsp = "mx8ulpa1-ahab-container.img"
+SECO_FIRMWARE_NAME:mx93-nxp-bsp = "mx93a0-ahab-container.img"
python () {
if "mx8m-generic-bsp" in d.getVar('MACHINEOVERRIDES').split(":"):
diff --git a/classes/uuu_bootloader_tag.bbclass b/classes/uuu_bootloader_tag.bbclass
index fb6acd72..87745660 100644
--- a/classes/uuu_bootloader_tag.bbclass
+++ b/classes/uuu_bootloader_tag.bbclass
@@ -4,8 +4,9 @@
do_deploy:append() {
if [ "${UUU_BOOTLOADER}" != "" ]; then
cp ${DEPLOYDIR}/${UUU_BOOTLOADER} ${DEPLOYDIR}/${UUU_BOOTLOADER_TAGGED}
+ cp ${DEPLOYDIR}/${UUU_BOOTLOADER} ${DEPLOYDIR}/${UUU_BOOTLOADER_UNTAGGED}
ln -sf ${UUU_BOOTLOADER_TAGGED} ${DEPLOYDIR}/${UUU_BOOTLOADER}
- stat -L -cUUUBURNXXOEUZX7+A-XY5601QQWWZ%sEND ${DEPLOYDIR}/${UUU_BOOTLOADER} \
- >> ${DEPLOYDIR}/${UUU_BOOTLOADER}
+ stat -L -cUUUBURNXXOEUZX7+A-XY5601QQWWZ%sEND ${DEPLOYDIR}/${UUU_BOOTLOADER_TAGGED} \
+ >> ${DEPLOYDIR}/${UUU_BOOTLOADER_TAGGED}
fi
}
diff --git a/conf/layer.conf b/conf/layer.conf
index a3c8af2c..5ff2839d 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -42,6 +42,9 @@ BBFILES_DYNAMIC += " \
\
meta-arm:${LAYERDIR}/dynamic-layers/meta-arm/*/*/*.bbappend \
\
+ multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bb \
+ multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bbappend \
+ \
openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \
openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \
\
diff --git a/conf/machine/imx23evk.conf b/conf/machine/imx23evk.conf
index 5e8be1e9..64e0411a 100644
--- a/conf/machine/imx23evk.conf
+++ b/conf/machine/imx23evk.conf
@@ -19,5 +19,3 @@ UBOOT_SUFFIX = "sb"
UBOOT_MACHINE = "mx23evk_config"
KERNEL_DEVICETREE = "imx23-evk.dtb"
-
-MACHINE_FEATURES = "usbgadget usbhost vfat touchscreen"
diff --git a/conf/machine/imx28evk.conf b/conf/machine/imx28evk.conf
index 9763a396..99ed29a9 100644
--- a/conf/machine/imx28evk.conf
+++ b/conf/machine/imx28evk.conf
@@ -25,8 +25,6 @@ KERNEL_DEVICETREE = "imx28-evk.dtb"
SERIAL_CONSOLES = "115200;ttyAMA0"
-MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
-
## Parameters for NAND IC part-# K9LBG08U0D-PCB0
MKUBIFS_ARGS = "--min-io-size 4096 --leb-size 516096 --max-leb-cnt 8139"
diff --git a/conf/machine/imx53qsb.conf b/conf/machine/imx53qsb.conf
index 0d6a7b22..c9b98d22 100644
--- a/conf/machine/imx53qsb.conf
+++ b/conf/machine/imx53qsb.conf
@@ -2,7 +2,7 @@
#@NAME: NXP i.MX53 Quick Start Board
#@SOC: i.MX53
#@DESCRIPTION: Machine configuration for NXP i.MX53 Quick Start Board
-#@MAINTAINER: Trevor Woerner <trevor.woerner@linaro.org>
+#@MAINTAINER: Trevor Woerner <twoerner@gmail.com>
MACHINEOVERRIDES =. "mx5:mx53:"
diff --git a/conf/machine/imx6qdlsabreauto.conf b/conf/machine/imx6qdlsabreauto.conf
index a5ec1249..3c6fd151 100644
--- a/conf/machine/imx6qdlsabreauto.conf
+++ b/conf/machine/imx6qdlsabreauto.conf
@@ -34,28 +34,33 @@ KERNEL_DEVICETREE:use-mainline-bsp = " \
### u-boot-fslc settings ###
SPL_BINARY:pn-u-boot-fslc = "SPL"
-UBOOT_CONFIG:pn-u-boot-fslc ??= "sd-fslc"
+UBOOT_CONFIG:pn-u-boot-fslc ??= "sd"
UBOOT_SUFFIX:pn-u-boot-fslc = "img"
### u-boot-imx settings ###
SPL_BINARY:pn-u-boot-imx = ""
UBOOT_CONFIG:pn-u-boot-imx ??= " \
- sd-imx \
- ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee-imx', '', d)} \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
"
UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
UBOOT_SUFFIX:pn-u-boot-imx = "imx"
+UBOOT_MAKE_TARGET:pn-u-boot-imx-mfgtool = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx-mfgtool = "imx"
+
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_MACHINE_NAME}_defconfig,sdcard"
+UBOOT_CONFIG[sd-optee] = "${UBOOT_CONFIG_MACHINE_NAME}_optee_defconfig,sdcard"
+UBOOT_CONFIG[eimnor] = "${UBOOT_CONFIG_MACHINE_NAME}_eimnor_defconfig"
+UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_MACHINE_NAME}_nand_defconfig,ubifs"
+UBOOT_CONFIG[spinor] = "${UBOOT_CONFIG_MACHINE_NAME}_spinor_defconfig"
+UBOOT_CONFIG[sata] = "${UBOOT_CONFIG_MACHINE_NAME}_sata_defconfig"
+UBOOT_CONFIG[mfgtool] = "${UBOOT_CONFIG_MACHINE_NAME}_defconfig"
# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# variants. Change the defconfig to the targeted SoC variant.
-UBOOT_CONFIG[sd-fslc] = "mx6sabreauto_defconfig,sdcard"
-UBOOT_CONFIG[sd-imx] = "mx6qpsabreauto_defconfig,sdcard"
-UBOOT_CONFIG[sd-optee-imx] = "mx6qpsabreauto_optee_defconfig,sdcard"
-UBOOT_CONFIG[eimnor-imx] = "mx6qpsabreauto_eimnor_defconfig"
-UBOOT_CONFIG[nand-imx] = "mx6qpsabreauto_nand_defconfig,ubifs"
-UBOOT_CONFIG[spinor-imx] = "mx6qpsabreauto_spinor_defconfig"
-UBOOT_CONFIG[sata-imx] = "mx6qpsabreauto_sata_defconfig"
-UBOOT_CONFIG[mfgtool-imx] = "mx6qpsabreauto_defconfig"
+UBOOT_CONFIG_MACHINE_NAME = "mx6sabreauto"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx = "mx6qpsabreauto"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx-mfgtool = "mx6qpsabreauto"
WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -68,4 +73,4 @@ SERIAL_CONSOLES = "115200;ttymxc3"
MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += " pci wifi bluetooth nxp8987-sdio"
diff --git a/conf/machine/imx6qdlsabresd.conf b/conf/machine/imx6qdlsabresd.conf
index 81d1c962..046a7c7f 100644
--- a/conf/machine/imx6qdlsabresd.conf
+++ b/conf/machine/imx6qdlsabresd.conf
@@ -43,25 +43,30 @@ KERNEL_DEVICETREE:use-mainline-bsp = " \
### u-boot-fslc settings ###
SPL_BINARY:pn-u-boot-fslc = "SPL"
-UBOOT_CONFIG:pn-u-boot-fslc ??= "sd-fslc"
+UBOOT_CONFIG:pn-u-boot-fslc ??= "sd"
UBOOT_SUFFIX:pn-u-boot-fslc = "img"
### u-boot-imx settings ###
SPL_BINARY:pn-u-boot-imx = ""
UBOOT_CONFIG:pn-u-boot-imx ??= " \
- sd-imx \
- ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee-imx', '', d)} \
+ sd \
+ ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'sd-optee', '', d)} \
"
UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
UBOOT_SUFFIX:pn-u-boot-imx = "imx"
+UBOOT_MAKE_TARGET:pn-u-boot-imx-mfgtool = "u-boot.imx"
+UBOOT_SUFFIX:pn-u-boot-imx-mfgtool = "imx"
+
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_MACHINE_NAME}_defconfig,sdcard"
+UBOOT_CONFIG[sd-optee] = "${UBOOT_CONFIG_MACHINE_NAME}_optee_defconfig,sdcard"
+UBOOT_CONFIG[sata] = "${UBOOT_CONFIG_MACHINE_NAME}_sata_defconfig"
+UBOOT_CONFIG[mfgtool] = "${UBOOT_CONFIG_MACHINE_NAME}_defconfig"
# The u-boot-imx does not provide unified functionality for DL/Q/QP SoC
# variants. Change the defconfig to the targeted SoC variant.
-UBOOT_CONFIG[sd-fslc] = "mx6sabresd_defconfig,sdcard"
-UBOOT_CONFIG[sd-imx] = "mx6qsabresd_defconfig,sdcard"
-UBOOT_CONFIG[sd-optee-imx] = "mx6qsabresd_optee_defconfig,sdcard"
-UBOOT_CONFIG[sata-imx] = "mx6qsabresd_sata_defconfig"
-UBOOT_CONFIG[mfgtool-imx] = "mx6qsabresd_defconfig"
+UBOOT_CONFIG_MACHINE_NAME = "mx6sabresd"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx = "mx6qsabresd"
+UBOOT_CONFIG_MACHINE_NAME:pn-u-boot-imx-mfgtool = "mx6qsabresd"
WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
@@ -74,4 +79,4 @@ SERIAL_CONSOLES = "115200;ttymxc0"
MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += " pci wifi bluetooth nxp8987-sdio"
diff --git a/conf/machine/imx6slevk.conf b/conf/machine/imx6slevk.conf
index a0048974..976e6a3a 100644
--- a/conf/machine/imx6slevk.conf
+++ b/conf/machine/imx6slevk.conf
@@ -34,6 +34,6 @@ OPTEE_BIN_EXT = "6slevk"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
MACHINE_FIRMWARE += "linux-firmware-ath6k firmware-imx-epdc"
diff --git a/conf/machine/imx6sllevk.conf b/conf/machine/imx6sllevk.conf
index 19df28a4..43564aea 100644
--- a/conf/machine/imx6sllevk.conf
+++ b/conf/machine/imx6sllevk.conf
@@ -10,6 +10,9 @@ include conf/machine/include/imx-base.inc
require conf/machine/include/arm/armv7a/tune-cortexa9.inc
KERNEL_DEVICETREE = "imx6sll-evk.dtb"
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ imx6sll-evk-btwifi.dtb \
+ imx6sll-evk-reva.dtb"
UBOOT_MAKE_TARGET = "u-boot.imx"
UBOOT_SUFFIX = "imx"
@@ -27,7 +30,7 @@ OPTEE_BIN_EXT:imx6sllevk = "6sllevk"
SERIAL_CONSOLES = "115200;ttymxc0"
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
# MESA DRI library
XSERVER += "mesa-driver-swrast"
diff --git a/conf/machine/imx6sxsabreauto.conf b/conf/machine/imx6sxsabreauto.conf
index 18f490f4..69bc901b 100644
--- a/conf/machine/imx6sxsabreauto.conf
+++ b/conf/machine/imx6sxsabreauto.conf
@@ -31,4 +31,4 @@ SERIAL_CONSOLES = "115200;ttymxc3"
MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += " pci wifi bluetooth"
+MACHINE_FEATURES += " pci wifi bluetooth nxp8987-sdio"
diff --git a/conf/machine/imx6sxsabresd.conf b/conf/machine/imx6sxsabresd.conf
index 9f939ca7..45d6e265 100644
--- a/conf/machine/imx6sxsabresd.conf
+++ b/conf/machine/imx6sxsabresd.conf
@@ -45,4 +45,4 @@ SERIAL_CONSOLES = "115200;ttymxc0"
MACHINE_FIRMWARE:append:mx6 = " linux-firmware-ath6k"
-MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
diff --git a/conf/machine/imx6ulevk.conf b/conf/machine/imx6ulevk.conf
index 8f908efe..4232ce89 100644
--- a/conf/machine/imx6ulevk.conf
+++ b/conf/machine/imx6ulevk.conf
@@ -9,16 +9,17 @@ MACHINEOVERRIDES =. "mx6ul:"
include conf/machine/include/imx-base.inc
include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
KERNEL_DEVICETREE = " \
- imx6ul-14x14-evk-btwifi.dtb \
- imx6ul-14x14-evk-csi.dtb \
- imx6ul-14x14-evk.dtb \
- imx6ul-14x14-evk-ecspi.dtb \
- imx6ul-14x14-evk-ecspi-slave.dtb \
- imx6ul-14x14-evk-emmc.dtb \
- imx6ul-14x14-evk-gpmi-weim.dtb \
+ imx6ul-14x14-evk-btwifi.dtb \
+ imx6ul-14x14-evk-btwifi-sdio3_0.dtb \
+ imx6ul-14x14-evk-csi.dtb \
+ imx6ul-14x14-evk.dtb \
+ imx6ul-14x14-evk-ecspi.dtb \
+ imx6ul-14x14-evk-ecspi-slave.dtb \
+ imx6ul-14x14-evk-emmc.dtb \
+ imx6ul-14x14-evk-gpmi-weim.dtb \
"
KERNEL_DEVICETREE:use-mainline-bsp = "imx6ul-14x14-evk.dtb"
@@ -32,7 +33,9 @@ UBOOT_SUFFIX:pn-u-boot-fslc = "img"
# The u-boot-imx does not provide SPL support
SPL_BINARY:pn-u-boot-imx = ""
UBOOT_MAKE_TARGET:pn-u-boot-imx = "u-boot.imx"
+UBOOT_MAKE_TARGET:pn-u-boot-imx-mfgtool = "u-boot.imx"
UBOOT_SUFFIX:pn-u-boot-imx = "imx"
+UBOOT_SUFFIX:pn-u-boot-imx-mfgtool = "imx"
WKS_FILE = " \
${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', \
diff --git a/conf/machine/imx6ullevk.conf b/conf/machine/imx6ullevk.conf
index e5ea2ec2..d2b4843a 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -9,16 +9,17 @@ MACHINEOVERRIDES =. "mx6ull:"
include conf/machine/include/imx-base.inc
include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8801-sdio nxp8987-sdio"
KERNEL_DEVICETREE = " \
- imx6ull-14x14-evk.dtb \
+ imx6ull-14x14-evk.dtb \
"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- imx6ull-14x14-evk-btwifi.dtb \
- imx6ull-14x14-evk-emmc.dtb \
- imx6ull-14x14-evk-gpmi-weim.dtb \
+ imx6ull-14x14-evk-btwifi.dtb \
+ imx6ull-14x14-evk-btwifi-sdio3_0.dtb \
+ imx6ull-14x14-evk-emmc.dtb \
+ imx6ull-14x14-evk-gpmi-weim.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
diff --git a/conf/machine/imx6ulz-14x14-evk.conf b/conf/machine/imx6ulz-14x14-evk.conf
index 7775fde3..994ad850 100644
--- a/conf/machine/imx6ulz-14x14-evk.conf
+++ b/conf/machine/imx6ulz-14x14-evk.conf
@@ -9,13 +9,14 @@ MACHINEOVERRIDES =. "mx6ulz:"
include conf/machine/include/imx-base.inc
include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
KERNEL_DEVICETREE = " \
imx6ulz-14x14-evk.dtb \
"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
imx6ulz-14x14-evk-btwifi.dtb \
+ imx6ull-14x14-evk-btwifi-sdio3_0.dtb \
imx6ulz-14x14-evk-emmc.dtb \
imx6ulz-14x14-evk-gpmi-weim.dtb \
"
diff --git a/conf/machine/imx7dsabresd.conf b/conf/machine/imx7dsabresd.conf
index 7183d6f9..f85505ae 100644
--- a/conf/machine/imx7dsabresd.conf
+++ b/conf/machine/imx7dsabresd.conf
@@ -9,19 +9,20 @@ MACHINEOVERRIDES =. "mx7:mx7d:"
require conf/machine/include/imx-base.inc
include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455"
+MACHINE_FEATURES += "pci wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
KERNEL_DEVICETREE = "imx7d-sdb.dtb"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- imx7d-sdb-epdc.dtb \
- imx7d-sdb-gpmi-weim.dtb \
- imx7d-sdb-m4.dtb \
- imx7d-sdb-mipi-dsi.dtb \
- imx7d-sdb-pcie-ep.dtb \
- imx7d-sdb-qspi.dtb \
- imx7d-sdb-reva.dtb \
- imx7d-sdb-sht11.dtb \
- imx7d-sdb-usd-wifi.dtb \
+ imx7d-sdb-epdc.dtb \
+ imx7d-sdb-gpmi-weim.dtb \
+ imx7d-sdb-m4.dtb \
+ imx7d-sdb-mipi-dsi.dtb \
+ imx7d-sdb-mqs.dtb \
+ imx7d-sdb-pcie-ep.dtb \
+ imx7d-sdb-qspi.dtb \
+ imx7d-sdb-reva.dtb \
+ imx7d-sdb-sht11.dtb \
+ imx7d-sdb-usd-wifi.dtb \
"
UBOOT_MAKE_TARGET = "u-boot.imx"
diff --git a/conf/machine/imx7ulpevk.conf b/conf/machine/imx7ulpevk.conf
index 77774e2c..9e677cf7 100644
--- a/conf/machine/imx7ulpevk.conf
+++ b/conf/machine/imx7ulpevk.conf
@@ -9,7 +9,7 @@ MACHINEOVERRIDES =. "mx7:mx7ulp:"
require conf/machine/include/imx-base.inc
include conf/machine/include/arm/armv7a/tune-cortexa7.inc
-MACHINE_FEATURES += "pci wifi bluetooth bcm43430"
+MACHINE_FEATURES += "pci wifi bluetooth bcm43430 nxp8987-sdio"
KERNEL_DEVICETREE = " \
imx7ulp-evk.dtb \
diff --git a/conf/machine/imx8dx-mek.conf b/conf/machine/imx8dx-mek.conf
index fbb35f13..f7abd89a 100644
--- a/conf/machine/imx8dx-mek.conf
+++ b/conf/machine/imx8dx-mek.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@NAME: i.MX 8DX MEK
+#@SOC: i.MX8DX
#@DESCRIPTION: i.MX 8DualX Multisensory Enablement Kit board
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
diff --git a/conf/machine/imx8dxl-ddr3l-evk.conf b/conf/machine/imx8dxl-ddr3l-evk.conf
index e74bc259..7d46e2b4 100644
--- a/conf/machine/imx8dxl-ddr3l-evk.conf
+++ b/conf/machine/imx8dxl-ddr3l-evk.conf
@@ -1,11 +1,12 @@
#@TYPE: Machine
#@NAME: i.MX 8DXL EVK with DDR3
+#@SOC: i.MX8DXL
#@DESCRIPTION: NXP i.MX 8DXLite Evaluation Kit with DDR3
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
require conf/machine/include/imx8dxl-evk.inc
-KERNEL_DEVICETREE_BASENAME = "imx8dxl-ddr3-evk"
-UBOOT_CONFIG_BASENAME = "imx8dxl_ddr3_evk"
+KERNEL_DEVICETREE_BASENAME = "imx8dxl-ddr3l-evk"
+UBOOT_CONFIG_BASENAME = "imx8dxl_ddr3l_evk"
UBOOT_CONFIG[nand] = "${UBOOT_CONFIG_BASENAME}_nand_defconfig"
BOARD_TYPE = "ddr3-evk"
diff --git a/conf/machine/imx8dxl-lpddr4-evk.conf b/conf/machine/imx8dxl-lpddr4-evk.conf
index 2ca9b986..915c3fa9 100644
--- a/conf/machine/imx8dxl-lpddr4-evk.conf
+++ b/conf/machine/imx8dxl-lpddr4-evk.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@NAME: i.MX 8DXL EVK with LPDDR4
+#@SOC: i.MX8DXL
#@DESCRIPTION: i.MX 8DXLite Evaluation Kit with LPDDR4
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
@@ -8,11 +9,9 @@ KERNEL_DEVICETREE_BASENAME = "imx8dxl-evk"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-enet0-tja1100.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8dxl_evk"
diff --git a/conf/machine/imx8mm-ddr4-evk.conf b/conf/machine/imx8mm-ddr4-evk.conf
index 431485e7..467ca863 100644
--- a/conf/machine/imx8mm-ddr4-evk.conf
+++ b/conf/machine/imx8mm-ddr4-evk.conf
@@ -8,8 +8,11 @@ require include/imx8mm-evk.inc
KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-revb.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67191-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-rm67199-cmd-ram.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mm_ddr4_evk"
@@ -24,7 +27,5 @@ DDR_FIRMWARE_NAME = " \
IMXBOOT_TARGETS_BASENAME = "flash_ddr4_evk"
-# Mainline BSP doesn't support DDR4 so it must be set to nxp.
-# Also this machine isn't supported by u-boot-fslc but imx8mm-evk.inc already
-# set the bootloader to u-boot-imx instead when NXP BSP is used.
-IMX_DEFAULT_BSP = "nxp"
+# Mainline U-Boot doesn't support DDR4 so it must be set to u-boot-imx.
+IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
diff --git a/conf/machine/imx8mm-lpddr4-evk.conf b/conf/machine/imx8mm-lpddr4-evk.conf
index 0c886cb1..1387e594 100644
--- a/conf/machine/imx8mm-lpddr4-evk.conf
+++ b/conf/machine/imx8mm-lpddr4-evk.conf
@@ -9,17 +9,22 @@ require include/imx8mm-evk.inc
# The device tree name is implicit for LPDDR4, so can't use MACHINE here
KERNEL_DEVICETREE_BASENAME = "imx8mm-evk"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-audio-tdm.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-qca-wifi.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-revb-qca-wifi.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak4497.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-audio-tdm.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpdk.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ecspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lk.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-qca-wifi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-revb-qca-wifi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg-wm8524.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg-wm8524-lpv.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
"
@@ -27,15 +32,10 @@ UBOOT_CONFIG_BASENAME = "imx8mm_evk"
UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
DDR_FIRMWARE_NAME = " \
- lpddr4_pmu_train_1d_imem.bin \
- lpddr4_pmu_train_1d_dmem.bin \
- lpddr4_pmu_train_2d_imem.bin \
- lpddr4_pmu_train_2d_dmem.bin \
+ lpddr4_pmu_train_1d_imem.bin \
+ lpddr4_pmu_train_1d_dmem.bin \
+ lpddr4_pmu_train_2d_imem.bin \
+ lpddr4_pmu_train_2d_dmem.bin \
"
IMXBOOT_TARGETS_BASENAME = "flash_evk"
-
-# Mainline BSP doesn't support LPDDR4 so it must be set to nxp.
-# Also this machine isn't supported by u-boot-fslc but imx8mn-evk.inc already
-# set the bootloader to u-boot-imx instead when NXP BSP is used.
-IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx8mn-lpddr4-evk.conf b/conf/machine/imx8mn-lpddr4-evk.conf
index 51a79c38..25103706 100644
--- a/conf/machine/imx8mn-lpddr4-evk.conf
+++ b/conf/machine/imx8mn-lpddr4-evk.conf
@@ -9,7 +9,11 @@ require include/imx8mn-evk.inc
# The device tree name is implicit for LPDDR4, so can't use MACHINE here
KERNEL_DEVICETREE_BASENAME = "imx8mn-evk"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-usd-wifi.dtb \
freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-revE.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-8mic-swpdm.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mn_evk"
DDR_FIRMWARE_NAME = " \
diff --git a/conf/machine/imx8mnul-ddr3l-evk.conf b/conf/machine/imx8mnul-ddr3l-evk.conf
new file mode 100644
index 00000000..9d7bafd6
--- /dev/null
+++ b/conf/machine/imx8mnul-ddr3l-evk.conf
@@ -0,0 +1,69 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 8MNUL EVK with DDR3L
+#@SOC: i.MX8MN
+#@DESCRIPTION: Machine configuration for NXP i.MX 8M Nano UltraLite Evaluation Kit with DDR3L
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+MACHINEOVERRIDES =. "imx-boot-container:mx8mnul:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/arm/armv8a/tune-cortexa53.inc
+
+MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
+
+# NXP BSP can consume proprietary jailhouse and Broadcom drivers
+# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
+# a full support for it yet.
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"
+
+KERNEL_DEVICETREE_BASENAME = "imx8mn-ddr3l-evk"
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+"
+
+UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
+
+IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
+IMX_DEFAULT_KERNEL = "linux-imx"
+
+UBOOT_SUFFIX = "bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG_BASENAME = "imx8mn_ddr3l_evk"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_config,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+ATF_PLATFORM = "imx8mn"
+
+# Set DDR FIRMWARE
+DDR_FIRMWARE_VERSION = "201810"
+DDR_FIRMWARE_NAME = " \
+ ddr3_dmem_1d_${DDR_FIRMWARE_VERSION}.bin \
+ ddr3_imem_1d_${DDR_FIRMWARE_VERSION}.bin \
+"
+
+# Set imx-mkimage boot target
+IMXBOOT_TARGETS_BASENAME = "flash_ddr3l_evk"
+IMXBOOT_TARGETS = " \
+ ${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', \
+ '${IMXBOOT_TARGETS_BASENAME}', d)}"
+
+IMX_BOOT_SOC_TARGET = "iMX8MN"
+
+SERIAL_CONSOLES = "115200;ttymxc1"
+
+IMAGE_BOOTLOADER = "imx-boot"
+
+BOOT_SPACE = "65536"
+LOADADDR = ""
+UBOOT_MAKE_TARGET = "all"
+UBOOT_MAKE_TARGET:pn-u-boot-imx = ""
+IMX_BOOT_SEEK = "32"
+
+OPTEE_BIN_EXT = "8mnul"
diff --git a/conf/machine/imx8mp-lpddr4-evk.conf b/conf/machine/imx8mp-lpddr4-evk.conf
index c015963c..39108716 100644
--- a/conf/machine/imx8mp-lpddr4-evk.conf
+++ b/conf/machine/imx8mp-lpddr4-evk.conf
@@ -12,31 +12,39 @@ KERNEL_DEVICETREE_BASENAME = "imx8mp-evk"
# NXP kernel has additional DTB files for various board configuration and
# derivates. Include them here for NXP BSP only
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- freescale/imx8mp-ab2.dtb \
- freescale/imx8mp-evk-basler.dtb \
- freescale/imx8mp-evk-basler-ov2775.dtb \
- freescale/imx8mp-evk-basler-ov5640.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 \
+ freescale/imx8mp-ab2.dtb \
+ freescale/imx8mp-evk-basler.dtb \
+ freescale/imx8mp-evk-basler-ov2775.dtb \
+ freescale/imx8mp-evk-basler-ov5640.dtb \
+ freescale/imx8mp-evk-dpdk.dtb \
+ freescale/imx8mp-evk-dsp.dtb \
+ freescale/imx8mp-evk-dual-basler.dtb \
+ freescale/imx8mp-evk-dual-os08a20.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-os08a20.dtb \
+ freescale/imx8mp-evk-os08a20-ov5640.dtb \
+ freescale/imx8mp-evk-ov2775.dtb \
+ freescale/imx8mp-evk-ov2775-ov5640.dtb \
+ freescale/imx8mp-evk-pcie-ep.dtb \
+ freescale/imx8mp-evk-revA3-8mic-revE.dtb \
+ freescale/imx8mp-evk-rm67191.dtb \
+ freescale/imx8mp-evk-rm67199.dtb \
+ freescale/imx8mp-evk-root.dtb \
+ freescale/imx8mp-evk-rpmsg.dtb \
+ freescale/imx8mp-evk-rpmsg-lpv.dtb \
+ freescale/imx8mp-evk-sof-wm8960.dtb \
+ freescale/imx8mp-evk-spdif-lb.dtb \
+ freescale/imx8mp-evk-usdhc1-m2.dtb \
+ freescale/imx8mp-evk-8mic-swpdm.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8mp_evk"
@@ -46,10 +54,10 @@ UBOOT_CONFIG[ndm] = "${UBOOT_CONFIG_BASENAME}_ndm_defconfig"
# Set DDR FIRMWARE
DDR_FIRMWARE_VERSION = "202006"
DDR_FIRMWARE_NAME = " \
- lpddr4_pmu_train_1d_dmem_${DDR_FIRMWARE_VERSION}.bin \
- lpddr4_pmu_train_1d_imem_${DDR_FIRMWARE_VERSION}.bin \
- lpddr4_pmu_train_2d_dmem_${DDR_FIRMWARE_VERSION}.bin \
- lpddr4_pmu_train_2d_imem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_1d_dmem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_1d_imem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_2d_dmem_${DDR_FIRMWARE_VERSION}.bin \
+ lpddr4_pmu_train_2d_imem_${DDR_FIRMWARE_VERSION}.bin \
"
IMXBOOT_TARGETS_BASENAME = "flash_evk"
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-evk.conf
index 1e8146a8..779ac478 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -4,7 +4,11 @@
#@DESCRIPTION: Machine configuration for NXP i.MX 8M Quad Evaluation Kit
#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
-MACHINEOVERRIDES =. "imx-boot-container:mx8mq:"
+MACHINEOVERRIDES =. "mx8mq:"
+
+# FIXME: u-boot-imx should be converted to `binman` and then we can
+# avoid this specific overrides and handle it in a generic way.
+MACHINEOVERRIDES =. "${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', 'u-boot-imx', '', 'imx-boot-container:', d)}"
require conf/machine/include/imx-base.inc
require conf/machine/include/arm/armv8a/tune-cortexa53.inc
@@ -14,7 +18,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc
# inline NEON and FPU code generation
DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
-MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
+MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356 nxp8997-pcie nxp8997-sdio nxp9098-pcie nxp9098-sdio"
MACHINE_FEATURES:append:use-nxp-bsp = " optee bcm4359"
MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"
@@ -68,9 +72,6 @@ UBOOT_DTB_NAME = "imx8mq-evk.dtb"
# Set ATF platform name
ATF_PLATFORM = "imx8mq"
-# Extra firmware package name, that is required to build boot container for fslc bsp
-IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
-
# Set imx-mkimage boot target
IMXBOOT_TARGETS = "flash_evk flash_evk_no_hdmi flash_dp_evk"
IMX_BOOT_SOC_TARGET = "iMX8M"
@@ -95,7 +96,6 @@ UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp ??= "root=/dev/mmcblk1p2"
IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = ""
IMX_BOOT_SEEK = "33"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
index eff8da49..d35a2831 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@NAME: i.MX 8QM MEK
+#@SOC: i.MX8QM
#@DESCRIPTION: i.MX 8QuadMax Multisensory Enablement Kit board, rev B0
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
@@ -10,7 +11,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
+MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie"
MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"
# Don't include kernels in standard images
@@ -26,26 +27,25 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
USE_VT = "0"
KERNEL_DEVICETREE = " \
- freescale/imx8qm-mek.dtb \
- freescale/imx8qm-mek-ca53.dtb \
- freescale/imx8qm-mek-ca72.dtb \
- freescale/imx8qm-mek-dom0.dtb \
- freescale/imx8qm-mek-domu.dtb \
- freescale/imx8qm-mek-dsi-rm67191.dtb \
- freescale/imx8qm-mek-enet2-tja1100.dtb \
- freescale/imx8qm-mek-esai.dtb \
- freescale/imx8qm-mek-hdmi.dtb \
- freescale/imx8qm-mek-inmate.dtb \
- freescale/imx8qm-mek-jdi-wuxga-lvds1-panel.dtb \
- freescale/imx8qm-mek-jdi-wuxga-lvds1-panel-rpmsg.dtb \
- freescale/imx8qm-mek-ov5640.dtb \
- freescale/imx8qm-mek-pcie-ep.dtb \
- freescale/imx8qm-mek-root.dtb \
- freescale/imx8qm-mek-rpmsg.dtb \
- freescale/imx8qm-mek-sof-cs42888.dtb \
- freescale/imx8qm-mek-sof-wm8960.dtb \
- freescale/imx8qm-mek-usd-wifi.dtb \
- freescale/imx8qm-mek-usdhc3-m2.dtb \
+ freescale/imx8qm-mek.dtb \
+ freescale/imx8qm-mek-ca53.dtb \
+ freescale/imx8qm-mek-ca72.dtb \
+ freescale/imx8qm-mek-dsi-rm67191.dtb \
+ freescale/imx8qm-mek-enet2-tja1100.dtb \
+ freescale/imx8qm-mek-esai.dtb \
+ freescale/imx8qm-mek-hdmi.dtb \
+ freescale/imx8qm-mek-hdmi-rx.dtb \
+ freescale/imx8qm-mek-hdmi-rx-ov5640.dtb \
+ freescale/imx8qm-mek-jdi-wuxga-lvds1-panel.dtb \
+ freescale/imx8qm-mek-jdi-wuxga-lvds1-panel-rpmsg.dtb \
+ freescale/imx8qm-mek-ov5640.dtb \
+ freescale/imx8qm-mek-pcie-ep.dtb \
+ freescale/imx8qm-mek-rpmsg.dtb \
+ freescale/imx8qm-mek-sof.dtb \
+ freescale/imx8qm-mek-sof-cs42888.dtb \
+ freescale/imx8qm-mek-sof-wm8960.dtb \
+ freescale/imx8qm-mek-usd-wifi.dtb \
+ freescale/imx8qm-mek-usdhc3-m2.dtb \
"
UBOOT_MAKE_TARGET = \
diff --git a/conf/machine/imx8qxp-mek.conf b/conf/machine/imx8qxp-mek.conf
index 29412cc3..5c8df513 100644
--- a/conf/machine/imx8qxp-mek.conf
+++ b/conf/machine/imx8qxp-mek.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@NAME: i.MX 8QXP MEK
+#@SOC: i.MX8QXP
#@DESCRIPTION: i.MX 8QuadXPlus Multisensory Enablement Kit board
#@MAINTAINER: Lauren Post <lauren.post@nxp.com>
@@ -9,18 +10,16 @@ require include/imx8x-mek.inc
KERNEL_DEVICETREE_BASENAME = "${MACHINE}"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-dom0.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif-rpmsg.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-enet2.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif-rpmsg.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-sof-cs42888.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-sof-wm8960.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-a0.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-dpu-lcdif-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-enet2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lcdif-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-cs42888.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-wm8960.dtb \
"
UBOOT_CONFIG_BASENAME = "imx8qxp_mek"
diff --git a/conf/machine/imx8ulp-lpddr4-evk.conf b/conf/machine/imx8ulp-lpddr4-evk.conf
new file mode 100644
index 00000000..273e1569
--- /dev/null
+++ b/conf/machine/imx8ulp-lpddr4-evk.conf
@@ -0,0 +1,27 @@
+#@TYPE: Machine
+#@NAME: i.MX 8ULP EVK
+#@SOC: i.MX8ULP
+#@DESCRIPTION: Machine configuration for NXP i.MX 8ULP Evaluation Kit with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+require include/imx8ulp-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx8ulp-evk"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-epdc.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexio-i2c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpa.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-nd.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rk055hdmipi4m.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rk055hdmipi4mv2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-sof-btsco.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx8ulp_evk"
+
+MACHINE_FEATURES += "soc-reva1"
+UPOWER_FIRMWARE_NAME = "upower_a1.bin"
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/imx93-11x11-lpddr4x-evk.conf b/conf/machine/imx93-11x11-lpddr4x-evk.conf
new file mode 100644
index 00000000..a56b18ec
--- /dev/null
+++ b/conf/machine/imx93-11x11-lpddr4x-evk.conf
@@ -0,0 +1,36 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX 93 11x11 Evaluation Kit with LPDDR4X
+#@SOC: i.MX93
+#@DESCRIPTION: Machine configuration for NXP i.MX 93 11x11 EVK with LPDDR4X
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+MACHINEOVERRIDES =. "mx93:"
+
+require include/imx93-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx93-11x11-evk"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-aud-hat.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-boe-wxga-lvds-panel.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexio-i2c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexspi-m2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpuart.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mqs.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mt9m114.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
+ "
+
+UBOOT_CONFIG_BASENAME = "imx93_11x11_evk"
+
+DDR_FIRMWARE_NAME = " \
+ lpddr4_dmem_1d_v202201.bin \
+ lpddr4_dmem_2d_v202201.bin \
+ lpddr4_imem_1d_v202201.bin \
+ lpddr4_imem_2d_v202201.bin \
+"
diff --git a/conf/machine/imx93-9x9-lpddr4-qsb.conf b/conf/machine/imx93-9x9-lpddr4-qsb.conf
new file mode 100644
index 00000000..01843aca
--- /dev/null
+++ b/conf/machine/imx93-9x9-lpddr4-qsb.conf
@@ -0,0 +1,30 @@
+#@TYPE: Machine
+#@NAME: NXP i.MX93 9x9 Quick Start Board with LPDDR4
+#@SOC: i.MX93
+#@DESCRIPTION: Machine configuration for NXP i.MX93 9x9 QSB with LPDDR4
+#@MAINTAINER: Jun Zhu <junzhu@nxp.com>
+
+MACHINEOVERRIDES =. "mx93:"
+
+require include/imx93-evk.inc
+
+KERNEL_DEVICETREE_BASENAME = "imx93-9x9-qsb"
+
+KERNEL_DEVICETREE:append:use-nxp-bsp = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-can1.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-flexspi-m2.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-i3c.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi-slave.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lpspi.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-mt9m114.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ontat-wvga-panel.dtb \
+"
+
+UBOOT_CONFIG_BASENAME = "imx93_9x9_qsb"
+
+DDR_FIRMWARE_NAME = " \
+ lpddr4_dmem_1d_v202201.bin \
+ lpddr4_dmem_2d_v202201.bin \
+ lpddr4_imem_1d_v202201.bin \
+ lpddr4_imem_2d_v202201.bin \
+"
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index bd9e50f7..933356b2 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -60,6 +60,14 @@ UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
# |
# | UBOOT_MACHINE = "mx53loco_config"
# `----
+#
+# Please note that UBOOT_SUFFIX must be set in the machine config even
+# if the value is the same for the U-Boot flavors. If the value is not
+# set, then the assignment here is the one used, the value resolves to
+# empty, and the build fails:
+# | cp: cannot stat '/.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/build/imx8qm_mek_defconfig/u-boot.': No such file or directory
+#| WARNING: /.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/temp/run.do_compile.21223:186 exit 1 from 'cp /.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/build/${config}/${binary} /.../tmp/work/imx8qm_mek-fsl-linux/u-boot-imx/2022.04-r0/build/${config}/u-boot-${type}.${UBOOT_SUFFIX:pn-u-boot-imx}'
+#
IMX_DEFAULT_BOOTLOADER ??= "u-boot-fslc"
UBOOT_SUFFIX ?= "${UBOOT_SUFFIX:pn-${IMX_DEFAULT_BOOTLOADER}}"
@@ -75,20 +83,20 @@ PREFERRED_PROVIDER_virtual/bootloader ??= "${IMX_DEFAULT_BOOTLOADER}"
PREFERRED_PROVIDER_u-boot-mxsboot-native ??= "u-boot-fslc-mxsboot-native"
-UBOOT_ENTRYPOINT:mxs-generic-bsp = "0x40008000"
-UBOOT_ENTRYPOINT:mx51-generic-bsp = "0x90008000"
-UBOOT_ENTRYPOINT:mx53-generic-bsp = "0x70008000"
-UBOOT_ENTRYPOINT:mx6-generic-bsp = "0x10008000"
-UBOOT_ENTRYPOINT:mx6sl-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx6sll-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx6sx-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx6ul-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx6ull-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx6ulz-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx7-generic-bsp = "0x80008000"
-UBOOT_ENTRYPOINT:mx7ulp-generic-bsp = "0x60008000"
-UBOOT_ENTRYPOINT:mx8m-generic-bsp = "0x40480000"
-UBOOT_ENTRYPOINT:vf-generic-bsp = "0x80008000"
+UBOOT_ENTRYPOINT:mxs-generic-bsp ?= "0x40008000"
+UBOOT_ENTRYPOINT:mx51-generic-bsp ?= "0x90008000"
+UBOOT_ENTRYPOINT:mx53-generic-bsp ?= "0x70008000"
+UBOOT_ENTRYPOINT:mx6-generic-bsp ?= "0x10008000"
+UBOOT_ENTRYPOINT:mx6sl-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6sll-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6sx-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6ul-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6ull-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx6ulz-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx7-generic-bsp ?= "0x80008000"
+UBOOT_ENTRYPOINT:mx7ulp-generic-bsp ?= "0x60008000"
+UBOOT_ENTRYPOINT:mx8m-generic-bsp ?= "0x40480000"
+UBOOT_ENTRYPOINT:vf-generic-bsp ?= "0x80008000"
# Some derivates can utilize the boot container provided by U-Boot,
# below variable sets that those machines which have a imx-boot-container
@@ -113,6 +121,15 @@ UBOOT_PROVIDES_BOOT_CONTAINER:imx-boot-container = "1"
# Default TF-A provider to NXP downstream fork
IMX_DEFAULT_ATF_PROVIDER ??= "imx-atf"
+# Allow setting the UART used during the boot by ATF.
+
+# FIXME: We should return INVALID here but currently only i.MX8M has support to override the UART
+# base address in source code.
+SOC_ATF_BOOT_UART_BASE = ""
+
+SOC_ATF_BOOT_UART_BASE:mx8m-generic-bsp = "0x30890000"
+ATF_BOOT_UART_BASE ?= "${SOC_ATF_BOOT_UART_BASE}"
+
PREFERRED_PROVIDER_virtual/xserver = "xserver-xorg"
XSERVER_DRIVER = "xf86-video-fbdev"
XSERVER_DRIVER:vf-generic-bsp = "xf86-video-modesetting"
@@ -146,6 +163,8 @@ DEFAULTTUNE:vf-generic-bsp ?= "cortexa5thf-neon"
DEFAULTTUNE:mx8m-generic-bsp ?= "cortexa53-crypto"
DEFAULTTUNE:mx8qm-generic-bsp ?= "cortexa72-cortexa53-crypto"
DEFAULTTUNE:mx8x-generic-bsp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx8ulp-generic-bsp ?= "cortexa35-crypto"
+DEFAULTTUNE:mx93-generic-bsp ?= "cortexa55"
INHERIT += "machine-overrides-extender"
@@ -170,17 +189,22 @@ MACHINEOVERRIDES_EXTENDER:mx7ulp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxf
MACHINEOVERRIDES_EXTENDER:vf:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:vf-generic-bsp:vf-nxp-bsp"
-MACHINEOVERRIDES_EXTENDER:mx8qm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8qm-generic-bsp:mx8qm-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8qm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8qm-generic-bsp:mx8qm-nxp-bsp"
MACHINEOVERRIDES_EXTENDER:mx8mm:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mm-generic-bsp:mx8mm-nxp-bsp"
-MACHINEOVERRIDES_EXTENDER:mx8mn:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mn-generic-bsp:mx8mn-nxp-bsp"
-MACHINEOVERRIDES_EXTENDER:mx8mp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mp-generic-bsp:mx8mp-nxp-bsp"
-MACHINEOVERRIDES_EXTENDER:mx8mq:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mq-generic-bsp:mx8mq-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mn:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mn-generic-bsp:mx8mn-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mnul:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mnul-generic-bsp:mx8mnul-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mp-generic-bsp:mx8mp-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mq:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxvpu:imxgpu:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8m-generic-bsp:mx8m-nxp-bsp:mx8mq-generic-bsp:mx8mq-nxp-bsp"
-MACHINEOVERRIDES_EXTENDER:mx8qxp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8qxp-generic-bsp:mx8qxp-nxp-bsp"
-MACHINEOVERRIDES_EXTENDER:mx8dx:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dx-generic-bsp:mx8dx-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8qxp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8qxp-generic-bsp:mx8qxp-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8dx:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dx-generic-bsp:mx8dx-nxp-bsp"
MACHINEOVERRIDES_EXTENDER:mx8dxl:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxfbdev:mx8dxl-generic-bsp:mx8-generic-bsp:mx8-nxp-bsp:mx8x-generic-bsp:mx8x-nxp-bsp:mx8dxl-nxp-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8ulp:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxgpu:imxgpu2d:imxgpu3d:imxvulkan:mx8-generic-bsp:mx8-nxp-bsp:mx8ulp-generic-bsp:mx8ulp-nxp-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx93:use-nxp-bsp = "imx-generic-bsp:imx-nxp-bsp:imxdrm:imxpxp:mx9-generic-bsp:mx9-nxp-bsp:mx93-generic-bsp:mx93-nxp-bsp"
+
#######
### Mainline BSP specific overrides
#######
@@ -214,6 +238,7 @@ MACHINEOVERRIDES_EXTENDER:mx8qm:use-mainline-bsp = "imx-generic-bsp:imx-mainlin
MACHINEOVERRIDES_EXTENDER:mx8mm:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mm-generic-bsp:mx8mm-mainline-bsp"
MACHINEOVERRIDES_EXTENDER:mx8mn:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mn-generic-bsp:mx8mn-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8mnul:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mnul-generic-bsp:mx8mnul-mainline-bsp"
MACHINEOVERRIDES_EXTENDER:mx8mp:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mp-generic-bsp:mx8mp-mainline-bsp"
MACHINEOVERRIDES_EXTENDER:mx8mq:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8m-generic-bsp:mx8m-mainline-bsp:mx8mq-generic-bsp:mx8mq-mainline-bsp"
@@ -221,6 +246,10 @@ MACHINEOVERRIDES_EXTENDER:mx8qxp:use-mainline-bsp = "imx-generic-bsp:imx-mainlin
MACHINEOVERRIDES_EXTENDER:mx8dx:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8x-generic-bsp:mx8x-mainline-bsp:mx8dx-generic-bsp:mx8dx-mainline-bsp"
MACHINEOVERRIDES_EXTENDER:mx8dxl:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8x-generic-bsp:mx8x-mainline-bsp:mx8dxl-generic-bsp:mx8dxl-mainline-bsp"
+MACHINEOVERRIDES_EXTENDER:mx8ulp:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx8-generic-bsp:mx8-mainline-bsp:mx8ulp-generic-bsp:mx8ulp-mainline-bsp"
+
+MACHINEOVERRIDES_EXTENDER:mx93:use-mainline-bsp = "imx-generic-bsp:imx-mainline-bsp:mx9-generic-bsp:mx9-mainline-bsp:mx93-generic-bsp:mx93-mainline-bsp"
+
MACHINEOVERRIDES_EXTENDER_FILTER_OUT = " \
mx6 \
mx6q \
@@ -243,11 +272,14 @@ MACHINEOVERRIDES_EXTENDER_FILTER_OUT = " \
mx8qm \
mx8mm \
mx8mn \
+ mx8mnul \
mx8mp \
mx8mq \
mx8qxp \
mx8dx \
mx8dxl \
+ mx8ulp \
+ mx93 \
"
MACHINEOVERRIDES_FILTERED_OUT_QA_ERROR = "%s overrides cannot be used and need conversion to use the new BSP-specific overrides. Check 'meta-freescale/scripts/convert-bsp-specific-overrides'."
@@ -265,14 +297,17 @@ MACHINE_SOCARCH_SUFFIX:vf-nxp-bsp = "-vf"
MACHINE_SOCARCH_SUFFIX:mx6ul-nxp-bsp = "-mx6ul"
MACHINE_SOCARCH_SUFFIX:mx6ull-nxp-bsp = "-mx6ul"
MACHINE_SOCARCH_SUFFIX:mx6ulz-nxp-bsp = "-mx6ul"
-MACHINE_SOCARCH_SUFFIX:mx8qm-nxp-bsp = "-mx8"
-MACHINE_SOCARCH_SUFFIX:mx8mm-nxp-bsp = "-mx8mm"
-MACHINE_SOCARCH_SUFFIX:mx8mn-nxp-bsp = "-mx8mn"
-MACHINE_SOCARCH_SUFFIX:mx8mp-nxp-bsp = "-mx8mp"
-MACHINE_SOCARCH_SUFFIX:mx8mq-nxp-bsp = "-mx8m"
-MACHINE_SOCARCH_SUFFIX:mx8qxp-nxp-bsp = "-mx8"
-MACHINE_SOCARCH_SUFFIX:mx8dx-nxp-bsp = "-mx8"
-MACHINE_SOCARCH_SUFFIX:mx8dxl-nxp-bsp = "-mx8xl"
+MACHINE_SOCARCH_SUFFIX:mx8qm-nxp-bsp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8mm-nxp-bsp = "-mx8mm"
+MACHINE_SOCARCH_SUFFIX:mx8mn-nxp-bsp = "-mx8mn"
+MACHINE_SOCARCH_SUFFIX:mx8mnul-nxp-bsp = "-mx8mnl"
+MACHINE_SOCARCH_SUFFIX:mx8mp-nxp-bsp = "-mx8mp"
+MACHINE_SOCARCH_SUFFIX:mx8mq-nxp-bsp = "-mx8m"
+MACHINE_SOCARCH_SUFFIX:mx8qxp-nxp-bsp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dx-nxp-bsp = "-mx8"
+MACHINE_SOCARCH_SUFFIX:mx8dxl-nxp-bsp = "-mx8xl"
+MACHINE_SOCARCH_SUFFIX:mx8ulp-nxp-bsp = "-mx8ulp"
+MACHINE_SOCARCH_SUFFIX:mx93-nxp-bsp = "-mx93"
# For Mainline we use a single SoC suffix as we don't have different build options
MACHINE_SOCARCH_SUFFIX:imx-mainline-bsp = "-imx"
@@ -289,13 +324,22 @@ MACHINE_SOCARCH_FILTER:append:imxvpu = " \
libimxvpuapi \
virtual/imxvpu \
"
+MACHINE_SOCARCH_FILTER:append:imxvulkan = " \
+ vulkan-headers \
+ vulkan-loader \
+ vulkan-tools \
+"
MACHINE_SOCARCH_FILTER:append:imxgpu = " \
virtual/egl \
- virtual/mesa \
virtual/libopenvg \
+ virtual/mesa \
+ virtual/opencl-icd \
libdrm \
cairo \
libgal-imx \
+ opencl-icd-loader \
+ opencl-clhpp \
+ opencl-headers \
opencv \
pango \
"
@@ -319,16 +363,6 @@ MACHINE_SOCARCH_FILTER:append:imx-mainline-bsp = " \
pango \
qtbase \
"
-MACHINE_SOCARCH_FILTER:append:mx6q-nxp-bsp = " \
- opencl-icd-loader \
- opencl-clhpp \
- opencl-headers \
-"
-MACHINE_SOCARCH_FILTER:append:mx8-nxp-bsp = " \
- opencl-icd-loader \
- opencl-clhpp \
- opencl-headers \
-"
MACHINE_SOCARCH_FILTER:append:mx8qm-nxp-bsp = " \
virtual/libopenvx \
"
@@ -343,26 +377,35 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS:append = " \
imx-test->virtual/imxvpu \
"
+# Firmware used for boot.
+IMX_EXTRA_FIRMWARE ?= ""
+IMX_EXTRA_FIRMWARE:mx8-generic-bsp = "firmware-imx-8 imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8m-generic-bsp = "firmware-imx-8m"
+IMX_EXTRA_FIRMWARE:mx8x-generic-bsp = "imx-sc-firmware imx-seco"
+IMX_EXTRA_FIRMWARE:mx8ulp-generic-bsp = "firmware-upower firmware-sentinel"
+IMX_EXTRA_FIRMWARE:mx93-generic-bsp = "firmware-imx-8 firmware-sentinel"
+
# Firmware
MACHINE_FIRMWARE ?= ""
-MACHINE_FIRMWARE:append:mx27-generic-bsp = " firmware-imx-vpu-imx27"
-MACHINE_FIRMWARE:append:mx7d-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
-MACHINE_FIRMWARE:append:mx6-generic-bsp = " linux-firmware-imx-sdma-imx6q"
-MACHINE_FIRMWARE:append:mx6q-generic-bsp = " firmware-imx-vpu-imx6q"
-MACHINE_FIRMWARE:append:mx6dl-generic-bsp = " firmware-imx-vpu-imx6d firmware-imx-epdc"
-MACHINE_FIRMWARE:append:mx6sl-generic-bsp = " firmware-imx-epdc"
-MACHINE_FIRMWARE:append:mx6sll-generic-bsp = " firmware-imx-epdc"
-MACHINE_FIRMWARE:append:mx6ull-generic-bsp = " firmware-imx-epdc"
-MACHINE_FIRMWARE:append:mx53-generic-bsp = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
-MACHINE_FIRMWARE:append:mx51-generic-bsp = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
-MACHINE_FIRMWARE:append:mx8mm-generic-bsp = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE:append:mx8mn-generic-bsp = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE:append:mx8mp-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
-MACHINE_FIRMWARE:append:mx8mq-generic-bsp = " linux-firmware-imx-sdma-imx7d"
-MACHINE_FIRMWARE:append:mx8qm-generic-bsp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE:append:mx8qxp-generic-bsp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE:append:mx8dx-generic-bsp = " firmware-imx-vpu-imx8"
-MACHINE_FIRMWARE:append:imx-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
+MACHINE_FIRMWARE:append:mx27-generic-bsp = " firmware-imx-vpu-imx27"
+MACHINE_FIRMWARE:append:mx51-generic-bsp = " firmware-imx-vpu-imx51 firmware-imx-sdma-imx51"
+MACHINE_FIRMWARE:append:mx53-generic-bsp = " firmware-imx-vpu-imx53 firmware-imx-sdma-imx53"
+MACHINE_FIRMWARE:append:mx6-generic-bsp = " linux-firmware-imx-sdma-imx6q"
+MACHINE_FIRMWARE:append:mx6q-generic-bsp = " firmware-imx-vpu-imx6q"
+MACHINE_FIRMWARE:append:mx6dl-generic-bsp = " firmware-imx-vpu-imx6d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sl-generic-bsp = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6sll-generic-bsp = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx6ull-generic-bsp = " firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx7d-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-epdc"
+MACHINE_FIRMWARE:append:mx8qm-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8mm-generic-bsp = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8mn-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn"
+MACHINE_FIRMWARE:append:mx8mnul-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn"
+MACHINE_FIRMWARE:append:mx8mp-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-easrc-imx8mn firmware-imx-xcvr-imx8mp firmware-sof-imx"
+MACHINE_FIRMWARE:append:mx8mq-generic-bsp = " linux-firmware-imx-sdma-imx7d"
+MACHINE_FIRMWARE:append:mx8qxp-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:mx8dx-generic-bsp = " linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx8"
+MACHINE_FIRMWARE:append:imx-mainline-bsp = " linux-firmware-imx-sdma-imx6q linux-firmware-imx-sdma-imx7d firmware-imx-vpu-imx6q firmware-imx-vpu-imx6d"
MACHINE_EXTRA_RRECOMMENDS += "${MACHINE_FIRMWARE}"
@@ -378,10 +421,26 @@ MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4339',
MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43430', 'linux-firmware-bcm43430', '', d)}"
MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455', 'linux-firmware-bcm43455', '', d)}"
MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
-MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'linux-firmware-bcm4359-pcie', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4359', 'firmware-nxp-wifi-bcm4359-pcie', '', d)}"
+
+# Extra NXP Wi-Fi and Bluetooth driver firmware and driver
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8801-sdio', 'firmware-nxp-wifi-nxp8801-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8801-sdio', 'kernel-module-nxp89xx', '', d)}"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'firmware-nxp-wifi-nxp8987-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'kernel-module-nxp89xx', '', d)}"
-#Extra NXP89xx Wi-Fi and Bluetooth driver
-MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987', 'kernel-module-nxp89xx', '', d)}"
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-pcie', 'firmware-nxp-wifi-nxp8997-pcie', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-pcie', 'kernel-module-nxp89xx', '', d)}"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-sdio', 'firmware-nxp-wifi-nxp8997-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-sdio', 'kernel-module-nxp89xx', '', d)}"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'firmware-nxp-wifi-nxp9098-pcie', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'kernel-module-nxp89xx', '', d)}"
+
+MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-sdio', 'firmware-nxp-wifi-nxp9098-sdio', '', d)}"
+MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-sdio', 'kernel-module-nxp89xx', '', d)}"
# Extra QCA Wi-Fi & BTE driver and firmware
MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'qca6174', 'packagegroup-fsl-qca6174', '', d)}"
@@ -411,15 +470,13 @@ MACHINE_GSTREAMER_1_0_PLUGIN:mx8mq-nxp-bsp ?= "imx-gst1.0-plugin"
MACHINE_GSTREAMER_1_0_PLUGIN:mx8qm-nxp-bsp ?= "imx-gst1.0-plugin"
MACHINE_GSTREAMER_1_0_PLUGIN:mx8qxp-nxp-bsp ?= "imx-gst1.0-plugin"
MACHINE_GSTREAMER_1_0_PLUGIN:mx8dx-nxp-bsp ?= "imx-gst1.0-plugin"
+MACHINE_GSTREAMER_1_0_PLUGIN:mx8ulp-nxp-bsp ?= "imx-gst1.0-plugin"
-PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ?= "1.20.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ?= "1.20.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ?= "1.20.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ?= "1.20.2.imx"
-PREFERRED_VERSION_gstreamer1.0-plugins-ugly:mx8-nxp-bsp ?= "1.20.2"
-PREFERRED_VERSION_gstreamer1.0-libav:mx8-nxp-bsp ?= "1.20.2"
-PREFERRED_VERSION_gstreamer1.0-rtsp-server:mx8-nxp-bsp ?= "1.20.2"
-PREFERRED_VERSION_ffmpeg:mx8-nxp-bsp ?= "4.4.1"
+PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ??= "1.20.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ??= "1.20.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ??= "1.20.3.imx"
+PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ??= "1.20.3.imx"
+PREFERRED_VERSION_ffmpeg:mx8-nxp-bsp ??= "4.4.1"
# Determines if the SoC has support for Vivante kernel driver
SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
@@ -440,32 +497,44 @@ PREFERRED_PROVIDER_virtual/egl:imxgpu ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libgl:imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libgles1:imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libgles2:imxgpu3d ?= "imx-gpu-viv"
+PREFERRED_PROVIDER_virtual/libgles3:imxgpu3d ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d"
PREFERRED_PROVIDER_virtual/libg2d:imxdpu ?= "imx-dpu-g2d"
+PREFERRED_PROVIDER_virtual/libg2d:mx93-nxp-bsp ?= "imx-pxp-g2d"
PREFERRED_PROVIDER_opencl-clhpp:imxgpu ?= "imx-gpu-viv"
PREFERRED_PROVIDER_opencl-headers:imxgpu ?= "imx-gpu-viv"
PREFERRED_PROVIDER_opencl-icd-loader:imxgpu ?= "imx-gpu-viv"
PREFERRED_PROVIDER_virtual/opencl-icd:imxgpu ?= "imx-gpu-viv"
-PREFERRED_VERSION_weston:imx-nxp-bsp ?= "9.0.0.imx"
-PREFERRED_VERSION_weston:imx-mainline-bsp = ""
+PREFERRED_VERSION_weston:imx-nxp-bsp ??= "10.0.1.imx"
+PREFERRED_VERSION_weston:imx-mainline-bsp = ""
-PREFERRED_VERSION_wayland-protocols:mx6-nxp-bsp ?= "1.25.imx"
-PREFERRED_VERSION_wayland-protocols:mx7-nxp-bsp ?= "1.25.imx"
-PREFERRED_VERSION_wayland-protocols:mx8-nxp-bsp ?= "1.25.imx"
+PREFERRED_VERSION_wayland-protocols:mx6-nxp-bsp ??= "1.25.imx"
+PREFERRED_VERSION_wayland-protocols:mx7-nxp-bsp ??= "1.25.imx"
+PREFERRED_VERSION_wayland-protocols:mx8-nxp-bsp ??= "1.25.imx"
+PREFERRED_VERSION_wayland-protocols:mx9-nxp-bsp ??= "1.25.imx"
# Use i.MX libdrm Version
-PREFERRED_VERSION_libdrm:mx6-nxp-bsp ?= "2.4.109.imx"
-PREFERRED_VERSION_libdrm:mx7-nxp-bsp ?= "2.4.109.imx"
-PREFERRED_VERSION_libdrm:mx8-nxp-bsp ?= "2.4.109.imx"
+PREFERRED_VERSION_libdrm:mx6-nxp-bsp ??= "2.4.109.imx"
+PREFERRED_VERSION_libdrm:mx7-nxp-bsp ??= "2.4.109.imx"
+PREFERRED_VERSION_libdrm:mx8-nxp-bsp ??= "2.4.109.imx"
+PREFERRED_VERSION_libdrm:mx9-nxp-bsp ??= "2.4.109.imx"
+
+PREFERRED_VERSION_vulkan-headers:imxvulkan ??= "1.2.182.0"
+PREFERRED_VERSION_vulkan-loader:imxvulkan ??= "1.2.182.0"
+PREFERRED_VERSION_vulkan-tools:imxvulkan ??= "1.2.182.0"
# Use i.MX optee Version
-PREFERRED_VERSION_optee-os:mx8-nxp-bsp ?= "3.15.0.imx"
-PREFERRED_VERSION_optee-client:mx8-nxp-bsp ?= "3.15.0.imx"
-PREFERRED_VERSION_optee-test:mx8-nxp-bsp ?= "3.15.0.imx"
+PREFERRED_VERSION_optee-os:mx8-nxp-bsp ??= "3.19.0.imx"
+PREFERRED_VERSION_optee-os:mx9-nxp-bsp ??= "3.19.0.imx"
+PREFERRED_VERSION_optee-client:mx8-nxp-bsp ??= "3.19.0.imx"
+PREFERRED_VERSION_optee-client:mx9-nxp-bsp ??= "3.19.0.imx"
+PREFERRED_VERSION_optee-test:mx8-nxp-bsp ??= "3.19.0.imx"
+PREFERRED_VERSION_optee-test:mx9-nxp-bsp ??= "3.19.0.imx"
-#Use i.MX opencv Version for mx8
-PREFERRED_VERSION_opencv:mx8-nxp-bsp ?= "4.5.2.imx"
+# Use i.MX opencv Version
+PREFERRED_VERSION_opencv:mx8-nxp-bsp ??= "4.6.0.imx"
+PREFERRED_VERSION_opencv:mx9-nxp-bsp ??= "4.6.0.imx"
# Handle default kernel
IMX_DEFAULT_KERNEL:imx-mainline-bsp = "linux-fslc"
@@ -503,30 +572,25 @@ WKS_FILE_DEPENDS ?= " \
${@bb.utils.contains('MACHINE_FEATURES', 'optee', '${OPTEE_WKS_FILE_DEPENDS}', '', d)} \
"
-WKS_FILE_DEPENDS:append:mx8-nxp-bsp = " imx-boot"
-WKS_FILE_DEPENDS:append:mx8m-nxp-bsp = " imx-boot"
-
# We need to restrict the append so we don't add this for other i.MX SoC's.
# Derivatives that are not yet adopted the usage of boot container provided
# by U-Boot build are still targeted to use 'imx-boot' package provided by
-# NXP. Moving those derivatives to mainline BSP would require to define an
+# NXP.
+#
+# Moving those derivatives to mainline BSP would require to define an
# 'imx-boot-container' override, and test if the U-Boot built 'flash.bin'
# binary is used a replacement.
-# Note, that the results binary name of the boot container is set to 'imx-boot'
+#
+# NOTE: the results binary name of the boot container is set to 'imx-boot'
# for both NXP and Mainline BSP.
-# For Mainline BSP: the 'flash.bin' boot container is renamed during the
-# deployment task extesion execution defined in imx-boot-container class.
-# For NXP BSP: rename is done in 'imx-boot' recipe at the execution of compile
-# task.
-WKS_FILE_DEPENDS:append:imx-mainline-bsp:aarch64 = " \
+WKS_FILE_DEPENDS:append:imx-generic-bsp:aarch64 = " \
${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '0', 'imx-boot', '')} \
"
SOC_DEFAULT_WKS_FILE ?= "imx-uboot-bootpart.wks.in"
-SOC_DEFAULT_WKS_FILE:mx8m-nxp-bsp ?= "imx-imx-boot-bootpart.wks.in"
-
-SOC_DEFAULT_WKS_FILE:mx8-nxp-bsp ?= "imx-imx-boot-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx8-generic-bsp ?= "imx-imx-boot-bootpart.wks.in"
SOC_DEFAULT_WKS_FILE:mxs-generic-bsp ?= "imx-uboot-mxs-bootpart.wks.in"
+SOC_DEFAULT_WKS_FILE:mx9-generic-bsp ?= "imx-imx-boot-bootpart.wks.in"
WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
@@ -536,7 +600,7 @@ SERIAL_CONSOLES:mxs-generic-bsp = "115200;ttyAMA0"
KERNEL_IMAGETYPE = "zImage"
KERNEL_IMAGETYPE:aarch64 = "Image"
-MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen"
+MACHINE_FEATURES = "usbgadget usbhost vfat alsa touchscreen screen"
HOSTTOOLS_NONFATAL:append:mx8-nxp-bsp = " sha384sum"
diff --git a/conf/machine/include/imx8dxl-evk.inc b/conf/machine/include/imx8dxl-evk.inc
index f940fef7..0f9aa1f0 100644
--- a/conf/machine/include/imx8dxl-evk.inc
+++ b/conf/machine/include/imx8dxl-evk.inc
@@ -5,7 +5,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci bcm43455 bcm4356"
+MACHINE_FEATURES += "pci bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie"
MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"
# Don't include kernels in standard images
diff --git a/conf/machine/include/imx8mm-evk.inc b/conf/machine/include/imx8mm-evk.inc
index eba4ac9f..507da6aa 100644
--- a/conf/machine/include/imx8mm-evk.inc
+++ b/conf/machine/include/imx8mm-evk.inc
@@ -1,4 +1,8 @@
-MACHINEOVERRIDES =. "imx-boot-container:mx8mm:"
+MACHINEOVERRIDES =. "mx8mm:"
+
+# FIXME: u-boot-imx should be converted to `binman` and then we can
+# avoid this specific overrides and handle it in a generic way.
+MACHINEOVERRIDES =. "${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', 'u-boot-imx', '', 'imx-boot-container:', d)}"
require conf/machine/include/imx-base.inc
require conf/machine/include/arm/armv8a/tune-cortexa53.inc
@@ -8,7 +12,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc
# inline NEON and FPU code generation
DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
-MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356"
+MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356 nxp8987-sdio"
# NXP BSP can consume proprietary jailhouse and BCM4359 firmware
# Since the firmware is not available publicly, and rather distributed
@@ -22,14 +26,14 @@ KERNEL_DEVICETREE = " \
freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-pcie-ep.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199-cmd-ram.dtb \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
-IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
-IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"
-
UBOOT_SUFFIX = "bin"
UBOOT_CONFIG ??= "sd"
@@ -40,9 +44,6 @@ SPL_BINARY = "spl/u-boot-spl.bin"
ATF_PLATFORM = "imx8mm"
-# Extra firmware package name, that is required to build boot container for fslc bsp
-IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
-
IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', '${IMXBOOT_TARGETS_BASENAME}', d)}"
IMX_BOOT_SOC_TARGET = "iMX8MM"
@@ -69,7 +70,6 @@ UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2"
IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = "all"
IMX_BOOT_SEEK = "33"
diff --git a/conf/machine/include/imx8mn-evk.inc b/conf/machine/include/imx8mn-evk.inc
index 5a5b447f..f44b7a9d 100644
--- a/conf/machine/include/imx8mn-evk.inc
+++ b/conf/machine/include/imx8mn-evk.inc
@@ -1,4 +1,8 @@
-MACHINEOVERRIDES =. "imx-boot-container:mx8mn:"
+MACHINEOVERRIDES =. "mx8mn:"
+
+# FIXME: u-boot-imx should be converted to `binman` and then we can
+# avoid this specific overrides and handle it in a generic way.
+MACHINEOVERRIDES =. "${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', 'u-boot-imx', '', 'imx-boot-container:', d)}"
require conf/machine/include/imx-base.inc
require conf/machine/include/arm/armv8a/tune-cortexa53.inc
@@ -8,7 +12,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc
# inline NEON and FPU code generation
DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
-MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
+MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356 nxp8987-sdio"
# NXP BSP can consume proprietary jailhouse and Broadcom drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
@@ -16,14 +20,16 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359"
KERNEL_DEVICETREE = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
"
KERNEL_DEVICETREE:append:use-nxp-bsp = " \
- freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-inmate.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-root.dtb \
- freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-ak5558.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-lk.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67191-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rm67199-cmd-ram.dtb \
+ freescale/${KERNEL_DEVICETREE_BASENAME}-rpmsg.dtb \
"
UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
@@ -42,9 +48,6 @@ SPL_BINARY = "spl/u-boot-spl.bin"
ATF_PLATFORM = "imx8mn"
-# Extra firmware package name, that is required to build boot container for fslc bsp
-IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
-
IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', '${IMXBOOT_TARGETS_BASENAME}', d)}"
IMX_BOOT_SOC_TARGET = "iMX8MN"
@@ -72,7 +75,6 @@ IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.con
BOOT_SPACE = "65536"
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = "all"
# Image boot offset as defined in section 6.1.6.1 "Primary image offset and IVT offset" of
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
index 3e98d3c1..8866331c 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -1,4 +1,8 @@
-MACHINEOVERRIDES =. "imx-boot-container:mx8mp:"
+MACHINEOVERRIDES =. "mx8mp:"
+
+# FIXME: u-boot-imx should be converted to `binman` and then we can
+# avoid this specific overrides and handle it in a generic way.
+MACHINEOVERRIDES =. "${@bb.utils.contains('IMX_DEFAULT_BOOTLOADER', 'u-boot-imx', '', 'imx-boot-container:', d)}"
require conf/machine/include/imx-base.inc
require conf/machine/include/arm/armv8a/tune-cortexa53.inc
@@ -8,7 +12,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc
# inline NEON and FPU code generation
DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
-MACHINE_FEATURES += "pci wifi bluetooth"
+MACHINE_FEATURES += "pci wifi bluetooth nxp8997-pcie nxp8997-sdio nxp9098-pcie nxp9098-sdio"
# NXP BSP can consume proprietary jailhouse and Marvell drivers
# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
@@ -37,9 +41,6 @@ SPL_BINARY = "spl/u-boot-spl.bin"
ATF_PLATFORM = "imx8mp"
-# Extra firmware package name, that is required to build boot container for fslc bsp
-IMX_EXTRA_FIRMWARE = "firmware-imx-8m"
-
IMXBOOT_TARGETS = \
"${@bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_BASENAME}_flexspi', \
'${IMXBOOT_TARGETS_BASENAME}', d)}"
@@ -68,7 +69,6 @@ UBOOT_EXTLINUX_ROOT:default:use-mainline-bsp = "root=/dev/mmcblk1p2"
IMAGE_BOOT_FILES:append:use-mainline-bsp = " extlinux.conf;extlinux/extlinux.conf"
LOADADDR = ""
-UBOOT_SUFFIX = "bin"
UBOOT_MAKE_TARGET = "all"
IMX_BOOT_SEEK = "32"
diff --git a/conf/machine/include/imx8ulp-evk.inc b/conf/machine/include/imx8ulp-evk.inc
new file mode 100644
index 00000000..23269530
--- /dev/null
+++ b/conf/machine/include/imx8ulp-evk.inc
@@ -0,0 +1,44 @@
+MACHINEOVERRIDES =. "mx8:mx8ulp:"
+
+require conf/machine/include/imx-base.inc
+require conf/machine/include/arm/armv8a/tune-cortexa35.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth optee jailhouse"
+
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"
+
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = ""
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
+UBOOT_CONFIG[nd] = "${UBOOT_CONFIG_BASENAME}_nd_defconfig"
+
+# Set ATF platform name
+ATF_PLATFORM = "imx8ulp"
+
+IMXBOOT_TARGETS_SD = "flash_singleboot flash_dualboot"
+IMXBOOT_TARGETS_FSPI = "flash_dualboot_flexspi"
+IMXBOOT_TARGETS_ND = ""
+
+IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \
+ bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_FSPI}', \
+ '${IMXBOOT_TARGETS_ND}', d), d)}"
+
+IMX_BOOT_SOC_TARGET = "iMX8ULP"
+IMX_BOOT_SEEK = "32"
+
+# We have to disable SERIAL_CONSOLE due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyLP1"
+
+# Add additional firmware
+MACHINE_FIRMWARE:append = " firmware-imx-epdc"
diff --git a/conf/machine/include/imx8x-mek.inc b/conf/machine/include/imx8x-mek.inc
index 55bce728..9eaa77c5 100644
--- a/conf/machine/include/imx8x-mek.inc
+++ b/conf/machine/include/imx8x-mek.inc
@@ -3,7 +3,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa35.inc
IMX_DEFAULT_BSP = "nxp"
-MACHINE_FEATURES += "pci optee bcm43455 bcm4356"
+MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie"
MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359"
# Don't include kernels in standard images
diff --git a/conf/machine/include/imx93-evk.inc b/conf/machine/include/imx93-evk.inc
new file mode 100644
index 00000000..fca79e78
--- /dev/null
+++ b/conf/machine/include/imx93-evk.inc
@@ -0,0 +1,37 @@
+require conf/machine/include/imx-base.inc
+require conf/machine/include/arm/armv8-2a/tune-cortexa55.inc
+
+MACHINE_FEATURES += "pci wifi bluetooth"
+MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse iw612"
+
+KERNEL_DEVICETREE = " \
+ freescale/${KERNEL_DEVICETREE_BASENAME}.dtb \
+"
+UBOOT_DTB_NAME = "${KERNEL_DEVICETREE_BASENAME}.dtb"
+
+IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-imx"
+IMX_DEFAULT_BOOTLOADER:use-mainline-bsp = "u-boot-fslc"
+
+LOADADDR = ""
+UBOOT_SUFFIX = "bin"
+UBOOT_MAKE_TARGET = ""
+
+SPL_BINARY = "spl/u-boot-spl.bin"
+
+UBOOT_CONFIG ??= "sd"
+UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig,sdcard"
+UBOOT_CONFIG[ecc] = "${UBOOT_CONFIG_BASENAME}_inline_ecc_defconfig"
+UBOOT_CONFIG[ld] = "${UBOOT_CONFIG_BASENAME}_ld_defconfig"
+
+# Set ATF platform name
+ATF_PLATFORM = "imx93"
+
+IMXBOOT_TARGETS = "flash_singleboot"
+
+IMX_BOOT_SOC_TARGET = "iMX9"
+IMX_BOOT_SEEK = "32"
+
+# We have to disable SERIAL_CONSOLE due to auto-serial-console
+SERIAL_CONSOLES = "115200;ttyLP0"
+
+IMX_DEFAULT_BSP = "nxp"
diff --git a/conf/machine/include/qoriq-base.inc b/conf/machine/include/qoriq-base.inc
index 35b7d82e..4340c942 100644
--- a/conf/machine/include/qoriq-base.inc
+++ b/conf/machine/include/qoriq-base.inc
@@ -39,7 +39,7 @@ WKS_FILE ?= "${SOC_DEFAULT_WKS_FILE}"
MACHINE_FEATURES ?= "pci ext2 ext3 serial"
MACHINE_EXTRA_RRECOMMENDS += "udev-extraconf udev-rules-qoriq kernel-modules"
-EXTRA_IMAGEDEPENDS += "u-boot cst-native"
+EXTRA_IMAGEDEPENDS += "u-boot qoriq-cst-native"
MACHINEOVERRIDES =. "qoriq:"
diff --git a/conf/machine/ls1046ardb.conf b/conf/machine/ls1046ardb.conf
index 8e815295..2b82c98f 100644
--- a/conf/machine/ls1046ardb.conf
+++ b/conf/machine/ls1046ardb.conf
@@ -29,6 +29,7 @@ KERNEL_DEVICETREE ?= "\
KERNEL_DEVICETREE:prepend:use-nxp-bsp = "\
freescale/fsl-ls1046a-rdb-sdk.dtb \
freescale/fsl-ls1046a-rdb-usdpaa.dtb \
+ freescale/fsl-ls1046a-rdb-usdpaa-shared.dtb \
freescale/fsl-ls1046a-qds-sdk.dtb \
"
KERNEL_DEFCONFIG ?= "defconfig"
diff --git a/conf/machine/ls2080ardb.conf b/conf/machine/ls2080ardb.conf
index 5bd4dae8..6dcc7dae 100644
--- a/conf/machine/ls2080ardb.conf
+++ b/conf/machine/ls2080ardb.conf
@@ -8,7 +8,7 @@
MACHINEOVERRIDES =. "fsl-lsch3:ls2080a:"
require conf/machine/include/qoriq-arm64.inc
-require conf/machine/include/arm/arch-arm64.inc
+require conf/machine/include/arm/arch-armv8a.inc
UBOOT_CONFIG ??= "nor"
UBOOT_CONFIG[nor] = "ls2080ardb_defconfig"
diff --git a/conf/machine/ls2088ardb.conf b/conf/machine/ls2088ardb.conf
index 7f83e89d..8c8e586a 100644
--- a/conf/machine/ls2088ardb.conf
+++ b/conf/machine/ls2088ardb.conf
@@ -5,7 +5,7 @@
#@MAINTAINER: Zongchun Yu <Zongchun.Yu@nxp.com>
require conf/machine/include/qoriq-arm64.inc
-require conf/machine/include/arm/arch-arm64.inc
+require conf/machine/include/arm/arch-armv8a.inc
MACHINEOVERRIDES =. "fsl-lsch3:ls2088a:"
diff --git a/conf/machine/mpc8548cds.conf b/conf/machine/mpc8548cds.conf
index c7c49ddc..bd4b6500 100644
--- a/conf/machine/mpc8548cds.conf
+++ b/conf/machine/mpc8548cds.conf
@@ -1,5 +1,6 @@
#@TYPE: Machine
#@Name: NXP MPC8548CDS
+#@SOC: MPC8548CDS
#@DESCRIPTION: Machine configuration for the NXP MPC8548CDS
#@MAINTAINER: Chunrong Guo <chunrong.guo@nxp.com>
diff --git a/dynamic-layers/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_%.bbappend b/dynamic-layers/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_%.bbappend
index 400e850e..7b7784ab 100644
--- a/dynamic-layers/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_%.bbappend
+++ b/dynamic-layers/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_%.bbappend
@@ -1,16 +1,20 @@
-# Common Build targets
-TFA_BUILD_TARGET = "all"
-TFA_INSTALL_TARGET = "bl31"
-
# List of supported machines from this layer
COMPATIBLE_MACHINE:imx8mm-lpddr4-evk = "imx8mm-lpddr4-evk"
+TFA_BUILD_TARGET:imx8mm-lpddr4-evk = "all"
+TFA_INSTALL_TARGET:imx8mm-lpddr4-evk = "bl31"
TFA_PLATFORM:imx8mm-lpddr4-evk = "imx8mm"
COMPATIBLE_MACHINE:imx8mn-ddr4-evk = "imx8mn-ddr4-evk"
+TFA_BUILD_TARGET:imx8mn-ddr4-evk = "all"
+TFA_INSTALL_TARGET:imx8mn-ddr4-evk = "bl31"
TFA_PLATFORM:imx8mn-ddr4-evk = "imx8mn"
COMPATIBLE_MACHINE:imx8mp-lpddr4-evk = "imx8mp-lpddr4-evk"
+TFA_BUILD_TARGET:imx8mp-lpddr4-evk = "all"
+TFA_INSTALL_TARGET:imx8mp-lpddr4-evk = "bl31"
TFA_PLATFORM:imx8mp-lpddr4-evk = "imx8mp"
COMPATIBLE_MACHINE:imx8mq-evk = "imx8mq-evk"
+TFA_BUILD_TARGET:imx8mq-evk = "all"
+TFA_INSTALL_TARGET:imx8mq-evk = "bl31"
TFA_PLATFORM:imx8mq-evk = "imx8mq"
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/vlc/vlc_%.bbappend b/dynamic-layers/multimedia-layer/recipes-multimedia/vlc/vlc_%.bbappend
new file mode 100644
index 00000000..b85752b7
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/vlc/vlc_%.bbappend
@@ -0,0 +1,2 @@
+# vivante drivers does not provide glx
+PACKAGECONFIG:remove:imxgpu = "x11"
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/cst/files/0001-fix-err-msg-linking.patch b/dynamic-layers/openembedded-layer/recipes-devtools/cst/files/0001-fix-err-msg-linking.patch
new file mode 100644
index 00000000..a3f5c828
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/cst/files/0001-fix-err-msg-linking.patch
@@ -0,0 +1,56 @@
+NXP uses weaken to solve conflict in linking.
+On Ubuntu 22.04(LTS) this fails to link cst with libcrypto.
+
+The patch fixes the conflict in the code itself.
+It restricts the scope of err_msg to the module.
+
+Upstream-Status: Inappropriate [i.MX specific]
+Signed-off-by: Walter Schweizer <walter.schweizer@siemens.com>
+----
+diff --git a/code/cst/code/build/make/rules.mk b/code/cst/code/build/make/rules.mk
+index 1c0842b..9c46cc4 100644
+--- a/code/cst/code/build/make/rules.mk
++++ b/code/cst/code/build/make/rules.mk
+@@ -25,11 +25,11 @@ LFLAGS := -t
+ %.a:
+ @echo "Create archive $@"
+ $(AR) $(ARFLAGS) $@ $^
+-ifneq ($(OSTYPE),mingw32)
+-ifneq ($(OSTYPE),osx)
+- $(OBJCOPY) --weaken $@
+-endif
+-endif
++#ifneq ($(OSTYPE),mingw32)
++#ifneq ($(OSTYPE),osx)
++# $(OBJCOPY) --weaken $@
++#endif
++#endif
+
+ %.exe:
+ @echo "Link $@"
+diff --git a/code/cst/code/front_end/src/acst.c b/code/cst/code/front_end/src/acst.c
+index fb1e8aa..1e993ee 100644
+--- a/code/cst/code/front_end/src/acst.c
++++ b/code/cst/code/front_end/src/acst.c
+@@ -65,7 +65,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ /*===========================================================================
+ LOCAL VARIABLES
+ =============================================================================*/
+-char err_msg[MAX_ERR_MSG_BYTES];
++static char err_msg[MAX_ERR_MSG_BYTES];
+
+ /*===========================================================================
+ LOCAL FUNCTION PROTOTYPES
+diff --git a/code/cst/code/front_end/src/misc_helper.c b/code/cst/code/front_end/src/misc_helper.c
+index 678dc17..9014b2a 100644
+--- a/code/cst/code/front_end/src/misc_helper.c
++++ b/code/cst/code/front_end/src/misc_helper.c
+@@ -60,7 +60,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ /*===========================================================================
+ LOCAL VARIABLES
+ =============================================================================*/
+-char err_msg[MAX_ERR_MSG_BYTES];
++static char err_msg[MAX_ERR_MSG_BYTES];
+
+ /*===========================================================================
+ LOCAL FUNCTION PROTOTYPES
diff --git a/dynamic-layers/openembedded-layer/recipes-devtools/cst/imx-cst_3.3.1.bb b/dynamic-layers/openembedded-layer/recipes-devtools/cst/imx-cst_3.3.1.bb
index 317ca379..5f808a97 100644
--- a/dynamic-layers/openembedded-layer/recipes-devtools/cst/imx-cst_3.3.1.bb
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/cst/imx-cst_3.3.1.bb
@@ -9,7 +9,10 @@ DEPENDS = "byacc-native flex-native openssl"
# tag=debian/3.3.1+dfsg-2
SRCREV = "e2c687a856e6670e753147aacef42d0a3c07891a"
-SRC_URI = "git://gitlab.apertis.org/pkg/imx-code-signing-tool.git;protocol=https;branch=apertis/v2022pre"
+SRC_URI = " \
+ file://0001-fix-err-msg-linking.patch \
+ git://gitlab.apertis.org/pkg/imx-code-signing-tool.git;protocol=https;branch=apertis/v2022pre \
+"
S = "${WORKDIR}/git"
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 70e5a1a3..0b5031d5 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;protocol=https;nobranch=1"
SRCREV = "c2ed7c269e86ac6a0aac361f5876c96e700443f4"
S = "${WORKDIR}/git"
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
index 03e09e57..1f63cd7a 100644
--- a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4-imx-support.inc
@@ -8,10 +8,12 @@ python __anonymous () {
d.appendVarFlag('do_configure', 'depends', ' virtual/kernel:do_shared_workdir')
}
-SRC_URI:append:imxgpu2d += " \
+SRC_URI:append:imxgpu2d = " \
file://0001-Add-support-for-i.MX-codecs-to-phonon.patch \
file://0002-i.MX-video-renderer-Allow-v4l-device-from-environmen.patch \
file://0003-i.MX6-force-egl-visual-ID-33.patch \
+ file://0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch \
+ file://0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch \
"
DEPENDS:append:imxgpu2d = " virtual/kernel virtual/libgles2"
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch
new file mode 100644
index 00000000..7eee7cf2
--- /dev/null
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0001-config.tests-add-DEFINES-to-compile-egl-test-with-im.patch
@@ -0,0 +1,25 @@
+From 234580de9d63fd79a8b444358cdaeac111a17061 Mon Sep 17 00:00:00 2001
+From: Mauro Salvini <m.salvini@koansoftware.com>
+Date: Thu, 29 Sep 2022 16:06:04 +0200
+Subject: [PATCH 1/2] config.tests: add DEFINES to compile egl test with
+ imxgpu2d (Vivante)
+
+Signed-off-by: Mauro Salvini <m.salvini@koansoftware.com>
+---
+ config.tests/unix/egl/egl.pro | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/config.tests/unix/egl/egl.pro b/config.tests/unix/egl/egl.pro
+index f04d0535..bc35b908 100644
+--- a/config.tests/unix/egl/egl.pro
++++ b/config.tests/unix/egl/egl.pro
+@@ -6,5 +6,6 @@ for(p, QMAKE_LIBDIR_EGL) {
+
+ !isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL
+ !isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL
++DEFINES += LINUX=1 EGL_API_FB=1
+
+ CONFIG -= qt
+--
+2.17.1
+
diff --git a/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch
new file mode 100644
index 00000000..993df85e
--- /dev/null
+++ b/dynamic-layers/qt4-layer/recipes-qt4/qt4/qt4/0002-config.tests-add-DEFINES-to-compile-egl4gles1-test-w.patch
@@ -0,0 +1,25 @@
+From adb19c68d3c92eb1a88e49e447ce827f14943486 Mon Sep 17 00:00:00 2001
+From: Mauro Salvini <m.salvini@koansoftware.com>
+Date: Thu, 29 Sep 2022 16:12:11 +0200
+Subject: [PATCH 2/2] config.tests: add DEFINES to compile egl4gles1 test with
+ imxgpu2d (Vivante)
+
+Signed-off-by: Mauro Salvini <m.salvini@koansoftware.com>
+---
+ config.tests/unix/egl4gles1/egl4gles1.pro | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/config.tests/unix/egl4gles1/egl4gles1.pro b/config.tests/unix/egl4gles1/egl4gles1.pro
+index 667ea8e3..14cb4a76 100644
+--- a/config.tests/unix/egl4gles1/egl4gles1.pro
++++ b/config.tests/unix/egl4gles1/egl4gles1.pro
+@@ -6,5 +6,6 @@ for(p, QMAKE_LIBDIR_EGL) {
+
+ !isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL
+ !isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL
++DEFINES += LINUX=1 EGL_API_FB=1
+
+ CONFIG -= qt
+--
+2.17.1
+
diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend
index b4b1eddf..b6194d76 100644
--- a/recipes-bsp/alsa-state/alsa-state.bbappend
+++ b/recipes-bsp/alsa-state/alsa-state.bbappend
@@ -1,4 +1,4 @@
-FILESEXTRAPATHS:prepend:imx-generic-bsp := "${THISDIR}/${PN}/imx-generic-bsp:"
+# Prepend path to override files from upstream recipe
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-# Append path for freescale layer
PACKAGE_ARCH:imx-generic-bsp = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/alsa-state/alsa-state/imx-generic-bsp/asound.conf b/recipes-bsp/alsa-state/alsa-state/imx-mainline-bsp/asound.conf
index c511018e..c511018e 100644
--- a/recipes-bsp/alsa-state/alsa-state/imx-generic-bsp/asound.conf
+++ b/recipes-bsp/alsa-state/alsa-state/imx-mainline-bsp/asound.conf
diff --git a/recipes-bsp/alsa-state/alsa-state/imx-nxp-bsp/asound.conf b/recipes-bsp/alsa-state/alsa-state/imx-nxp-bsp/asound.conf
new file mode 100644
index 00000000..0084f4a0
--- /dev/null
+++ b/recipes-bsp/alsa-state/alsa-state/imx-nxp-bsp/asound.conf
@@ -0,0 +1,271 @@
+defaults.pcm.rate_converter "linear"
+
+pcm.dmix_48000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 48000
+}
+}
+
+pcm.dmix_44100{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 44100
+}
+}
+
+pcm.dmix_32000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 32000
+}
+}
+
+pcm.dmix_24000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 24000
+}
+}
+
+pcm.dmix_22050{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 22050
+}
+}
+
+pcm.dmix_16000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 16000
+}
+}
+
+pcm.dmix_12000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 12000
+}
+}
+
+pcm.dmix_11025{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 11025
+}
+}
+
+pcm.dmix_8000{
+type dmix
+ipc_key 5678293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 8000
+}
+}
+
+pcm.!dsnoop_48000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 48000
+}
+}
+
+pcm.!dsnoop_44100{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 44100
+}
+}
+
+pcm.!dsnoop_32000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 32000
+}
+}
+
+pcm.!dsnoop_24000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 24000
+}
+}
+
+pcm.!dsnoop_22050{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 22050
+}
+}
+
+pcm.!dsnoop_16000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 16000
+}
+}
+
+pcm.!dsnoop_12000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 12000
+}
+}
+
+pcm.!dsnoop_11025{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 11025
+}
+}
+
+pcm.!dsnoop_8000{
+type dsnoop
+ipc_key 5778293
+ipc_key_add_uid yes
+slave{
+pcm "hw:0,0"
+period_time 40000
+format S16_LE
+rate 8000
+}
+}
+
+pcm.asymed{
+type asym
+playback.pcm "dmix_44100"
+capture.pcm "dsnoop_44100"
+}
+
+pcm.dsp0{
+type plug
+slave.pcm "asymed"
+}
+
+pcm.!default{
+type plug
+route_policy "average"
+slave.pcm "asymed"
+}
+
+ctl.!default{
+type hw
+card 0
+}
+
+ctl.mixer0{
+type hw
+card 0
+}
+
+pcm_slave.esai{
+ pcm "hw:0,0"
+ channels 8
+ rate 48000
+ period_time 40000
+}
+
+pcm.esaich1to6{
+ type dshare
+ ipc_key 5778293
+ slave esai
+ bindings.0 0
+ bindings.1 4
+ bindings.2 1
+ bindings.3 5
+ bindings.4 2
+ bindings.5 6
+}
+
+pcm.esaich78{
+ type dshare
+ ipc_key 5778293
+ slave esai
+ bindings.0 3
+ bindings.1 7
+}
diff --git a/recipes-bsp/atf/qoriq-atf-2.4.inc b/recipes-bsp/atf/qoriq-atf-2.4.inc
index 38a992b3..506c9538 100644
--- a/recipes-bsp/atf/qoriq-atf-2.4.inc
+++ b/recipes-bsp/atf/qoriq-atf-2.4.inc
@@ -3,7 +3,7 @@ DESCRIPTION = "ARM Trusted Firmware"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://license.rst;md5=1dd070c98a281d18d9eefd938729b031"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/atf.git;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/atf.git;protocol=https;nobranch=1"
SRCREV = "bb4957067d4b96a6ee197a333425948e409e990d"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/atf/qoriq-atf_2.4.bb b/recipes-bsp/atf/qoriq-atf_2.4.bb
index b6716272..ec953297 100644
--- a/recipes-bsp/atf/qoriq-atf_2.4.bb
+++ b/recipes-bsp/atf/qoriq-atf_2.4.bb
@@ -2,7 +2,7 @@ require recipes-bsp/atf/qoriq-atf-2.4.inc
inherit deploy
-DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native rcw cst-native bc-native"
+DEPENDS += "u-boot-mkimage-native u-boot openssl openssl-native rcw qoriq-cst-native bc-native"
DEPENDS:append:lx2160a = " ddr-phy"
DEPENDS:append:lx2162a = " ddr-phy"
do_compile[depends] += "u-boot:do_deploy rcw:do_deploy uefi:do_deploy"
diff --git a/recipes-bsp/boot-format/boot-format_git.bb b/recipes-bsp/boot-format/boot-format_git.bb
index 25a2015c..0916b45b 100644
--- a/recipes-bsp/boot-format/boot-format_git.bb
+++ b/recipes-bsp/boot-format/boot-format_git.bb
@@ -3,7 +3,7 @@ LICENSE = "GPL-2.0-only"
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-yocto-sdk/boot-format;protocol=https;nobranch=1 \
file://flags.patch"
SRCREV = "4eb81a6797ef4e58bf7d9b2d58afb37a21c1f550"
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8.15.inc b/recipes-bsp/firmware-imx/firmware-imx-8.18.inc
index 73f627fb..24829370 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8.15.inc
+++ b/recipes-bsp/firmware-imx/firmware-imx-8.18.inc
@@ -3,14 +3,14 @@
# Copyright (C) 2018 O.S. Systems Software LTDA.
SECTION = "base"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
SRC_URI = " \
${FSL_MIRROR}/firmware-imx-${PV}.bin;fsl-eula=true \
"
-SRC_URI[md5sum] = "ef91390da6c8a6a48c8121a5dd667de8"
-SRC_URI[sha256sum] = "937e196476b8e95b4b7f2501a14c8326d8a0649f8a3f9228b72373770a08deb3"
+SRC_URI[md5sum] = "436501f8e67c10eed6bba88457e701a2"
+SRC_URI[sha256sum] = "f050f60351a54fd75954fdeb133ddd014a5576040c72616e216b63db0e242dd4"
S = "${WORKDIR}/firmware-imx-${PV}"
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8_8.15.bb b/recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb
index 18ce14d3..72a3fb99 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8_8.15.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8_8.18.bb
@@ -4,20 +4,36 @@ DESCRIPTION = "Freescale i.MX firmware for 8 family"
require firmware-imx-${PV}.inc
-inherit deploy
+inherit deploy nopackages
do_install[noexec] = "1"
-do_deploy() {
+SOC_FAMILY = "INVALID"
+SOC_FAMILY:mx8-generic-bsp = "mx8"
+SOC_FAMILY:mx9-generic-bsp = "mx9"
+
+deploy_mx8() {
# Cadence HDMI
install -m 0644 ${S}/firmware/hdmi/cadence/hdmitxfw.bin ${DEPLOYDIR}
install -m 0644 ${S}/firmware/hdmi/cadence/hdmirxfw.bin ${DEPLOYDIR}
install -m 0644 ${S}/firmware/hdmi/cadence/dpfw.bin ${DEPLOYDIR}
}
+
+deploy_mx9() {
+ # Synopsys DDR
+ for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
+ install -m 0644 ${S}/firmware/ddr/synopsys/${ddr_firmware} ${DEPLOYDIR}
+ done
+}
+
+do_deploy() {
+ deploy_${SOC_FAMILY}
+}
+
addtask deploy after do_install before do_build
PACKAGE_ARCH = "${MACHINE_SOCARCH}"
-COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
+COMPATIBLE_MACHINE = "(mx8-nxp-bsp|mx9-nxp-bsp)"
COMPATIBLE_MACHINE:mx8m-nxp-bsp = "(^$)"
COMPATIBLE_MACHINE:mx8x-nxp-bsp = "(^$)"
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8m_8.15.bb b/recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb
index 152ef0b5..152ef0b5 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8m_8.15.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx-8m_8.18.bb
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.15.bb b/recipes-bsp/firmware-imx/firmware-imx_8.18.bb
index f84ea1fa..f84ea1fa 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.15.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.18.bb
diff --git a/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.0.bb b/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.0.bb
index 5a7e6a1d..0a7f2462 100644
--- a/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.0.bb
+++ b/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.0.bb
@@ -8,10 +8,11 @@ recipe in favor of upstream."
SECTION = "kernel"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://cyw-wifi-bt/EULA.txt;md5=80c0478f4339af024519b3723023fe28"
+LIC_FILES_CHKSUM = "file://EULA.txt;md5=be5ff43682ed6c57dfcbeb97651c2829"
-SRC_URI = "git://github.com/NXP/imx-firmware.git;protocol=https;branch=master"
-SRCREV = "484d38224fa2c26b8859a7bf20b7c4d49100f5bc"
+SRC_URI = "git://github.com/NXP/imx-firmware.git;protocol=https;branch=${SRCBRANCH}"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "982bb10dfabfb9e7b9dc106c59a4fbb2c45bfb44"
S = "${WORKDIR}/git"
@@ -26,16 +27,55 @@ do_compile() {
do_install() {
install -d ${D}${sysconfdir}/firmware
- install -d ${D}${nonarch_base_libdir}/firmware/brcm
# Install various flavors of Broadcom firmware provided by Murata:
# - bcm4359-pcie
+ install -d ${D}${nonarch_base_libdir}/firmware/brcm
install -m 0644 cyw-wifi-bt/*_CYW*/brcmfmac4359-pcie* ${D}${nonarch_base_libdir}/firmware/brcm
install -m 0644 cyw-wifi-bt/*_CYW*/BCM4349B1*.hcd ${D}${sysconfdir}/firmware
+
+ # Install NXP Connectivity common
+ install -d ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/wifi_mod_para.conf ${D}${nonarch_base_libdir}/firmware/nxp
+
+ # Install NXP Connectivity SD8801 firmware
+ install -m 0644 nxp/FwImage_8801_SD/ed_mac_ctrl_V1_8801.conf ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8801_SD/sd8801_uapsta.bin ${D}${nonarch_base_libdir}/firmware/nxp
+
+ # Install NXP Connectivity SDIO8987 firmware
+ install -m 0644 nxp/FwImage_8987/ed_mac_ctrl_V3_8987.conf ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8987/sdiouart8987_combo_v0.bin ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8987/txpwrlimit_cfg_8987.conf ${D}${nonarch_base_libdir}/firmware/nxp
+
+ # Install NXP Connectivity PCIE8997 firmware
+ install -m 0644 nxp/FwImage_8997/ed_mac_ctrl_V3_8997.conf ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8997/pcieuart8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8997/txpwrlimit_cfg_8997.conf ${D}${nonarch_base_libdir}/firmware/nxp
+
+ # Install NXP Connectivity SDIO8997 firmware
+ install -m 0644 nxp/FwImage_8997_SD/ed_mac_ctrl_V3_8997.conf ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8997_SD/sdiouart8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_8997_SD/txpwrlimit_cfg_8997.conf ${D}${nonarch_base_libdir}/firmware/nxp
+
+ # Install NXP Connectivity PCIE9098 firmware
+ install -m 0644 nxp/FwImage_9098_PCIE/ed_mac_ctrl_V3_909x.conf ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_9098_PCIE/pcieuart9098_combo_v1.bin ${D}${nonarch_base_libdir}/firmware/nxp
+ install -m 0644 nxp/FwImage_9098_PCIE/txpwrlimit_cfg_9098.conf ${D}${nonarch_base_libdir}/firmware/nxp
+
+ # Install NXP Connectivity SDIO9098 firmware
+ install -m 0644 nxp/FwImage_9098_SD/sdiouart9098_combo_v1.bin ${D}${nonarch_base_libdir}/firmware/nxp
}
PACKAGES =+ " \
${PN}-bcm4359-pcie \
+ ${PN}-nxp-common \
+ ${PN}-nxp8801-sdio \
+ ${PN}-nxp8987-sdio \
+ ${PN}-nxp8997-common \
+ ${PN}-nxp8997-pcie \
+ ${PN}-nxp8997-sdio \
+ ${PN}-nxp9098-pcie \
+ ${PN}-nxp9098-sdio \
"
FILES:${PN}-bcm4359-pcie = " \
@@ -43,4 +83,44 @@ FILES:${PN}-bcm4359-pcie = " \
${sysconfdir}/firmware/BCM4349B1_*.hcd \
"
-RPROVIDES:${PN}-bcm4359-pcie = "linux-firmware-bcm4359-pcie"
+FILES:${PN}-nxp-common = " \
+ ${nonarch_base_libdir}/firmware/nxp/wifi_mod_para.conf \
+"
+
+FILES:${PN}-nxp8801-sdio = " \
+ ${nonarch_base_libdir}/firmware/nxp/*8801* \
+"
+RDEPENDS:${PN}-nxp8801-sdio += "${PN}-nxp-common"
+
+FILES:${PN}-nxp8987-sdio = " \
+ ${nonarch_base_libdir}/firmware/nxp/*8987* \
+"
+RDEPENDS:${PN}-nxp8987-sdio += "${PN}-nxp-common"
+
+FILES:${PN}-nxp8997-common = " \
+ ${nonarch_base_libdir}/firmware/nxp/ed_mac_ctrl_V3_8997.conf \
+ ${nonarch_base_libdir}/firmware/nxp/txpwrlimit_cfg_8997.conf \
+"
+RDEPENDS:${PN}-nxp8997-common += "${PN}-nxp-common"
+
+FILES:${PN}-nxp8997-pcie = " \
+ ${nonarch_base_libdir}/firmware/nxp/pcieuart8997* \
+"
+RDEPENDS:${PN}-nxp8997-pcie += "${PN}-nxp8997-common"
+
+FILES:${PN}-nxp8997-sdio = " \
+ ${nonarch_base_libdir}/firmware/nxp/sdiouart8997* \
+"
+RDEPENDS:${PN}-nxp8997-sdio += "${PN}-nxp8997-common"
+
+FILES:${PN}-nxp9098-pcie = " \
+ ${nonarch_base_libdir}/firmware/nxp/ed_mac_ctrl_V3_909x.conf \
+ ${nonarch_base_libdir}/firmware/nxp/pcieuart9098* \
+ ${nonarch_base_libdir}/firmware/nxp/txpwrlimit_cfg_9098.conf \
+"
+RDEPENDS:${PN}-nxp9098-pcie += "${PN}-nxp-common"
+
+FILES:${PN}-nxp9098-sdio = " \
+ ${nonarch_base_libdir}/firmware/nxp/sdiouart9098* \
+"
+RDEPENDS:${PN}-nxp9098-sdio += "${PN}-nxp-common"
diff --git a/recipes-bsp/firmware-imx/firmware-sof-imx_1.9.0-1.bb b/recipes-bsp/firmware-imx/firmware-sof-imx_2.3.0.bb
index d0a497b8..9778bd1c 100644
--- a/recipes-bsp/firmware-imx/firmware-sof-imx_1.9.0-1.bb
+++ b/recipes-bsp/firmware-imx/firmware-sof-imx_2.3.0.bb
@@ -1,4 +1,4 @@
-# Copyright (C) 2020 Mihai Lindner <mihai.lindner@nxp.com>
+# Copyright (C) 2020-2022 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "Sound Open Firmware"
@@ -8,8 +8,8 @@ LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENCE;md5=0f00d99239d922ffd13cabef83b33444"
SRC_URI = "${FSL_MIRROR}/sof-imx-${PV}.tar.gz"
-SRC_URI[md5sum] = "7560d41c3be0a97c744874b531649326"
-SRC_URI[sha256sum] = "106cfb3da27867520d86649cde98256217829c97f41984e10161c1e2707e2c4e"
+SRC_URI[md5sum] = "f7d277717b3f0dd17e8d341c1091d6b6"
+SRC_URI[sha256sum] = "eb86c90aec92b3b376e7afca6aa5db4767b5d8868553595907ba37665329f16b"
S = "${WORKDIR}/sof-imx-${PV}"
diff --git a/recipes-bsp/firmware-sentinel/firmware-sentinel_0.8.bb b/recipes-bsp/firmware-sentinel/firmware-sentinel_0.8.bb
new file mode 100644
index 00000000..50787fd6
--- /dev/null
+++ b/recipes-bsp/firmware-sentinel/firmware-sentinel_0.8.bb
@@ -0,0 +1,23 @@
+# Copyright 2021-2022 NXP
+SUMMARY = "NXP i.MX Sentinel firmware"
+DESCRIPTION = "Firmware for i.MX Sentinel Security Controller"
+SECTION = "base"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
+
+inherit fsl-eula-unpack use-imx-security-controller-firmware deploy nopackages
+
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
+SRC_URI[md5sum] = "be47a5e59c1192ee36246af97d5d1532"
+SRC_URI[sha256sum] = "1003d4c6773c153ea341911a74e25c249423644f70f3d8f8d085599e00770b3f"
+
+do_compile[noexec] = "1"
+do_install[noexec] = "1"
+
+do_deploy () {
+ # Deploy the related firmware to be package by imx-boot
+ install -m 0644 ${S}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}
+}
+addtask deploy after do_install before do_build
+
+COMPATIBLE_MACHINE = "(mx8ulp-nxp-bsp|mx9-nxp-bsp)"
diff --git a/recipes-bsp/firmware-upower/firmware-upower_1.1.0.bb b/recipes-bsp/firmware-upower/firmware-upower_1.1.0.bb
new file mode 100644
index 00000000..f21de75a
--- /dev/null
+++ b/recipes-bsp/firmware-upower/firmware-upower_1.1.0.bb
@@ -0,0 +1,31 @@
+# Copyright 2021-2022 NXP
+DESCRIPTION = "NXP i.MX uPower firmware"
+LICENSE = "Proprietary"
+SECTION = "BSP"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
+
+SRC_URI = "${FSL_MIRROR}/${PN}-${PV}.bin;fsl-eula=true"
+
+S = "${WORKDIR}/${PN}-${PV}"
+
+inherit fsl-eula-unpack pkgconfig deploy
+
+SRC_URI[md5sum] = "d2cbe8d2f8fa170e5d48c599c4caac5e"
+SRC_URI[sha256sum] = "c02595917744769abe810107a08506e4055b8077b5fc4ed17c353b833756c8b0"
+
+do_configure[noexec] = "1"
+
+do_compile[noexec] = "1"
+
+do_install[noexec] = "1"
+
+BOOT_TOOLS = "imx-boot-tools"
+
+do_deploy () {
+ # Deploy the related firmware to be package by imx-boot
+ install -d ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0644 ${S}/${UPOWER_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}/upower.bin
+}
+addtask deploy after do_install before do_build
+
+COMPATIBLE_MACHINE = "(mx8ulp-nxp-bsp)"
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 260737ff..3883c024 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 = "GPL-2.0-only"
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-yocto-sdk/fsl-tlu;protocol=https;nobranch=1"
SRCREV = "8837cce3c86b30c0931c319e9e1a8ca622ae5354"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-atf/imx-atf/0001-Makefile-Suppress-array-bounds-error.patch b/recipes-bsp/imx-atf/imx-atf/0001-Makefile-Suppress-array-bounds-error.patch
index 37b5ce6f..c7ace225 100644
--- a/recipes-bsp/imx-atf/imx-atf/0001-Makefile-Suppress-array-bounds-error.patch
+++ b/recipes-bsp/imx-atf/imx-atf/0001-Makefile-Suppress-array-bounds-error.patch
@@ -3,8 +3,8 @@ From: Tom Hochstein <tom.hochstein@nxp.com>
Date: Mon, 16 May 2022 13:45:16 -0500
Subject: [PATCH] Makefile: Suppress array-bounds error
-The array-bounds error is triggered now in cases where it was silent before,
-causing errors like:
+The array-bounds error is triggered now in cases where it was silent
+before, causing errors like:
```
plat/imx/imx8m/hab.c: In function 'imx_hab_handler':
@@ -13,10 +13,15 @@ plat/imx/imx8m/hab.c:64:57: error: array subscript 0 is outside array bounds of
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
-It appears that these new cases will be silenced soon in gcc [1], so for
-now just silence the warning locally as a workaround.
+The error is a false-positive and is entered as a bug [1]. The problem
+is fixed partially in GCC 12 and fully in GCC 13 [2].
-[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578#c39
+The partial fix does not work here because the constant addresses used
+are less than the 4kB boundary chosen for the partial fix, so suppress
+the error until GCC is upgraded to 13.
+
+[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578
+[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578#c39
Upstream-Status: Inappropriate [other]
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
diff --git a/recipes-bsp/imx-atf/imx-atf_2.4.bb b/recipes-bsp/imx-atf/imx-atf_2.6.bb
index a8068eb0..5016e730 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.4.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.6.bb
@@ -1,27 +1,30 @@
-# Copyright (C) 2017-2021 NXP
+# Copyright (C) 2017-2022 NXP
DESCRIPTION = "i.MX ARM Trusted Firmware"
SECTION = "BSP"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9"
-FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-
PV .= "+git${SRCPV}"
-SRCBRANCH = "lf_v2.4"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-atf.git;protocol=https;branch=${SRCBRANCH} \
- file://0001-Makefile-Suppress-array-bounds-error.patch"
-SRCREV = "05f788b9bbb13d002997e35008a4b945f7e2957b"
+SRC_URI = " \
+ git://github.com/nxp-imx/imx-atf.git;protocol=https;branch=${SRCBRANCH} \
+ file://0001-Makefile-Suppress-array-bounds-error.patch \
+"
+
+SRCBRANCH = "lf_v2.6"
+SRCREV = "3c1583ba0a5d11e5116332e91065cb3740153a46"
S = "${WORKDIR}/git"
inherit deploy
-BOOT_TOOLS = "imx-boot-tools"
-
ATF_PLATFORM ??= "INVALID"
+# FIXME: We should return INVALID here but currently only i.MX8M has support to override the UART
+# base address in source code.
+ATF_BOOT_UART_BASE ?= ""
+
EXTRA_OEMAKE += " \
CROSS_COMPILE="${TARGET_PREFIX}" \
PLAT=${ATF_PLATFORM} \
@@ -34,7 +37,11 @@ AS[unexport] = "1"
LD[unexport] = "1"
# Baremetal, just need a compiler
-DEPENDS:remove = "virtual/${TARGET_PREFIX}compilerlibs virtual/libc"
+INHIBIT_DEFAULT_DEPS = "1"
+DEPENDS = "virtual/${HOST_PREFIX}gcc"
+
+# Bring in clang compiler if using clang as default
+DEPENDS:append:toolchain-clang = " clang-cross-${TARGET_ARCH}"
BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}"
@@ -45,28 +52,33 @@ def remove_options_tail (in_string):
from itertools import takewhile
return ' '.join(takewhile(lambda x: not x.startswith('-'), in_string.split(' ')))
-EXTRA_OEMAKE += 'LD="${@remove_options_tail(d.getVar('LD'))}"'
+EXTRA_OEMAKE += 'LD="${@remove_options_tail(d.getVar('LD'))}.bfd"'
EXTRA_OEMAKE += 'CC="${@remove_options_tail(d.getVar('CC'))}"'
+# Set the UART to use during the boot.
+EXTRA_OEMAKE += 'IMX_BOOT_UART_BASE=${ATF_BOOT_UART_BASE}'
+
+do_configure[noexec] = "1"
+
do_compile() {
# Clear LDFLAGS to avoid the option -Wl recognize issue
oe_runmake bl31
if ${BUILD_OPTEE}; then
- oe_runmake clean BUILD_BASE=build-optee
- oe_runmake BUILD_BASE=build-optee SPD=opteed bl31
+ oe_runmake clean BUILD_BASE=build-optee
+ oe_runmake BUILD_BASE=build-optee SPD=opteed bl31
fi
}
do_install[noexec] = "1"
+addtask deploy after do_compile
do_deploy() {
install -Dm 0644 ${S}/build/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin
if ${BUILD_OPTEE}; then
- install -m 0644 ${S}/build-optee/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin-optee
+ install -m 0644 ${S}/build-optee/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin-optee
fi
}
-addtask deploy after do_compile
-PACKAGE_ARCH = "${MACHINE_SOCARCH}"
-COMPATIBLE_MACHINE = "(mx8-generic-bsp)"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
+COMPATIBLE_MACHINE = "(mx8-generic-bsp|mx9-generic-bsp)"
diff --git a/recipes-bsp/imx-kobs/imx-kobs_git.bb b/recipes-bsp/imx-kobs/imx-kobs_git.bb
index 761aac55..c8880d49 100644
--- a/recipes-bsp/imx-kobs/imx-kobs_git.bb
+++ b/recipes-bsp/imx-kobs/imx-kobs_git.bb
@@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
PV = "5.5+git${SRCPV}"
SRC_URI = "git://github.com/NXPmicro/imx-kobs.git;protocol=https;branch=master \
+ file://0001-Add-missing-includes-as-pointed-out-by-musl.patch \
"
SRCREV = "269fdffcf97238684de9f28977a73677282e061f"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-lib/imx-lib_git.bb b/recipes-bsp/imx-lib/imx-lib_git.bb
index 99a156a5..3bb1dcaf 100644
--- a/recipes-bsp/imx-lib/imx-lib_git.bb
+++ b/recipes-bsp/imx-lib/imx-lib_git.bb
@@ -12,9 +12,8 @@ PE = "1"
PV = "5.9+${SRCPV}"
-SRCBRANCH = "lf-5.10.52_2.1.0"
-
-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}"
+SRCBRANCH = "lf-5.15.71_2.2.0"
SRCREV = "87ddd80953835eb29027d1d5a12044a08e809e40"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-mkimage/files/0001-Add-LDFLAGS-to-link-step.patch b/recipes-bsp/imx-mkimage/files/0001-Add-LDFLAGS-to-link-step.patch
deleted file mode 100644
index f8c68d45..00000000
--- a/recipes-bsp/imx-mkimage/files/0001-Add-LDFLAGS-to-link-step.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 2a6e2d40a4af78d4a0824e384c3aec55db758fee Mon Sep 17 00:00:00 2001
-From: Erik Larsson <erik.larsson@combitech.se>
-Date: Tue, 6 Mar 2018 12:28:39 +0100
-Subject: [PATCH] Add LDFLAGS to link step
-
-Upstream-Status: Pending
-
-Signed-off-by: Erik Larsson <karl.erik.larsson@gmail.com>
----
- iMX8M/soc.mak | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/iMX8M/soc.mak b/iMX8M/soc.mak
-index 03b05f7aafeb..4d5df0777704 100644
---- a/iMX8M/soc.mak
-+++ b/iMX8M/soc.mak
-@@ -84,7 +84,7 @@ FW_DIR = imx-boot/imx-boot-tools/$(PLAT)
- $(MKIMG): mkimage_imx8.c
- @echo "PLAT="$(PLAT) "HDMI="$(HDMI)
- @echo "Compiling mkimage_imx8"
-- $(CC) $(CFLAGS) mkimage_imx8.c -o $(MKIMG) -lz
-+ $(CC) $(CFLAGS) mkimage_imx8.c -o $(MKIMG) $(BUILD_LDFLAGS) -lz
-
- lpddr4_imem_1d = lpddr4_pmu_train_1d_imem$(LPDDR_FW_VERSION).bin
- lpddr4_dmem_1d = lpddr4_pmu_train_1d_dmem$(LPDDR_FW_VERSION).bin
---
-2.35.1
-
diff --git a/recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL31-BL32-and-BL33.patch b/recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL31-BL32-and-BL33.patch
deleted file mode 100644
index 4e0d954a..00000000
--- a/recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL31-BL32-and-BL33.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From 8fc8fc3dfce7533b9c965185277d34e27055cc8f Mon Sep 17 00:00:00 2001
-From: Thomas Perrot <thomas.perrot@bootlin.com>
-Date: Tue, 26 Apr 2022 15:10:04 +0200
-Subject: [PATCH] Add support for overriding BL31, BL32 and BL33
-
-Upstream-Status: Pending
-
-Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
----
- iMX8M/print_fit_hab.sh | 14 +++++++++-----
- 1 file changed, 9 insertions(+), 5 deletions(-)
-
-diff --git a/iMX8M/print_fit_hab.sh b/iMX8M/print_fit_hab.sh
-index b915115d1ecc..dbc28f2d9af5 100755
---- a/iMX8M/print_fit_hab.sh
-+++ b/iMX8M/print_fit_hab.sh
-@@ -1,12 +1,16 @@
- #!/bin/bash
-
--BL32="tee.bin"
--
- let fit_off=$1
-
- # keep backward compatibility
- [ -z "$TEE_LOAD_ADDR" ] && TEE_LOAD_ADDR="0xfe000000"
-
-+[ -z "$BL31" ] && BL31="bl31.bin"
-+
-+[ -z "$BL32" ] && BL32="tee.bin"
-+
-+[ -z "$BL33" ] && BL33="u-boot-nodtb.bin"
-+
- if [ -z "$ATF_LOAD_ADDR" ]; then
- echo "ERROR: BL31 load address is not set" >&2
- exit 0
-@@ -26,7 +30,7 @@ else
- let uboot_sign_off=$((fit_off - 0x8000 - ivt_off + 0x3000))
- fi
-
--let uboot_size=$(ls -lct u-boot-nodtb.bin | awk '{print $5}')
-+let uboot_size=$(ls -lct $BL33 | awk '{print $5}')
- let uboot_load_addr=0x40200000
-
- let last_sign_off=$(((uboot_sign_off + uboot_size + 3) & ~3))
-@@ -64,13 +68,13 @@ done
-
- let atf_sign_off=$((last_sign_off))
- let atf_load_addr=$ATF_LOAD_ADDR
--let atf_size=$(ls -lct bl31.bin | awk '{print $5}')
-+let atf_size=$(ls -lct $BL31 | awk '{print $5}')
-
- if [ ! -f $BL32 ]; then
- let tee_size=0x0
- let tee_sign_off=$((atf_sign_off + atf_size))
- else
-- let tee_size=$(ls -lct tee.bin | awk '{print $5}')
-+ let tee_size=$(ls -lct $BL32 | awk '{print $5}')
-
- let tee_sign_off=$(((atf_sign_off + atf_size + 3) & ~3))
- let tee_load_addr=$TEE_LOAD_ADDR
---
-2.35.1
diff --git a/recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL32-and-BL33-not-only-BL.patch b/recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL32-and-BL33-not-only-BL.patch
deleted file mode 100644
index 72d83e63..00000000
--- a/recipes-bsp/imx-mkimage/files/0001-Add-support-for-overriding-BL32-and-BL33-not-only-BL.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From ef28030129a04b1d70dbca3f2236fe7b1c67b4ed Mon Sep 17 00:00:00 2001
-From: Erik Larsson <erik.larsson@combitech.se>
-Date: Thu, 8 Mar 2018 19:04:37 +0100
-Subject: [PATCH] Add support for overriding BL32 and BL33 not only BL31
-
-Upstream-Status: Pending
-
-Signed-off-by: Erik Larsson <karl.erik.larsson@gmail.com>
-Signed-off-by: Christopher Dahlberg <crille.dahlberg@gmail.com>
-Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com>
-Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
----
- iMX8M/mkimage_fit_atf.sh | 19 ++++++++++---------
- 1 file changed, 10 insertions(+), 9 deletions(-)
-
-diff --git a/iMX8M/mkimage_fit_atf.sh b/iMX8M/mkimage_fit_atf.sh
-index 10903ea3bbf5..341a4b3da1ef 100755
---- a/iMX8M/mkimage_fit_atf.sh
-+++ b/iMX8M/mkimage_fit_atf.sh
-@@ -6,6 +6,7 @@
- # usage: $0 <dt_name> [<dt_name> [<dt_name] ...]
-
- [ -z "$BL31" ] && BL31="bl31.bin"
-+
- # keep backward compatibility
- [ -z "$TEE_LOAD_ADDR" ] && TEE_LOAD_ADDR="0xfe000000"
-
-@@ -18,23 +19,23 @@ if [ ! -f $BL31 ]; then
- echo "ERROR: BL31 file $BL31 NOT found" >&2
- exit 0
- else
-- echo "bl31.bin size: " >&2
-- ls -lct bl31.bin | awk '{print $5}' >&2
-+ echo "$BL31 size: " >&2
-+ ls -lct $BL31 | awk '{print $5}' >&2
- fi
-
--BL32="tee.bin"
-+[ -z "$BL32" ] && BL32="tee.bin"
- LOADABLES="\"atf-1\""
-
- if [ ! -f $BL32 ]; then
- BL32=/dev/null
- else
-- echo "Building with TEE support, make sure your bl31 is compiled with spd. If you do not want tee, please delete tee.bin" >&2
-- echo "tee.bin size: " >&2
-- ls -lct tee.bin | awk '{print $5}' >&2
-+ echo "Building with TEE support, make sure $BL31 is compiled with spd. If you do not want tee, please delete $BL32" >&2
-+ echo "$BL32 size: " >&2
-+ ls -lct $BL32 | awk '{print $5}' >&2
- LOADABLES="$LOADABLES, \"tee-1\""
- fi
-
--BL33="u-boot-nodtb.bin"
-+[ -z "$BL33" ] && BL33="u-boot-nodtb.bin"
- DEK_BLOB="dek_blob_fit_dummy.bin"
-
- if [ ! -f $DEK_BLOB ]; then
-@@ -49,8 +50,8 @@ if [ ! -f $BL33 ]; then
- exit 0
- else
-
-- echo "u-boot-nodtb.bin size: " >&2
-- ls -lct u-boot-nodtb.bin | awk '{print $5}' >&2
-+ echo "$BL33 size: " >&2
-+ ls -lct $BL33 | awk '{print $5}' >&2
- fi
-
- for dtname in $*
---
-2.35.1
diff --git a/recipes-bsp/imx-mkimage/files/0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch b/recipes-bsp/imx-mkimage/files/0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch
index a879208c..a8b0332d 100644
--- a/recipes-bsp/imx-mkimage/files/0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch
+++ b/recipes-bsp/imx-mkimage/files/0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch
@@ -1,4 +1,4 @@
-From a4af3747abd88247bf4498ec0cf67a4151e64d41 Mon Sep 17 00:00:00 2001
+From 70b7d067ca0f6659e4f842f8d841714a26bf9d8c Mon Sep 17 00:00:00 2001
From: Andrey Zhizhikin <andrey.z@gmail.com>
Date: Thu, 21 Oct 2021 08:53:38 +0000
Subject: [PATCH] iMX8M: soc.mak: use native mkimage from sysroot
@@ -20,56 +20,56 @@ Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
iMX8M/soc.mak | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
-diff --git a/iMX8M/soc.mak b/iMX8M/soc.mak
-index 4bfdc37..03b05f7 100644
---- a/iMX8M/soc.mak
-+++ b/iMX8M/soc.mak
-@@ -148,7 +148,7 @@ u-boot.itb: $(dtb)
+Index: git/iMX8M/soc.mak
+===================================================================
+--- git.orig/iMX8M/soc.mak
++++ git/iMX8M/soc.mak
+@@ -149,7 +149,7 @@ u-boot.itb: $(dtb)
./$(PAD_IMAGE) bl31.bin
./$(PAD_IMAGE) u-boot-nodtb.bin $(dtb)
- DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ./mkimage_fit_atf.sh $(dtb) > u-boot.its
+ BL32=$(TEE) DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ../$(SOC_DIR)/mkimage_fit_atf.sh $(dtb) > u-boot.its
- ./mkimage_uboot -E -p 0x3000 -f u-boot.its u-boot.itb
+ mkimage -E -p 0x3000 -f u-boot.its u-boot.itb
@rm -f u-boot.its $(dtb)
dtb_ddr3l = valddr3l.dtb
-@@ -160,7 +160,7 @@ u-boot-ddr3l.itb: $(dtb_ddr3l)
+@@ -161,7 +161,7 @@ u-boot-ddr3l.itb: $(dtb_ddr3l)
./$(PAD_IMAGE) bl31.bin
./$(PAD_IMAGE) u-boot-nodtb.bin $(dtb_ddr3l)
- DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ./mkimage_fit_atf.sh $(dtb_ddr3l) > u-boot-ddr3l.its
+ DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ../$(SOC_DIR)/mkimage_fit_atf.sh $(dtb_ddr3l) > u-boot-ddr3l.its
- ./mkimage_uboot -E -p 0x3000 -f u-boot-ddr3l.its u-boot-ddr3l.itb
+ mkimage -E -p 0x3000 -f u-boot-ddr3l.its u-boot-ddr3l.itb
@rm -f u-boot.its $(dtb_ddr3l)
dtb_ddr3l_evk = evkddr3l.dtb
-@@ -172,7 +172,7 @@ u-boot-ddr3l-evk.itb: $(dtb_ddr3l_evk)
+@@ -173,7 +173,7 @@ u-boot-ddr3l-evk.itb: $(dtb_ddr3l_evk)
./$(PAD_IMAGE) bl31.bin
./$(PAD_IMAGE) u-boot-nodtb.bin $(dtb_ddr3l_evk)
- DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ./mkimage_fit_atf.sh $(dtb_ddr3l_evk) > u-boot-ddr3l-evk.its
+ DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ../$(SOC_DIR)/mkimage_fit_atf.sh $(dtb_ddr3l_evk) > u-boot-ddr3l-evk.its
- ./mkimage_uboot -E -p 0x3000 -f u-boot-ddr3l-evk.its u-boot-ddr3l-evk.itb
+ mkimage -E -p 0x3000 -f u-boot-ddr3l-evk.its u-boot-ddr3l-evk.itb
@rm -f u-boot.its $(dtb_ddr3l_evk)
dtb_ddr4 = valddr4.dtb
-@@ -184,7 +184,7 @@ u-boot-ddr4.itb: $(dtb_ddr4)
+@@ -185,7 +185,7 @@ u-boot-ddr4.itb: $(dtb_ddr4)
./$(PAD_IMAGE) bl31.bin
./$(PAD_IMAGE) u-boot-nodtb.bin $(dtb_ddr4)
- DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ./mkimage_fit_atf.sh $(dtb_ddr4) > u-boot-ddr4.its
+ DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ../$(SOC_DIR)/mkimage_fit_atf.sh $(dtb_ddr4) > u-boot-ddr4.its
- ./mkimage_uboot -E -p 0x3000 -f u-boot-ddr4.its u-boot-ddr4.itb
+ mkimage -E -p 0x3000 -f u-boot-ddr4.its u-boot-ddr4.itb
@rm -f u-boot.its $(dtb_ddr4)
dtb_ddr4_evk = evkddr4.dtb
-@@ -196,7 +196,7 @@ u-boot-ddr4-evk.itb: $(dtb_ddr4_evk)
+@@ -197,7 +197,7 @@ u-boot-ddr4-evk.itb: $(dtb_ddr4_evk)
./$(PAD_IMAGE) bl31.bin
./$(PAD_IMAGE) u-boot-nodtb.bin $(dtb_ddr4_evk)
- DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ./mkimage_fit_atf.sh $(dtb_ddr4_evk) > u-boot-ddr4-evk.its
+ DEK_BLOB_LOAD_ADDR=$(DEK_BLOB_LOAD_ADDR) TEE_LOAD_ADDR=$(TEE_LOAD_ADDR) ATF_LOAD_ADDR=$(ATF_LOAD_ADDR) ../$(SOC_DIR)/mkimage_fit_atf.sh $(dtb_ddr4_evk) > u-boot-ddr4-evk.its
- ./mkimage_uboot -E -p 0x3000 -f u-boot-ddr4-evk.its u-boot-ddr4-evk.itb
+ mkimage -E -p 0x3000 -f u-boot-ddr4-evk.its u-boot-ddr4-evk.itb
@rm -f u-boot.its $(dtb_ddr4_evk)
ifeq ($(HDMI),yes)
-@@ -312,7 +312,6 @@ nightly :
+@@ -343,7 +343,6 @@ nightly :
@$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/fsl-$(PLAT)-evk.dtb -O fsl-$(PLAT)-evk.dtb
@$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/signed_hdmi_imx8m.bin -O signed_hdmi_imx8m.bin
@$(WGET) -q $(SERVER)/$(DIR)/$(FW_DIR)/signed_dp_imx8m.bin -O signed_dp_imx8m.bin
@@ -77,6 +77,3 @@ index 4bfdc37..03b05f7 100644
archive :
git ls-files --others --exclude-standard -z | xargs -0 tar rvf $(ARCHIVE_PATH)/$(ARCHIVE_NAME)
---
-2.17.1
-
diff --git a/recipes-bsp/imx-mkimage/files/0001-mkimage_fit_atf-fix-fit-generator-node-naming.patch b/recipes-bsp/imx-mkimage/files/0001-mkimage_fit_atf-fix-fit-generator-node-naming.patch
deleted file mode 100644
index 5a4a895b..00000000
--- a/recipes-bsp/imx-mkimage/files/0001-mkimage_fit_atf-fix-fit-generator-node-naming.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From f281b935985f1b592534ee2837ce0d0b28c7dc43 Mon Sep 17 00:00:00 2001
-From: Andrey Zhizhikin <andrey.z@gmail.com>
-Date: Tue, 11 Jan 2022 15:32:05 -0600
-Subject: [PATCH] mkimage_fit_atf: fix fit generator node naming
-
-Extend sections which contains "firmware" in their types with "os"
-parameter to conform to the latest FIT specification.
-
-Indicate that load and entry addresses are covered by one 32-bit value
-by adding "address-cells" in the root node of the generated ITS.
-
-Upstream-Status: Inappropriate [script is imx-boot specific]
-Link: [1] https://github.com/u-boot/u-boot/commit/79af75f7776fc20b0d7eb6afe1e27c00fdb4b9b4
-Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
-Cc: Tom Hochstein <tom.hochstein@nxp.com>
----
- iMX8M/mkimage_fit_atf.sh | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/iMX8M/mkimage_fit_atf.sh b/iMX8M/mkimage_fit_atf.sh
-index 4f2b3f3..10903ea 100755
---- a/iMX8M/mkimage_fit_atf.sh
-+++ b/iMX8M/mkimage_fit_atf.sh
-@@ -64,10 +64,12 @@ cat << __HEADER_EOF
-
- / {
- description = "Configuration to load ATF before U-Boot";
-+ #address-cells = <1>;
-
- images {
- uboot-1 {
- description = "U-Boot (64-bit)";
-+ os = "u-boot";
- data = /incbin/("$BL33");
- type = "standalone";
- arch = "arm64";
-@@ -93,6 +95,7 @@ done
- cat << __HEADER_EOF
- atf-1 {
- description = "ARM Trusted Firmware";
-+ os = "arm-trusted-firmware";
- data = /incbin/("$BL31");
- type = "firmware";
- arch = "arm64";
-@@ -106,6 +109,7 @@ if [ -f $BL32 ]; then
- cat << __HEADER_EOF
- tee-1 {
- description = "TEE firmware";
-+ os = "op-tee-firmware";
- data = /incbin/("$BL32");
- type = "firmware";
- arch = "arm64";
---
-2.17.1
-
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
index 28bc88b8..677e57c2 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
@@ -7,11 +7,8 @@ LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
SECTION = "BSP"
-inherit use-imx-security-controller-firmware
+inherit use-imx-security-controller-firmware uboot-sign
-IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware imx-seco"
-IMX_EXTRA_FIRMWARE:mx8m-generic-bsp = "firmware-imx-8m"
-IMX_EXTRA_FIRMWARE:mx8x-generic-bsp = "imx-sc-firmware imx-seco"
DEPENDS += " \
u-boot \
${IMX_EXTRA_FIRMWARE} \
@@ -28,6 +25,7 @@ inherit deploy uuu_bootloader_tag
UUU_BOOTLOADER = "${BOOT_NAME}"
UUU_BOOTLOADER_TAGGED = "${BOOT_NAME}-tagged"
+UUU_BOOTLOADER_UNTAGGED = "${BOOT_NAME}-untagged"
# Add CFLAGS with native INCDIR & LIBDIR for imx-mkimage build
CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR_NATIVE} -L ${STAGING_LIBDIR_NATIVE}"
@@ -46,9 +44,6 @@ SC_FIRMWARE_NAME ?= "scfw_tcm.bin"
ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
-UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
-BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
-
TOOLS_NAME ?= "mkimage_imx8"
IMX_BOOT_SOC_TARGET ?= "INVALID"
@@ -64,16 +59,27 @@ BOOT_STAGING = "${S}/${IMX_BOOT_SOC_TARGET}"
BOOT_STAGING:mx8m-generic-bsp = "${S}/iMX8M"
BOOT_STAGING:mx8dx-generic-bsp = "${S}/iMX8QX"
-SOC_FAMILY = "INVALID"
-SOC_FAMILY:mx8-generic-bsp = "mx8"
-SOC_FAMILY:mx8m-generic-bsp = "mx8m"
-SOC_FAMILY:mx8x-generic-bsp = "mx8x"
+SOC_FAMILY = "INVALID"
+SOC_FAMILY:mx8-generic-bsp = "mx8"
+SOC_FAMILY:mx8m-generic-bsp = "mx8m"
+SOC_FAMILY:mx8x-generic-bsp = "mx8x"
+SOC_FAMILY:mx8ulp-generic-bsp = "mx8ulp"
+SOC_FAMILY:mx93-generic-bsp = "mx93"
REV_OPTION ?= ""
REV_OPTION:mx8qxp-generic-bsp = \
"${@bb.utils.contains('MACHINE_FEATURES', 'soc-revb0', '', \
'REV=C0', d)}"
REV_OPTION:mx8dx-generic-bsp = "REV=C0"
+REV_OPTION:mx8ulp-generic-bsp = \
+ "${@bb.utils.contains('MACHINE_FEATURES', 'soc-reva0', '', \
+ 'REV=A1', d)}"
+
+do_uboot_assemble_fitimage:prepend:imx-generic-bsp() {
+ for config in ${UBOOT_MACHINE}; do
+ mkdir -p ${B}/${config}
+ done
+}
compile_mx8m() {
bbnote 8MQ/8MM/8MN/8MP boot binary build
@@ -81,24 +87,35 @@ compile_mx8m() {
bbnote "Copy ddr_firmware: ${ddr_firmware} from ${DEPLOY_DIR_IMAGE} -> ${BOOT_STAGING} "
cp ${DEPLOY_DIR_IMAGE}/${ddr_firmware} ${BOOT_STAGING}
done
+
cp ${DEPLOY_DIR_IMAGE}/signed_dp_imx8m.bin ${BOOT_STAGING}
cp ${DEPLOY_DIR_IMAGE}/signed_hdmi_imx8m.bin ${BOOT_STAGING}
- cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
+ cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
${BOOT_STAGING}/u-boot-spl.bin
- cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${UBOOT_DTB_NAME} ${BOOT_STAGING}
- cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${UBOOT_CONFIG} \
+
+ if [ "x${UBOOT_SIGN_ENABLE}" = "x1" ] ; then
+ # Use DTB binary patched with signature node
+ cp ${DEPLOY_DIR_IMAGE}/${UBOOT_DTB_BINARY} ${BOOT_STAGING}/${UBOOT_DTB_NAME_EXTRA}
+ else
+ cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${UBOOT_DTB_NAME_EXTRA} ${BOOT_STAGING}
+ fi
+
+ cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
${BOOT_STAGING}/u-boot-nodtb.bin
+
cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
- cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin
+
+ cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME_EXTRA} ${BOOT_STAGING}/u-boot.bin
+
}
compile_mx8() {
bbnote 8QM boot binary build
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
- cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin
+ cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME_EXTRA} ${BOOT_STAGING}/u-boot.bin
cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}
- if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} ] ; then
- cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
${BOOT_STAGING}/u-boot-spl.bin
fi
}
@@ -108,64 +125,171 @@ compile_mx8x() {
cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
- cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin
- if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} ] ; then
- cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
+ cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME_EXTRA} ${BOOT_STAGING}/u-boot.bin
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
+ ${BOOT_STAGING}/u-boot-spl.bin
+ fi
+}
+
+compile_mx8ulp() {
+ bbnote 8ULP boot binary build
+ cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}/
+ cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
+ cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/upower.bin ${BOOT_STAGING}/upower.bin
+ cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME_EXTRA} ${BOOT_STAGING}/u-boot.bin
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
${BOOT_STAGING}/u-boot-spl.bin
fi
}
+
+compile_mx93() {
+ bbnote i.MX 93 boot binary build
+ for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
+ bbnote "Copy ddr_firmware: ${ddr_firmware} from ${DEPLOY_DIR_IMAGE} -> ${BOOT_STAGING} "
+ cp ${DEPLOY_DIR_IMAGE}/${ddr_firmware} ${BOOT_STAGING}
+ done
+
+ cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}/
+ cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
+ cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME_EXTRA} ${BOOT_STAGING}/u-boot.bin
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
+ ${BOOT_STAGING}/u-boot-spl.bin
+ fi
+}
+
do_compile() {
# mkimage for i.MX8
# Copy TEE binary to SoC target folder to mkimage
if ${DEPLOY_OPTEE}; then
cp ${DEPLOY_DIR_IMAGE}/tee.bin ${BOOT_STAGING}
fi
- for target in ${IMXBOOT_TARGETS}; do
- compile_${SOC_FAMILY}
- if [ "$target" = "flash_linux_m4_no_v2x" ]; then
- # Special target build for i.MX 8DXL with V2X off
- bbnote "building ${IMX_BOOT_SOC_TARGET} - ${REV_OPTION} V2X=NO ${target}"
- make SOC=${IMX_BOOT_SOC_TARGET} ${REV_OPTION} V2X=NO dtbs=${UBOOT_DTB_NAME} flash_linux_m4
+ for type in ${UBOOT_CONFIG}; do
+ if [ "${@d.getVarFlags('UBOOT_DTB_NAME')}" = "None" ]; then
+ UBOOT_DTB_NAME_FLAGS="${type}:${UBOOT_DTB_NAME}"
else
- bbnote "building ${IMX_BOOT_SOC_TARGET} - ${REV_OPTION} ${target}"
- make SOC=${IMX_BOOT_SOC_TARGET} ${REV_OPTION} dtbs=${UBOOT_DTB_NAME} ${target}
- fi
- if [ -e "${BOOT_STAGING}/flash.bin" ]; then
- cp ${BOOT_STAGING}/flash.bin ${S}/${BOOT_CONFIG_MACHINE}-${target}
+ UBOOT_DTB_NAME_FLAGS="${@' '.join(flag + ':' + dtb for flag, dtb in (d.getVarFlags('UBOOT_DTB_NAME')).items()) if d.getVarFlags('UBOOT_DTB_NAME') is not None else '' }"
fi
+
+ for key_value in ${UBOOT_DTB_NAME_FLAGS}; do
+ type_key="${key_value%%:*}"
+ dtb_name="${key_value#*:}"
+
+ if [ "$type_key" = "$type" ]
+ then
+ bbnote "UBOOT_CONFIG = $type, UBOOT_DTB_NAME = $dtb_name"
+
+ UBOOT_CONFIG_EXTRA="$type_key"
+ if [ -e ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${dtb_name}-${type} ] ; then
+ UBOOT_DTB_NAME_EXTRA="${dtb_name}-${type}"
+ else
+ # backward compatibility
+ UBOOT_DTB_NAME_EXTRA="${dtb_name}"
+ fi
+ UBOOT_NAME_EXTRA="u-boot-${MACHINE}.bin-${UBOOT_CONFIG_EXTRA}"
+ BOOT_CONFIG_MACHINE_EXTRA="${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG_EXTRA}.bin"
+
+ for target in ${IMXBOOT_TARGETS}; do
+ compile_${SOC_FAMILY}
+ if [ "$target" = "flash_linux_m4_no_v2x" ]; then
+ # Special target build for i.MX 8DXL with V2X off
+ bbnote "building ${IMX_BOOT_SOC_TARGET} - ${REV_OPTION} V2X=NO ${target}"
+ make SOC=${IMX_BOOT_SOC_TARGET} ${REV_OPTION} V2X=NO dtbs=${UBOOT_DTB_NAME_EXTRA} flash_linux_m4
+ else
+ bbnote "building ${IMX_BOOT_SOC_TARGET} - ${REV_OPTION} ${target}"
+ make SOC=${IMX_BOOT_SOC_TARGET} ${REV_OPTION} dtbs=${UBOOT_DTB_NAME_EXTRA} ${target}
+ fi
+ if [ -e "${BOOT_STAGING}/flash.bin" ]; then
+ cp ${BOOT_STAGING}/flash.bin ${S}/${BOOT_CONFIG_MACHINE_EXTRA}-${target}
+ fi
+ done
+
+ unset UBOOT_CONFIG_EXTRA
+ unset UBOOT_DTB_NAME_EXTRA
+ unset UBOOT_NAME_EXTRA
+ unset BOOT_CONFIG_MACHINE_EXTRA
+ fi
+
+ unset type_key
+ unset dtb_name
+ done
+
+ unset UBOOT_DTB_NAME_FLAGS
done
+ unset type
}
do_install () {
install -d ${D}/boot
- for target in ${IMXBOOT_TARGETS}; do
- install -m 0644 ${S}/${BOOT_CONFIG_MACHINE}-${target} ${D}/boot/
+ for type in ${UBOOT_CONFIG}; do
+
+ bbnote "UBOOT_CONFIG = $type"
+
+ UBOOT_CONFIG_EXTRA="$type"
+ BOOT_CONFIG_MACHINE_EXTRA="${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG_EXTRA}.bin"
+
+ for target in ${IMXBOOT_TARGETS}; do
+ install -m 0644 ${S}/${BOOT_CONFIG_MACHINE_EXTRA}-${target} ${D}/boot/
+ done
+
+ unset UBOOT_CONFIG_EXTRA
+ unset BOOT_CONFIG_MACHINE_EXTRA
done
+
+ unset type
}
deploy_mx8m() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
- ${DEPLOYDIR}/${BOOT_TOOLS}
for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
install -m 0644 ${DEPLOY_DIR_IMAGE}/${ddr_firmware} ${DEPLOYDIR}/${BOOT_TOOLS}
done
+
install -m 0644 ${BOOT_STAGING}/signed_dp_imx8m.bin ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/signed_hdmi_imx8m.bin ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${BOOT_STAGING}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${BOOT_STAGING}/mkimage_fit_atf.sh ${DEPLOYDIR}/${BOOT_TOOLS}
}
+
deploy_mx8() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
+ ${DEPLOYDIR}/${BOOT_TOOLS}
+ fi
+}
+
+deploy_mx8x() {
+ install -d ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} ] ; then
install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
${DEPLOYDIR}/${BOOT_TOOLS}
fi
}
-deploy_mx8x() {
+
+deploy_mx8ulp() {
+ install -d ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \
+ ${DEPLOYDIR}/${BOOT_TOOLS}
+ fi
+}
+
+deploy_mx93() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
+
+ for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${ddr_firmware} ${DEPLOYDIR}/${BOOT_TOOLS}
+ done
+
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} ] ; then
@@ -173,33 +297,55 @@ deploy_mx8x() {
${DEPLOYDIR}/${BOOT_TOOLS}
fi
}
+
do_deploy() {
deploy_${SOC_FAMILY}
- # copy the sc fw, dcd and uboot to deploy path
- install -m 0644 ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
# copy tee.bin to deploy path
if ${DEPLOY_OPTEE}; then
install -m 0644 ${DEPLOY_DIR_IMAGE}/tee.bin ${DEPLOYDIR}/${BOOT_TOOLS}
fi
-
# copy makefile (soc.mak) for reference
install -m 0644 ${BOOT_STAGING}/soc.mak ${DEPLOYDIR}/${BOOT_TOOLS}
- # copy the generated boot image to deploy path
- for target in ${IMXBOOT_TARGETS}; do
- # Use first "target" as IMAGE_IMXBOOT_TARGET
- if [ "$IMAGE_IMXBOOT_TARGET" = "" ]; then
- IMAGE_IMXBOOT_TARGET="$target"
- echo "Set boot target as $IMAGE_IMXBOOT_TARGET"
+
+ for type in ${UBOOT_CONFIG}; do
+ UBOOT_CONFIG_EXTRA="$type"
+ UBOOT_NAME_EXTRA="u-boot-${MACHINE}.bin-${UBOOT_CONFIG_EXTRA}"
+ BOOT_CONFIG_MACHINE_EXTRA="${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG_EXTRA}.bin"
+
+ if [ -e ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} ] ; then
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG_EXTRA} \
+ ${DEPLOYDIR}/${BOOT_TOOLS}
fi
- install -m 0644 ${S}/${BOOT_CONFIG_MACHINE}-${target} ${DEPLOYDIR}
- done
+ # copy the tool mkimage to deploy path and sc fw, dcd and uboot
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME_EXTRA} ${DEPLOYDIR}/${BOOT_TOOLS}
+
+ # copy the generated boot image to deploy path
+ for target in ${IMXBOOT_TARGETS}; do
+ # Use first "target" as IMAGE_IMXBOOT_TARGET
+ if [ "$IMAGE_IMXBOOT_TARGET" = "" ]; then
+ IMAGE_IMXBOOT_TARGET="$target"
+ echo "Set boot target as $IMAGE_IMXBOOT_TARGET"
+ fi
+ install -m 0644 ${S}/${BOOT_CONFIG_MACHINE_EXTRA}-${target} ${DEPLOYDIR}
+ done
- ln -sf ${BOOT_CONFIG_MACHINE}-${IMAGE_IMXBOOT_TARGET} ${DEPLOYDIR}/${BOOT_NAME}
+ # The first UBOOT_CONFIG listed will be the ${BOOT_NAME} binary
+ if [ ! -f "${DEPLOYDIR}/${UUU_BOOTLOADER}" ]; then
+ ln -sf ${BOOT_CONFIG_MACHINE_EXTRA}-${IMAGE_IMXBOOT_TARGET} ${DEPLOYDIR}/${BOOT_NAME}
+ else
+ bbwarn "Use custom wks.in for $UBOOT_CONFIG = $type"
+ fi
+
+ unset UBOOT_CONFIG_EXTRA
+ unset UBOOT_NAME_EXTRA
+ unset BOOT_CONFIG_MACHINE_EXTRA
+ done
+ unset type
}
addtask deploy before do_build after do_compile
PACKAGE_ARCH = "${MACHINE_ARCH}"
FILES:${PN} = "/boot"
-COMPATIBLE_MACHINE = "(mx8-generic-bsp)"
+COMPATIBLE_MACHINE = "(mx8-generic-bsp|mx9-generic-bsp)"
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
index 4906121f..f95f2a2b 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-2021 NXP
+# Copyright (C) 2017-2022 NXP
require imx-mkimage_git.inc
@@ -10,17 +10,11 @@ SECTION = "BSP"
inherit deploy native
-CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR} -L ${STAGING_LIBDIR}"
+EXTRA_OEMAKE = "SOC=iMX8M mkimage_imx8"
-do_compile () {
- cd ${S}
- oe_runmake clean
- oe_runmake bin
- oe_runmake -C iMX8M -f soc.mak mkimage_imx8
-}
+CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR} -L ${STAGING_LIBDIR}"
-do_install () {
- cd ${S}
+do_install() {
install -d ${D}${bindir}
install -m 0755 iMX8M/mkimage_imx8 ${D}${bindir}/mkimage_imx8m
install -m 0755 iMX8M/mkimage_fit_atf.sh ${D}${bindir}/mkimage_fit_atf.sh
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
index 165ba64e..4a4bc4c9 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
@@ -1,16 +1,13 @@
-# Copyright 2017-2021 NXP
+# Copyright 2017-2022 NXP
DEPENDS = "zlib-native openssl-native"
-SRCBRANCH = "lf-5.15.5_1.0.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-mkimage.git;protocol=https;branch=${SRCBRANCH} \
- file://0001-mkimage_fit_atf-fix-fit-generator-node-naming.patch \
+SRC_URI = "git://github.com/nxp-imx/imx-mkimage.git;protocol=https;branch=${SRCBRANCH} \
file://0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch \
- file://0001-Add-support-for-overriding-BL32-and-BL33-not-only-BL.patch \
- file://0001-Add-LDFLAGS-to-link-step.patch \
- file://0001-Add-support-for-overriding-BL31-BL32-and-BL33.patch \
"
-SRCREV = "22346a32a88aa752d4bad8f2ed1eb641e18849dc"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "3bfcfccb71ddf894be9c402732ccb229fe72099e"
+
S = "${WORKDIR}/git"
BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.12.1.bb b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.15.0.bb
index 919a474e..3273c270 100644
--- a/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.12.1.bb
+++ b/recipes-bsp/imx-sc-firmware/imx-sc-firmware_1.15.0.bb
@@ -1,17 +1,17 @@
# Copyright (C) 2016 Freescale Semiconductor
-# Copyright (C) 2017-2021 NXP
+# Copyright 2017-2022 NXP
DESCRIPTION = "i.MX System Controller Firmware"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
SECTION = "BSP"
inherit fsl-eula-unpack pkgconfig deploy
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "ebe1cd97369e08709594b72b065cea3d"
-SRC_URI[sha256sum] = "5ab47143623003cbe151b39a5ffcb7ea0dd5587a776e040453884e9608634b0e"
+SRC_URI[md5sum] = "d608eb2b3d312da1dbde55b8514c1e0f"
+SRC_URI[sha256sum] = "1272ac5c31a88017ef548721f3acf930a7eda6ac73aa9f41b5f0cade9d5c0e5f"
BOARD_TYPE ?= "mek"
SC_FIRMWARE_NAME ?= "INVALID"
diff --git a/recipes-bsp/imx-seco/imx-seco-libs/0001-Fix-return-value-of-void-functions.patch b/recipes-bsp/imx-seco/imx-seco-libs/0001-Fix-return-value-of-void-functions.patch
new file mode 100644
index 00000000..656469c2
--- /dev/null
+++ b/recipes-bsp/imx-seco/imx-seco-libs/0001-Fix-return-value-of-void-functions.patch
@@ -0,0 +1,57 @@
+From 2eff97fe2345d8255869224404322d23193f1115 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 7 Jan 2023 21:59:15 -0800
+Subject: [PATCH] Fix return value of void* functions
+
+This is found with clang
+
+Fixes
+error: non-void function does not return a value [-Werror,-Wreturn-type]
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ test/hsm/hsm_test.c | 1 +
+ test/she/src/she_test_storage_manager.c | 1 +
+ test/v2x/v2x_test.c | 1 +
+ 3 files changed, 3 insertions(+)
+
+diff --git a/test/hsm/hsm_test.c b/test/hsm/hsm_test.c
+index 9f29ca9..01820b8 100644
+--- a/test/hsm/hsm_test.c
++++ b/test/hsm/hsm_test.c
+@@ -391,6 +391,7 @@ static uint32_t nvm_status;
+ static void *hsm_storage_thread(void *arg)
+ {
+ seco_nvm_manager(NVM_FLAGS_HSM, &nvm_status);
++ return 0;
+ }
+
+
+diff --git a/test/she/src/she_test_storage_manager.c b/test/she/src/she_test_storage_manager.c
+index 32a4cb9..68cdba7 100644
+--- a/test/she/src/she_test_storage_manager.c
++++ b/test/she/src/she_test_storage_manager.c
+@@ -28,6 +28,7 @@ static uint32_t nvm_status;
+ static void *she_storage_thread(void *arg)
+ {
+ seco_nvm_manager(NVM_FLAGS_SHE, &nvm_status);
++ return 0;
+ }
+
+
+diff --git a/test/v2x/v2x_test.c b/test/v2x/v2x_test.c
+index aeb3d2a..5f02354 100644
+--- a/test/v2x/v2x_test.c
++++ b/test/v2x/v2x_test.c
+@@ -181,6 +181,7 @@ static uint32_t nvm_status;
+ static void *v2x_hsm_storage_thread(void *arg)
+ {
+ seco_nvm_manager(NVM_FLAGS_V2X | NVM_FLAGS_HSM, &nvm_status);
++ return 0;
+ }
+
+
+--
+2.39.0
+
diff --git a/recipes-bsp/imx-seco/imx-seco-libs_git.bb b/recipes-bsp/imx-seco/imx-seco-libs_git.bb
index 2f59f214..b0296e97 100644
--- a/recipes-bsp/imx-seco/imx-seco-libs_git.bb
+++ b/recipes-bsp/imx-seco/imx-seco-libs_git.bb
@@ -1,26 +1,27 @@
-# Copyright (C) 2019-2021 NXP
+# Copyright 2019-22 NXP
SUMMARY = "NXP i.MX SECO library"
-DESCRIPTION = "NXP i.MX Security Controller library"
+DESCRIPTION = "Library for NXP i.MX Security Controller Subsystem"
SECTION = "base"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://EULA.txt;md5=76871788f27c28af824e2ec1ca187832"
+LIC_FILES_CHKSUM = "file://EULA.txt;md5=d3c315c6eaa43e07d8c130dc3a04a011"
DEPENDS = "zlib"
-SRCBRANCH = "lf-5.15.5_1.0.0"
+SRCBRANCH = "imx_5.4.70_2.3.11"
SRC_URI = "git://github.com/NXP/imx-seco-libs.git;protocol=https;branch=${SRCBRANCH} \
file://0001-Makefile-Fix-LIBDIR-for-multilib.patch \
file://0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch \
- file://0001-add-v2x_test-to-the-installed-binaries.patch"
-SRCREV = "06a9062cdf51aa29a1c872709e21f927ca00d0b6"
+ file://0001-add-v2x_test-to-the-installed-binaries.patch \
+ file://0001-Fix-return-value-of-void-functions.patch"
+SRCREV = "aa8d62900c41cc779c11fe4e6f58b40c3c9f82f0"
S = "${WORKDIR}/git"
TARGET_CC_ARCH += "${LDFLAGS}"
do_install () {
- oe_runmake DESTDIR=${D} install
+ oe_runmake DESTDIR=${D} BINDIR=${bindir} LIBDIR=${libdir} install
}
COMPATIBLE_MACHINE = "(mx8qm-nxp-bsp|mx8qxp-nxp-bsp|mx8dxl-nxp-bsp|mx8dx-nxp-bsp)"
diff --git a/recipes-bsp/imx-seco/imx-seco_3.8.5.bb b/recipes-bsp/imx-seco/imx-seco_5.9.0.bb
index fbd72cd0..712be23a 100644
--- a/recipes-bsp/imx-seco/imx-seco_3.8.5.bb
+++ b/recipes-bsp/imx-seco/imx-seco_5.9.0.bb
@@ -1,17 +1,18 @@
-# Copyright (C) 2019-2021 NXP
+# Copyright 2019-2022 NXP
SUMMARY = "NXP i.MX SECO firmware"
-DESCRIPTION = "NXP i.MX Security Controller firmware"
+DESCRIPTION = "Firmware for i.MX Security Controller Subsystem"
SECTION = "base"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e4098ac4459cb81b07d3f0c22b3e8370"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
inherit fsl-eula-unpack use-imx-security-controller-firmware deploy
SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "c1797407517b0499f6d5151c1e62e78f"
-SRC_URI[sha256sum] = "b8731c626139c9bd1d530f243c2131c031a523f1428c6a40b017e5352b1da656"
+SRC_URI[md5sum] = "b722a534c4d3cc90270e05eaa812514d"
+SRC_URI[sha256sum] = "c3bd761f457e939035b01a0ab36e79064a2a1bc6c3cdb3cd847f7f38df0964df"
+
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 b5ee124e..6b0f8599 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-2021 NXP
+# Copyright (C) 2017-2022 NXP
SUMMARY = "Test programs for i.MX BSP"
DESCRIPTION = "Unit tests for the i.MX BSP"
@@ -8,20 +8,20 @@ SECTION = "base"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-or-later;md5=fed54355545ffd980b814dab4a3b312c"
-DEPENDS = "alsa-lib libdrm"
-DEPENDS:append:mx6-nxp-bsp = " imx-lib"
-DEPENDS:append:mx7-nxp-bsp = " imx-lib"
+DEPENDS = "alsa-lib freetype libdrm"
DEPENDS:append:imxvpu = " virtual/imxvpu"
+DEPENDS:append:mx6-nxp-bsp = " imx-lib"
+DEPENDS:append:mx7-nxp-bsp = " imx-lib"
+DEPENDS:append:mx8ulp-nxp-bsp = " imx-lib"
PE = "1"
PV = "7.0+${SRCPV}"
-SRCBRANCH = "lf-5.15.5_1.0.0"
-SRC_URI = " \
- git://source.codeaurora.org/external/imx/imx-test.git;protocol=https;branch=${SRCBRANCH} \
- file://memtool_profile \
-"
-SRCREV = "b364c1aacc72a63290106ae065bb2f6a8c365ec6"
+SRC_URI = "git://github.com/nxp-imx/imx-test.git;protocol=https;branch=${SRCBRANCH} \
+ file://memtool_profile"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "68243988862f0e66a37754b4dbe4e7833b903f0c"
+
S = "${WORKDIR}/git"
inherit module-base use-imx-headers
@@ -38,6 +38,7 @@ PLATFORM:mx6ul-nxp-bsp = "IMX6UL"
PLATFORM:mx7d-nxp-bsp = "IMX7D"
PLATFORM:mx7ulp-nxp-bsp = "IMX7D"
PLATFORM:mx8-nxp-bsp = "IMX8"
+PLATFORM:mx8ulp-nxp-bsp = "IMX8ULP"
PARALLEL_MAKE = "-j 1"
EXTRA_OEMAKE += "${PACKAGECONFIG_CONFARGS}"
@@ -72,11 +73,11 @@ do_install() {
if [ -e ${WORKDIR}/clocks.sh ]; then
install -m 755 ${WORKDIR}/clocks.sh ${D}/unit_tests/clocks.sh
fi
- install -d -m 0755 ${D}/home/root/
- install -m 0644 ${WORKDIR}/memtool_profile ${D}/home/root/.profile
+ install -d -m 0755 ${D}${ROOT_HOME}/
+ install -m 0644 ${WORKDIR}/memtool_profile ${D}${ROOT_HOME}/.profile
}
-FILES:${PN} += "/unit_tests /home/root/.profile"
+FILES:${PN} += "/unit_tests ${ROOT_HOME}/.profile"
RDEPENDS:${PN} = "bash"
FILES:${PN}-dbg += "/unit_tests/.debug"
diff --git a/recipes-bsp/imx-uuc/imx-uuc_git.bb b/recipes-bsp/imx-uuc/imx-uuc_git.bb
index 2f001dda..4b4915e5 100644
--- a/recipes-bsp/imx-uuc/imx-uuc_git.bb
+++ b/recipes-bsp/imx-uuc/imx-uuc_git.bb
@@ -12,7 +12,7 @@ PR = "r1"
PV = "0.5.1+git${SRCPV}"
SRC_URI = "git://github.com/NXPmicro/imx-uuc.git;protocol=https;branch=master"
-SRCREV = "d6afb27e55d73d7ad08cd2dd51c784d8ec9694dc"
+SRCREV = "61f258fb6f10f690633eb068a8d4aaaba5e5e8a2"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.7.0.bb b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.9.0.bb
index 96c0c589..26ebf181 100644
--- a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.7.0.bb
+++ b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.9.0.bb
@@ -1,8 +1,8 @@
-# Copyright (C) 2019-2021 NXP
+# Copyright 2019-2022 NXP
DESCRIPTION = "i.MX VC8000E Encoder library"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
inherit fsl-eula-unpack
@@ -10,8 +10,8 @@ SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
S = "${WORKDIR}/${BPN}-${PV}"
-SRC_URI[md5sum] = "2dbcd9a71d53b86654704932798f263e"
-SRC_URI[sha256sum] = "8af665f8e06e0e467f563e372f43583d94128f0d37f75321965bc26bd4404b2b"
+SRC_URI[md5sum] = "192b354d1c21836dc7338606e60b45ae"
+SRC_URI[sha256sum] = "62b5ba3c4aab21d0d4be3eee9b204a9bb50b83b6140ee1a3b27c648809bdfbaa"
# 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_1.1.2.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.1.4.bb
index 25cd931e..b5e1d0e1 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.1.2.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.1.4.bb
@@ -6,11 +6,9 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cd8bc2a79509c22fc9c1782a151210b1"
DEPENDS = "imx-vpu-hantro"
DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc"
-SRC_URI = " \
- ${FSL_MIRROR}/${BP}.tar.gz \
-"
-SRC_URI[md5sum] = "f30942393a9093388adf91edb458f7a6"
-SRC_URI[sha256sum] = "77e25ad1e1860f0a3983f07d6beb9a04ff32763bacf26db9aefd16559e6eea9b"
+SRC_URI = "${FSL_MIRROR}/${BP}.tar.gz"
+SRC_URI[md5sum] = "e4bdaa1e064e3959576f7dd5a2d89389"
+SRC_URI[sha256sum] = "83ba2798564702d74ab65f6238f95f59247d983b846de1de4c19bdfaf6dabeb8"
PLATFORM:mx8mm-nxp-bsp = "IMX8MM"
PLATFORM:mx8mq-nxp-bsp = "IMX8MQ"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-buildsystem-don-t-ignore-externally-set-cflags.patch b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-buildsystem-don-t-ignore-externally-set-cflags.patch
new file mode 100644
index 00000000..861230bb
--- /dev/null
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-buildsystem-don-t-ignore-externally-set-cflags.patch
@@ -0,0 +1,49 @@
+From aba22ec2e285cf7557a5049fa6181e82e7f1a489 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Mon, 21 Nov 2022 12:04:09 +0000
+Subject: [PATCH] buildsystem: don't ignore externally set cflags
+
+Upstream-Status: pending
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ decoder_sw/software/linux/h264high/Makefile | 4 ++--
+ decoder_sw/software/linux/vp6/Makefile | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/decoder_sw/software/linux/h264high/Makefile b/decoder_sw/software/linux/h264high/Makefile
+index 556ff71..7bdd99d 100755
+--- a/decoder_sw/software/linux/h264high/Makefile
++++ b/decoder_sw/software/linux/h264high/Makefile
+@@ -50,10 +50,10 @@ CLEAR_HDRINFO_IN_SEEK = n
+ DEBUG = y
+ # Add your debugging flag (or not) to CFLAGS
+ ifeq ($(DEBUG),y)
+- CFLAGS = $(M32) -g -O0
++ CFLAGS += $(M32) -g -O0
+ DEBFLAGS = -DDEBUG -D_ASSERT_USED -D_RANGE_CHECK -D_ERROR_PRINT
+ else
+- CFLAGS = $(M32) -O3
++ CFLAGS += $(M32) -O3
+ DEBFLAGS = -DNDEBUG
+ endif
+
+diff --git a/decoder_sw/software/linux/vp6/Makefile b/decoder_sw/software/linux/vp6/Makefile
+index b6e6914..b933d46 100755
+--- a/decoder_sw/software/linux/vp6/Makefile
++++ b/decoder_sw/software/linux/vp6/Makefile
+@@ -50,10 +50,10 @@ DEBUG = y
+
+ # Add your debugging flag (or not) to CFLAGS
+ ifeq ($(DEBUG),y)
+- CFLAGS = -g -O0
++ CFLAGS += -g -O0
+ DEBFLAGS = -DDEBUG -D_ASSERT_USED -D_ERROR_PRINT
+ else
+- CFLAGS = -O3
++ CFLAGS += -O3
+ DEBFLAGS = -DNDEBUG
+ endif
+
+--
+2.35.3
+
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.25.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.27.0.bb
index f2381d43..35adecf8 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.25.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.27.0.bb
@@ -2,13 +2,16 @@
DESCRIPTION = "i.MX Hantro VPU library"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
PROVIDES = "virtual/imxvpu"
-SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "6d84b9eecc2f6027f9dbe1c875a4e7b5"
-SRC_URI[sha256sum] = "dd812b92b302bcfb92c10e937d9cad9224edf1593e9e4691d539ab4e190583f0"
+SRC_URI = " \
+ ${FSL_MIRROR}/${BP}.bin;fsl-eula=true \
+ file://0001-buildsystem-don-t-ignore-externally-set-cflags.patch \
+"
+SRC_URI[md5sum] = "cfa0e92da0eca9cf622c4d7abc618cef"
+SRC_URI[sha256sum] = "7e9bcdbd067ce66a1247373cbf088945346feb0027deb61af541ebc1256277c3"
inherit fsl-eula-unpack use-imx-headers
diff --git a/recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb b/recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb
index 77c81f19..383a0e2a 100644
--- a/recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb
+++ b/recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb
@@ -2,7 +2,7 @@
# Copyright (C) 2013-2016 Freescale Semiconductor
# Copyright (C) 2017-2020 NXP
-DESCRIPTION = "Freescale VPU library"
+DESCRIPTION = "Freescale VPU library for Chips&Media VPU"
LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9"
@@ -28,5 +28,4 @@ do_install() {
oe_runmake PLATFORM="${PLATFORM}" DEST_DIR="${D}" install
}
-# Compatible only for i.MX with Chips&Media VPU
COMPATIBLE_MACHINE = "(mx6q-nxp-bsp|mx6dl-nxp-bsp)"
diff --git a/recipes-bsp/isp-imx/basler-camera_4.2.2.16.0.bb b/recipes-bsp/isp-imx/basler-camera_4.2.2.20.0.bb
index 5b53068c..60f69793 100644
--- a/recipes-bsp/isp-imx/basler-camera_4.2.2.16.0.bb
+++ b/recipes-bsp/isp-imx/basler-camera_4.2.2.20.0.bb
@@ -1,15 +1,15 @@
-# Copyright 2020-2021 NXP
+# Copyright 2020-2022 NXP
DESCRIPTION = "Basler camera binary drivers"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=03bcadc8dc0a788f66ca9e2b89f56c6f"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
inherit fsl-eula-unpack
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "489763169857773bade28611e649172e"
-SRC_URI[sha256sum] = "3d4ae594659a697eef7479ca2480cc53f1d460f22bcc1c58104cff63bc6705fe"
+SRC_URI[md5sum] = "ae075daf1f1d0592d0071ced32d6632f"
+SRC_URI[sha256sum] = "ea127cb942d09b0c1dd8636bcf39754307362e1aa0e3fe112bdd54ef73340906"
do_install() {
dest_dir=${D}/opt/imx8-isp/bin
@@ -22,6 +22,8 @@ do_install() {
SYSTEMD_AUTO_ENABLE = "enable"
FILES:${PN} = "${libdir} /opt"
-INSANE_SKIP:${PN} = "file-rdeps already-stripped"
+INSANE_SKIP:${PN} = "already-stripped"
+RDEPENDS:${PN} += "isp-imx"
+
COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
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
deleted file mode 100644
index bfea33a7..00000000
--- a/recipes-bsp/isp-imx/isp-imx/0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From a48c605b9f3860ee7abaca1a37add444a1b4001a Mon Sep 17 00:00:00 2001
-From: Chris Dimich <chris.dimich@boundarydevices.com>
-Date: Tue, 8 Mar 2022 14:45:28 -0800
-Subject: [PATCH 1/1] start_isp.sh: fix NR_DEVICE_TREE_BASLER variable
-
-The NR_DEVICE_TREE_BASLER variable has the wrong path.
-
-Signed-off-by: Chris Dimich <chris.dimich@boundarydevices.com>
----
- imx/start_isp.sh | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/imx/start_isp.sh b/imx/start_isp.sh
-index 6daabc59c..8a07acfed 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
---
-2.31.1
-
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.16.0.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.20.0.bb
index 2d99496e..81cb8882 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.16.0.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.20.0.bb
@@ -1,17 +1,14 @@
-# Copyright 2020-2021 NXP
+# Copyright 2020-2023 NXP
DESCRIPTION = "i.MX Verisilicon Software ISP"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=03bcadc8dc0a788f66ca9e2b89f56c6f"
-DEPENDS = "python3 libdrm virtual/libg2d libtinyxml2-8"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
+DEPENDS = "boost libdrm virtual/libg2d libtinyxml2"
-SRC_URI = " \
- ${FSL_MIRROR}/${BP}.bin;fsl-eula=true \
- file://0001-start_isp.sh-fix-NR_DEVICE_TREE_BASLER-variable.patch \
-"
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "f490153dbec234a04416ad41834806b2"
-SRC_URI[sha256sum] = "83b24b9d1f7a40a506a45a1c5c2ef2ca2313fe9b23fde591e3b7dce77ea359ca"
+SRC_URI[md5sum] = "36b4eebdb3382c59fef99521ec67bee2"
+SRC_URI[sha256sum] = "62bea59cce578c5d4e4cc4eeb0439bd1ac6a3f692649b275184f3cf63e397c41"
inherit fsl-eula-unpack cmake systemd use-imx-headers
@@ -45,21 +42,16 @@ EXTRA_OECMAKE += " \
-Wno-dev \
"
-do_configure:prepend() {
- export SDKTARGETSYSROOT=${STAGING_DIR_HOST}
-}
-
-do_compile:prepend() {
- ln -sf ${RECIPE_SYSROOT}/${libdir}/libtinyxml2.so.?.?.? ${RECIPE_SYSROOT}/${libdir}/libtinyxml2.so
-}
-
do_install() {
install -d ${D}/${libdir}
install -d ${D}/${includedir}
install -d ${D}/opt/imx8-isp/bin
+ install -d ${D}/opt/imx8-isp/bin/dewarp_config
cp -r ${B}/generated/release/bin/*_test ${D}/opt/imx8-isp/bin
- cp -r ${B}/generated/release/bin/*2775* ${D}/opt/imx8-isp/bin
+ cp -r ${B}/generated/release/bin/*.xml ${D}/opt/imx8-isp/bin
+ cp -r ${B}/generated/release/bin/*.drv ${D}/opt/imx8-isp/bin
+ cp -r ${WORKDIR}/${BP}/dewarp/dewarp_config/ ${D}/opt/imx8-isp/bin
cp -r ${B}/generated/release/bin/isp_media_server ${D}/opt/imx8-isp/bin
cp -r ${B}/generated/release/bin/vvext ${D}/opt/imx8-isp/bin
cp -r ${B}/generated/release/lib/*.so* ${D}/${libdir}
@@ -78,10 +70,17 @@ do_install() {
}
# The build contains a mix of versioned and unversioned libraries, so
-# the default packaging configuration needs some modifications
+# the default packaging configuration needs some modification so that
+# unversioned .so libraries go to the main package and versioned .so
+# symlinks go to -dev.
FILES_SOLIBSDEV = ""
FILES:${PN} += "/opt ${libdir}/lib*${SOLIBSDEV}"
-FILES:${PN}-dev += " \
+FILES:${PN}-dev += "${FILES_SOLIBS_VERSIONED}"
+FILES_SOLIBS_VERSIONED = " \
+ ${libdir}/libar1335.so \
+ ${libdir}/libcppnetlib-client-connections.so \
+ ${libdir}/libcppnetlib-server-parsers.so \
+ ${libdir}/libcppnetlib-uri.so \
${libdir}/libjsoncpp.so \
${libdir}/libos08a20.so \
${libdir}/libov2775.so \
@@ -89,6 +88,6 @@ FILES:${PN}-dev += " \
INSANE_SKIP:${PN} = "rpaths"
-RDEPENDS:${PN} = "libdrm libpython3"
+RDEPENDS:${PN} = "libdrm"
COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/isp-imx/libtinyxml2-8_8.0.0.bb b/recipes-bsp/isp-imx/libtinyxml2-8_8.0.0.bb
deleted file mode 100644
index 07d52355..00000000
--- a/recipes-bsp/isp-imx/libtinyxml2-8_8.0.0.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "TinyXML-2 is a simple, small, efficient, C++ XML parser that can be easily integrating into other programs"
-HOMEPAGE = "http://www.grinninglizard.com/tinyxml2/"
-SECTION = "libs"
-LICENSE = "Zlib"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=135624eef03e1f1101b9ba9ac9b5fffd"
-
-SRC_URI = "git://github.com/leethomason/tinyxml2.git;branch=master;protocol=https"
-
-SRCREV = "bf15233ad88390461f6ab0dbcf046cce643c5fcb"
-
-S = "${WORKDIR}/git"
-
-inherit cmake
-
-# make sure we don't provide files which are also present in the
-# current libtinyxml2 version's -dev package.
-do_install:append() {
- rm -rf ${D}/${includedir}
- rm -rf ${D}/${libdir}/cmake
- rm -rf ${D}/${libdir}/libtinyxml2.so
- rm -rf ${D}/${libdir}/pkgconfig
-}
diff --git a/recipes-bsp/libimxdmabuffer/files/0001-g2d-Fix-typo.patch b/recipes-bsp/libimxdmabuffer/files/0001-g2d-Fix-typo.patch
deleted file mode 100644
index 490d3a2f..00000000
--- a/recipes-bsp/libimxdmabuffer/files/0001-g2d-Fix-typo.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 41825b11289be251fed64470893d18b89b0dd38b Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <crg7475@mailbox.org>
-Date: Sun, 8 May 2022 16:25:44 +0200
-Subject: [PATCH] g2d: Fix typo
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
-
-Upstream-Status: Backport [41825b11289be251fed64470893d18b89b0dd38b]
----
- imxdmabuffer/imxdmabuffer_g2d_allocator.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/imxdmabuffer/imxdmabuffer_g2d_allocator.c b/imxdmabuffer/imxdmabuffer_g2d_allocator.c
-index f10a909..497dcea 100644
---- a/imxdmabuffer/imxdmabuffer_g2d_allocator.c
-+++ b/imxdmabuffer/imxdmabuffer_g2d_allocator.c
-@@ -139,7 +139,7 @@ static uint8_t* imx_dma_buffer_g2d_allocator_map(ImxDmaBufferAllocator *allocato
- * (Other allocators perform more steps than this.) */
- if (imx_g2d_buffer->mapping_refcount > 0)
- {
-- assert((imx_dwl_buffer->map_flags & flags & IMX_DMA_BUFFER_MAPPING_READWRITE_FLAG_MASK) == (flags & IMX_DMA_BUFFER_MAPPING_READWRITE_FLAG_MASK));
-+ assert((imx_g2d_buffer->map_flags & flags & IMX_DMA_BUFFER_MAPPING_READWRITE_FLAG_MASK) == (flags & IMX_DMA_BUFFER_MAPPING_READWRITE_FLAG_MASK));
- imx_g2d_buffer->mapping_refcount++;
- }
- else
---
-2.32.0
-
diff --git a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.2.bb b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb
index 090593be..b160c31d 100644
--- a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.2.bb
+++ b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb
@@ -8,9 +8,8 @@ SECTION = "base"
PV .= "+git${SRCPV}"
SRCBRANCH ?= "master"
-SRCREV = "5410b44fb0c5bbd9fb1f3ba0681e65068d8cde57"
+SRCREV = "faf547cc2345bfbf95507ab7e86530f85289bb5b"
SRC_URI = "git://github.com/Freescale/libimxdmabuffer.git;branch=${SRCBRANCH};protocol=https \
- file://0001-g2d-Fix-typo.patch \
file://run-ptest \
"
diff --git a/recipes-bsp/mc-utils/mc-utils_git.bb b/recipes-bsp/mc-utils/mc-utils_git.bb
index 97bbd7e7..fc0486e0 100644
--- a/recipes-bsp/mc-utils/mc-utils_git.bb
+++ b/recipes-bsp/mc-utils/mc-utils_git.bb
@@ -1,14 +1,14 @@
DESCRIPTION = "The Management Complex (MC) is a key component of DPAA"
SECTION = "mc-utils"
-LICENSE = "BSD"
+LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=386a6287daa6504b7e7e5014ddfb3987"
DEPENDS += "dtc-native"
inherit deploy
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/mc-utils;nobranch=1"
-SRCREV = "12ffee82d210cb6b5c8fa30fbc6f5d29e4be2e6f"
+SRC_URI = "git://github.com/nxp-qoriq/mc-utils;protocol=https;nobranch=1"
+SRCREV = "bc141334051a2e1e3ea2f4eedee8e1165d52e4a5"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/rcw/rcw_git.bb b/recipes-bsp/rcw/rcw_git.bb
index b797f207..901fed5d 100644
--- a/recipes-bsp/rcw/rcw_git.bb
+++ b/recipes-bsp/rcw/rcw_git.bb
@@ -7,8 +7,8 @@ DEPENDS += "tcl-native"
inherit deploy siteinfo
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/rcw;nobranch=1"
-SRCREV = "1f431891c7f0e7d4f52327f1fe19504a284491c4"
+SRC_URI = "git://github.com/nxp-qoriq/rcw;protocol=https;nobranch=1"
+SRCREV = "a4db86818de35d0168a48d3f17878ec68fb1cf6d"
S = "${WORKDIR}/git"
@@ -20,6 +20,7 @@ BOARD_TARGETS="${M}"
BOARD_TARGETS:ls2088ardb="${M} ${M}_rev1.1"
BOARD_TARGETS:ls1088ardb-pb="ls1088ardb"
BOARD_TARGETS:lx2160ardb = "${M} ${M}_rev2"
+BOARD_TARGETS:lx2160ardb-rev2 = "lx2160ardb_rev2"
do_compile () {
oe_runmake BOARDS="${BOARD_TARGETS}" DESTDIR=${D}/boot/rcw/
diff --git a/recipes-bsp/u-boot/u-boot-fslc-common_2022.04.inc b/recipes-bsp/u-boot/u-boot-fslc-common_2022.10.inc
index 0fad0367..9e5cfe5e 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-common_2022.04.inc
+++ b/recipes-bsp/u-boot/u-boot-fslc-common_2022.10.inc
@@ -1,19 +1,19 @@
-# Copyright (C) 2012-2019 O.S. Systems Software LTDA.
+# Copyright (C) 2012-2022 O.S. Systems Software LTDA.
# Released under the MIT license (see COPYING.MIT for the terms)
inherit fsl-u-boot-localversion
LICENSE = "GPL-2.0-or-later"
-LIC_FILES_CHKSUM = "file://Licenses/README;md5=5a7450c57ffe5ae63fd732446b988025"
+LIC_FILES_CHKSUM = "file://Licenses/README;md5=2ca5f2c35c8cc335f0a19756634782f1"
DEPENDS += "flex-native bison-native"
SRC_URI = "git://github.com/Freescale/u-boot-fslc.git;branch=${SRCBRANCH};protocol=https"
-SRCREV = "f88519827335b548fcd276acda32107f5120276f"
-SRCBRANCH = "2022.04+fslc"
+SRCREV = "cbd7eb17ac1f781b9c511982e43d52f4304f0fd5"
+SRCBRANCH = "2022.10+fslc"
-PV = "v2022.04+git${SRCPV}"
+PV = "2022.10+git${SRCPV}"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
diff --git a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2022.04.bb b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2022.10.bb
index 2e79166b..2e79166b 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2022.04.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc-mfgtool_2022.10.bb
diff --git a/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.04.bb b/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.10.bb
index 2660df9e..a7dfd8aa 100644
--- a/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.04.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.10.bb
@@ -3,7 +3,7 @@ require u-boot-fslc-common_${PV}.inc
DESCRIPTION = "U-boot bootloader mxsboot tool"
SECTION = "bootloader"
-DEPENDS = "bison-native gnutls-native dtc openssl"
+DEPENDS = "swig-native bison-native gnutls-native dtc openssl"
PROVIDES = "u-boot-mxsboot"
diff --git a/recipes-bsp/u-boot/u-boot-fslc_2022.04.bb b/recipes-bsp/u-boot/u-boot-fslc_2022.10.bb
index de6d22d0..1953d788 100644
--- a/recipes-bsp/u-boot/u-boot-fslc_2022.04.bb
+++ b/recipes-bsp/u-boot/u-boot-fslc_2022.10.bb
@@ -10,12 +10,6 @@ inherit ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '1', 'im
DEPENDS += "bc-native dtc-native python3-setuptools-native"
-# Location known to imx-boot component, where U-Boot artifacts
-# should be additionally deployed.
-# See below note above do_deploy:append:mx8m-nxp-bsp for the purpose of
-# this delopyment location
-BOOT_TOOLS = "imx-boot-tools"
-
PROVIDES += "u-boot"
B = "${WORKDIR}/build"
diff --git a/recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc b/recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc
deleted file mode 100644
index 36f948c5..00000000
--- a/recipes-bsp/u-boot/u-boot-imx-common_2021.04.inc
+++ /dev/null
@@ -1,18 +0,0 @@
-DESCRIPTION = "i.MX U-Boot suppporting i.MX reference boards."
-
-LICENSE = "GPL-2.0-or-later"
-LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-SRCBRANCH = "lf_v2021.04"
-SRC_URI = "git://source.codeaurora.org/external/imx/uboot-imx.git;protocol=https;branch=${SRCBRANCH}"
-SRCREV = "f7b43f8b4c1e4e3ee6c6ff2fe9c61b2092e8b96b"
-LOCALVERSION ?= "-imx_v2021.04_5.15.5-1.0.0"
-
-DEPENDS += "flex-native bison-native bc-native dtc-native"
-
-S = "${WORKDIR}/git"
-B = "${WORKDIR}/build"
-
-inherit fsl-u-boot-localversion
-
-BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/u-boot/u-boot-imx-common_2022.04.inc b/recipes-bsp/u-boot/u-boot-imx-common_2022.04.inc
new file mode 100644
index 00000000..939031d8
--- /dev/null
+++ b/recipes-bsp/u-boot/u-boot-imx-common_2022.04.inc
@@ -0,0 +1,25 @@
+DESCRIPTION = "i.MX U-Boot suppporting i.MX reference boards."
+
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://github.com/nxp-imx/uboot-imx.git;protocol=https;branch=${SRCBRANCH}"
+SRCBRANCH = "lf_v2022.04"
+LOCALVERSION ?= "-imx_v2022.04_5.15.71-2.2.0"
+SRCREV = "181859317bfafef1da79c59a4498650168ad9df6"
+
+DEPENDS += " \
+ bc-native \
+ bison-native \
+ dtc-native \
+ flex-native \
+ gnutls-native \
+ xxd-native \
+"
+
+S = "${WORKDIR}/git"
+B = "${WORKDIR}/build"
+
+inherit fsl-u-boot-localversion
+
+BOOT_TOOLS = "imx-boot-tools"
diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2022.04.bb
index 500b2de0..d9d5b9d5 100644
--- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2022.04.bb
@@ -2,9 +2,10 @@
# Copyright (C) 2014-2016 Freescale Semiconductor
# Copyright 2017-2019 NXP
+# Re-use the u-boot-imx recipe and its files
+require u-boot-imx_${PV}.bb
FILESEXTRAPATHS:prepend := "${THISDIR}/u-boot-imx:"
-require u-boot-imx_${PV}.bb
require u-boot-mfgtool.inc
UUU_BOOTLOADER_TAGGED = ""
diff --git a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx_2022.04.bb
index 21883af8..d48395c3 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2022.04.bb
@@ -9,14 +9,17 @@ PROVIDES += "u-boot"
inherit uuu_bootloader_tag
-UUU_BOOTLOADER = ""
-UUU_BOOTLOADER:mx6-nxp-bsp = "${UBOOT_BINARY}"
-UUU_BOOTLOADER:mx7-nxp-bsp = "${UBOOT_BINARY}"
-UUU_BOOTLOADER_TAGGED = ""
-UUU_BOOTLOADER_TAGGED:mx6-nxp-bsp = "u-boot-tagged.${UBOOT_SUFFIX}"
-UUU_BOOTLOADER_TAGGED:mx7-nxp-bsp = "u-boot-tagged.${UBOOT_SUFFIX}"
+UUU_BOOTLOADER = ""
+UUU_BOOTLOADER:mx6-generic-bsp = "${UBOOT_BINARY}"
+UUU_BOOTLOADER:mx7-generic-bsp = "${UBOOT_BINARY}"
+UUU_BOOTLOADER_TAGGED = ""
+UUU_BOOTLOADER_TAGGED:mx6-generic-bsp = "u-boot-tagged.${UBOOT_SUFFIX}"
+UUU_BOOTLOADER_TAGGED:mx7-generic-bsp = "u-boot-tagged.${UBOOT_SUFFIX}"
+UUU_BOOTLOADER_UNTAGGED = ""
+UUU_BOOTLOADER_UNTAGGED:mx6-generic-bsp = "u-boot-untagged.${UBOOT_SUFFIX}"
+UUU_BOOTLOADER_UNTAGGED:mx7-generic-bsp = "u-boot-untagged.${UBOOT_SUFFIX}"
-do_deploy:append:mx8m-nxp-bsp() {
+do_deploy:append:mx8m-generic-bsp() {
# Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
then
@@ -27,8 +30,8 @@ do_deploy:append:mx8m-nxp-bsp() {
if [ $j -eq $i ]
then
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0777 ${B}/${config}/arch/arm/dts/${UBOOT_DTB_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0777 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type}
+ install -m 0644 ${B}/${config}/arch/arm/dts/${UBOOT_DTB_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0644 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type}
fi
done
unset j
@@ -38,4 +41,4 @@ do_deploy:append:mx8m-nxp-bsp() {
}
PACKAGE_ARCH = "${MACHINE_ARCH}"
-COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp)"
+COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp|mx9-generic-bsp)"
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2021.04.bb b/recipes-bsp/u-boot/u-boot-qoriq_2021.04.bb
index b6385322..6c174210 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2021.04.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2021.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;protocol=https;nobranch=1"
SRCREV= "1c0116f3da250c5a52858c53efb8b38c0963f477"
S = "${WORKDIR}/git"
diff --git a/recipes-bsp/uefi/uefi_git.bb b/recipes-bsp/uefi/uefi_git.bb
index d7ef0b72..bb7cf2ae 100644
--- a/recipes-bsp/uefi/uefi_git.bb
+++ b/recipes-bsp/uefi/uefi_git.bb
@@ -5,8 +5,8 @@ LIC_FILES_CHKSUM = "file://NXP-Binary-EULA;md5=343ec8f06efc37467a6de53686fa6315"
inherit deploy
-SRC_URI = "git://github.com/NXP/qoriq-uefi-binary.git;nobranch=1;protocol=https"
-SRCREV= "1b28cad962a3f7b61baae2229cb3b84926941cfa"
+SRC_URI = "git://github.com/nxp-qoriq/qoriq-uefi-binary.git;nobranch=1;protocol=https"
+SRCREV = "a92e8b495eb394315de78a4002fe8a651adbabd1"
S = "${WORKDIR}/git"
diff --git a/recipes-devtools/qemu/qemu-qoriq_4.2.bb b/recipes-devtools/qemu/qemu-qoriq_4.2.bb
index f788f724..5ac774ed 100644
--- a/recipes-devtools/qemu/qemu-qoriq_4.2.bb
+++ b/recipes-devtools/qemu/qemu-qoriq_4.2.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;protocol=https;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-devtools/cst/cst/0001-tools-Mark-struct-input_field-file_field-extern.patch b/recipes-devtools/qoriq-cst/qoriq-cst/0001-tools-Mark-struct-input_field-file_field-extern.patch
index d25675aa..d25675aa 100644
--- a/recipes-devtools/cst/cst/0001-tools-Mark-struct-input_field-file_field-extern.patch
+++ b/recipes-devtools/qoriq-cst/qoriq-cst/0001-tools-Mark-struct-input_field-file_field-extern.patch
diff --git a/recipes-devtools/cst/cst_git.bb b/recipes-devtools/qoriq-cst/qoriq-cst_git.bb
index b9ac3e9e..8d345836 100644
--- a/recipes-devtools/cst/cst_git.bb
+++ b/recipes-devtools/qoriq-cst/qoriq-cst_git.bb
@@ -4,7 +4,7 @@ LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=e959d5d617e33779d0e90ce1d9043eff"
-DEPENDS += "openssl cst-native"
+DEPENDS += "openssl qoriq-cst-native"
RDEPENDS:${PN} = "bash"
GENKEYS ?= "${STAGING_BINDIR_NATIVE}/cst/gen_keys"
@@ -16,10 +16,10 @@ 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;protocol=https;nobranch=1 \
file://0001-tools-Mark-struct-input_field-file_field-extern.patch \
"
-SRCREV = "dfe30d3f05cfe281896482839e57ed49c52f2088"
+SRCREV = "af56e6c5c66dd2bc86a83b0bee8cb61b88d2120c"
S = "${WORKDIR}/git"
diff --git a/recipes-devtools/uuu/files/0001-remove-unnecessary-libzip-dependency.patch b/recipes-devtools/uuu/files/0001-remove-unnecessary-libzip-dependency.patch
deleted file mode 100644
index 52a6b880..00000000
--- a/recipes-devtools/uuu/files/0001-remove-unnecessary-libzip-dependency.patch
+++ /dev/null
@@ -1,135 +0,0 @@
-From 96ed03b04cb9a94043e44c5f5caa8825a0e89f3a Mon Sep 17 00:00:00 2001
-From: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
-Date: Wed, 13 Oct 2021 10:18:50 +0200
-Subject: [PATCH] remove unnecessary libzip dependency
-
-It seems that the libzip dependency has been added by mistake. See
-full analysis in https://github.com/NXPmicro/mfgtools/issues/294 .
-
-Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
-Upstream-Status: Backport [https://github.com/NXPmicro/mfgtools/pull/295]
----
- .travis.yml | 1 -
- README.md | 4 ++--
- appveyor.yml | 4 ++--
- libuuu/CMakeLists.txt | 1 -
- snap/snapcraft.yaml | 2 --
- uuu/CMakeLists.txt | 5 ++---
- 6 files changed, 6 insertions(+), 11 deletions(-)
-
-diff --git a/.travis.yml b/.travis.yml
-index 9138aff..1d2d235 100644
---- a/.travis.yml
-+++ b/.travis.yml
-@@ -33,7 +33,6 @@ addons:
- packages:
- - cmake
- - libusb
-- - libzip
- - openssl
- - pkg-config
-
-diff --git a/README.md b/README.md
-index 20c3f97..6910276 100644
---- a/README.md
-+++ b/README.md
-@@ -68,7 +68,7 @@ Note that, since uuu is an OSI compliant Open Source project, you are entitled t
- ## Linux
- - `git clone https://github.com/NXPmicro/mfgtools.git`
- - `cd mfgtools`
--- `sudo apt-get install libusb-1.0-0-dev libzip-dev libbz2-dev pkg-config cmake libssl-dev g++`
-+- `sudo apt-get install libusb-1.0-0-dev libbz2-dev pkg-config cmake libssl-dev g++`
- - `cmake . && make`
-
- The above commands build mfgtools in source. To build it out of source
-@@ -83,7 +83,7 @@ For cmake prior 3.13:
- ## macOS
- - `git clone https://github.com/NXPmicro/mfgtools.git`
- - `cd mfgtools`
--- `brew install cmake libusb libzip openssl pkg-config`
-+- `brew install cmake libusb openssl pkg-config`
- - `cmake -DOPENSSL_ROOT_DIR=$(brew --prefix)/opt/openssl . && make`
-
- Note that we assume [brew](https://brew.sh) is installed and can be used to resolve dependencies as shown above. The remaining dependency `libbz2` can be resolved via the XCode supplied libraries.
-diff --git a/appveyor.yml b/appveyor.yml
-index 9e1c74a..e679f84 100644
---- a/appveyor.yml
-+++ b/appveyor.yml
-@@ -28,11 +28,11 @@ install:
-
- - cmd: cd ..
-
--- sh: if [ "${APPVEYOR_BUILD_WORKER_IMAGE}" = "macOS" ]; then brew install libusb libzip pkg-config; fi
-+- sh: if [ "${APPVEYOR_BUILD_WORKER_IMAGE}" = "macOS" ]; then brew install libusb pkg-config; fi
-
- - sh: if [ "${APPVEYOR_BUILD_WORKER_IMAGE}" != "macOS" ]; then sudo apt-get update; fi
-
--- sh: if [ "${APPVEYOR_BUILD_WORKER_IMAGE}" != "macOS" ]; then sudo DEBIAN_FRONTEND=noninteractive apt-get --yes --force-yes install libusb-1.0-0-dev libzip-dev libbz2-dev asciidoc rename; fi
-+- sh: if [ "${APPVEYOR_BUILD_WORKER_IMAGE}" != "macOS" ]; then sudo DEBIAN_FRONTEND=noninteractive apt-get --yes --force-yes install libusb-1.0-0-dev libbz2-dev asciidoc rename; fi
-
- build_script:
-
-diff --git a/libuuu/CMakeLists.txt b/libuuu/CMakeLists.txt
-index f4390a7..2ace072 100644
---- a/libuuu/CMakeLists.txt
-+++ b/libuuu/CMakeLists.txt
-@@ -7,7 +7,6 @@ set(CMAKE_SKIP_RPATH ON)
- find_package(BZip2 REQUIRED)
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(LIBUSB REQUIRED libusb-1.0>=1.0.16)
--pkg_check_modules(LIBZIP REQUIRED libzip)
- find_package(Threads)
-
- if (STATIC)
-diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml
-index 09b9065..8a98cca 100644
---- a/snap/snapcraft.yaml
-+++ b/snap/snapcraft.yaml
-@@ -103,14 +103,12 @@ parts:
- - libbz2-dev
- - libusb-1.0-0-dev
- - libssl-dev
-- - libzip-dev
- - pkg-config
- plugin: cmake
- stage-packages:
- - libbz2-1.0
- - libusb-1.0-0
- - libssl1.0.0
-- - libzip4
- filesets:
- docs-copyright:
- - usr/share/doc/*/copyright
-diff --git a/uuu/CMakeLists.txt b/uuu/CMakeLists.txt
-index b57a67e..ab78529 100644
---- a/uuu/CMakeLists.txt
-+++ b/uuu/CMakeLists.txt
-@@ -6,7 +6,6 @@ set(CMAKE_SKIP_RPATH ON)
-
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(LIBUSB REQUIRED libusb-1.0>=1.0.16)
--pkg_check_modules(LIBZIP REQUIRED libzip)
- pkg_check_modules(LIBZ REQUIRED zlib)
- find_package(Threads)
-
-@@ -34,7 +33,7 @@ set(LSTS
- nand_burn_loader.lst
- )
-
--link_directories(${CMAKE_CURRENT_SOURCE_DIR}/libuuu ${LIBUSB_LIBRARY_DIRS} ${LIBZIP_LIBRARY_DIRS} ${LIBZ_LIBRARY_DIRS})
-+link_directories(${CMAKE_CURRENT_SOURCE_DIR}/libuuu ${LIBUSB_LIBRARY_DIRS} ${LIBZ_LIBRARY_DIRS})
-
- set(CLIST_EXECUTABLE ${CMAKE_CURRENT_SOURCE_DIR}/gen_txt_include.sh)
- set(generated_files_dir "${CMAKE_BINARY_DIR}/uuu/gen")
-@@ -70,7 +69,7 @@ set(SOURCES
- )
-
- add_executable(uuu ${SOURCES})
--target_link_libraries(uuu uuc_s ${OPENSSL_LIBRARIES} ${LIBUSB_LIBRARIES} ${LIBZIP_LIBRARIES} ${LIBZ_LIBRARIES} dl bz2)
-+target_link_libraries(uuu uuc_s ${OPENSSL_LIBRARIES} ${LIBUSB_LIBRARIES} ${LIBZ_LIBRARIES} dl bz2)
-
- install(TARGETS uuu DESTINATION bin)
- target_compile_definitions(uuu
---
-2.31.1
-
diff --git a/recipes-devtools/uuu/uuu-bin_1.4.243.bb b/recipes-devtools/uuu/uuu-bin_1.4.243.bb
new file mode 100644
index 00000000..4ad823aa
--- /dev/null
+++ b/recipes-devtools/uuu/uuu-bin_1.4.243.bb
@@ -0,0 +1,35 @@
+# Copyright (C) 2022-2023 O.S. Systems Software LTDA.
+# Released under the MIT License (see COPYING.MIT for the terms)
+
+SUMMARY = "Universal Update Utility - Binaries"
+DESCRIPTION = "Image deploy tool for i.MX chips"
+HOMEPAGE = "https://github.com/nxp-imx/mfgtools"
+
+LICENSE = "BSD-3-Clause & LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9 \
+ file://${COMMON_LICENSE_DIR}/LGPL-2.1-or-later;md5=2a4f4fd2128ea2f65047ee63fbca9f68"
+
+SRC_URI = " \
+ https://github.com/nxp-imx/mfgtools/releases/download/uuu_${PV}/uuu;downloadfilename=uuu-${PV};name=Linux \
+ https://github.com/nxp-imx/mfgtools/releases/download/uuu_${PV}/uuu_mac;downloadfilename=uuu-${PV}_mac;name=Mac \
+ https://github.com/nxp-imx/mfgtools/releases/download/uuu_${PV}/uuu.exe;downloadfilename=uuu-${PV}.exe;name=Windows \
+"
+
+SRC_URI[Linux.sha256sum] = "dfb2a6dca337ebd59675ea5ce7f1bce6724e3b901bcb455126d4bf9bdfa2e585"
+SRC_URI[Mac.sha256sum] = "399efa4bc7e3eb452fefe89ef5e2e453b516ea716658a963a890c430ad81a471"
+SRC_URI[Windows.sha256sum] = "f3f178e7be161c7dc058dbcd35c8cfa1516981e7c4f915fe0256ae4cda7f101e"
+
+S = "${WORKDIR}"
+
+inherit allarch
+
+do_install() {
+ install -D -m 0755 ${WORKDIR}/uuu-${PV} ${D}${libdir}/uuu/uuu
+ install -D -m 0755 ${WORKDIR}/uuu-${PV}_mac ${D}${libdir}/uuu/uuu_mac
+ install -D -m 0644 ${WORKDIR}/uuu-${PV}.exe ${D}${libdir}/uuu/uuu.exe
+}
+
+# HACK! We are not aiming to run those binaries during the build but copy then for MFGTOOL bundle.
+INSANE_SKIP:${PN} += "arch file-rdeps"
+FILES:${PN} = "${libdir}/uuu"
+SYSROOT_DIRS = "${libdir}/uuu"
diff --git a/recipes-devtools/uuu/uuu_git.bb b/recipes-devtools/uuu/uuu_git.bb
index caa349b2..e4a23cde 100644
--- a/recipes-devtools/uuu/uuu_git.bb
+++ b/recipes-devtools/uuu/uuu_git.bb
@@ -1,12 +1,10 @@
SUMMARY = "Universal Update Utility"
DESCRIPTION = "Image deploy tool for i.MX chips"
-HOMEPAGE = "https://github.com/NXPmicro/mfgtools"
+HOMEPAGE = "https://github.com/nxp-imx/mfgtools"
-SRC_URI = "git://github.com/NXPmicro/mfgtools.git;protocol=https;branch=master"
-SRCREV = "e10b0260076e0119c259f7f44447904f14109ba2"
-PV = "1.4.165"
-
-SRC_URI += "file://0001-remove-unnecessary-libzip-dependency.patch"
+SRC_URI = "git://github.com/nxp-imx/mfgtools.git;protocol=https;branch=master"
+SRCREV = "ed48c514ee4c1ea4562c875877b180a87474f895"
+PV = "1.4.243"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=38ec0c18112e9a92cffc4951661e85a5"
@@ -17,6 +15,4 @@ S = "${WORKDIR}/git"
DEPENDS = "libusb zlib bzip2 openssl"
-COMPATIBLE_MACHINE = "(imx-generic-bsp)"
-
BBCLASSEXTEND = "native nativesdk"
diff --git a/recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb b/recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb
new file mode 100644
index 00000000..7c7d3e39
--- /dev/null
+++ b/recipes-downgrade/vulkan/vulkan-headers_1.2.182.0.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Vulkan Header files and API registry"
+DESCRIPTION = "Vulkan is a 3D graphics and compute API providing cross-platform access \
+to modern GPUs with low overhead and targeting realtime graphics applications such as \
+games and interactive media. This package contains the development headers \
+for packages wanting to make use of Vulkan."
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Headers"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=master;protocol=https"
+
+SRCREV = "37164a5726f7e6113810f9557903a117498421cf"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+FILES:${PN} += "${datadir}/vulkan"
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb b/recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb
new file mode 100644
index 00000000..562c1c3b
--- /dev/null
+++ b/recipes-downgrade/vulkan/vulkan-loader_1.2.182.0.bb
@@ -0,0 +1,41 @@
+SUMMARY = "3D graphics and compute API common loader"
+DESCRIPTION = "Vulkan is a new generation graphics and compute API \
+that provides efficient access to modern GPUs. These packages \
+provide only the common vendor-agnostic library loader, headers and \
+the vulkaninfo utility."
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Loader"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;protocol=https;branch=main \
+ "
+SRCREV = "1896143df69d439b0933c1bb485f5a4587bdf2dc"
+
+S = "${WORKDIR}/git"
+
+REQUIRED_DISTRO_FEATURES = "vulkan"
+
+inherit cmake features_check pkgconfig
+ANY_OF_DISTRO_FEATURES = "x11 wayland"
+
+DEPENDS += "vulkan-headers"
+
+EXTRA_OECMAKE = "\
+ -DBUILD_TESTS=OFF \
+ -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
+ -DASSEMBLER_WORKS=FALSE \
+ -DVulkanHeaders_INCLUDE_DIR=${STAGING_INCDIR} \
+ -DVulkanRegistry_DIR=${RECIPE_SYSROOT}/${datadir} \
+ "
+
+# must choose x11 or wayland or both
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
+
+PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
+RRECOMMENDS:${PN} = "mesa-vulkan-drivers"
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb b/recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb
new file mode 100644
index 00000000..242b8973
--- /dev/null
+++ b/recipes-downgrade/vulkan/vulkan-tools_1.2.182.0.bb
@@ -0,0 +1,32 @@
+SUMMARY = "Vulkan Utilities and Tools"
+DESCRIPTION = "Assist development by enabling developers to verify their applications correct use of the Vulkan API."
+HOMEPAGE = "https://www.khronos.org/vulkan/"
+BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-Tools"
+SECTION = "libs"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;protocol=https;branch=sdk-1.2.182"
+SRCREV = "9d3305731c3be8de05c9f223a79959d448506a37"
+
+S = "${WORKDIR}/git"
+
+inherit cmake features_check
+ANY_OF_DISTRO_FEATURES = "x11 wayland"
+REQUIRED_DISTRO_FEATURES = "vulkan"
+
+DEPENDS += "vulkan-headers vulkan-loader"
+
+EXTRA_OECMAKE = "\
+ -DBUILD_TESTS=OFF \
+ -DBUILD_CUBE=OFF \
+ -DPYTHON_EXECUTABLE=${HOSTTOOLS_DIR}/python3 \
+ "
+
+# must choose x11 or wayland or both
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
+
+PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
+PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
+
+UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/recipes-dpaa/eth-config/eth-config_git.bb b/recipes-dpaa/eth-config/eth-config_git.bb
index b2f0713c..06e4382f 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;protocol=https;nobranch=1"
SRCREV = "6164664070e45810c793f112781ebcedc979e132"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa/flib/flib_git.bb b/recipes-dpaa/flib/flib_git.bb
index 51620b77..f1ebd87f 100644
--- a/recipes-dpaa/flib/flib_git.bb
+++ b/recipes-dpaa/flib/flib_git.bb
@@ -3,7 +3,7 @@ SECTION = "flib"
LICENSE = "BSD-3-Clause & GPL-2.0-only"
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;protocol=https;nobranch=1"
SRCREV = "cbb31427466649c07d2ac2739a41bb42f5f6be7c"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa/fm-ucode/fm-ucode_git.bb b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
index f79122c6..c7eb7319 100644
--- a/recipes-dpaa/fm-ucode/fm-ucode_git.bb
+++ b/recipes-dpaa/fm-ucode/fm-ucode_git.bb
@@ -1,14 +1,14 @@
DESCRIPTION = "Fman microcode binary"
SECTION = "fm-ucode"
-LICENSE = "Freescale-Binary-EULA"
-LIC_FILES_CHKSUM = "file://Freescale-Binary-EULA;md5=b784c031868ba1bd5ebc5de372c823fa"
+LICENSE = "NXP-Binary-EULA"
+LIC_FILES_CHKSUM = "file://NXP-Binary-EULA.txt;md5=12e248d404ce1ea8bed0148fcf127e69"
PR = "r1"
inherit deploy
SRC_URI = "git://github.com/NXP/qoriq-fm-ucode.git;nobranch=1;protocol=https"
-SRCREV = "c275e91392e2adab1ed22f3867b8269ca3c54014"
+SRCREV = "83e8467a356316265c7695bdc7741f23066795aa"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa/fmlib/fmlib_git.bb b/recipes-dpaa/fmlib/fmlib_git.bb
index bf834c4b..98f5c0d7 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;protocol=https;nobranch=1"
SRCREV = "69a70474cd8411d5a099c34f40760b6567d781d6"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa2/aiopsl/aiopsl_git.bb b/recipes-dpaa2/aiopsl/aiopsl_git.bb
index 4f21a696..68f7a8de 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;protocol=https;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 368e5aa6..d4f61c43 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;protocol=https;nobranch=1 \
+ git://github.com/nxp-qoriq/qbman_userspace;protocol=https;nobranch=1;name=qbman;destsuffix=git/lib/qbman_userspace \
file://0001-support-user-merge.patch \
"
SRCREV = "9db9c08379aa89f45f514f4f3f0a8e8212198758"
diff --git a/recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb b/recipes-dpaa2/gpp-aioptool/gpp-aioptool_git.bb
index a96913e8..303aa8ff 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;protocol=https;nobranch=1 \
file://0001-remove-libio.h.patch \
file://0001-add-fcommon-to-fix-gcc-10-build-issue.patch \
"
diff --git a/recipes-dpaa2/management-complex/management-complex_10.35.0.bb b/recipes-dpaa2/management-complex/management-complex_10.35.0.bb
new file mode 100644
index 00000000..d114a92e
--- /dev/null
+++ b/recipes-dpaa2/management-complex/management-complex_10.35.0.bb
@@ -0,0 +1,41 @@
+SUMMARY = "DPAA2 Management Complex Firmware"
+LICENSE = "NXP-Binary-EULA"
+LIC_FILES_CHKSUM = "file://NXP-Binary-EULA.txt;md5=1db1363924ceccb1edea921b6495bdc2"
+
+inherit deploy
+
+INHIBIT_DEFAULT_DEPS = "1"
+
+SRC_URI = "git://github.com/nxp/qoriq-mc-binary;protocol=https;nobranch=1"
+SRCREV = "836d7bf606b51c18b5e3726d68dcf3b3ac4de74a"
+
+S = "${WORKDIR}/git"
+
+REGLEX:ls2088a = "ls2088a"
+REGLEX:ls2080a = "ls2080a"
+REGLEX:ls1088a = "ls1088a"
+REGLEX:lx2160a = "lx216xa"
+REGLEX:lx2162a = "lx216xa"
+
+do_install () {
+ install -d ${D}/boot
+ install -m 755 ${S}/${REGLEX}/*.itb ${D}/boot
+}
+
+do_deploy () {
+ install -d ${DEPLOYDIR}/mc_app
+ install -m 755 ${S}/${REGLEX}/*.itb ${DEPLOYDIR}/mc_app
+ # make a symlink to the latest binary
+ for mc_binary in `find ${DEPLOYDIR}/mc_app -type f -printf "%f\n" |sort`;do
+ ln -sfT ${mc_binary} ${DEPLOYDIR}/mc_app/mc.itb
+ done
+}
+addtask deploy before do_build after do_install
+
+PACKAGES += "${PN}-image"
+FILES:${PN}-image += "/boot"
+
+INHIBIT_PACKAGE_STRIP = "1"
+
+COMPATIBLE_MACHINE = "(qoriq-arm64)"
+PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-dpaa2/restool/restool_git.bb b/recipes-dpaa2/restool/restool_git.bb
index 3ff5afd8..3af4b8aa 100644
--- a/recipes-dpaa2/restool/restool_git.bb
+++ b/recipes-dpaa2/restool/restool_git.bb
@@ -1,11 +1,11 @@
SUMMARY = "DPAA2 Resource Manager Tool"
-LICENSE = "BSD"
+LICENSE = "BSD-3-Clause | GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=ec8d84e9cd4de287e290275d09db27f0"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/restool;nobranch=1 \
+SRC_URI = "git://github.com/nxp-qoriq/restool;protocol=https;nobranch=1 \
file://disable-manpage-generation.patch \
"
-SRCREV = "d29522aef9f92ff2557978d5d3979b771a9576fe"
+SRCREV = "65c9a10d95b19e61d2f86dbcaa45d12ba98e85e1"
S = "${WORKDIR}/git"
diff --git a/recipes-dpaa2/spc/spc_git.bb b/recipes-dpaa2/spc/spc_git.bb
index 2ef1d01d..1ac61c69 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;protocol=https;nobranch=1"
SRCREV = "398138687a3d3d6ef174501221711de74ff7bc40"
S = "${WORKDIR}/git"
diff --git a/recipes-extended/dpdk/dpdk-20.11.inc b/recipes-extended/dpdk/dpdk-20.11.inc
index 38c34e1b..90b4c405 100644
--- a/recipes-extended/dpdk/dpdk-20.11.inc
+++ b/recipes-extended/dpdk/dpdk-20.11.inc
@@ -5,7 +5,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;protocol=https;nobranch=1"
SRCREV = "f74b8bd5ab1c6ff76e956fc202a56aea2d200270"
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 765c9420..e974eba0 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;protocol=https;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 f307816e..c9225a8b 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-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 0787523f..7e237553 100644
--- a/recipes-extended/jailhouse/jailhouse_0.12.bb
+++ b/recipes-extended/jailhouse/jailhouse_0.12.bb
@@ -13,12 +13,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9fa7f895f96bde2d47fd5b7d95b6ba4d \
file://driver/jailhouse.h;beginline=9;endline=36;md5=2825581c1666c44a17955dc574cfbfb3 \
"
-SRCBRANCH = "imx_5.4.47_2.2.0"
-SRCREV = "8bbe203ee7c1fc16198ce1bf964e54c90606c3c2"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "d9fffb8035a8a2b8d1182c750bd0e90bb4c0027a"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-jailhouse.git;protocol=ssh;branch=${SRCBRANCH} \
- file://0001-tools-scripts-update-shebang-to-python3.patch \
-"
+SRC_URI = "git://github.com/nxp-imx/imx-jailhouse.git;protocol=https;branch=${SRCBRANCH}"
DEPENDS = " \
make-native \
@@ -38,11 +36,6 @@ CELL_DIR ?= "${JH_DATADIR}/cells"
CELLCONF_DIR ?= "${JH_DATADIR}/configs"
INMATES_DIR ?= "${JH_DATADIR}/inmates"
-JH_CONFIG ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG:x86 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG:x86-64 ?= "${S}/ci/jailhouse-config-x86.h"
-JH_CONFIG:arm ?= "${S}/ci/jailhouse-config-banana-pi.h"
-
do_configure() {
if [ -d ${STAGING_DIR_HOST}/${CELLCONF_DIR} ];
then
@@ -50,29 +43,14 @@ do_configure() {
fi
}
-USER_SPACE_CFLAGS = '${CFLAGS} -DLIBEXECDIR=\\\"${libexecdir}\\\" \
- -DJAILHOUSE_VERSION=\\\"$JAILHOUSE_VERSION\\\" \
- -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Werror \
- -I../driver'
-
-TOOLS_SRC_DIR = "${S}/tools"
-TOOLS_OBJ_DIR = "${S}/tools"
-
-do_compile() {
+do_compile:prepend() {
unset LDFLAGS
oe_runmake V=1 CC="${CC}" \
ARCH=${JH_ARCH} CROSS_COMPILE=${TARGET_PREFIX} \
KDIR=${STAGING_KERNEL_BUILDDIR}
-
- cd ${TOOLS_SRC_DIR}
- export JAILHOUSE_VERSION=$(cat ../VERSION)
- oe_runmake V=1 \
- CFLAGS="${USER_SPACE_CFLAGS}" \
- src=${TOOLS_SRC_DIR} obj=${TOOLS_OBJ_DIR} \
- ${TOOLS_OBJ_DIR}/jailhouse-config-collect ${TOOLS_OBJ_DIR}/jailhouse
}
-do_install() {
+do_install:prepend() {
oe_runmake \
PYTHON=python3 \
V=1 \
@@ -81,6 +59,8 @@ do_install() {
ARCH=${JH_ARCH} \
CROSS_COMPILE=${TARGET_PREFIX} \
KDIR=${STAGING_KERNEL_BUILDDIR} \
+ INSTALL_MOD_PATH=${D}${root_prefix} \
+ firmwaredir=${nonarch_base_libdir}/firmware \
DESTDIR=${D} install
install -d ${D}${CELL_DIR}
@@ -99,10 +79,12 @@ do_install() {
install ${B}/inmates/tools/${JH_ARCH}/linux-loader.bin ${D}${INMATES_DIR}/tools/${JH_ARCH}
}
-PACKAGE_BEFORE_PN = "kernel-module-jailhouse pyjailhouse"
+PACKAGE_BEFORE_PN = "pyjailhouse"
FILES:${PN} += "${nonarch_base_libdir}/firmware ${libexecdir} ${sbindir} ${JH_DATADIR}"
-FILES:pyjailhouse = "${PYTHON_SITEPACKAGES_DIR}/pyjailhouse"
+# Remove libdir/* appended by setuptools3-base.bbclass for module split to work correctly
+FILES:${PN}:remove = "${libdir}/*"
+FILES:pyjailhouse = "${PYTHON_SITEPACKAGES_DIR}"
RDEPENDS:${PN} += " \
python3-curses \
@@ -119,4 +101,4 @@ RDEPENDS:pyjailhouse = " \
INSANE_SKIP:${PN} = "ldflags"
-COMPATIBLE_MACHINE = "(mx8m-nxp-bsp)"
+COMPATIBLE_MACHINE = "(mx8m-nxp-bsp|mx8ulp-nxp-bsp|mx93-nxp-bsp)"
diff --git a/recipes-extended/libpkcs11/libpkcs11_git.bb b/recipes-extended/libpkcs11/libpkcs11_git.bb
index 74176b9a..731b7a23 100644
--- a/recipes-extended/libpkcs11/libpkcs11_git.bb
+++ b/recipes-extended/libpkcs11/libpkcs11_git.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "PKCS library"
LICENSE = "GPL-2.0-only & 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;protocol=https;nobranch=1 \
file://0001-fix-multiple-definition-error.patch \
"
SRCREV = "8d85182b7a7cd393ab6dd72930f8d1b69468f741"
diff --git a/recipes-extended/odp/odp.inc b/recipes-extended/odp/odp.inc
index d1e10b0f..88b67e6d 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;protocol=https;nobranch=1 \
+git://github.com/nxp-qoriq/qbman_userspace;protocol=https;nobranch=1;name=qbman;destsuffix=git/platform/linux-dpaa2/flib/qbman \
+git://github.com/nxp-qoriq/flib;protocol=https;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 ec7328c8..47e54315 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;protocol=https;nobranch=1"
SRCREV = "fe66f4659f7d356f7aa73a8fb32fcf67c6cf1108"
diff --git a/recipes-extended/ovs-dpdk/ovs-dpdk_2.15.bb b/recipes-extended/ovs-dpdk/ovs-dpdk_2.15.bb
index fb41b457..20d06dd6 100644
--- a/recipes-extended/ovs-dpdk/ovs-dpdk_2.15.bb
+++ b/recipes-extended/ovs-dpdk/ovs-dpdk_2.15.bb
@@ -7,7 +7,7 @@ RDEPENDS:${PN} = "bash libcrypto libssl python3"
inherit python3native pkgconfig
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/ovs-dpdk;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/ovs-dpdk;protocol=https;nobranch=1"
SRCREV = "f2c0744d2f68c4cd2840d6e409d7b0520e4caf99"
S = "${WORKDIR}/git"
diff --git a/recipes-extended/secure-obj/secure-obj.inc b/recipes-extended/secure-obj/secure-obj.inc
index 2d26a7e9..64e4a6b7 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;protocol=https;nobranch=1"
SRCREV = "5ff1231f74b4b01744be95a3137a14ad0a483e61"
WRAP_TARGET_PREFIX ?= "${TARGET_PREFIX}"
diff --git a/recipes-extended/skmm-ep/skmm-ep_git.bb b/recipes-extended/skmm-ep/skmm-ep_git.bb
index ec051bea..c08c9492 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-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 a2e8b49e..6d1eb69c 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 = "b767c260b851aac94828ed26c6a9a327e4e98334"
+SRC_URI = "git://github.com/nxp-qoriq/tsntool;protocol=https;nobranch=1"
+SRCREV = "a0769e23304957a22f0cbeee6d1f547b20c3c21e"
S = "${WORKDIR}/git"
diff --git a/recipes-graphics/cairo/cairo_%.bbappend b/recipes-graphics/cairo/cairo_%.bbappend
index 2c73c7f3..c61e9a58 100644
--- a/recipes-graphics/cairo/cairo_%.bbappend
+++ b/recipes-graphics/cairo/cairo_%.bbappend
@@ -1,2 +1,8 @@
PACKAGECONFIG:append:imxgpu3d = " egl glesv2"
PACKAGECONFIG:remove:imxgpu3d = "opengl"
+
+# links with imx-gpu libs which are pre-built for glibc
+# gcompat will address it during runtime
+LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined"
+
+RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat"
diff --git a/recipes-graphics/drm/libdrm_2.4.109.imx.bb b/recipes-graphics/drm/libdrm_2.4.109.imx.bb
index 6a9ab254..5edc0611 100644
--- a/recipes-graphics/drm/libdrm_2.4.109.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.109.imx.bb
@@ -10,10 +10,10 @@ 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"
-SRCBRANCH ?= "libdrm-imx-2.4.109"
SRC_URI = "${IMX_LIBDRM_SRC};branch=${SRCBRANCH}"
-SRCREV = "1d943abb1fccc350a129950d2690948f64503bb7"
+IMX_LIBDRM_SRC ?= "git://github.com/nxp-imx/libdrm-imx.git;protocol=https;nobranch=1"
+SRCBRANCH ?= "libdrm-imx-2.4.109"
+SRCREV = "063bd699054866852ae182d2b31d4d3e7eae4f03"
S = "${WORKDIR}/git"
DEFAULT_PREFERENCE = "-1"
diff --git a/recipes-graphics/glew/glew_%.bbappend b/recipes-graphics/glew/glew_%.bbappend
new file mode 100644
index 00000000..95da4790
--- /dev/null
+++ b/recipes-graphics/glew/glew_%.bbappend
@@ -0,0 +1 @@
+PACKAGECONFIG:imxgpu = "egl-gles2"
diff --git a/recipes-graphics/gtk+/gtk+3_%.bbappend b/recipes-graphics/gtk+/gtk+3_%.bbappend
index 2f108a27..6bc01807 100644
--- a/recipes-graphics/gtk+/gtk+3_%.bbappend
+++ b/recipes-graphics/gtk+/gtk+3_%.bbappend
@@ -1,5 +1 @@
DEPENDS:append:imxgpu2d = " virtual/egl"
-
-PACKAGECONFIG:remove:imxgpu2d = " \
- ${@bb.utils.contains("DISTRO_FEATURES", "wayland", "x11", "", d)} \
-"
diff --git a/recipes-graphics/harfbuzz/harfbuzz_%.bbappend b/recipes-graphics/harfbuzz/harfbuzz_%.bbappend
new file mode 100644
index 00000000..bf8c38fc
--- /dev/null
+++ b/recipes-graphics/harfbuzz/harfbuzz_%.bbappend
@@ -0,0 +1,5 @@
+# links with imx-gpu libs which are pre-built for glibc
+# gcompat will address it during runtime
+LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined"
+
+RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat"
diff --git a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.0.0.bb b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.4.bb
index c8e4169d..667bc26b 100644
--- a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.0.0.bb
+++ b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.4.bb
@@ -4,14 +4,14 @@
DESCRIPTION = "G2D library using i.MX DPU"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
DEPENDS = "libgal-imx libdrm"
PROVIDES += "virtual/libg2d"
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "96bc124401896dec1272a86cb2baef54"
-SRC_URI[sha256sum] = "8e636b65b08cba6b4c2130c8dbff81ee1af42ef818c013aede81ab7e321899a4"
+SRC_URI[md5sum] = "488d9f63b2d02c687a0bc8c3debfb51c"
+SRC_URI[sha256sum] = "62050bc5dd35e942c97e7a8ab22b0b98d02e27a38935b585e622cdc5221ef2a3"
inherit fsl-eula-unpack
@@ -23,5 +23,14 @@ do_install () {
}
INSANE_SKIP:${PN} += "ldflags"
+INSANE_SKIP:append:libc-musl = " file-rdeps"
+
+# The packaged binaries have been stripped of debug info, so disable
+# operations accordingly.
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_SYSROOT_STRIP = "1"
COMPATIBLE_MACHINE = "(imxdpu)"
+
+RDEPENDS:${PN}:append:libc-musl = " gcompat"
diff --git a/recipes-graphics/imx-g2d/imx-g2d-samples_2.0.0.bb b/recipes-graphics/imx-g2d/imx-g2d-samples_2.0.0.bb
deleted file mode 100644
index 9832aac2..00000000
--- a/recipes-graphics/imx-g2d/imx-g2d-samples_2.0.0.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "i.MX G2D Samples"
-DESCRIPTION = "Set of sample applications for i.MX G2D"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0858ec9c7a80c4a2cf16e4f825a2cc91"
-
-DEPENDS = "virtual/libg2d"
-
-GPU_G2D_SAMPLES_SRC ?= "git://github.com/nxpmicro/g2d-samples.git;protocol=https"
-SRCBRANCH ?= "imx_2.0"
-SRC_URI = "${GPU_G2D_SAMPLES_SRC};branch=${SRCBRANCH}"
-SRCREV = "267af142881d350218c2c2cead8f304a28bbee07"
-
-S = "${WORKDIR}/git"
-
-inherit pkgconfig
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)}"
-
-PACKAGECONFIG[wayland] = "USE_WAYLAND=true,USE_WAYLAND=false,wayland-native wayland-protocols"
-
-EXTRA_OEMAKE += " \
- SDKTARGETSYSROOT=${STAGING_DIR_HOST} \
- ${PACKAGECONFIG_CONFARGS} \
-"
-
-do_install() {
- oe_runmake install DESTDIR=${D}
-}
-
-FILES:${PN} += "/opt"
-
-COMPATIBLE_MACHINE = "(imxgpu2d)"
diff --git a/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb b/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb
new file mode 100644
index 00000000..c02a4f50
--- /dev/null
+++ b/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb
@@ -0,0 +1,60 @@
+SUMMARY = "i.MX G2D Samples"
+DESCRIPTION = "Set of sample applications for i.MX G2D"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=0858ec9c7a80c4a2cf16e4f825a2cc91"
+
+DEPENDS = "virtual/libg2d cairo"
+
+PV = "2.1+git${SRCPV}"
+
+SRC_URI = "${GPU_G2D_SAMPLES_SRC};branch=${SRCBRANCH}"
+GPU_G2D_SAMPLES_SRC ?= "git://github.com/nxp-imx/g2d-samples.git;protocol=https"
+SRCBRANCH ?= "imx_2.1"
+SRCREV = "3efd75a90e3c606c9b7bed6791bcd4085ae69b9b"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig
+
+PACKAGECONFIG ??= "${PACKAGECONFIG_IMPLEMENTATION}"
+PACKAGECONFIG_IMPLEMENTATION = ""
+PACKAGECONFIG_IMPLEMENTATION:imxgpu2d:imxdpu = "dpu"
+PACKAGECONFIG_IMPLEMENTATION:imxgpu2d = "gpu-drm"
+PACKAGECONFIG_IMPLEMENTATION:imxgpu2d:imxfbdev = "gpu-fbdev"
+
+PACKAGECONFIG[dpu] = " \
+ BUILD_IMPLEMENTATION=dpu, \
+ , \
+ imx-dpu-g2d wayland-native wayland-protocols, \
+ , \
+ , \
+ gpu-drm gpu-fbdev"
+PACKAGECONFIG[gpu-drm] = " \
+ BUILD_IMPLEMENTATION=gpu-drm, \
+ , \
+ imx-gpu-g2d wayland-native wayland-protocols, \
+ , \
+ , \
+ dpu gpu-fbdev"
+PACKAGECONFIG[gpu-fbdev] = " \
+ BUILD_IMPLEMENTATION=gpu-fbdev, \
+ , \
+ imx-gpu-g2d, \
+ , \
+ , \
+ dpu gpu-drm"
+
+EXTRA_OEMAKE += " \
+ SDKTARGETSYSROOT=${STAGING_DIR_HOST} \
+ ${PACKAGECONFIG_CONFARGS} \
+"
+
+do_install() {
+ oe_runmake install DESTDIR=${D}
+}
+
+FILES:${PN} += "/opt"
+
+PACKAGE_ARCH = "${MACHINE_SOCARCH}"
+
+COMPATIBLE_MACHINE = "(imxgpu2d)"
diff --git a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.0.bb b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.0.bb
deleted file mode 100644
index 1f3c2e60..00000000
--- a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.0.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright (C) 2016 Freescale Semiconductor
-# Copyright 2017-2022 NXP
-# Copyright 2018 (C) O.S. Systems Software LTDA.
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-DESCRIPTION = "G2D library using i.MX GPU"
-LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
-DEPENDS = "libgal-imx"
-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] = "b3b3c285796cd5d47841b73c4735e6bd"
-SRC_URI[aarch64.sha256sum] = "f2d592d1389be0c16f8dbe6374d480d674c2e31f4195916dbd6baf71473a0e60"
-SRC_URI[arm.md5sum] = "82f6a394505bc9d348a35f26cd02bd6a"
-SRC_URI[arm.sha256sum] = "96f0213009087de0842740401a67a19d70d5a7ae928843c9c9bee3f8f177b2a0"
-
-S = "${WORKDIR}/${FSLBIN_NAME}"
-
-inherit fsl-eula-unpack
-
-do_install () {
- install -d ${D}${libdir}
- install -d ${D}${includedir}
- cp -r ${S}/g2d/usr/lib/*.so* ${D}${libdir}
- cp -Pr ${S}/g2d/usr/include/* ${D}${includedir}
-}
-
-INSANE_SKIP:${PN} = "ldflags"
-
-COMPATIBLE_MACHINE = "(imxgpu2d)"
diff --git a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.6.bb b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.6.bb
new file mode 100644
index 00000000..d513c720
--- /dev/null
+++ b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.3.p4.6.bb
@@ -0,0 +1,46 @@
+# Copyright (C) 2016 Freescale Semiconductor
+# Copyright 2017-2022 NXP
+# Copyright 2018 (C) O.S. Systems Software LTDA.
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "G2D library using i.MX GPU"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
+DEPENDS = "libgal-imx"
+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] = "41e6c3a6f8d4151d30c1f34341465b30"
+SRC_URI[aarch64.sha256sum] = "70e007f66459ee6a392f4a21f4d4a753ff22a75b728cc7d952251b00ba3ab51e"
+SRC_URI[arm.md5sum] = "4c751218aa4db1f545bcec17ee963cc0"
+SRC_URI[arm.sha256sum] = "288f78419d825e71563c38a39a738f040e098b581b76e6f8b8fc5895e7d9d7c4"
+
+S = "${WORKDIR}/${FSLBIN_NAME}"
+
+inherit fsl-eula-unpack
+
+SOC_INSTALL_DIR = "SOC_INSTALL_DIR_NOT_SET"
+SOC_INSTALL_DIR:mx8mm-nxp-bsp = "mx8mm"
+
+do_install () {
+ install -d ${D}${libdir}
+ install -d ${D}${includedir}
+ cp -d ${S}/g2d/usr/lib/*.so* ${D}${libdir}
+ if [ -d ${S}/g2d/usr/lib/${SOC_INSTALL_DIR} ]; then
+ cp -d ${S}/g2d/usr/lib/${SOC_INSTALL_DIR}/*.so* ${D}${libdir}
+ fi
+ cp -Pr ${S}/g2d/usr/include/* ${D}${includedir}
+}
+
+# The packaged binaries have been stripped of debug info, so disable
+# operations accordingly.
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_SYSROOT_STRIP = "1"
+
+INSANE_SKIP:${PN} = "ldflags"
+
+PACKAGE_ARCH = "${MACHINE_SOCARCH}"
+COMPATIBLE_MACHINE = "(imxgpu2d)"
diff --git a/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb b/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb
new file mode 100644
index 00000000..fbf56e0c
--- /dev/null
+++ b/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb
@@ -0,0 +1,28 @@
+# Copyright (C) 2016 Freescale Semiconductor
+# Copyright 2017-2022 NXP
+# Released under the MIT license (see COPYING.MIT for the terms)
+
+DESCRIPTION = "G2D library using i.MX PXP"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://EULA.txt;md5=d3c315c6eaa43e07d8c130dc3a04a011"
+
+PROVIDES += "virtual/libg2d"
+
+PV = "2.1.0+git${SRCPV}"
+
+SRC_URI = "${IMX_PXP_G2D_SRC};branch=${SRCBRANCH}"
+IMX_PXP_G2D_SRC ?= "git://github.com/nxp-imx/imx-g2d-pxp.git;protocol=https"
+SRCBRANCH ?= "imx_2.1"
+SRCREV = "178970dc7cdba69b94c2219b5bade46d67adb640"
+
+S = "${WORKDIR}/git"
+
+inherit use-imx-headers
+
+EXTRA_OEMAKE = "PLATFORM=IMX93 INCLUDE='-I${STAGING_INCDIR_IMX}' DEST_DIR=${D}"
+
+do_install() {
+ oe_runmake install
+}
+
+COMPATIBLE_MACHINE = "(mx93-nxp-bsp)"
diff --git a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.0.0.bb b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.0.0.bb
index bd041582..2f98adab 100644
--- a/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.0.0.bb
+++ b/recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.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_10.0 \
+SRC_URI = "git://github.com/nxp-imx/apitrace-imx.git;protocol=https;branch=imx_10.0 \
file://0001-dlsym-workaround-glibc-2.34-build-failure.patch \
"
SRCREV = "90a59407f1cddd31b4dac67e5a2500100eb091bc"
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 8d014259..169606c2 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -6,7 +6,7 @@
DESCRIPTION = "GPU driver and apps for i.MX"
SECTION = "libs"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be5ff43682ed6c57dfcbeb97651c2829"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -25,18 +25,8 @@ DEPENDS:append:mx8-nxp-bsp = " patchelf-native"
# We depend on mesa to fill in what is missing.
DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}"
-EXTRA_PROVIDES = ""
-EXTRA_PROVIDES:append:imxgpu3d = " \
- virtual/libgl \
- virtual/libgles1 \
- virtual/libgles2 \
-"
-EXTRA_PROVIDES:append:mx8-nxp-bsp = " \
- virtual/libgbm \
-"
-PROVIDES_OPENVX = ""
-PROVIDES_OPENVX:mx8-nxp-bsp = "virtual/libopenvx"
-PROVIDES_OPENVX:mx8mm-nxp-bsp = ""
+DEPENDS:append:libc-musl = " gcompat"
+
PROVIDES += " \
imx-gpu-viv \
libgal-imx \
@@ -46,19 +36,40 @@ PROVIDES += " \
virtual/egl \
virtual/libopenvg \
virtual/opencl-icd \
- ${PROVIDES_OPENVX} \
${EXTRA_PROVIDES} \
"
+EXTRA_PROVIDES = " \
+ ${PROVIDES_OPENGLES3} \
+ ${PROVIDES_OPENVX} \
+"
+EXTRA_PROVIDES:append:imxgpu3d = " \
+ virtual/libgl \
+ virtual/libgles1 \
+ virtual/libgles2 \
+"
+EXTRA_PROVIDES:append:mx8-nxp-bsp = " \
+ virtual/libgbm \
+"
+
+PROVIDES_OPENGLES3 = ""
+PROVIDES_OPENGLES3:mx8-nxp-bsp = "virtual/libgles3"
+PROVIDES_OPENGLES3:mx8mm-nxp-bsp = ""
+
+# Note: OpenVX is fully supported on i.MX 8 QuadMax and 8 QuadPlus.
+# However, only limited support is provided on other i.MX 8 machines
+# as needed for i.MX machine learning packages.
+PROVIDES_OPENVX = ""
+PROVIDES_OPENVX:mx8-nxp-bsp = "virtual/libopenvx"
+PROVIDES_OPENVX:mx8mm-nxp-bsp = ""
RPROVIDES:${PN}:imxgpu3d += "imx-gpu-viv"
PE = "1"
-inherit fsl-eula-unpack features_check
-
-REQUIRED_DISTRO_FEATURES:mx8-nxp-bsp = "wayland"
+inherit fsl-eula-unpack
-SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
+SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true \
+ file://imx_icd.json"
PACKAGECONFIG ?= ""
@@ -66,27 +77,39 @@ PACKAGECONFIG ?= ""
PACKAGECONFIG[valgrind] = ""
# Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below
-IMX_PACKAGES_GBM = ""
-IMX_PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev"
-PACKAGES =+ "libclc-imx libclc-imx-dev \
+PACKAGES =+ " \
libgl-imx libgl-imx-dev \
libgles1-imx libgles1-imx-dev \
libgles2-imx libgles2-imx-dev \
libgles3-imx-dev \
libglslc-imx libglslc-imx-dev \
- libopencl-imx libopencl-imx-dev \
+ ${PACKAGES_OPENCL} \
libopenvg-imx libopenvg-imx-dev \
libvdk-imx libvdk-imx-dev \
libegl-imx libegl-imx-dev \
libgal-imx libgal-imx-dev \
libvsc-imx \
- ${IMX_PACKAGES_GBM} \
+ ${PACKAGES_GBM} \
imx-gpu-viv-tools \
imx-gpu-viv-demos \
- libvulkan-imx libvulkan-imx-dev \
- libopenvx-imx libopenvx-imx-dev \
+ ${PACKAGES_VULKAN} \
+ ${PACKAGES_OPENVX} \
libnn-imx \
"
+
+PACKAGES_GBM = ""
+PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev"
+
+PACKAGES_OPENCL = "libopencl-imx libopencl-imx-dev libclc-imx libclc-imx-dev"
+PACKAGES_OPENCL:mx7-nxp-bsp = ""
+
+PACKAGES_OPENVX = \
+ "${@bb.utils.contains("PROVIDES_OPENVX", "virtual/libopenvx", \
+ "libopenvx-imx libopenvx-imx-dev", "", d)}"
+
+PACKAGES_VULKAN = ""
+PACKAGES_VULKAN:imxvulkan = "libvulkan-imx libvulkan-imx-dev"
+
python __anonymous () {
has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0')
if has_vivante_kernel_driver_support != '1':
@@ -154,8 +177,7 @@ IMX_SOC:mx8mq-nxp-bsp = "mx8mq"
IMX_SOC:mx8mn-nxp-bsp = "mx8mn"
IMX_SOC:mx8ulp-nxp-bsp = "mx8ulp"
-LIBVULKAN_VERSION_MAJOR = "1"
-LIBVULKAN_VERSION = "${LIBVULKAN_VERSION_MAJOR}.2.1"
+LIBVULKAN_API_VERSION = "1.2.182"
do_install () {
install -d ${D}${libdir}
@@ -170,6 +192,7 @@ do_install () {
# Use vulkan header from vulkan-headers recipe to support vkmark
rm -rf ${D}${includedir}/vulkan/
+ # Install SOC-specific drivers
if [ -d ${S}/gpu-core/usr/lib/${IMX_SOC} ]; then
cp -r ${S}/gpu-core/usr/lib/${IMX_SOC}/* ${D}${libdir}
fi
@@ -179,38 +202,71 @@ do_install () {
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gbm.pc ${D}${libdir}/pkgconfig/gbm.pc
fi
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
+
+ # Install backend-specific drivers
if [ "${BACKEND}" = "wayland" ]; then
+ # Wayland backend
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
- else
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
+ cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir}
+ elif [ "${IS_MX8}" != "1" ]; then
+ # Framebuffer backend for i.MX 6 and 7
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_linuxfb.pc ${D}${libdir}/pkgconfig/egl.pc
+ cp -r ${S}/gpu-core/usr/lib/fb/* ${D}${libdir}
+ else
+ # Framebuffer backend for i.MX 8 and beyond
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl.pc ${D}${libdir}/pkgconfig/egl.pc
+ cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir}
+ set -f
+ for f in ${FILES:libvdk-imx} ${FILES:libvdk-imx-dev}; do
+ set +f
+ rm -rf ${D}/$f
+ done
+ rm -rf \
+ ${D}/opt/viv_samples/es20 \
+ ${D}/opt/viv_samples/tiger \
+ ${D}/opt/viv_samples/vdk
fi
-
- # Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader)
- install -d ${D}${sysconfdir}/OpenCL/vendors/
- install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd
-
- # Handle backend specific drivers
- cp -r ${S}/gpu-core/usr/lib/${BACKEND}/* ${D}${libdir}
if [ "${BACKEND}" = "wayland" ] && [ "${IS_MX8}" != "1" ]; then
# Special case for libVDK on Wayland backend, deliver fb library as well.
cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0
fi
+
+ if [ -z "${PACKAGES_OPENCL}" ]; then
+ set -f
+ for f in ${FILES:libopencl-imx} ${FILES:libopencl-imx-dev} ${FILES:libclc-imx} ${FILES:libclc-imx-dev}; do
+ set +f
+ rm -rf ${D}$f
+ done
+ rm -rf ${D}/opt/viv_samples/cl11
+ else
+ # Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader)
+ install -d ${D}${sysconfdir}/OpenCL/vendors/
+ install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd
+ fi
+
+ if [ -z "${PACKAGES_OPENVX}" ]; then
+ set -f
+ for f in ${FILES:libopenvx-imx} ${FILES:libopenvx-imx-dev}; do
+ set +f
+ rm -rf ${D}$f
+ done
+ fi
+
if [ "${IS_MX8}" = "1" ]; then
- # Rename the vulkan implementation library which is wrapped by the vulkan-loader
- # library of the same name
- MAJOR=${LIBVULKAN_VERSION_MAJOR}
- FULL=${LIBVULKAN_VERSION}
- mv ${D}${libdir}/libvulkan.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$FULL
- patchelf --set-soname libvulkan_VSI.so.$MAJOR ${D}${libdir}/libvulkan_VSI.so.$FULL
- rm ${D}${libdir}/libvulkan.so.$MAJOR ${D}${libdir}/libvulkan.so
- ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$MAJOR
- ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so
+ if [ -z "${PACKAGES_VULKAN}" ]; then
+ set -f
+ for f in ${FILES:libvulkan-imx} ${FILES:libvulkan-imx-dev}; do
+ set +f
+ rm -rf ${D}$f
+ done
+ else
+ install -Dm 0644 ${WORKDIR}/imx_icd.json ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json
+ sed -i "s,%libdir%,${libdir}," ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json
+ sed -i "s,%api_version%,${LIBVULKAN_API_VERSION}," ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json
+ fi
fi
# FIXME: MX6SL does not have 3D support; hack it for now
@@ -239,6 +295,24 @@ do_install () {
chown -R root:root "${D}"
}
+do_install:append:libc-musl() {
+ # libs
+ for f in `find ${D}${libdir} -name '*.so*' -type f`
+ do
+ patchelf --add-needed libgcompat.so.0 $f
+ done
+ # binaries
+ for f in `find ${D}/opt ${D}${bindir} -name '*' -type f -executable`
+ do
+ # prune scripts
+ if `patchelf --print-interpreter $f 2>&1 > /dev/null`
+ then
+ patchelf --set-interpreter ${root_prefix}`patchelf --print-interpreter $f` $f
+ patchelf --add-needed libgcompat.so.0 $f
+ fi
+ done
+}
+
ALLOW_EMPTY:${PN} = "1"
FILES:libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h"
@@ -258,12 +332,15 @@ INSANE_SKIP:libgal-imx += "build-deps"
FILES:libvsc-imx = "${libdir}/libVSC${SOLIBS}"
-FILES:libgbm-imx:mx8-nxp-bsp = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
-FILES:libgbm-imx-dev:mx8-nxp-bsp = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
-RDEPENDS:libgbm-imx:append:mx8-nxp-bsp = " libdrm"
+FILES:libgbm-imx = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
+FILES:libgbm-imx-dev = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
+RDEPENDS:libgbm-imx:append = " libdrm"
INSANE_SKIP:libgbm-imx += "dev-so"
-FILES:libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}"
+FILES:libvulkan-imx = "\
+ ${libdir}/libvulkan_VSI${REALSOLIBS} \
+ ${libdir}/libSPIRV_viv${SOLIBS} \
+ ${sysconfdir}/vulkan"
FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}"
FILES:libopenvx-imx = " \
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json
new file mode 100644
index 00000000..1194a0fb
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv/imx_icd.json
@@ -0,0 +1,7 @@
+{
+ "file_format_version": "1.0.0",
+ "ICD": {
+ "library_path": "%libdir%/libvulkan_VSI.so",
+ "api_version": "%api_version%"
+ }
+}
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch64.bb
deleted file mode 100644
index 81ca2526..00000000
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch64.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require imx-gpu-viv-6.inc
-
-SRC_URI[md5sum] = "20cecb3e5440f63bb6612c740ccfe43a"
-SRC_URI[sha256sum] = "283f2f51cadf5138bd47269a73425a51f69453556fb80f18521da04317e547a8"
-
-COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch32.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch32.bb
index d6cae8b6..7a8d0634 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.0-aarch32.bb
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch32.bb
@@ -4,7 +4,7 @@
require imx-gpu-viv-6.inc
-SRC_URI[md5sum] = "9abc4e59919b68f81094c194edb525a2"
-SRC_URI[sha256sum] = "5f56e4690287fd4e8480d2c43101ef30383c95d155a3f06beadecad309e684a3"
+SRC_URI[md5sum] = "92d8a1440b680917a4001ebe65811584"
+SRC_URI[sha256sum] = "fdb9e4250d2baf9a76ba60eab376c2317f9c53b621fe2c886a02f6355c0e01c6"
COMPATIBLE_MACHINE = "(mx6q-nxp-bsp|mx6dl-nxp-bsp|mx6sx-nxp-bsp|mx6sl-nxp-bsp|mx7ulp-nxp-bsp)"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch64.bb
new file mode 100644
index 00000000..2779ff3c
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p4.6-aarch64.bb
@@ -0,0 +1,10 @@
+require imx-gpu-viv-6.inc
+
+SRC_URI[md5sum] = "b33fde69f544674340ea617e9faf404e"
+SRC_URI[sha256sum] = "60a63b66ef28cadc62bc1305a3ab5a2018c910e171b0cd72f4876317282dcfcc"
+
+INSANE_SKIP:append:libc-musl = " file-rdeps"
+
+COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
+
+RDEPENDS:${PN}:append:libc-musl = " gcompat"
diff --git a/recipes-graphics/mesa/libglu_%.bbappend b/recipes-graphics/mesa/libglu_%.bbappend
new file mode 100644
index 00000000..96745dd8
--- /dev/null
+++ b/recipes-graphics/mesa/libglu_%.bbappend
@@ -0,0 +1 @@
+REQUIRED_DISTRO_FEATURES:remove:imxgpu = "x11"
diff --git a/recipes-graphics/mesa/mesa-demos_%.bbappend b/recipes-graphics/mesa/mesa-demos_%.bbappend
index 4b518185..0cf69ac6 100644
--- a/recipes-graphics/mesa/mesa-demos_%.bbappend
+++ b/recipes-graphics/mesa/mesa-demos_%.bbappend
@@ -1,26 +1,25 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
-SRC_URI:append:imxgpu = " file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
- file://fix-clear-build-break.patch \
- file://Add-OpenVG-demos-to-support-wayland.patch"
+SRC_URI:append:imxgpu = " \
+ file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \
+ file://fix-clear-build-break.patch \
+ file://Add-OpenVG-demos-to-support-wayland.patch"
+REQUIRED_DISTRO_FEATURES:remove:imxgpu = "x11"
+
+PACKAGECONFIG:remove = " \
+ ${PACKAGECONFIG_REMOVE_IF_2D_ONLY} \
+ ${PACKAGECONFIG_REMOVE_IF_GPU}"
PACKAGECONFIG_REMOVE_IF_2D_ONLY = ""
PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu2d = "gles1 gles2"
PACKAGECONFIG_REMOVE_IF_2D_ONLY:imxgpu3d = ""
PACKAGECONFIG_REMOVE_IF_GPU = ""
-PACKAGECONFIG_REMOVE_IF_GPU:imxgpu = " \
- ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'glu x11', '', d)} \
-"
-PACKAGECONFIG:remove = " \
- ${PACKAGECONFIG_REMOVE_IF_2D_ONLY} \
- ${PACKAGECONFIG_REMOVE_IF_GPU} \
-"
+PACKAGECONFIG_REMOVE_IF_GPU:imxgpu = "x11"
+PACKAGECONFIG:append = " \
+ ${PACKAGECONFIG_APPEND_IF_GPU}"
PACKAGECONFIG_APPEND_IF_GPU = ""
PACKAGECONFIG_APPEND_IF_GPU:imxgpu = " \
- ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland vg', '', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glut', '', d)} \
-"
-PACKAGECONFIG:append = " \
- ${PACKAGECONFIG_APPEND_IF_GPU} \
-"
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland vg', '', d)}"
+
+PACKAGECONFIG[glu] = "--enable-glu,--disable-glu,virtual/libgl libglu"
diff --git a/recipes-graphics/pango/pango_%.bbappend b/recipes-graphics/pango/pango_%.bbappend
new file mode 100644
index 00000000..bf8c38fc
--- /dev/null
+++ b/recipes-graphics/pango/pango_%.bbappend
@@ -0,0 +1,5 @@
+# links with imx-gpu libs which are pre-built for glibc
+# gcompat will address it during runtime
+LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined"
+
+RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat"
diff --git a/recipes-graphics/piglit/piglit/0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch b/recipes-graphics/piglit/piglit/0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch
new file mode 100644
index 00000000..ef6fda0f
--- /dev/null
+++ b/recipes-graphics/piglit/piglit/0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch
@@ -0,0 +1,32 @@
+From 13ff43fe760ac343b33d8e8c84b89886aac07116 Mon Sep 17 00:00:00 2001
+From: Tom Hochstein <tom.hochstein@nxp.com>
+Date: Fri, 3 Jun 2022 10:44:29 -0500
+Subject: [PATCH] cmake: Don't enable GLX if tests are disabled
+
+Allow building for systems that don't support GLX.
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/720]
+Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
+---
+ CMakeLists.txt | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index e1aeb5ddf..85e171aba 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -134,10 +134,7 @@ if(PIGLIT_BUILD_CL_TESTS)
+ endif(PIGLIT_BUILD_CL_TESTS)
+
+ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux")
+- if(X11_FOUND AND OPENGL_gl_LIBRARY)
+- # Assume the system has GLX. In the future, systems may exist
+- # with libGL and libX11 but no GLX, but that world hasn't
+- # arrived yet.
++ if(X11_FOUND AND OPENGL_gl_LIBRARY AND PIGLIT_BUILD_GLX_TESTS)
+ set(PIGLIT_HAS_GLX True)
+ add_definitions(-DPIGLIT_HAS_GLX)
+ endif()
+--
+2.17.1
+
diff --git a/recipes-graphics/piglit/piglit_%.bbappend b/recipes-graphics/piglit/piglit_%.bbappend
new file mode 100644
index 00000000..6a1b9b98
--- /dev/null
+++ b/recipes-graphics/piglit/piglit_%.bbappend
@@ -0,0 +1,10 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://0005-cmake-Don-t-enable-GLX-if-tests-are-disabled.patch"
+
+PACKAGECONFIG ?= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 glx', '', d)}"
+PACKAGECONFIG:remove:imxgpu = "glx"
+PACKAGECONFIG:append:mx8-nxp-bsp = " opencl"
+
+PACKAGECONFIG[glx] = "-DPIGLIT_BUILD_GLX_TESTS=ON,-DPIGLIT_BUILD_GLX_TESTS=OFF"
+PACKAGECONFIG[opencl] = "-DPIGLIT_BUILD_CL_TESTS=ON,-DPIGLIT_BUILD_CL_TESTS=OFF,opencl-icd-loader"
diff --git a/recipes-graphics/vulkan/vulkan-loader_%.bbappend b/recipes-graphics/vulkan/vulkan-loader_%.bbappend
deleted file mode 100644
index 90776168..00000000
--- a/recipes-graphics/vulkan/vulkan-loader_%.bbappend
+++ /dev/null
@@ -1,3 +0,0 @@
-# The i.MX implementation is dynamically loaded, so it requires an
-# explicit runtime dependency.
-RRECOMMENDS:${PN}:append:imxgpu = " libvulkan-imx"
diff --git a/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend b/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend
new file mode 100644
index 00000000..05f566a8
--- /dev/null
+++ b/recipes-graphics/vulkan/vulkan-loader_1.2.182.0.bbappend
@@ -0,0 +1,7 @@
+# libvulkan.so is loaded dynamically, so put it in the main package
+SOLIBS = ".so*"
+FILES_SOLIBSDEV = ""
+INSANE_SKIP:${PN} += "dev-so"
+
+# Override default mesa drivers with i.MX GPU drivers
+RRECOMMENDS:${PN}:imxvulkan = "libvulkan-imx"
diff --git a/recipes-graphics/waffle/waffle/0001-meson-Add-missing-wayland-dependency-on-EGL.patch b/recipes-graphics/waffle/waffle/0001-meson-Add-missing-wayland-dependency-on-EGL.patch
index 5f587d84..a898f0a9 100644
--- a/recipes-graphics/waffle/waffle/0001-meson-Add-missing-wayland-dependency-on-EGL.patch
+++ b/recipes-graphics/waffle/waffle/0001-meson-Add-missing-wayland-dependency-on-EGL.patch
@@ -35,7 +35,7 @@ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
)
dep_wayland_scanner = dependency(
@@ -120,7 +122,7 @@ else
- wayland_xdg_shell_xml = join_paths(dep_wayland_proto.get_pkgconfig_variable('pkgdatadir'),
+ wayland_xdg_shell_xml = join_paths(dep_wayland_proto.get_variable(pkgconfig: 'pkgdatadir'),
'stable/xdg-shell/xdg-shell.xml')
endif
- build_wayland = dep_egl.found() and dep_wayland_client.found() and dep_wayland_egl.found() and dep_wayland_scanner.found() and dep_wayland_proto.found()
diff --git a/recipes-graphics/wayland/required-distro-features.inc b/recipes-graphics/wayland/required-distro-features.inc
new file mode 100644
index 00000000..bb4a0e8e
--- /dev/null
+++ b/recipes-graphics/wayland/required-distro-features.inc
@@ -0,0 +1,8 @@
+# distro features required by weston recipes
+
+inherit features_check
+
+# requires pam enabled if started via systemd
+#
+REQUIRED_DISTRO_FEATURES = "wayland opengl ${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'systemd', 'pam', '', d)}"
+
diff --git a/recipes-graphics/wayland/wayland-protocols_1.25.imx.bb b/recipes-graphics/wayland/wayland-protocols_1.25.imx.bb
index be6cbdb0..b31267c1 100644
--- a/recipes-graphics/wayland/wayland-protocols_1.25.imx.bb
+++ b/recipes-graphics/wayland/wayland-protocols_1.25.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.25"
+SRC_URI = "git://github.com/nxp-imx/wayland-protocols-imx.git;protocol=https;branch=wayland-protocols-imx-1.25"
SRCREV = "a104fb66d1b899dc04077422c2204638675ee4a6"
S = "${WORKDIR}/git"
@@ -25,4 +25,4 @@ PACKAGES = "${PN}"
FILES:${PN} += "${datadir}/pkgconfig/wayland-protocols.pc"
PACKAGE_ARCH = "${MACHINE_SOCARCH}"
-COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)"
+COMPATIBLE_MACHINE = "(mx6-nxp-bsp|mx7-nxp-bsp|mx8-nxp-bsp|mx9-nxp-bsp)"
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend
index 4ba6cba7..917791eb 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -27,11 +27,12 @@ INI_UNCOMMENT_ASSIGNMENTS:append:mx8mq-nxp-bsp = " \
# FIXME: The 8QM and 8QXP SoCs have better performance without G2D so don't enable it
# Ideally, this should be seamless and Vivante ought to handle it internally and take the fastest
# rendering code.
+INI_UNCOMMENT_USE_G2D ?= ""
INI_UNCOMMENT_USE_G2D:imxgpu2d ?= "use-g2d=1"
-INI_UNCOMMENT_USE_G2D:mx8qm-nxp-bsp = ""
-INI_UNCOMMENT_USE_G2D:mx8qxp-nxp-bsp = ""
-INI_UNCOMMENT_USE_G2D:mx8dx-nxp-bsp = ""
-INI_UNCOMMENT_ASSIGNMENTS:append:imxgpu2d = " \
+INI_UNCOMMENT_USE_G2D:mx8qm-nxp-bsp ?= ""
+INI_UNCOMMENT_USE_G2D:mx8qxp-nxp-bsp ?= ""
+INI_UNCOMMENT_USE_G2D:mx8dx-nxp-bsp ?= ""
+INI_UNCOMMENT_ASSIGNMENTS:append = " \
${INI_UNCOMMENT_USE_G2D} \
"
diff --git a/recipes-graphics/wayland/weston/0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch b/recipes-graphics/wayland/weston/0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch
new file mode 100644
index 00000000..676d0338
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch
@@ -0,0 +1,40 @@
+From 77eba6f6b04ff21b77c41500657495b4fd12a5f6 Mon Sep 17 00:00:00 2001
+From: Max Krummenacher <max.krummenacher@toradex.com>
+Date: Mon, 11 Jul 2022 19:38:19 +0000
+Subject: [PATCH] Revert "protocol: no found wayland-scanner with Yocto
+ toolchain"
+
+This reverts commit 7859a762617682bd804e210ad3bda6bdcd3ea24a.
+
+With openembedded commit e525db4eb9 ("wayland: update 1.20.0 -> 1.21.0")
+package config seems no longer to provide the path to the native
+weston scanner.
+
+Thus the build fails with:
+
+| Run-time dependency wayland-scanner found: YES 1.21.0
+| Program /usr/bin/wayland-scanner found: NO
+|
+| ../git/protocol/meson.build:2:0: ERROR: Program '/usr/bin/wayland-scanner' not found or not executable
+
+Dropping weston 9.0.0-imx commit 7859a762 (protocol: no found
+wayland-scanner with Yocto toolchain") fixes the issue.
+
+Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
+---
+ protocol/meson.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/protocol/meson.build b/protocol/meson.build
+index bdd322ac..e50b23bb 100644
+--- a/protocol/meson.build
++++ b/protocol/meson.build
+@@ -1,4 +1,4 @@
+-dep_scanner = dependency('wayland-scanner', native: false)
++dep_scanner = dependency('wayland-scanner', native: true)
+ prog_scanner = find_program(dep_scanner.get_pkgconfig_variable('wayland_scanner'))
+
+ dep_wp = dependency('wayland-protocols', version: '>= 1.24')
+--
+2.17.1
+
diff --git a/recipes-graphics/wayland/weston/0001-g2d-renderer-Add-vsync-to-cloned-displays.patch b/recipes-graphics/wayland/weston/0001-g2d-renderer-Add-vsync-to-cloned-displays.patch
deleted file mode 100644
index fb2d47bf..00000000
--- a/recipes-graphics/wayland/weston/0001-g2d-renderer-Add-vsync-to-cloned-displays.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From b719011b7c015e2d6f0108c9d0709b98d21d6a89 Mon Sep 17 00:00:00 2001
-From: Piotr Wojtaszczyk <piotr.wojtaszczyk@timesys.com>
-Date: Mon, 21 Mar 2022 12:37:18 +0100
-Subject: [PATCH] g2d-renderer: Add vsync to cloned displays.
-
-When using g2d clone mode allocates additional surfaces according to
-FB_MULTI_BUFFER for each cloned display. The g2d blit from the main screen
-to the cloned displays is done using inactive surface. The FBIOPAN_DISPLAY
-ioctl to the surface is done afterwards.
-
-Signed-off-by: Piotr Wojtaszczyk <piotr.wojtaszczyk@timesys.com>
----
- libweston/renderer-g2d/g2d-renderer.c | 33 +++++++++++++++++++++------
- 1 file changed, 26 insertions(+), 7 deletions(-)
-
-diff --git a/libweston/renderer-g2d/g2d-renderer.c b/libweston/renderer-g2d/g2d-renderer.c
-index 34a077b7..3e6395d6 100644
---- a/libweston/renderer-g2d/g2d-renderer.c
-+++ b/libweston/renderer-g2d/g2d-renderer.c
-@@ -525,6 +525,7 @@ g2d_blit_surface(void *handle, struct g2d_surfaceEx * srcG2dSurface, struct g2d_
- static void
- g2d_flip_surface(struct weston_output *output)
- {
-+ int i;
- struct g2d_output_state *go = get_output_state(output);
- go->fb_info.varinfo.yoffset = go->activebuffer * go->fb_info.y_resolution;
-
-@@ -532,6 +533,16 @@ g2d_flip_surface(struct weston_output *output)
- {
- weston_log("FBIOPAN_DISPLAY Failed\n");
- }
-+
-+ for (i = 0; i < go->clone_display_num; i++)
-+ {
-+ go->mirror_fb_info[i].varinfo.yoffset = go->activebuffer * go->mirror_fb_info[i].y_resolution;
-+ if(ioctl(go->mirror_fb_info[i].fb_fd, FBIOPAN_DISPLAY, &(go->mirror_fb_info[i].varinfo)) < 0)
-+ {
-+ weston_log("FBIOPAN_DISPLAY clone %d Failed\n", i);
-+ }
-+ }
-+
- go->activebuffer = (go->activebuffer + 1) % go->nNumBuffers;
- }
-
-@@ -571,17 +582,18 @@ copy_to_framebuffer(struct weston_output *output, pixman_region32_t* output_dama
- int i = 0;
- for(i = 0; i < go->clone_display_num; i++)
- {
-+ int idx = i * go->nNumBuffers + go->activebuffer;
- g2dRECT srcRect = {0, 0, go->renderSurf[go->activebuffer].base.width, go->renderSurf[go->activebuffer].base.height};
-- g2dRECT dstrect = {0, 0, go->mirrorSurf[i].base.width, go->mirrorSurf[i].base.height};
-+ g2dRECT dstrect = {0, 0, go->mirrorSurf[idx].base.width, go->mirrorSurf[idx].base.height};
- if(go->directBlit || go->nNumBuffers > 1)
- {
- g2d_blit_surface(gr->handle, &go->renderSurf[go->activebuffer],
-- &go->mirrorSurf[i], &srcRect, &dstrect);
-+ &go->mirrorSurf[idx], &srcRect, &dstrect);
- }
- else
- {
- g2d_blit_surface(gr->handle, &go->offscreenSurface,
-- &go->mirrorSurf[i], &srcRect, &dstrect);
-+ &go->mirrorSurf[idx], &srcRect, &dstrect);
- }
- }
- }
-@@ -2113,6 +2125,7 @@ g2d_fbdev_renderer_output_create(struct weston_output *output,
- int clone_display_num = 0;
- int count = 0;
- int k=0, dispCount = 0;
-+ int offset = 0;
- char displays[5][32];
- weston_log("g2d_renderer_output_create device=%s\n", device);
- count = strlen(device);
-@@ -2166,7 +2179,7 @@ g2d_fbdev_renderer_output_create(struct weston_output *output,
-
- if(go->clone_display_num)
- {
-- go->mirrorSurf = zalloc(sizeof(struct g2d_surfaceEx) * clone_display_num);
-+ go->mirrorSurf = zalloc(sizeof(struct g2d_surfaceEx) * clone_display_num * go->nNumBuffers);
- go->mirror_fb_info = zalloc(sizeof(struct fb_screeninfo) * clone_display_num);
- if(go->mirrorSurf == NULL || go->mirror_fb_info == NULL)
- return -1;
-@@ -2178,9 +2191,15 @@ g2d_fbdev_renderer_output_create(struct weston_output *output,
- weston_log("Open frame buffer failed.\n");
- return -1;
- }
-- get_G2dSurface_from_screeninfo(&go->mirror_fb_info[i], &go->mirrorSurf[i]);
-- go->mirrorSurf[i].base.planes[0] = go->mirror_fb_info[i].physical;
-- g2d_clear(gr->handle, &go->mirrorSurf[i].base);
-+
-+ offset = go->mirror_fb_info[i].stride_bytes * go->mirror_fb_info[i].y_resolution;
-+ for(k = 0; k < go->nNumBuffers; k++)
-+ {
-+ int idx = i * go->nNumBuffers + k;
-+ get_G2dSurface_from_screeninfo(&go->mirror_fb_info[i], &go->mirrorSurf[idx]);
-+ go->mirrorSurf[idx].base.planes[0] = go->mirror_fb_info[i].physical + (offset * k);
-+ g2d_clear(gr->handle, &go->mirrorSurf[idx].base);
-+ }
- }
- }
- g2d_finish(gr->handle);
diff --git a/recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch b/recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch
new file mode 100644
index 00000000..b9cb31fb
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0001-g2d-renderer.c-Include-sys-stat.h.patch
@@ -0,0 +1,34 @@
+From 4afe9b2f9ef24ce0c9bf1cd41f94ca45afa4f445 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 12 Sep 2022 20:58:14 -0700
+Subject: [PATCH] g2d-renderer.c: Include sys/stat.h
+
+This is needed for getting stat() prototype, its flagged with clang-15
+as error.
+
+| ../git/libweston/renderer-g2d/g2d-renderer.c:2057:6: error: call to undeclared function 'stat'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+| if (stat(gr->drm_device, &dev_stat) != 0) {
+| ^
+| 1 error generated.
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libweston/renderer-g2d/g2d-renderer.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libweston/renderer-g2d/g2d-renderer.c b/libweston/renderer-g2d/g2d-renderer.c
+index f59fc4ee..36a458fc 100644
+--- a/libweston/renderer-g2d/g2d-renderer.c
++++ b/libweston/renderer-g2d/g2d-renderer.c
+@@ -41,6 +41,7 @@
+ #include <drm_fourcc.h>
+ #include <poll.h>
+ #include <errno.h>
++#include <sys/stat.h> /* stat() */
+
+ #include <libweston/libweston.h>
+ #include "g2d-renderer.h"
+--
+2.37.3
+
diff --git a/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch b/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch
deleted file mode 100644
index db640055..00000000
--- a/recipes-graphics/wayland/weston/0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 4be82f75a47bd456452ab713d7d57a75d844f42a Mon Sep 17 00:00:00 2001
-From: Marius Vlad <marius.vlad@collabora.com>
-Date: Thu, 1 Apr 2021 00:12:00 +0300
-Subject: [PATCH] libweston/backend-drm: Re-order gbm destruction at
- DRM-backend tear down
-
-Tearing down the drm-backend when there are no input devices, would call
-for the gbm device destruction before compositor shutdown. The latter
-would call into the renderer detroy function and assume that the
-EGLDisplay, which was created using the before-mentioned gbm device, is
-still available. This patch re-orders the gbm destruction after the
-compositor shutdown when no one would make use of it.
-
-Fixes: #314
-
-Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
-Suggested-by: Daniel Stone <daniel.stone@collabora.com>
-
-Upstream-Status: Backport [https://gitlab.freedesktop.org/wayland/weston/-/commit/d171c7b3ba346c4d0bd6494f45ebf0be3c3cc5fb]
----
- libweston/backend-drm/drm.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/libweston/backend-drm/drm.c b/libweston/backend-drm/drm.c
-index 9d3b5dcc..67834d3e 100644
---- a/libweston/backend-drm/drm.c
-+++ b/libweston/backend-drm/drm.c
-@@ -3402,10 +3402,6 @@ err_drm_source:
- wl_event_source_remove(b->drm_source);
- err_udev_input:
- udev_input_destroy(&b->input);
--#ifdef BUILD_DRM_GBM
-- if (b->gbm)
-- gbm_device_destroy(b->gbm);
--#endif
- destroy_sprites(b);
- err_udev_dev:
- udev_device_unref(drm_device);
-@@ -3415,6 +3411,10 @@ err_launcher:
- weston_launcher_destroy(compositor->launcher);
- err_compositor:
- weston_compositor_shutdown(compositor);
-+#ifdef BUILD_DRM_GBM
-+ if (b->gbm)
-+ gbm_device_destroy(b->gbm);
-+#endif
- free(b);
- return NULL;
- }
---
-2.17.1
-
diff --git a/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch b/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch
deleted file mode 100644
index 06e0f7ba..00000000
--- a/recipes-graphics/wayland/weston/0001-meson.build-fix-incorrect-header.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From a2ba4714a6872e547621d29d9ddcb0f374b88cf6 Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Tue, 20 Apr 2021 20:42:18 -0700
-Subject: [PATCH] meson.build: fix incorrect header
-
-The wayland.c actually include 'xdg-shell-client-protocol.h' instead of
-the server one, so fix it. Otherwise, it's possible to get build failure
-due to race condition.
-
-Upstream-Status: Pending
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- libweston/backend-wayland/meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libweston/backend-wayland/meson.build b/libweston/backend-wayland/meson.build
-index 7e82513..29270b5 100644
---- a/libweston/backend-wayland/meson.build
-+++ b/libweston/backend-wayland/meson.build
-@@ -10,7 +10,7 @@ srcs_wlwl = [
- fullscreen_shell_unstable_v1_protocol_c,
- presentation_time_protocol_c,
- presentation_time_server_protocol_h,
-- xdg_shell_server_protocol_h,
-+ xdg_shell_client_protocol_h,
- xdg_shell_protocol_c,
- ]
-
---
-2.30.2
-
diff --git a/recipes-graphics/wayland/weston/0001-tests-Add-dependency-on-screenshooter-client-protoco.patch b/recipes-graphics/wayland/weston/0001-tests-Add-dependency-on-screenshooter-client-protoco.patch
new file mode 100644
index 00000000..46538600
--- /dev/null
+++ b/recipes-graphics/wayland/weston/0001-tests-Add-dependency-on-screenshooter-client-protoco.patch
@@ -0,0 +1,33 @@
+From 2ac6b6b084a877adde64db7faff2ed22eb3ea97a Mon Sep 17 00:00:00 2001
+From: Daniel Stone <daniels@collabora.com>
+Date: Tue, 8 Feb 2022 22:39:42 +0000
+Subject: [PATCH] tests: Add dependency on screenshooter client protocol
+
+Given that the test-helper code relies on the screenshooter protocol,
+make sure it's available for us to build, and the dependency ensures we
+build in order.
+
+Fixes: #588
+
+Signed-off-by: Daniel Stone <daniels@collabora.com>
+---
+ tests/meson.build | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/tests/meson.build b/tests/meson.build
+index 2d464ddcc..222091cd1 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -29,8 +29,9 @@ lib_test_client = static_library(
+ 'weston-test-client-helper.c',
+ 'weston-test-fixture-compositor.c',
+ weston_test_client_protocol_h,
+- weston_screenshooter_protocol_c,
+ weston_test_protocol_c,
++ weston_screenshooter_client_protocol_h,
++ weston_screenshooter_protocol_c,
+ viewporter_client_protocol_h,
+ viewporter_protocol_c,
+ 'color_util.h',
+
+
diff --git a/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
deleted file mode 100644
index f6ebfd8f..00000000
--- a/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch
+++ /dev/null
@@ -1,199 +0,0 @@
-From a1548c742bf2dedbb47282d8a00407b60bbab669 Mon Sep 17 00:00:00 2001
-From: Tom Hochstein <tom.hochstein@nxp.com>
-Date: Wed, 22 Feb 2017 15:53:30 +0200
-Subject: [PATCH] weston-launch: Provide a default version that doesn't require
-
- PAM
-
-weston-launch requires PAM for starting weston as a non-root user.
-
-Since starting weston as root is a valid use case by itself, if
-PAM is not available, provide a default version of weston-launch
-without non-root-user support.
-
-Upstream-Status: Denied [https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/725]
-
-Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Signed-off-by: Denys Dmytriyenko <denys@ti.com>
-Signed-off-by: Ming Liu <ming.liu@toradex.com>
-
----
- libweston/meson.build | 16 ++++++++++++----
- libweston/weston-launch.c | 21 +++++++++++++++++++++
- meson_options.txt | 7 +++++++
- 3 files changed, 40 insertions(+), 4 deletions(-)
-
-diff --git a/libweston/meson.build b/libweston/meson.build
-index 08d23ec..cb9fd3f 100644
---- a/libweston/meson.build
-+++ b/libweston/meson.build
-@@ -216,16 +216,24 @@ dep_vertex_clipping = declare_dependency(
- )
-
- if get_option('weston-launch')
-- dep_pam = cc.find_library('pam')
-+ deps_weston_launch = [systemd_dep, dep_libdrm]
-
-- if not cc.has_function('pam_open_session', dependencies: dep_pam)
-- error('pam_open_session not found for weston-launch')
-+ if get_option('pam')
-+ dep_pam = cc.find_library('pam')
-+ if not cc.has_function('pam_open_session', dependencies: dep_pam)
-+ error('pam_open_session not found for weston-launch')
-+ endif
-+
-+ if dep_pam.found()
-+ deps_weston_launch += dep_pam
-+ config_h.set('HAVE_PAM', '1')
-+ endif
- endif
-
- executable(
- 'weston-launch',
- 'weston-launch.c',
-- dependencies: [dep_pam, systemd_dep, dep_libdrm],
-+ dependencies: deps_weston_launch,
- include_directories: common_inc,
- install: true
- )
-diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c
-index 521cb2c..2d42d33 100644
---- a/libweston/weston-launch.c
-+++ b/libweston/weston-launch.c
-@@ -51,7 +51,9 @@
-
- #include <pwd.h>
- #include <grp.h>
-+#ifdef HAVE_PAM
- #include <security/pam_appl.h>
-+#endif
-
- #ifdef HAVE_SYSTEMD_LOGIN
- #include <systemd/sd-login.h>
-@@ -100,8 +102,10 @@ drmSetMaster(int drm_fd)
- #endif
-
- struct weston_launch {
-+#ifdef HAVE_PAM
- struct pam_conv pc;
- pam_handle_t *ph;
-+#endif
- int tty;
- int ttynr;
- int sock[2];
-@@ -192,6 +196,7 @@ weston_launch_allowed(struct weston_launch *wl)
- return false;
- }
-
-+#ifdef HAVE_PAM
- static int
- pam_conversation_fn(int msg_count,
- const struct pam_message **messages,
-@@ -232,6 +237,7 @@ setup_pam(struct weston_launch *wl)
-
- return 0;
- }
-+#endif
-
- static int
- setup_launcher_socket(struct weston_launch *wl)
-@@ -466,6 +472,7 @@ quit(struct weston_launch *wl, int status)
- close(wl->signalfd);
- close(wl->sock[0]);
-
-+#ifdef HAVE_PAM
- if (wl->new_user) {
- err = pam_close_session(wl->ph, 0);
- if (err)
-@@ -473,6 +480,7 @@ quit(struct weston_launch *wl, int status)
- err, pam_strerror(wl->ph, err));
- pam_end(wl->ph, err);
- }
-+#endif
-
- /*
- * Get a fresh handle to the tty as the previous one is in
-@@ -710,6 +718,7 @@ setup_session(struct weston_launch *wl, char **child_argv)
- setenv("HOME", wl->pw->pw_dir, 1);
- setenv("SHELL", wl->pw->pw_shell, 1);
-
-+#ifdef HAVE_PAM
- env = pam_getenvlist(wl->ph);
- if (env) {
- for (i = 0; env[i]; ++i) {
-@@ -718,6 +727,7 @@ setup_session(struct weston_launch *wl, char **child_argv)
- }
- free(env);
- }
-+#endif
-
- /*
- * We open a new session, so it makes sense
-@@ -789,8 +799,10 @@ static void
- help(const char *name)
- {
- fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name);
-+#ifdef HAVE_PAM
- fprintf(stderr, " -u, --user Start session as specified username,\n"
- " e.g. -u joe, requires root.\n");
-+#endif
- fprintf(stderr, " -t, --tty Start session on alternative tty,\n"
- " e.g. -t /dev/tty4, requires -u option.\n");
- fprintf(stderr, " -v, --verbose Be verbose\n");
-@@ -804,7 +816,9 @@ main(int argc, char *argv[])
- int i, c;
- char *tty = NULL;
- struct option opts[] = {
-+#ifdef HAVE_PAM
- { "user", required_argument, NULL, 'u' },
-+#endif
- { "tty", required_argument, NULL, 't' },
- { "verbose", no_argument, NULL, 'v' },
- { "help", no_argument, NULL, 'h' },
-@@ -816,11 +830,16 @@ main(int argc, char *argv[])
- while ((c = getopt_long(argc, argv, "u:t:vh", opts, &i)) != -1) {
- switch (c) {
- case 'u':
-+#ifdef HAVE_PAM
- wl.new_user = optarg;
- if (getuid() != 0) {
- fprintf(stderr, "weston: Permission denied. -u allowed for root only\n");
- exit(EXIT_FAILURE);
- }
-+#else
-+ fprintf(stderr, "weston: -u is unsupported in this weston-launch build\n");
-+ exit(EXIT_FAILURE);
-+#endif
- break;
- case 't':
- tty = optarg;
-@@ -872,8 +891,10 @@ main(int argc, char *argv[])
- if (setup_tty(&wl, tty) < 0)
- exit(EXIT_FAILURE);
-
-+#ifdef HAVE_PAM
- if (wl.new_user && setup_pam(&wl) < 0)
- exit(EXIT_FAILURE);
-+#endif
-
- if (setup_launcher_socket(&wl) < 0)
- exit(EXIT_FAILURE);
-diff --git a/meson_options.txt b/meson_options.txt
-index 239bd2d..99e4ec3 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -73,6 +73,13 @@ option(
- )
-
- option(
-+ 'pam',
-+ type: 'boolean',
-+ value: true,
-+ description: 'Define if PAM is available'
-+)
-+
-+option(
- 'xwayland',
- type: 'boolean',
- value: true,
diff --git a/recipes-graphics/wayland/weston_9.0.0.imx.bb b/recipes-graphics/wayland/weston_10.0.1.imx.bb
index 228cf4fa..84cd9fd8 100644
--- a/recipes-graphics/wayland/weston_9.0.0.imx.bb
+++ b/recipes-graphics/wayland/weston_10.0.1.imx.bb
@@ -3,58 +3,59 @@
# recipe. The second section customizes the recipe for i.MX.
########### OE-core copy ##################
-# Upstream hash: c8aa0222ce2be647911114aaebcbb0d55d7caf87
+# Upstream hash: 400aae43d08f0b9f787ac0d21cb3c97058d76748
SUMMARY = "Weston, a Wayland compositor"
DESCRIPTION = "Weston is the reference implementation of a Wayland compositor"
HOMEPAGE = "http://wayland.freedesktop.org"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \
- file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a"
+ file://libweston/compositor.c;endline=27;md5=eb6d5297798cabe2ddc65e2af519bcf0 \
+ "
SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
file://weston.png \
file://weston.desktop \
file://xwayland.weston-start \
file://systemd-notify.weston-start \
- file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \
- file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \
- file://0001-meson.build-fix-incorrect-header.patch \
- file://0001-libweston-backend-drm-Re-order-gbm-destruction-at-DR.patch \
- file://0001-g2d-renderer-Add-vsync-to-cloned-displays.patch \
-"
+ "
SRC_URI:append:libc-musl = " file://dont-use-plane-add-prop.patch "
-SRC_URI[sha256sum] = "5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe"
+SRC_URI[sha256sum] = "5c23964112b90238bed39e5dd1e41cd71a79398813cdc3bbb15a9fdc94e547ae"
UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html"
-inherit meson pkgconfig useradd features_check
+inherit meson pkgconfig useradd
+
# depends on virtual/egl
-# weston-init requires pam enabled if started via systemd
-REQUIRED_DISTRO_FEATURES = "opengl ${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'systemd', 'pam', '', d)}"
+#
+require ${THISDIR}/required-distro-features.inc
DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0"
DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native"
+DEPENDS:append:imxfbdev = " libdrm"
LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'lto', '-Wl,-z,undefs', '', d)}"
WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}"
-EXTRA_OEMESON += "-Dbackend-default=auto -Dpipewire=false"
+EXTRA_OEMESON += "-Dpipewire=false"
-PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \
+PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms wayland egl clients', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \
- ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd x11', d)} \
${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \
- launch \
+ ${@oe.utils.conditional('VIRTUAL-RUNTIME_init_manager', 'sysvinit', 'launcher-libseat', '', d)} \
image-jpeg \
screenshare \
shell-desktop \
shell-fullscreen \
shell-ivi"
+# Can be 'damage', 'im', 'egl', 'shm', 'touch', 'dmabuf-feedback', 'dmabuf-v4l', 'dmabuf-egl' or 'all'
+SIMPLECLIENTS ?= "all"
+
#
# Compositor choices
#
@@ -67,11 +68,11 @@ PACKAGECONFIG[x11] = "-Dbackend-x11=true,-Dbackend-x11=false,virtual/libx11 libx
# Headless Weston
PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false"
# Weston on framebuffer
-PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev"
+PACKAGECONFIG[fbdev] = "-Ddeprecated-backend-fbdev=true,-Ddeprecated-backend-fbdev=false,udev mtdev"
# Weston on RDP
PACKAGECONFIG[rdp] = "-Dbackend-rdp=true,-Dbackend-rdp=false,freerdp"
# weston-launch
-PACKAGECONFIG[launch] = "-Dweston-launch=true,-Dweston-launch=false,drm"
+PACKAGECONFIG[launch] = "-Ddeprecated-weston-launch=true,-Ddeprecated-weston-launch=false,drm"
# VA-API desktop recorder
PACKAGECONFIG[vaapi] = "-Dbackend-drm-screencast-vaapi=true,-Dbackend-drm-screencast-vaapi=false,libva"
# Weston with EGL support
@@ -87,11 +88,9 @@ PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false"
# colord CMS support
PACKAGECONFIG[colord] = "-Dcolor-management-colord=true,-Dcolor-management-colord=false,colord"
# Clients support
-PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false"
+PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLECLIENTS} -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false"
# Virtual remote output with GStreamer on DRM backend
PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer1.0 gstreamer1.0-plugins-base"
-# Weston with PAM support
-PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam"
# Weston with screen-share support
PACKAGECONFIG[screenshare] = "-Dscreenshare=true,-Dscreenshare=false"
# Traditional desktop shell
@@ -102,6 +101,8 @@ PACKAGECONFIG[shell-fullscreen] = "-Dshell-fullscreen=true,-Dshell-fullscreen=fa
PACKAGECONFIG[shell-ivi] = "-Dshell-ivi=true,-Dshell-ivi=false"
# JPEG image loading support
PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg"
+# support libseat based launch
+PACKAGECONFIG[launcher-libseat] = "-Dlauncher-libseat=true,-Dlauncher-libseat=false,seatd"
do_install:append() {
# Weston doesn't need the .la files to load modules, so wipe them
@@ -158,12 +159,15 @@ SUMMARY = "Weston, a Wayland compositor, i.MX fork"
DEFAULT_PREFERENCE = "-1"
-SRCBRANCH = "weston-imx-9.0"
-SRC_URI:remove = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \
- file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \
-"
-SRC_URI:prepend = "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} "
-SRCREV = "7859a762617682bd804e210ad3bda6bdcd3ea24a"
+SRC_URI:remove = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz"
+SRC_URI:prepend = "git://github.com/nxp-imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} "
+SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch \
+ file://0001-g2d-renderer.c-Include-sys-stat.h.patch \
+ file://0001-tests-Add-dependency-on-screenshooter-client-protoco.patch \
+ "
+SRCBRANCH = "weston-imx-10.0.1"
+SRCREV = "3f8f336b5d2cf7ea7aa4e047d669d093fc46dfe6"
+
S = "${WORKDIR}/git"
# Disable OpenGL for parts with GPU support for 2D but not 3D
@@ -182,11 +186,10 @@ PACKAGECONFIG:append:imxfbdev = " fbdev clients"
PACKAGECONFIG:append:imxgpu = " imxgpu"
PACKAGECONFIG:append:imxgpu2d = " imxg2d"
-# Clients support
-SIMPLE_CLIENTS = "all"
-SIMPLE_CLIENTS:imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
+SIMPLECLIENTS:imxfbdev = "damage,im,egl,shm,touch,dmabuf-v4l"
+
+# Override
PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false,libxcursor"
-PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLE_CLIENTS} -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false"
# Weston with i.MX GPU support
PACKAGECONFIG[imxgpu] = "-Dimxgpu=true,-Dimxgpu=false,virtual/egl"
# Weston with i.MX G2D renderer
@@ -194,6 +197,15 @@ PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d
# Weston with OpenGL support
PACKAGECONFIG[opengl] = "-Dopengl=true,-Dopengl=false"
+PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev"
+EXTRA_OEMESON:append:imxfbdev = " -Dbackend-default=fbdev"
+
+EXTRA_OEMESON += "-Ddeprecated-wl-shell=true"
+
+# links with imx-gpu libs which are pre-built for glibc
+# gcompat will address it during runtime
+LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined"
+
PACKAGE_ARCH = "${MACHINE_SOCARCH}"
COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-Allow-to-enable-atomic-in-modesetting-DDX.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-Allow-to-enable-atomic-in-modesetting-DDX.patch
index caf2fcd6..24f08f98 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-Allow-to-enable-atomic-in-modesetting-DDX.patch
+++ b/recipes-graphics/xorg-xserver/xserver-xorg/0001-Allow-to-enable-atomic-in-modesetting-DDX.patch
@@ -1,4 +1,4 @@
-From 9c8b815520bf52caf780dc4defea0fe2fe8e33a3 Mon Sep 17 00:00:00 2001
+From 8f50f62cf9030d1839e23a7f1ff9688dec2063e4 Mon Sep 17 00:00:00 2001
From: Daniel Abrecht <public@danielabrecht.ch>
Date: Wed, 21 Oct 2020 21:13:30 +0200
Subject: [PATCH] Allow to enable atomic in modesetting DDX
@@ -12,16 +12,17 @@ This change doesn't enable atomic by default, but it allows a user to
enabled it again.
Signed-off-by: Daniel Abrecht <public@danielabrecht.ch>
+
---
hw/xfree86/drivers/modesetting/driver.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/xfree86/drivers/modesetting/driver.c b/hw/xfree86/drivers/modesetting/driver.c
-index 6549ef8e1..bd8576f81 100644
+index 535f49d..58a1c67 100644
--- a/hw/xfree86/drivers/modesetting/driver.c
+++ b/hw/xfree86/drivers/modesetting/driver.c
-@@ -1216,7 +1216,7 @@ PreInit(ScrnInfoPtr pScrn, int flags)
- }
+@@ -1236,7 +1236,7 @@ PreInit(ScrnInfoPtr pScrn, int flags)
+ ms->atomic_modeset_capable = (ret == 0);
if (xf86ReturnOptValBool(ms->drmmode.Options, OPTION_ATOMIC, FALSE)) {
- ret = drmSetClientCap(ms->fd, DRM_CLIENT_CAP_ATOMIC, 1);
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch
deleted file mode 100644
index 6f232589..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From ed3c55fa6260ad125a32f9ac67f9e44a9bce7cf1 Mon Sep 17 00:00:00 2001
-From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
-Date: Mon, 11 May 2020 19:12:51 -0500
-Subject: [PATCH] MGS-5186 Per Specification EGL_NATIVE_PIXMAP_KHR requires
- EGL_NO_CONTEXT
-
-https://www.khronos.org/registry/EGL/extensions/KHR/EGL_KHR_image_pixmap.txt
-
-Per Specification EGL_NATIVE_PIXMAP_KHR requires EGL_NO_CONTEXT.
-So passing context will result in error.
-
-Upstream-Status: Pending
-Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
----
- hw/xwayland/xwayland-glamor-gbm.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: xorg-server-1.20.8/hw/xwayland/xwayland-glamor-gbm.c
-===================================================================
---- xorg-server-1.20.8.orig/hw/xwayland/xwayland-glamor-gbm.c
-+++ xorg-server-1.20.8/hw/xwayland/xwayland-glamor-gbm.c
-@@ -167,7 +167,7 @@ xwl_glamor_gbm_create_pixmap_for_bo(Scre
- xwl_pixmap->bo = bo;
- xwl_pixmap->buffer = NULL;
- xwl_pixmap->image = eglCreateImageKHR(xwl_screen->egl_display,
-- xwl_screen->egl_context,
-+ EGL_NO_CONTEXT,
- EGL_NATIVE_PIXMAP_KHR,
- xwl_pixmap->bo, NULL);
- if (xwl_pixmap->image == EGL_NO_IMAGE_KHR)
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch
deleted file mode 100644
index c8f1ae73..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From cc05c01925755310f027c61daa29648a10155f96 Mon Sep 17 00:00:00 2001
-From: Rohan Garg <rohan@garg.io>
-Date: Thu, 13 Dec 2018 19:15:01 +0100
-Subject: [PATCH] glamor/glamor_egl.c: EGL_NATIVE_PIXMAP_KHR do not require
- contexts
-
-From https://www.khronos.org/registry/EGL/extensions/KHR/EGL_KHR_image_pixmap.txt
-
- * If <target> is EGL_NATIVE_PIXMAP_KHR, and <ctx> is not EGL_NO_CONTEXT,
- the error EGL_BAD_PARAMETER is generated.
-
-Fixes: a5321ea4 ("Allow to create textured pixmaps from gbm_bo without using gem names")
----
- glamor/glamor_egl.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Upstream-Status: Backport [cc05c01925755310f027c61daa29648a10155f96]
-
-diff --git a/glamor/glamor_egl.c b/glamor/glamor_egl.c
-index 0f4edb5a3..69844d4e2 100644
---- a/glamor/glamor_egl.c
-+++ b/glamor/glamor_egl.c
-@@ -233,7 +233,7 @@ glamor_egl_create_textured_pixmap_from_gbm_bo(PixmapPtr pixmap,
- glamor_make_current(glamor_priv);
-
- image = eglCreateImageKHR(glamor_egl->display,
-- glamor_egl->context,
-+ EGL_NO_CONTEXT,
- EGL_NATIVE_PIXMAP_KHR, bo, NULL);
- if (image == EGL_NO_IMAGE_KHR) {
- glamor_set_pixmap_type(pixmap, GLAMOR_DRM_ONLY);
---
-2.17.1
-
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-prefer-to-use-GLES2-for-glamor-EGL-config.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch
deleted file mode 100644
index 6e140eaa..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-prefer-to-use-GLES2-for-glamor-EGL-config.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From a99ff39b3b6095a16977fbb13b2b453a7359850f Mon Sep 17 00:00:00 2001
-From: Xianzhong <xianzhong.li@nxp.com>
-Date: Mon, 11 Jan 2021 11:53:29 +0800
-Subject: [PATCH] prefer to use GLES2 for glamor EGL config
-
-created the initial patch for xorg/xserver 1.20.8
-
-Upstream-Status: Pending
-Signed-off-by: Xianzhong <xianzhong.li@nxp.com>
----
- hw/xwayland/xwayland-glamor-gbm.c | 13 ++++---------
- 1 file changed, 4 insertions(+), 9 deletions(-)
-
-diff --git a/hw/xwayland/xwayland-glamor-gbm.c b/hw/xwayland/xwayland-glamor-gbm.c
-index dce782fc3..1fdf45490 100644
---- a/hw/xwayland/xwayland-glamor-gbm.c
-+++ b/hw/xwayland/xwayland-glamor-gbm.c
-@@ -912,13 +912,8 @@ xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen)
- struct xwl_gbm_private *xwl_gbm = xwl_gbm_get(xwl_screen);
- EGLint major, minor;
- Bool egl_initialized = FALSE;
-- static const EGLint config_attribs_core[] = {
-- EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR,
-- EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR,
-- EGL_CONTEXT_MAJOR_VERSION_KHR,
-- GLAMOR_GL_CORE_VER_MAJOR,
-- EGL_CONTEXT_MINOR_VERSION_KHR,
-- GLAMOR_GL_CORE_VER_MINOR,
-+ static const EGLint config_attribs_gles2[] = {
-+ EGL_CONTEXT_CLIENT_VERSION, 2,
- EGL_NONE
- };
- const GLubyte *renderer;
-@@ -947,10 +942,10 @@ xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen)
- goto error;
- }
-
-- eglBindAPI(EGL_OPENGL_API);
-+ eglBindAPI(EGL_OPENGL_ES_API);
-
- xwl_screen->egl_context = eglCreateContext(
-- xwl_screen->egl_display, NULL, EGL_NO_CONTEXT, config_attribs_core);
-+ xwl_screen->egl_display, NULL, EGL_NO_CONTEXT, config_attribs_gles2);
- if (xwl_screen->egl_context == EGL_NO_CONTEXT) {
- xwl_screen->egl_context = eglCreateContext(
- xwl_screen->egl_display, NULL, EGL_NO_CONTEXT, NULL);
---
-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
deleted file mode 100644
index e0958558..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0001-xfree86-define-FOURCC_NV12-and-XVIMAGE_NV12.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-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
deleted file mode 100644
index 78988373..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0002-glamor-add-support-for-GL_RG.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-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-Remove-check-for-useSIGIO-option.patch b/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch
deleted file mode 100644
index beed6cb4..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0003-Remove-check-for-useSIGIO-option.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From cf407b16cd65ad6e26a9c8e5984e163409a5c0f7 Mon Sep 17 00:00:00 2001
-From: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
-Date: Mon, 30 Jan 2017 16:32:06 -0600
-Subject: [PATCH] Remove check for useSIGIO option
-
-Commit 6a5a4e60373c1386b311b2a8bb666c32d68a9d99 removes the configure of useSIGIO
-option.
-
-As the xfree86 SIGIO support is reworked to use internal versions of OsBlockSIGIO
-and OsReleaseSIGIO.
-
-No longer the check for useSIGIO is needed
-
-Upstream-Status: Pending
-
-Signed-off-by: Prabhu Sundararaj <prabhu.sundararaj@nxp.com>
----
- hw/xfree86/os-support/shared/sigio.c | 6 ------
- 1 file changed, 6 deletions(-)
-
-diff --git a/hw/xfree86/os-support/shared/sigio.c b/hw/xfree86/os-support/shared/sigio.c
-index 884a71c..be76498 100644
---- a/hw/xfree86/os-support/shared/sigio.c
-+++ b/hw/xfree86/os-support/shared/sigio.c
-@@ -185,9 +185,6 @@ xf86InstallSIGIOHandler(int fd, void (*f) (int, void *), void *closure)
- int i;
- int installed = FALSE;
-
-- if (!xf86Info.useSIGIO)
-- return 0;
--
- for (i = 0; i < MAX_FUNCS; i++) {
- if (!xf86SigIOFuncs[i].f) {
- if (xf86IsPipe(fd))
-@@ -256,9 +253,6 @@ xf86RemoveSIGIOHandler(int fd)
- int max;
- int ret;
-
-- if (!xf86Info.useSIGIO)
-- return 0;
--
- max = 0;
- ret = 0;
- for (i = 0; i < MAX_FUNCS; i++) {
---
-2.7.4
-
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
deleted file mode 100644
index 855d1938..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0003-glamor-add-support-for-NV12-in-Xv.patch
+++ /dev/null
@@ -1,322 +0,0 @@
-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
deleted file mode 100644
index c116576f..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0004-glamor-Remove-unused-format_for_pixmap-helper.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-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
deleted file mode 100644
index 9a0aa7ab..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0005-glamor-Stop-trying-to-store-the-pixmap-s-format-in-g.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-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
deleted file mode 100644
index 66d2877c..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0006-glamor-Plumb-the-pixmap-through-fbo-creation-instead.patch
+++ /dev/null
@@ -1,265 +0,0 @@
-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
deleted file mode 100644
index f2947f32..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0007-glamor-Switch-the-gl_flavor-to-a-boolean-is_gles.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-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
deleted file mode 100644
index dd82340a..00000000
--- a/recipes-graphics/xorg-xserver/xserver-xorg/0008-glamor-Introduce-a-central-place-for-our-pixmap-form.patch
+++ /dev/null
@@ -1,669 +0,0 @@
-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 c956245b..161df049 100644
--- a/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_%.bbappend
@@ -1,21 +1,6 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${BPN}:"
SRC_URI:append:use-mainline-bsp = " file://0001-Allow-to-enable-atomic-in-modesetting-DDX.patch"
-SRC_URI:append:imxgpu = " \
- file://0003-Remove-check-for-useSIGIO-option.patch \
- file://0001-MGS-5186-Per-Specification-EGL_NATIVE_PIXMAP_KHR-req.patch \
- file://0001-glamor-glamor_egl.c-EGL_NATIVE_PIXMAP_KHR-do-not-req.patch \
- 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 = ""
IMX_OPENGL_PKGCONFIGS_REMOVE:imxgpu = "glamor"
diff --git a/recipes-graphics/xwayland/xwayland_%.bbappend b/recipes-graphics/xwayland/xwayland_%.bbappend
index 69063121..f2141f4f 100644
--- a/recipes-graphics/xwayland/xwayland_%.bbappend
+++ b/recipes-graphics/xwayland/xwayland_%.bbappend
@@ -10,3 +10,10 @@ OPENGL_PKGCONFIGS_REMOVE_IMXGPU = ""
OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx6-nxp-bsp = "glamor glx"
OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx7-nxp-bsp = "glamor glx"
OPENGL_PKGCONFIGS_REMOVE_IMXGPU:mx8-nxp-bsp = "glx"
+
+
+# links with imx-gpu libs which are pre-built for glibc
+# gcompat will address it during runtime
+LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined"
+
+RDEPENDS:${PN}:append:imxgpu:libc-musl = " gcompat"
diff --git a/recipes-kernel/ceetm/ceetm_git.bb b/recipes-kernel/ceetm/ceetm_git.bb
index a6381174..ecc28a90 100644
--- a/recipes-kernel/ceetm/ceetm_git.bb
+++ b/recipes-kernel/ceetm/ceetm_git.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "CEETM TC QDISC"
LICENSE = "GPL-2.0-only & 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;protocol=https;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 7fecf0c6..d09e4687 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-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.p2.4+fslc.bb b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.6+fslc.bb
index c0943907..fc51acfe 100644
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p2.4+fslc.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.6+fslc.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
PV .= "+git${SRCPV}"
-SRCREV = "5c7b8847fb9533aaea809d9d5a4eba2f1792f93c"
+SRCREV = "1adf982c5954f2f87919c6874279386f82e898a6"
SRC_URI = "git://github.com/Freescale/kernel-module-imx-gpu-viv.git;protocol=https;branch=master"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.0.bb b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.6.bb
index 12de35be..abb7b323 100644
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.0.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.3.p4.6.bb
@@ -7,14 +7,12 @@ allowing flexibility to use a newer graphics release with an older kernel."
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
+SRC_URI = "${KERNEL_SRC};subpath=drivers/mxc/gpu-viv;destsuffix=git/src \
+ file://Add-makefile.patch"
+KERNEL_SRC ?= "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
SRCBRANCH = "lf-5.15.y"
-LOCALVERSION = "-5.15.5-1.0.0"
-KERNEL_SRC ?= "git://source.codeaurora.org/external/imx/linux-imx.git;protocol=https;branch=master"
-SRC_URI = " \
- ${KERNEL_SRC};branch=${SRCBRANCH};subpath=drivers/mxc/gpu-viv;destsuffix=git/src \
- file://Add-makefile.patch \
-"
-SRCREV = "e47e5ff6895a7aa2f75dcb2e2c7257e25cf77901"
+LOCALVERSION = "-5.15.71-2.2.0"
+SRCREV = "b257903e33d78d7658ea2a5697fd11044a7b1770"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-ipc.inc b/recipes-kernel/kernel-modules/kernel-module-ipc.inc
index 903c53a4..d2316fe0 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-yocto-sdk/ipc;protocol=https;nobranch=1"
SRCREV = "74d662707558290f070f9589177db730444bc435"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-dwe_isr.c-fix-error-found-by-gcc12.patch b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-dwe_isr.c-fix-error-found-by-gcc12.patch
deleted file mode 100644
index f317a08d..00000000
--- a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-dwe_isr.c-fix-error-found-by-gcc12.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 95c353810b55b30a70f1317369fcb179b444f2da Mon Sep 17 00:00:00 2001
-From: Max Krummenacher <max.krummenacher@toradex.com>
-Date: Tue, 17 May 2022 14:49:55 +0000
-Subject: [PATCH] dwe_isr.c: fix error found by gcc12
-
-| .../vvcam/v4l2/../dwe/dwe_isr.c: In function 'update_dma_buffer':
-| .../vvcam/v4l2/../dwe/dwe_isr.c:107:47: error: the comparison will always evaluate as 'false' for the address of 'dist_map' will never be NULL [-Werror=address]
-| 107 | if (dev->dist_map[dev->index] == NULL) {
-| | ^~
-| cc1: all warnings being treated as errors
-| .../vvcam/v4l2/../dwe/dwe_dev.h:109:20: note: 'dist_map' declared here
-| 109 | dma_addr_t dist_map[MAX_DWE_NUM][MAX_CFG_NUM];
-| | ^~~~~~~~
-| cc1: all warnings being treated as errors
-
-Taking just one element of the first dimension of a multi-dimensional
-array always returns a valid pointer.
-
-Likely what was meant is to check if the later used element
-( dev->dist_map[dev->index][which] ) contains NULL but that isn't
-what the code does.
-Change the code according to that assumption.
-
-Upstream-Status: Pending
-
-Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
----
- vvcam/dwe/dwe_isr.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/vvcam/dwe/dwe_isr.c b/vvcam/dwe/dwe_isr.c
-index ba74302..73ef83b 100644
---- a/vvcam/dwe/dwe_isr.c
-+++ b/vvcam/dwe/dwe_isr.c
-@@ -104,7 +104,8 @@ static int update_dma_buffer(struct dwe_ic_dev *dev)
- continue;
- }
-
-- if (dev->dist_map[dev->index] == NULL) {
-+ which = dev->which[dev->index];
-+ if (dev->dist_map[dev->index][which] == (dma_addr_t)NULL) {
- vvbuf_ready(dev->sink_bctx, dev->src->pad, dev->src);
- dev->src = NULL;
- dev->error = BUF_ERR_WRONGSTATE;
-@@ -121,7 +122,6 @@ static int update_dma_buffer(struct dwe_ic_dev *dev)
- }
- } while(dev->dst == NULL);
-
-- which = dev->which[dev->index];
- dwe_s_params(dev, &dev->info[dev->index][which]);
- dwe_set_buffer(dev, &dev->info[dev->index][which], dev->dst->dma);
- dwe_set_lut(dev, dev->dist_map[dev->index][which]);
---
-2.20.1
-
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.16.0.bb b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.16.0.bb
deleted file mode 100644
index d5862222..00000000
--- a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.16.0.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 2020-2021 NXP
-
-DESCRIPTION = "Kernel loadable module for ISP"
-LICENSE = "GPL-2.0-only"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/git/vvcam/LICENSE;md5=64381a6ea83b48c39fe524c85f65fb44"
-
-SRCBRANCH = "lf-5.10.y_2.2.0"
-ISP_KERNEL_SRC ?= "git://source.codeaurora.org/external/imx/isp-vvcam.git;protocol=https;branch=master"
-
-SRC_URI = " \
- ${ISP_KERNEL_SRC};branch=${SRCBRANCH} \
- file://0001-dwe_isr.c-fix-error-found-by-gcc12.patch;patchdir=${WORKDIR}/git \
-"
-SRCREV = "b2321c0c513322aca8187ebf0328b74fe45a0f01"
-
-S = "${WORKDIR}/git/vvcam/v4l2"
-
-inherit module
-
-COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.19.0.bb b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.19.0.bb
new file mode 100644
index 00000000..05431165
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.19.0.bb
@@ -0,0 +1,24 @@
+# Copyright 2020-2021 NXP
+
+DESCRIPTION = "Kernel loadable module for ISP"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://${S}/../LICENSE;md5=64381a6ea83b48c39fe524c85f65fb44"
+
+SRC_URI = "${ISP_KERNEL_SRC};branch=${SRCBRANCH}"
+ISP_KERNEL_SRC ?= "git://github.com/nxp-imx/isp-vvcam.git;protocol=https"
+SRCBRANCH = "lf-5.15.y_2.1.0"
+SRCREV = "b26ee8a5402afd7488716e06d82147669c05eb4a"
+
+S = "${WORKDIR}/git/vvcam/v4l2"
+DEBUG_PREFIX_MAP = "-fmacro-prefix-map=${WORKDIR}/git/vvcam=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
+ -fdebug-prefix-map=${WORKDIR}/git/vvcam=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
+ -fmacro-prefix-map=${B}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
+ -fdebug-prefix-map=${B}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
+ -fdebug-prefix-map=${STAGING_DIR_HOST}= \
+ -fmacro-prefix-map=${STAGING_DIR_HOST}= \
+ -fdebug-prefix-map=${STAGING_DIR_NATIVE}= \
+"
+
+inherit module
+
+COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
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 0a83a4a2..03e6c83c 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-yocto-sdk/ls-dbg;branch=nxp/master"
SRCREV = "40501f6659e880d38508cdd34a4df2d348d1c68e"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/kernel-modules/kernel-module-nxp89xx_git.bb b/recipes-kernel/kernel-modules/kernel-module-nxp89xx_git.bb
index 00747f72..827dc94a 100644
--- a/recipes-kernel/kernel-modules/kernel-module-nxp89xx_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-nxp89xx_git.bb
@@ -2,10 +2,10 @@ SUMMARY = "NXP Wi-Fi driver for module 88w8997/8987"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=ab04ac0f249af12befccb94447c08b77"
-SRCBRANCH = "lf-5.10.72_2.2.0"
-MRVL_SRC ?= "git://source.codeaurora.org/external/imx/mwifiex.git;protocol=https"
+SRCBRANCH = "lf-5.15.52_2.1.0"
+MRVL_SRC ?= "git://github.com/nxp-imx/mwifiex.git;protocol=https"
SRC_URI = "${MRVL_SRC};branch=${SRCBRANCH}"
-SRCREV = "3c2a3c2cd25e9dce95f34c21bb4e728647eb64ee"
+SRCREV = "5cda905576fd26eca6b49d0f0fb5e2bb3c0bf441"
S = "${WORKDIR}/git/mxm_wifiex/wlan_src"
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 7beaf0e7..e0570f83 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 = "GPL-2.0-or-later"
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-yocto-sdk/qoriq-perf;branch=nxp/master"
SRCREV = "7beb3783edac66bab00c85d99a7b073f569af7fd"
S = "${WORKDIR}/git"
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 b80aa79b..bca0dbb5 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-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 a8d5d498..0a65642a 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 = "GPL-2.0-only"
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-yocto-sdk/l2switch-uio;branch=nxp/sdk-v2.0.x"
SRCREV = "0f31fbcbe9ab1ab9c424da34f70c82314b16f8de"
inherit module
diff --git a/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig b/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig
index 3c385e2a..85e72abc 100644
--- a/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig
+++ b/recipes-kernel/linux/linux-fslc-imx/imx-nxp-bsp/defconfig
@@ -146,6 +146,7 @@ CONFIG_BLK_DEV_MD=m
CONFIG_BLK_DEV_DM=m
CONFIG_DM_CRYPT=m
CONFIG_NETDEVICES=y
+CONFIG_TUN=y
# CONFIG_NET_VENDOR_BROADCOM is not set
CONFIG_CS89x0_PLATFORM=y
# CONFIG_NET_VENDOR_FARADAY is not set
diff --git a/recipes-kernel/linux/linux-fslc-imx/mx8-nxp-bsp/defconfig b/recipes-kernel/linux/linux-fslc-imx/mx8-nxp-bsp/defconfig
index c00288d1..1ef259ee 100644
--- a/recipes-kernel/linux/linux-fslc-imx/mx8-nxp-bsp/defconfig
+++ b/recipes-kernel/linux/linux-fslc-imx/mx8-nxp-bsp/defconfig
@@ -356,6 +356,7 @@ CONFIG_KEYBOARD_ADC=m
CONFIG_KEYBOARD_GPIO=y
CONFIG_KEYBOARD_RPMSG=y
CONFIG_KEYBOARD_SNVS_PWRKEY=y
+CONFIG_KEYBOARD_BBNSM_PWRKEY=y
CONFIG_KEYBOARD_IMX_SC_PWRKEY=y
CONFIG_KEYBOARD_CROS_EC=y
CONFIG_INPUT_TOUCHSCREEN=y
@@ -363,6 +364,7 @@ CONFIG_TOUCHSCREEN_ATMEL_MXT=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_EDT_FT5X06=m
CONFIG_TOUCHSCREEN_SYNAPTICS_DSX_I2C=m
+CONFIG_TOUCHSCREEN_EXC3000=m
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PWM_VIBRA=m
# CONFIG_SERIO_SERPORT is not set
@@ -431,6 +433,7 @@ CONFIG_PINCTRL_IMX8QM=y
CONFIG_PINCTRL_IMX8QXP=y
CONFIG_PINCTRL_IMX8DXL=y
CONFIG_PINCTRL_IMX8ULP=y
+CONFIG_PINCTRL_IMX93=y
CONFIG_PINCTRL_S32V234=y
CONFIG_GPIO_ALTERA=m
CONFIG_GPIO_DWAPB=y
@@ -443,6 +446,7 @@ CONFIG_GPIO_XGENE=y
CONFIG_GPIO_MAX732X=y
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_ADP5585=y
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
CONFIG_GPIO_SL28CPLD=m
@@ -481,6 +485,7 @@ CONFIG_IMX_SC_WDT=y
CONFIG_IMX7ULP_WDT=y
CONFIG_ARM_SMC_WATCHDOG=y
CONFIG_XEN_WDT=y
+CONFIG_MFD_ADP5585=y
CONFIG_MFD_BD9571MWV=y
CONFIG_MFD_AXP20X_I2C=y
CONFIG_MFD_IMX_MIX=y
@@ -544,13 +549,16 @@ CONFIG_VIDEO_MXC_CAPTURE=y
CONFIG_VIDEO_MX8_CAPTURE=y
CONFIG_VIDEO_MXC_CSI_CAMERA=y
CONFIG_MXC_MIPI_CSI=y
+CONFIG_DWC_MIPI_CSI2_HOST=y
CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_IMX8_JPEG=m
+CONFIG_VIDEO_AMPHION_VPU=y
CONFIG_SDR_PLATFORM_DRIVERS=y
CONFIG_VIDEO_IMX219=m
CONFIG_VIDEO_OV5640=y
CONFIG_VIDEO_OV5645=m
+CONFIG_VIDEO_AP1302=y
CONFIG_IMX_DPU_CORE=y
CONFIG_IMX_LCDIF_CORE=y
CONFIG_IMX_LCDIFV3_CORE=y
@@ -591,6 +599,7 @@ 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=m
+CONFIG_DRM_DW_MIPI_DSI=y
CONFIG_DRM_ITE_IT6263=y
CONFIG_DRM_ITE_IT6161=y
CONFIG_DRM_IMX=y
@@ -601,6 +610,8 @@ CONFIG_DRM_IMX_LDB=y
CONFIG_DRM_IMX8QM_LDB=y
CONFIG_DRM_IMX8QXP_LDB=y
CONFIG_DRM_IMX8MP_LDB=y
+CONFIG_DRM_IMX93_LDB=y
+CONFIG_DRM_IMX_DW_MIPI_DSI=y
CONFIG_DRM_IMX_HDMI=y
CONFIG_DRM_IMX_SEC_DSIM=y
CONFIG_DRM_IMX_DCNANO=y
@@ -776,6 +787,7 @@ CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_LM3692X=m
CONFIG_LEDS_PCA9532=m
+CONFIG_LEDS_PCA995X=m
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_SYSCON=y
@@ -807,6 +819,7 @@ CONFIG_RTC_DRV_CROS_EC=y
CONFIG_RTC_DRV_FSL_FTM_ALARM=m
CONFIG_RTC_DRV_PL031=y
CONFIG_RTC_DRV_SNVS=y
+CONFIG_RTC_DRV_BBNSM=y
CONFIG_RTC_DRV_IMX_SC=y
CONFIG_RTC_DRV_IMX_RPMSG=y
CONFIG_DMADEVICES=y
@@ -843,6 +856,8 @@ CONFIG_STAGING_MEDIA=y
CONFIG_VIDEO_HANTRO=m
CONFIG_VIDEO_IMX_CAPTURE=y
CONFIG_IMX8_MEDIA_DEVICE=m
+CONFIG_MHDP_HDMIRX=y
+CONFIG_MHDP_HDMIRX_CEC=y
CONFIG_FSL_DPAA2=y
CONFIG_FSL_PPFE=y
CONFIG_FSL_PPFE_UTIL_DISABLED=y
@@ -867,6 +882,7 @@ CONFIG_CLK_IMX8MP=y
CONFIG_CLK_IMX8MQ=y
CONFIG_CLK_IMX8QXP=y
CONFIG_CLK_IMX8ULP=y
+CONFIG_CLK_IMX93=y
CONFIG_HWSPINLOCK=y
CONFIG_ARM_MHU=y
CONFIG_IMX_MBOX=y
@@ -893,7 +909,9 @@ CONFIG_EXTCON_PTN5150=m
CONFIG_EXTCON_USB_GPIO=y
CONFIG_EXTCON_USBC_CROS_EC=y
CONFIG_IIO=y
+CONFIG_FXLS8962AF_I2C=m
CONFIG_IMX8QXP_ADC=y
+CONFIG_IMX93_ADC=y
CONFIG_MAX9611=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPMI_ADC5=m
@@ -901,6 +919,7 @@ CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_FXAS21002C=y
CONFIG_FXOS8700_I2C=y
+CONFIG_RPMSG_IIO_PEDOMETER=m
CONFIG_IIO_ST_LSM6DSX=y
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_SENSORS_ISL29018=y
@@ -909,6 +928,7 @@ CONFIG_IIO_ST_MAGN_3AXIS=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_MPL3115=y
CONFIG_PWM=y
+CONFIG_PWM_ADP5585=y
CONFIG_PWM_CROS_EC=m
CONFIG_PWM_FSL_FTM=m
CONFIG_PWM_IMX27=y
@@ -922,12 +942,14 @@ CONFIG_PHY_MIXEL_LVDS=y
CONFIG_PHY_MIXEL_LVDS_COMBO=y
CONFIG_PHY_CADENCE_SALVO=y
CONFIG_PHY_FSL_IMX8MP_LVDS=y
+CONFIG_PHY_FSL_IMX93_MIPI_DPHY=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_FSL_IMX9_DDR_PMU=y
CONFIG_HISI_PMU=y
CONFIG_NVMEM_IMX_OCOTP=y
CONFIG_NVMEM_IMX_OCOTP_SCU=y
@@ -1038,3 +1060,12 @@ CONFIG_CORESIGHT_SOURCE_ETM4X=y
CONFIG_MEMTEST=y
CONFIG_TLS=y
CONFIG_TLS_DEVICE=y
+
+# enable Trusted Keys based on CAAM
+CONFIG_TRUSTED_KEYS=m
+CONFIG_TRUSTED_KEYS_TPM=n
+CONFIG_TRUSTED_KEYS_TEE=n
+CONFIG_TRUSTED_KEYS_CAAM=y
+
+CONFIG_SOC_IMX9=y
+CONFIG_ETHOSU=y
diff --git a/recipes-kernel/linux/linux-fslc-imx/mx9-nxp-bsp/defconfig b/recipes-kernel/linux/linux-fslc-imx/mx9-nxp-bsp/defconfig
new file mode 100644
index 00000000..1ef259ee
--- /dev/null
+++ b/recipes-kernel/linux/linux-fslc-imx/mx9-nxp-bsp/defconfig
@@ -0,0 +1,1071 @@
+CONFIG_SYSVIPC=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_AUDIT=y
+CONFIG_NO_HZ_IDLE=y
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_BPF_JIT=y
+CONFIG_PREEMPT=y
+CONFIG_IRQ_TIME_ACCOUNTING=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_NUMA_BALANCING=y
+CONFIG_MEMCG=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_PIDS=y
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_HUGETLB=y
+CONFIG_CPUSETS=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_CGROUP_PERF=y
+CONFIG_USER_NS=y
+CONFIG_SCHED_AUTOGROUP=y
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_KALLSYMS_ALL=y
+# CONFIG_COMPAT_BRK is not set
+CONFIG_PROFILING=y
+CONFIG_ARCH_LAYERSCAPE=y
+CONFIG_ARCH_KEEMBAY=y
+CONFIG_ARCH_MXC=y
+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_KEXEC=y
+CONFIG_KEXEC_FILE=y
+CONFIG_CRASH_DUMP=y
+CONFIG_XEN=y
+CONFIG_FORCE_MAX_ZONEORDER=14
+CONFIG_COMPAT=y
+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
+CONFIG_CPU_FREQ_STAT=y
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+CONFIG_CPUFREQ_DT=y
+CONFIG_ACPI_CPPC_CPUFREQ=m
+CONFIG_ARM_SCPI_CPUFREQ=y
+CONFIG_ARM_IMX_CPUFREQ_DT=y
+CONFIG_ARM_SCMI_CPUFREQ=y
+CONFIG_QORIQ_CPUFREQ=y
+CONFIG_ARM_SCMI_PROTOCOL=y
+CONFIG_ARM_SCPI_PROTOCOL=y
+CONFIG_QCOM_SCM=m
+CONFIG_EFI_CAPSULE_LOADER=y
+CONFIG_IMX_DSP=y
+CONFIG_IMX_SCU=y
+CONFIG_IMX_SCU_PD=y
+CONFIG_ACPI=y
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+CONFIG_ARM64_CRYPTO=y
+CONFIG_CRYPTO_SHA1_ARM64_CE=y
+CONFIG_CRYPTO_SHA2_ARM64_CE=y
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+CONFIG_CRYPTO_SM3_ARM64_CE=m
+CONFIG_CRYPTO_GHASH_ARM64_CE=y
+CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
+CONFIG_CRYPTO_CHACHA20_NEON=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+CONFIG_JUMP_LABEL=y
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_KSM=y
+CONFIG_MEMORY_FAILURE=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IPV6_SIT=m
+CONFIG_NETFILTER=y
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_BRIDGE=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+CONFIG_NET_DSA=m
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC2=y
+CONFIG_NET_SCHED=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_QRTR=m
+CONFIG_QRTR_SMD=m
+CONFIG_QRTR_TUN=m
+CONFIG_NET_PKTGEN=m
+CONFIG_CAN=m
+CONFIG_CAN_FLEXCAN=m
+CONFIG_BT=y
+CONFIG_BT_RFCOMM=y
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=y
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_HIDP=y
+CONFIG_BT_LEDS=y
+# CONFIG_BT_DEBUGFS is not set
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIUART=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIUART_BCM=y
+CONFIG_BT_HCIUART_QCA=y
+CONFIG_BT_HCIVHCI=y
+CONFIG_CFG80211=y
+CONFIG_NL80211_TESTMODE=y
+CONFIG_CFG80211_WEXT=y
+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
+CONFIG_PCI_XGENE=y
+CONFIG_PCIE_ALTERA=y
+CONFIG_PCIE_ALTERA_MSI=y
+CONFIG_PCI_HOST_THUNDER_PEM=y
+CONFIG_PCI_HOST_THUNDER_ECAM=y
+CONFIG_PCI_IMX6_HOST=y
+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_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_FW_LOADER_USER_HELPER=y
+CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
+CONFIG_BRCMSTB_GISB_ARB=y
+CONFIG_SIMPLE_PM_BUS=y
+CONFIG_VEXPRESS_CONFIG=y
+CONFIG_FSL_MC_UAPI_SUPPORT=y
+CONFIG_GNSS=m
+CONFIG_GNSS_MTK_SERIAL=m
+CONFIG_MTD=y
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_BLOCK=y
+CONFIG_MTD_CFI=y
+CONFIG_MTD_CFI_ADV_OPTIONS=y
+CONFIG_MTD_CFI_INTELEXT=y
+CONFIG_MTD_CFI_AMDSTD=y
+CONFIG_MTD_CFI_STAA=y
+CONFIG_MTD_PHYSMAP=y
+CONFIG_MTD_PHYSMAP_OF=y
+CONFIG_MTD_DATAFLASH=y
+CONFIG_MTD_SST25L=y
+CONFIG_MTD_RAW_NAND=y
+CONFIG_MTD_NAND_DENALI_DT=y
+CONFIG_MTD_NAND_GPMI_NAND=y
+CONFIG_MTD_NAND_FSL_IFC=y
+CONFIG_MTD_SPI_NOR=y
+# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
+CONFIG_MTD_UBI=y
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_NBD=m
+CONFIG_XEN_BLKDEV_BACKEND=m
+CONFIG_VIRTIO_BLK=y
+CONFIG_BLK_DEV_NVME=y
+CONFIG_SRAM=y
+CONFIG_PCI_ENDPOINT_TEST=y
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_AT25=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
+CONFIG_ATA=y
+CONFIG_SATA_AHCI=y
+CONFIG_SATA_AHCI_PLATFORM=y
+CONFIG_AHCI_IMX=y
+CONFIG_AHCI_CEVA=y
+CONFIG_AHCI_XGENE=y
+CONFIG_AHCI_QORIQ=y
+CONFIG_SATA_SIL24=y
+CONFIG_PATA_PLATFORM=y
+CONFIG_PATA_OF_PLATFORM=y
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_DM=m
+CONFIG_DM_CRYPT=m
+CONFIG_DM_MIRROR=m
+CONFIG_DM_ZERO=m
+CONFIG_NETDEVICES=y
+CONFIG_MACVLAN=m
+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_FEC_UIO=y
+CONFIG_FSL_FMAN=y
+CONFIG_FSL_DPAA_ETH=y
+CONFIG_FSL_DPAA2_ETH=y
+CONFIG_FSL_DPAA2_MAC=y
+CONFIG_FSL_DPAA2_SWITCH=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
+CONFIG_HNS3=y
+CONFIG_HNS3_HCLGE=y
+CONFIG_HNS3_ENET=y
+CONFIG_E1000=y
+CONFIG_E1000E=y
+CONFIG_IGB=y
+CONFIG_IGBVF=y
+CONFIG_MVMDIO=y
+CONFIG_SKY2=y
+CONFIG_MLX4_EN=m
+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_DWMAC_GENERIC=m
+CONFIG_AQUANTIA_PHY=y
+CONFIG_BROADCOM_PHY=m
+CONFIG_BCM54140_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=y
+CONFIG_USB_LAN78XX=m
+CONFIG_USB_USBNET=y
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_HOSTAP=y
+CONFIG_WL18XX=m
+CONFIG_WLCORE_SDIO=m
+CONFIG_XEN_NETDEV_BACKEND=m
+CONFIG_IVSHMEM_NET=y
+CONFIG_INPUT_EVDEV=y
+CONFIG_KEYBOARD_ADC=m
+CONFIG_KEYBOARD_GPIO=y
+CONFIG_KEYBOARD_RPMSG=y
+CONFIG_KEYBOARD_SNVS_PWRKEY=y
+CONFIG_KEYBOARD_BBNSM_PWRKEY=y
+CONFIG_KEYBOARD_IMX_SC_PWRKEY=y
+CONFIG_KEYBOARD_CROS_EC=y
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+CONFIG_TOUCHSCREEN_GOODIX=m
+CONFIG_TOUCHSCREEN_EDT_FT5X06=m
+CONFIG_TOUCHSCREEN_SYNAPTICS_DSX_I2C=m
+CONFIG_TOUCHSCREEN_EXC3000=m
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PWM_VIBRA=m
+# CONFIG_SERIO_SERPORT is not set
+CONFIG_SERIO_AMBAKMI=y
+CONFIG_LEGACY_PTY_COUNT=16
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_DW=y
+CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_IMX=y
+CONFIG_SERIAL_IMX_CONSOLE=y
+CONFIG_SERIAL_XILINX_PS_UART=y
+CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
+CONFIG_SERIAL_FSL_LPUART=y
+CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
+CONFIG_SERIAL_FSL_LINFLEXUART=y
+CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y
+CONFIG_SERIAL_DEV_BUS=y
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_TCG_TPM=y
+CONFIG_TCG_TIS_I2C_INFINEON=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_MUX=y
+CONFIG_I2C_MUX_PCA954x=y
+CONFIG_I2C_DESIGNWARE_PLATFORM=y
+CONFIG_I2C_GPIO=m
+CONFIG_I2C_IMX=y
+CONFIG_I2C_IMX_LPI2C=y
+CONFIG_I2C_RK3X=y
+CONFIG_I2C_RPBUS=y
+CONFIG_I2C_CROS_EC_TUNNEL=y
+CONFIG_XEN_I2C_BACKEND=y
+CONFIG_I3C=y
+CONFIG_SVC_I3C_MASTER=y
+CONFIG_SPI=y
+CONFIG_SPI_CADENCE_QUADSPI=y
+CONFIG_SPI_DESIGNWARE=m
+CONFIG_SPI_DW_DMA=y
+CONFIG_SPI_DW_MMIO=m
+CONFIG_SPI_FSL_LPSPI=y
+CONFIG_SPI_FSL_QUADSPI=y
+CONFIG_SPI_NXP_FLEXSPI=y
+CONFIG_SPI_IMX=y
+CONFIG_SPI_FSL_DSPI=y
+CONFIG_SPI_PL022=y
+CONFIG_SPI_ROCKCHIP=y
+CONFIG_SPI_SPIDEV=y
+CONFIG_SPI_SLAVE=y
+CONFIG_SPI_SLAVE_TIME=y
+CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y
+CONFIG_SPMI=y
+CONFIG_PINCTRL_SINGLE=y
+CONFIG_PINCTRL_MAX77620=y
+CONFIG_PINCTRL_IMX8MM=y
+CONFIG_PINCTRL_IMX8MN=y
+CONFIG_PINCTRL_IMX8MP=y
+CONFIG_PINCTRL_IMX8MQ=y
+CONFIG_PINCTRL_IMX8QM=y
+CONFIG_PINCTRL_IMX8QXP=y
+CONFIG_PINCTRL_IMX8DXL=y
+CONFIG_PINCTRL_IMX8ULP=y
+CONFIG_PINCTRL_IMX93=y
+CONFIG_PINCTRL_S32V234=y
+CONFIG_GPIO_ALTERA=m
+CONFIG_GPIO_DWAPB=y
+CONFIG_GPIO_MB86S7X=y
+CONFIG_GPIO_MPC8XXX=y
+CONFIG_GPIO_PL061=y
+CONFIG_GPIO_IMX_RPMSG=y
+CONFIG_GPIO_WCD934X=m
+CONFIG_GPIO_XGENE=y
+CONFIG_GPIO_MAX732X=y
+CONFIG_GPIO_PCA953X=y
+CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_ADP5585=y
+CONFIG_GPIO_BD9571MWV=m
+CONFIG_GPIO_MAX77620=y
+CONFIG_GPIO_SL28CPLD=m
+CONFIG_POWER_RESET_BRCMSTB=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_BATTERY_MAX17042=m
+CONFIG_CHARGER_BQ25890=m
+CONFIG_CHARGER_BQ25980=m
+CONFIG_SENSORS_ARM_SCMI=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
+CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
+CONFIG_CPU_THERMAL=y
+CONFIG_THERMAL_EMULATION=y
+CONFIG_IMX_SC_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_ADP5585=y
+CONFIG_MFD_BD9571MWV=y
+CONFIG_MFD_AXP20X_I2C=y
+CONFIG_MFD_IMX_MIX=y
+CONFIG_MFD_HI6421_PMIC=y
+CONFIG_MFD_FP9931=y
+CONFIG_MFD_MAX77620=y
+CONFIG_MFD_MT6397=y
+CONFIG_MFD_RK808=y
+CONFIG_MFD_SEC_CORE=y
+CONFIG_MFD_SL28CPLD=y
+CONFIG_MFD_ROHM_BD718XX=y
+CONFIG_MFD_WCD934X=m
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+CONFIG_REGULATOR_AXP20X=y
+CONFIG_REGULATOR_BD718XX=y
+CONFIG_REGULATOR_BD9571MWV=y
+CONFIG_REGULATOR_FAN53555=y
+CONFIG_REGULATOR_GPIO=y
+CONFIG_REGULATOR_HI6421V530=y
+CONFIG_REGULATOR_MAX77620=y
+CONFIG_REGULATOR_MAX8973=y
+CONFIG_REGULATOR_FP9931=y
+CONFIG_REGULATOR_MP8859=y
+CONFIG_REGULATOR_MT6358=y
+CONFIG_REGULATOR_MT6397=y
+CONFIG_REGULATOR_PCA9450=y
+CONFIG_REGULATOR_PF8X00=y
+CONFIG_REGULATOR_PFUZE100=y
+CONFIG_REGULATOR_PWM=y
+CONFIG_REGULATOR_QCOM_SPMI=y
+CONFIG_REGULATOR_RK808=y
+CONFIG_REGULATOR_S2MPS11=y
+CONFIG_REGULATOR_TPS65132=m
+CONFIG_REGULATOR_VCTRL=m
+CONFIG_RC_CORE=m
+CONFIG_RC_DECODERS=y
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_SHARP_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_IR_XMP_DECODER=m
+CONFIG_IR_IMON_DECODER=m
+CONFIG_IR_RCMM_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_IR_GPIO_CIR=m
+CONFIG_MEDIA_SUPPORT=y
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=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_MXC_CAPTURE=y
+CONFIG_VIDEO_MX8_CAPTURE=y
+CONFIG_VIDEO_MXC_CSI_CAMERA=y
+CONFIG_MXC_MIPI_CSI=y
+CONFIG_DWC_MIPI_CSI2_HOST=y
+CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_IMX8_JPEG=m
+CONFIG_VIDEO_AMPHION_VPU=y
+CONFIG_SDR_PLATFORM_DRIVERS=y
+CONFIG_VIDEO_IMX219=m
+CONFIG_VIDEO_OV5640=y
+CONFIG_VIDEO_OV5645=m
+CONFIG_VIDEO_AP1302=y
+CONFIG_IMX_DPU_CORE=y
+CONFIG_IMX_LCDIF_CORE=y
+CONFIG_IMX_LCDIFV3_CORE=y
+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_BOE_TV101WUM_NL6=m
+CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_SIMPLE=y
+CONFIG_DRM_PANEL_MANTIX_MLAF057WE51=m
+CONFIG_DRM_PANEL_RAYDIUM_RM67191=y
+CONFIG_DRM_PANEL_RAYDIUM_RM68200=y
+CONFIG_DRM_PANEL_ROCKTECK_HIMAX8394F=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_LT8912B=m
+CONFIG_DRM_LONTIUM_LT9611=m
+CONFIG_DRM_LONTIUM_LT9611UXC=m
+CONFIG_DRM_FSL_IMX_LVDS_BRIDGE=y
+CONFIG_DRM_NWL_MIPI_DSI=y
+CONFIG_DRM_NXP_SEIKO_43WVFIG=y
+CONFIG_DRM_PARADE_PS8640=m
+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_I2C_ADV7511_AUDIO=y
+CONFIG_DRM_CDNS_HDCP=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=m
+CONFIG_DRM_DW_MIPI_DSI=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
+CONFIG_DRM_IMX_TVE=y
+CONFIG_DRM_IMX_LDB=y
+CONFIG_DRM_IMX8QM_LDB=y
+CONFIG_DRM_IMX8QXP_LDB=y
+CONFIG_DRM_IMX8MP_LDB=y
+CONFIG_DRM_IMX93_LDB=y
+CONFIG_DRM_IMX_DW_MIPI_DSI=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
+CONFIG_DRM_HISI_HIBMC=m
+CONFIG_DRM_HISI_KIRIN=m
+CONFIG_DRM_MXSFB=y
+CONFIG_DRM_PL111=m
+CONFIG_DRM_LIMA=m
+CONFIG_DRM_PANFROST=m
+CONFIG_FB=y
+CONFIG_FB_ARMCLCD=y
+CONFIG_FB_EFI=y
+CONFIG_FB_MXC_EINK_V2_PANEL=y
+CONFIG_BACKLIGHT_PWM=y
+CONFIG_BACKLIGHT_LP855X=m
+CONFIG_LOGO=y
+# CONFIG_LOGO_LINUX_MONO is not set
+# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_SOUND=y
+CONFIG_SND=y
+CONFIG_SND_ALOOP=m
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_SOC=y
+CONFIG_SND_SOC_FSL_ASRC=m
+CONFIG_SND_SOC_FSL_MQS=m
+CONFIG_SND_SOC_FSL_MICFIL=m
+CONFIG_SND_SOC_FSL_EASRC=m
+CONFIG_SND_SOC_FSL_XCVR=m
+CONFIG_SND_SOC_FSL_ESAI_CLIENT=y
+CONFIG_SND_SOC_FSL_RPMSG=m
+CONFIG_SND_IMX_SOC=m
+CONFIG_SND_SOC_IMX_SGTL5000=m
+CONFIG_SND_SOC_IMX_SPDIF=m
+CONFIG_SND_SOC_FSL_ASOC_CARD=m
+CONFIG_SND_SOC_IMX_AUDMIX=m
+CONFIG_SND_SOC_IMX_HDMI=m
+CONFIG_SND_SOC_IMX_CARD=m
+CONFIG_SND_SOC_IMX_PDM_MIC=m
+CONFIG_SND_SOC_IMX_PCM512X=m
+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=m
+CONFIG_SND_SOC_SOF_IMX8M=m
+CONFIG_SND_SOC_SOF_IMX8ULP=m
+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_GTM601=m
+CONFIG_SND_SOC_MAX98357A=m
+CONFIG_SND_SOC_MAX98927=m
+CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m
+CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m
+CONFIG_SND_SOC_PCM3168A_I2C=m
+CONFIG_SND_SOC_RT5659=m
+CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
+CONFIG_SND_SOC_SIMPLE_MUX=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=m
+CONFIG_SND_SOC_WM8962=m
+CONFIG_SND_SOC_WSA881X=m
+CONFIG_SND_SOC_RPMSG_WM8960=m
+CONFIG_SND_SOC_RPMSG_AK4497=m
+CONFIG_SND_SOC_LPASS_WSA_MACRO=m
+CONFIG_SND_SOC_LPASS_VA_MACRO=m
+CONFIG_SND_SIMPLE_CARD=y
+CONFIG_SND_AUDIO_GRAPH_CARD=y
+CONFIG_HID_MULTITOUCH=m
+CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF=m
+CONFIG_USB_CONN_GPIO=y
+CONFIG_USB=y
+CONFIG_USB_OTG=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_PCI_RENESAS=m
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_HCD_PLATFORM=y
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+CONFIG_USB_HCD_TEST_MODE=y
+CONFIG_USB_ACM=m
+CONFIG_USB_STORAGE=y
+CONFIG_USB_UAS=y
+CONFIG_USB_CDNS_SUPPORT=y
+CONFIG_USB_CDNS3=y
+CONFIG_USB_CDNS3_GADGET=y
+CONFIG_USB_CDNS3_HOST=y
+CONFIG_USB_MUSB_HDRC=y
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC2=y
+CONFIG_USB_CHIPIDEA=y
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+CONFIG_USB_ISP1760=y
+CONFIG_USB_SERIAL=y
+CONFIG_USB_SERIAL_CONSOLE=y
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=y
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_FTDI_SIO=y
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_TEST=m
+CONFIG_USB_EHSET_TEST_FIXTURE=y
+CONFIG_USB_HSIC_USB3503=y
+CONFIG_NOP_USB_XCEIV=y
+CONFIG_USB_MXS_PHY=y
+CONFIG_USB_ULPI=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_SNP_UDC_PLAT=y
+CONFIG_USB_BDC_UDC=y
+CONFIG_USB_CONFIGFS=y
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_MASS_STORAGE=y
+CONFIG_USB_CONFIGFS_F_LB_SS=y
+CONFIG_USB_CONFIGFS_F_FS=y
+CONFIG_USB_CONFIGFS_F_UAC1=y
+CONFIG_USB_CONFIGFS_F_UAC1_LEGACY=y
+CONFIG_USB_CONFIGFS_F_UAC2=y
+CONFIG_USB_CONFIGFS_F_MIDI=y
+CONFIG_USB_CONFIGFS_F_HID=y
+CONFIG_USB_CONFIGFS_F_UVC=y
+CONFIG_USB_ZERO=m
+CONFIG_USB_AUDIO=m
+CONFIG_USB_ETH=m
+CONFIG_USB_MASS_STORAGE=m
+CONFIG_USB_G_SERIAL=m
+CONFIG_TYPEC=y
+CONFIG_TYPEC_TCPM=y
+CONFIG_TYPEC_TCPCI=y
+CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC_TPS6598X=m
+CONFIG_TYPEC_HD3SS3220=m
+CONFIG_TYPEC_SWITCH_GPIO=y
+CONFIG_MMC=y
+CONFIG_MMC_BLOCK_MINORS=32
+CONFIG_MMC_ARMMMCI=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_ACPI=y
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MMC_SDHCI_OF_ARASAN=y
+CONFIG_MMC_SDHCI_OF_ESDHC=y
+CONFIG_MMC_SDHCI_CADENCE=y
+CONFIG_MMC_SDHCI_ESDHC_IMX=y
+CONFIG_MMC_SDHCI_F_SDH30=y
+CONFIG_MMC_SPI=y
+CONFIG_MMC_DW=y
+CONFIG_MMC_DW_EXYNOS=y
+CONFIG_MMC_DW_HI3798CV200=y
+CONFIG_MMC_DW_K3=y
+CONFIG_MMC_MTK=y
+CONFIG_MMC_SDHCI_XENON=y
+CONFIG_MMC_SDHCI_AM654=y
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_LM3692X=m
+CONFIG_LEDS_PCA9532=m
+CONFIG_LEDS_PCA995X=m
+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
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
+CONFIG_LEDS_TRIGGER_PANIC=y
+CONFIG_EDAC=y
+CONFIG_EDAC_GHES=y
+CONFIG_EDAC_LAYERSCAPE=m
+CONFIG_EDAC_SYNOPSYS=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_HYM8563=m
+CONFIG_RTC_DRV_MAX77686=y
+CONFIG_RTC_DRV_RK808=m
+CONFIG_RTC_DRV_PCF85363=m
+CONFIG_RTC_DRV_M41T80=m
+CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RV3028=m
+CONFIG_RTC_DRV_RV8803=m
+CONFIG_RTC_DRV_S5M=y
+CONFIG_RTC_DRV_DS3232=y
+CONFIG_RTC_DRV_PCF2127=m
+CONFIG_RTC_DRV_EFI=y
+CONFIG_RTC_DRV_CROS_EC=y
+CONFIG_RTC_DRV_FSL_FTM_ALARM=m
+CONFIG_RTC_DRV_PL031=y
+CONFIG_RTC_DRV_SNVS=y
+CONFIG_RTC_DRV_BBNSM=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
+CONFIG_MXS_DMA=y
+CONFIG_MXC_PXP_V3=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_PCI_GENERIC=y
+CONFIG_UIO_IVSHMEM=y
+CONFIG_VFIO=y
+CONFIG_VFIO_PCI=y
+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
+CONFIG_STAGING_MEDIA=y
+CONFIG_VIDEO_HANTRO=m
+CONFIG_VIDEO_IMX_CAPTURE=y
+CONFIG_IMX8_MEDIA_DEVICE=m
+CONFIG_MHDP_HDMIRX=y
+CONFIG_MHDP_HDMIRX_CEC=y
+CONFIG_FSL_DPAA2=y
+CONFIG_FSL_PPFE=y
+CONFIG_FSL_PPFE_UTIL_DISABLED=y
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=y
+CONFIG_CROS_EC_I2C=y
+CONFIG_CROS_EC_SPI=y
+CONFIG_CROS_EC_CHARDEV=m
+CONFIG_CLK_VEXPRESS_OSC=y
+CONFIG_COMMON_CLK_RK808=y
+CONFIG_COMMON_CLK_SCMI=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_CLK_IMX93=y
+CONFIG_HWSPINLOCK=y
+CONFIG_ARM_MHU=y
+CONFIG_IMX_MBOX=y
+CONFIG_PLATFORM_MHU=y
+CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y
+CONFIG_ARM_SMMU=y
+CONFIG_ARM_SMMU_V3=y
+CONFIG_REMOTEPROC=y
+CONFIG_IMX_REMOTEPROC=y
+CONFIG_IMX_DSP_REMOTEPROC=m
+CONFIG_RPMSG_CHAR=m
+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_SOC_TI=y
+CONFIG_ARM_IMX_BUS_DEVFREQ=m
+CONFIG_ARM_IMX8M_DDRC_DEVFREQ=m
+CONFIG_EXTCON_PTN5150=m
+CONFIG_EXTCON_USB_GPIO=y
+CONFIG_EXTCON_USBC_CROS_EC=y
+CONFIG_IIO=y
+CONFIG_FXLS8962AF_I2C=m
+CONFIG_IMX8QXP_ADC=y
+CONFIG_IMX93_ADC=y
+CONFIG_MAX9611=m
+CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPMI_ADC5=m
+CONFIG_IIO_CROS_EC_SENSORS_CORE=m
+CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_FXAS21002C=y
+CONFIG_FXOS8700_I2C=y
+CONFIG_RPMSG_IIO_PEDOMETER=m
+CONFIG_IIO_ST_LSM6DSX=y
+CONFIG_IIO_CROS_EC_LIGHT_PROX=m
+CONFIG_SENSORS_ISL29018=y
+CONFIG_VCNL4000=m
+CONFIG_IIO_ST_MAGN_3AXIS=m
+CONFIG_IIO_CROS_EC_BARO=m
+CONFIG_MPL3115=y
+CONFIG_PWM=y
+CONFIG_PWM_ADP5585=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_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_FSL_IMX93_MIPI_DPHY=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_FSL_IMX9_DDR_PMU=y
+CONFIG_HISI_PMU=y
+CONFIG_NVMEM_IMX_OCOTP=y
+CONFIG_NVMEM_IMX_OCOTP_SCU=y
+CONFIG_NVMEM_RMEM=m
+CONFIG_FPGA=y
+CONFIG_FPGA_BRIDGE=m
+CONFIG_ALTERA_FREEZE_BRIDGE=m
+CONFIG_FPGA_REGION=m
+CONFIG_OF_FPGA_REGION=m
+CONFIG_TEE=y
+CONFIG_OPTEE=y
+CONFIG_MUX_MMIO=y
+CONFIG_SLIM_QCOM_CTRL=m
+CONFIG_INTERCONNECT=y
+CONFIG_INTERCONNECT_IMX=m
+CONFIG_INTERCONNECT_IMX8MQ=m
+CONFIG_MXC_SIM=y
+CONFIG_MXC_EMVSIM=y
+CONFIG_EXT2_FS=y
+CONFIG_EXT3_FS=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+CONFIG_FANOTIFY=y
+CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
+CONFIG_QUOTA=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_OVERLAY_FS=m
+CONFIG_VFAT_FS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_HUGETLBFS=y
+CONFIG_EFIVAR_FS=y
+CONFIG_JFFS2_FS=y
+CONFIG_UBIFS_FS=y
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_NFS_FS=y
+CONFIG_NFS_V4=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_ROOT_NFS=y
+CONFIG_9P_FS=y
+CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_ISO8859_1=y
+CONFIG_SECURITY=y
+CONFIG_CRYPTO_USER=y
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_ECHAINIV=y
+CONFIG_CRYPTO_TLS=m
+CONFIG_CRYPTO_CFB=m
+CONFIG_CRYPTO_CTS=m
+CONFIG_CRYPTO_LRW=m
+CONFIG_CRYPTO_OFB=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
+CONFIG_CRYPTO_BLAKE2S=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_STREEBOG=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_FCRYPT=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_ANSI_CPRNG=y
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_USER_API_AEAD=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=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_HISI_TRNG=m
+CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m
+CONFIG_INDIRECT_PIO=y
+CONFIG_CRC_CCITT=m
+CONFIG_CRC8=y
+CONFIG_CMA_SIZE_MBYTES=32
+CONFIG_PRINTK_TIME=y
+CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_INFO_REDUCED=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_CORESIGHT=y
+CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y
+CONFIG_CORESIGHT_SOURCE_ETM4X=y
+CONFIG_MEMTEST=y
+CONFIG_TLS=y
+CONFIG_TLS_DEVICE=y
+
+# enable Trusted Keys based on CAAM
+CONFIG_TRUSTED_KEYS=m
+CONFIG_TRUSTED_KEYS_TPM=n
+CONFIG_TRUSTED_KEYS_TEE=n
+CONFIG_TRUSTED_KEYS_CAAM=y
+
+CONFIG_SOC_IMX9=y
+CONFIG_ETHOSU=y
diff --git a/recipes-kernel/linux/linux-fslc-imx_5.15.bb b/recipes-kernel/linux/linux-fslc-imx_5.15.bb
index 336cf1c7..5e90ee63 100644
--- a/recipes-kernel/linux/linux-fslc-imx_5.15.bb
+++ b/recipes-kernel/linux/linux-fslc-imx_5.15.bb
@@ -28,36 +28,16 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
# ------------------------------------------------------------------------------
# 1. Stable (tag or SHA(s))
# ------------------------------------------------------------------------------
-# tag: v5.15.48
+# tag: v5.15.156
#
# ------------------------------------------------------------------------------
# 2. NXP-specific (tag or SHA(s))
# ------------------------------------------------------------------------------
-# tag: lf-5.15.5-1.0.0
+# tag: lf-5.15.71-2.2.0
#
# ------------------------------------------------------------------------------
# 3. Critical patches (SHA(s))
# ------------------------------------------------------------------------------
-# aa0d6324254a ("ARM: imx_v6/v7: config: remove lzo compression")
-# 78a61d752a68 ("staging: fsl_ppfe: reduce MAC address filtering loglevel to debug")
-# 119775ff0b40 ("staging: fsl_ppfe: assign correct OF nodes to individual ports")
-# f696b8a03198 ("staging: fsl_ppfe: handle all RGMII modes in pfe_eth_adjust_link")
-# 069a8e1cde93 ("PCI: dwc: PCI_IMX6 must depend on PCIE_DW")
-# ea15f0d0fd08 ("usb: chipidea: fix missing chipidea.h include")
-# a30d0e4c26da ("ARM: imx: select MAILBOX with IMX_MBOX")
-# 162f5592d475 ("gpu: drm: allow enabling DRM_IMX on Layerscape SoCs")
-# af7065ca8e07 ("ARM: dts: imx7s: revert LCDIF AXI clock to IMX7D_LCDIF_PIXEL_ROOT_CLK")
-# df227a18343f ("ARM: imx: add missing debug_ll_io_init to i.MX6UL map_io")
-# c874471ab39e ("i2c: imx: remove unneeded libata include")
-# 651e1f69ef7b ("i2c: imx: fix lockdep issue")
-# bee6315aac16 ("i2c: imx: avoid taking clk_prepare mutex in PM callbacks (again)")
-# 6a8f8108c8ce ("arch/arm64/boot/dts/freescale: fix file permissions on dts files")
-# 11f0faaa75ec ("irq-imx-irqsteer: fix compile error if CONFIG_PM_SLEEP is not set")
-# d17efc542bf0 ("arm: imx: include i.MX6SX DDR freq implementation for i.MX6UL")
-# d99fa7fc4edc ("arm: imx: do not include smp_wfe_imx6.S for i.MX6SX")
-# a5a2dd0a75fc ("arm: imx: enable HAVE_IMX_BUSFREQ for i.MX6")
-# f40d20ee44da ("arm: imx: do not build busfreq without HAVE_IMX_BUSFREQ")
-# 96bb4e4ffa01 ("ARM: dts: imx7s: fix ARM timer definition")
#
# NOTE to upgraders:
# This recipe should NOT collect individual patches, they should be applied to
@@ -70,18 +50,18 @@ include linux-fslc.inc
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-KBRANCH = "5.15-1.0.x-imx"
-SRCREV = "b6597629c15cf4fc99dbcdaa079cb1b4c3e92f2e"
+KBRANCH = "5.15-2.2.x-imx"
+SRCREV = "ebcdbe7ec49f9c3405ee4b89e7ec279e313026f3"
# 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.15.48"
+LINUX_VERSION = "5.15.156"
# Local version indicates the branch name in the NXP kernel tree where patches are collected from.
-LOCALVERSION = "-5.15.5-1.0.0"
+LOCALVERSION = "-5.15.156-2.2.0"
DEFAULT_PREFERENCE = "1"
diff --git a/recipes-kernel/linux/linux-fslc-lts/armv8a/defconfig b/recipes-kernel/linux/linux-fslc-lts/armv8a/defconfig
index a15cdf7a..fb64a14e 100644
--- a/recipes-kernel/linux/linux-fslc-lts/armv8a/defconfig
+++ b/recipes-kernel/linux/linux-fslc-lts/armv8a/defconfig
@@ -28,8 +28,6 @@ CONFIG_KALLSYMS_ALL=y
# CONFIG_COMPAT_BRK is not set
CONFIG_PROFILING=y
CONFIG_ARCH_ACTIONS=y
-CONFIG_ARCH_AGILEX=y
-CONFIG_ARCH_N5X=y
CONFIG_ARCH_SUNXI=y
CONFIG_ARCH_ALPINE=y
CONFIG_ARCH_APPLE=y
@@ -540,7 +538,6 @@ CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
CONFIG_GPIO_SL28CPLD=m
-CONFIG_POWER_AVS=y
CONFIG_QCOM_CPR=y
CONFIG_ROCKCHIP_IODOMAIN=y
CONFIG_POWER_RESET_MSM=y
diff --git a/recipes-kernel/linux/linux-fslc-lts_5.15.bb b/recipes-kernel/linux/linux-fslc-lts_5.15.bb
index 62550b4b..c77d43c9 100644
--- a/recipes-kernel/linux/linux-fslc-lts_5.15.bb
+++ b/recipes-kernel/linux/linux-fslc-lts_5.15.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.15.48"
+LINUX_VERSION = "5.15.91"
KBRANCH = "5.15.x+fslc"
-SRCREV = "d14543c880490dfa74c3e2e684634f8f9ed41cec"
+SRCREV = "4d20f1dcda24d6b2ee234e91bf2ba00083058586"
COMPATIBLE_MACHINE = "(imx-generic-bsp)"
diff --git a/recipes-kernel/linux/linux-fslc-mfgtool_5.18.bb b/recipes-kernel/linux/linux-fslc-mfgtool_6.1.bb
index 09d35c91..09d35c91 100644
--- a/recipes-kernel/linux/linux-fslc-mfgtool_5.18.bb
+++ b/recipes-kernel/linux/linux-fslc-mfgtool_6.1.bb
diff --git a/recipes-kernel/linux/linux-fslc/armv8a/defconfig b/recipes-kernel/linux/linux-fslc/armv8a/defconfig
index 620782d5..681425be 100644
--- a/recipes-kernel/linux/linux-fslc/armv8a/defconfig
+++ b/recipes-kernel/linux/linux-fslc/armv8a/defconfig
@@ -18,6 +18,7 @@ CONFIG_NUMA_BALANCING=y
CONFIG_MEMCG=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_PIDS=y
+CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CPUSETS=y
CONFIG_CGROUP_DEVICE=y
@@ -28,14 +29,14 @@ CONFIG_USER_NS=y
CONFIG_SCHED_AUTOGROUP=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_KALLSYMS_ALL=y
-# CONFIG_COMPAT_BRK is not set
CONFIG_PROFILING=y
CONFIG_ARCH_ACTIONS=y
CONFIG_ARCH_SUNXI=y
CONFIG_ARCH_ALPINE=y
CONFIG_ARCH_APPLE=y
+CONFIG_ARCH_BCM=y
CONFIG_ARCH_BCM2835=y
-CONFIG_ARCH_BCM4908=y
+CONFIG_ARCH_BCMBCA=y
CONFIG_ARCH_BCM_IPROC=y
CONFIG_ARCH_BERLIN=y
CONFIG_ARCH_BRCMSTB=y
@@ -48,7 +49,9 @@ CONFIG_ARCH_KEEMBAY=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_ARCH_MESON=y
CONFIG_ARCH_MVEBU=y
+CONFIG_ARCH_NXP=y
CONFIG_ARCH_MXC=y
+CONFIG_ARCH_NPCM=y
CONFIG_ARCH_QCOM=y
CONFIG_ARCH_RENESAS=y
CONFIG_ARCH_ROCKCHIP=y
@@ -79,7 +82,6 @@ CONFIG_RANDOMIZE_BASE=y
CONFIG_HIBERNATION=y
CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
CONFIG_ENERGY_MODEL=y
-CONFIG_ARM_CPUIDLE=y
CONFIG_ARM_PSCI_CPUIDLE=y
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_STAT=y
@@ -93,14 +95,16 @@ CONFIG_ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM=m
CONFIG_ARM_ARMADA_37XX_CPUFREQ=y
CONFIG_ARM_SCPI_CPUFREQ=y
CONFIG_ARM_IMX_CPUFREQ_DT=m
+CONFIG_ARM_MEDIATEK_CPUFREQ=y
CONFIG_ARM_QCOM_CPUFREQ_NVMEM=y
CONFIG_ARM_QCOM_CPUFREQ_HW=y
CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
CONFIG_ARM_SCMI_CPUFREQ=y
CONFIG_ARM_TEGRA186_CPUFREQ=y
-CONFIG_ARM_MEDIATEK_CPUFREQ=y
CONFIG_QORIQ_CPUFREQ=y
CONFIG_ACPI=y
+CONFIG_ACPI_HOTPLUG_MEMORY=y
+CONFIG_ACPI_HMAT=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
CONFIG_ACPI_APEI_PCIEAER=y
@@ -108,7 +112,6 @@ CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
-CONFIG_ARM64_CRYPTO=y
CONFIG_CRYPTO_SHA1_ARM64_CE=y
CONFIG_CRYPTO_SHA2_ARM64_CE=y
CONFIG_CRYPTO_SHA512_ARM64_CE=m
@@ -121,11 +124,13 @@ CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
CONFIG_CRYPTO_CHACHA20_NEON=m
CONFIG_CRYPTO_AES_ARM64_BS=m
CONFIG_JUMP_LABEL=y
-CONFIG_SECCOMP=y
CONFIG_KPROBES=y
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+# CONFIG_COMPAT_BRK is not set
+CONFIG_MEMORY_HOTPLUG=y
+CONFIG_MEMORY_HOTREMOVE=y
CONFIG_KSM=y
CONFIG_MEMORY_FAILURE=y
CONFIG_TRANSPARENT_HUGEPAGE=y
@@ -139,12 +144,16 @@ CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_IPV6=m
CONFIG_NETFILTER=y
+CONFIG_BRIDGE_NETFILTER=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NETFILTER_XT_MARK=m
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
CONFIG_NETFILTER_XT_TARGET_LOG=m
CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_IP_VS=m
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
@@ -175,7 +184,6 @@ CONFIG_NET_CLS_ACT=y
CONFIG_NET_ACT_GACT=m
CONFIG_NET_ACT_MIRRED=m
CONFIG_NET_ACT_GATE=m
-CONFIG_QRTR=m
CONFIG_QRTR_SMD=m
CONFIG_QRTR_TUN=m
CONFIG_CAN=m
@@ -265,9 +273,9 @@ CONFIG_MTD_PHYSMAP_OF=y
CONFIG_MTD_DATAFLASH=y
CONFIG_MTD_SST25L=y
CONFIG_MTD_RAW_NAND=y
-CONFIG_MTD_NAND_BRCMNAND=m
CONFIG_MTD_NAND_DENALI_DT=y
CONFIG_MTD_NAND_MARVELL=y
+CONFIG_MTD_NAND_BRCMNAND=m
CONFIG_MTD_NAND_FSL_IFC=y
CONFIG_MTD_NAND_QCOM=y
CONFIG_MTD_SPI_NOR=y
@@ -275,6 +283,8 @@ CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_NBD=m
CONFIG_VIRTIO_BLK=y
CONFIG_BLK_DEV_NVME=m
+CONFIG_QCOM_COINCELL=m
+CONFIG_QCOM_FASTRPC=m
CONFIG_SRAM=y
CONFIG_PCI_ENDPOINT_TEST=m
CONFIG_EEPROM_AT24=m
@@ -287,11 +297,6 @@ 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
-CONFIG_SCSI_UFS_QCOM=m
-CONFIG_SCSI_UFS_HISI=y
-CONFIG_SCSI_UFS_EXYNOS=y
CONFIG_ATA=y
CONFIG_SATA_AHCI=y
CONFIG_SATA_AHCI_PLATFORM=y
@@ -321,8 +326,8 @@ CONFIG_AMD_XGBE=y
CONFIG_NET_XGENE=y
CONFIG_ATL1C=m
CONFIG_BCMGENET=m
-CONFIG_SYSTEMPORT=m
CONFIG_BNX2X=m
+CONFIG_SYSTEMPORT=m
CONFIG_MACB=y
CONFIG_THUNDER_NIC_PF=y
CONFIG_FEC=y
@@ -374,7 +379,6 @@ CONFIG_DP83867_PHY=y
CONFIG_VITESSE_PHY=y
CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
CONFIG_MDIO_BUS_MUX_MMIOREG=y
-CONFIG_USB_BRCMSTB=m
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=m
@@ -390,6 +394,9 @@ CONFIG_ATH10K=m
CONFIG_ATH10K_PCI=m
CONFIG_ATH10K_SNOC=m
CONFIG_WCN36XX=m
+CONFIG_ATH11K=m
+CONFIG_ATH11K_AHB=m
+CONFIG_ATH11K_PCI=m
CONFIG_BRCMFMAC=m
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_SDIO=m
@@ -421,6 +428,7 @@ CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_SHARE_IRQ=y
CONFIG_SERIAL_8250_BCM2835AUX=y
CONFIG_SERIAL_8250_DW=y
+CONFIG_SERIAL_8250_EM=y
CONFIG_SERIAL_8250_OMAP=y
CONFIG_SERIAL_8250_MT6577=y
CONFIG_SERIAL_8250_UNIPHIER=y
@@ -459,6 +467,7 @@ CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX=y
CONFIG_I2C_MUX_PCA954x=y
CONFIG_I2C_BCM2835=m
+CONFIG_I2C_CADENCE=m
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_GPIO=m
CONFIG_I2C_IMX=y
@@ -474,6 +483,7 @@ CONFIG_I2C_QCOM_GENI=m
CONFIG_I2C_QUP=y
CONFIG_I2C_RIIC=y
CONFIG_I2C_RK3X=y
+CONFIG_I2C_RZV2M=m
CONFIG_I2C_S3C2410=y
CONFIG_I2C_SH_MOBILE=y
CONFIG_I2C_TEGRA=y
@@ -506,6 +516,8 @@ CONFIG_SPI_QCOM_GENI=m
CONFIG_SPI_S3C64XX=y
CONFIG_SPI_SH_MSIOF=m
CONFIG_SPI_SUN6I=y
+CONFIG_SPI_TEGRA210_QUAD=m
+CONFIG_SPI_TEGRA114=m
CONFIG_SPI_SPIDEV=m
CONFIG_SPMI=y
CONFIG_PINCTRL_MAX77620=y
@@ -521,6 +533,7 @@ CONFIG_PINCTRL_IMX8QM=y
CONFIG_PINCTRL_IMX8QXP=y
CONFIG_PINCTRL_IMX8DXL=y
CONFIG_PINCTRL_IMX8ULP=y
+CONFIG_PINCTRL_IMX93=y
CONFIG_PINCTRL_MSM=y
CONFIG_PINCTRL_IPQ8074=y
CONFIG_PINCTRL_IPQ6018=y
@@ -533,6 +546,8 @@ CONFIG_PINCTRL_QDF2XXX=y
CONFIG_PINCTRL_QCOM_SPMI_PMIC=y
CONFIG_PINCTRL_SC7180=y
CONFIG_PINCTRL_SC7280=y
+CONFIG_PINCTRL_SC8180X=y
+CONFIG_PINCTRL_SC8280XP=y
CONFIG_PINCTRL_SDM845=y
CONFIG_PINCTRL_SM8150=y
CONFIG_PINCTRL_SM8250=y
@@ -566,10 +581,12 @@ CONFIG_SYSCON_REBOOT_MODE=y
CONFIG_BATTERY_SBS=m
CONFIG_BATTERY_BQ27XXX=y
CONFIG_BATTERY_MAX17042=m
+CONFIG_CHARGER_MT6360=m
CONFIG_CHARGER_BQ25890=m
CONFIG_CHARGER_BQ25980=m
CONFIG_SENSORS_ARM_SCMI=y
CONFIG_SENSORS_ARM_SCPI=y
+CONFIG_SENSORS_GPIO_FAN=m
CONFIG_SENSORS_JC42=m
CONFIG_SENSORS_LM75=m
CONFIG_SENSORS_LM90=m
@@ -580,6 +597,7 @@ CONFIG_SENSORS_INA2XX=m
CONFIG_SENSORS_INA3221=m
CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
CONFIG_CPU_THERMAL=y
+CONFIG_DEVFREQ_THERMAL=y
CONFIG_THERMAL_EMULATION=y
CONFIG_IMX_SC_THERMAL=m
CONFIG_IMX8MM_THERMAL=m
@@ -597,6 +615,7 @@ CONFIG_EXYNOS_THERMAL=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_BPMP_THERMAL=m
CONFIG_QCOM_TSENS=y
+CONFIG_QCOM_SPMI_ADC_TM5=m
CONFIG_QCOM_SPMI_TEMP_ALARM=m
CONFIG_QCOM_LMH=m
CONFIG_UNIPHIER_THERMAL=y
@@ -605,7 +624,6 @@ CONFIG_SL28CPLD_WATCHDOG=m
CONFIG_ARM_SP805_WATCHDOG=y
CONFIG_ARM_SBSA_WATCHDOG=y
CONFIG_S3C2410_WATCHDOG=y
-CONFIG_BCM7038_WDT=m
CONFIG_DW_WATCHDOG=y
CONFIG_SUNXI_WATCHDOG=m
CONFIG_IMX2_WDT=y
@@ -617,7 +635,10 @@ CONFIG_ARM_SMC_WATCHDOG=y
CONFIG_RENESAS_WDT=y
CONFIG_RENESAS_RZG2LWDT=y
CONFIG_UNIPHIER_WATCHDOG=y
+CONFIG_PM8916_WATCHDOG=m
CONFIG_BCM2835_WDT=y
+CONFIG_BCM7038_WDT=m
+CONFIG_NPCM7XX_WATCHDOG=y
CONFIG_MFD_ALTERA_SYSMGR=y
CONFIG_MFD_BD9571MWV=y
CONFIG_MFD_AXP20X_I2C=y
@@ -626,6 +647,7 @@ CONFIG_MFD_EXYNOS_LPASS=m
CONFIG_MFD_HI6421_PMIC=y
CONFIG_MFD_HI655X_PMIC=y
CONFIG_MFD_MAX77620=y
+CONFIG_MFD_MT6360=y
CONFIG_MFD_MT6397=y
CONFIG_MFD_SPMI_PMIC=y
CONFIG_MFD_RK808=y
@@ -645,6 +667,8 @@ CONFIG_REGULATOR_MAX77620=y
CONFIG_REGULATOR_MAX8973=y
CONFIG_REGULATOR_MP8859=y
CONFIG_REGULATOR_MT6358=y
+CONFIG_REGULATOR_MT6359=y
+CONFIG_REGULATOR_MT6360=y
CONFIG_REGULATOR_MT6397=y
CONFIG_REGULATOR_PCA9450=y
CONFIG_REGULATOR_PF8X00=y
@@ -672,27 +696,29 @@ CONFIG_MEDIA_PLATFORM_SUPPORT=y
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_V4L_PLATFORM_DRIVERS=y
+CONFIG_SDR_PLATFORM_DRIVERS=y
+CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_QCOM_CAMSS=m
+CONFIG_VIDEO_QCOM_VENUS=m
+CONFIG_VIDEO_RCAR_ISP=m
CONFIG_VIDEO_RCAR_CSI2=m
CONFIG_VIDEO_RCAR_VIN=m
-CONFIG_VIDEO_SUN6I_CSI=m
-CONFIG_VIDEO_RCAR_ISP=m
-CONFIG_V4L_MEM2MEM_DRIVERS=y
-CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m
-CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
-CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
-CONFIG_VIDEO_RENESAS_FDP1=m
CONFIG_VIDEO_RENESAS_FCP=m
+CONFIG_VIDEO_RENESAS_FDP1=m
CONFIG_VIDEO_RENESAS_VSP1=m
-CONFIG_VIDEO_QCOM_VENUS=m
-CONFIG_SDR_PLATFORM_DRIVERS=y
CONFIG_VIDEO_RCAR_DRIF=m
+CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
+CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m
+CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
+CONFIG_VIDEO_SUN6I_CSI=m
CONFIG_VIDEO_IMX219=m
CONFIG_VIDEO_OV5640=m
CONFIG_VIDEO_OV5645=m
CONFIG_DRM=m
CONFIG_DRM_I2C_NXP_TDA998X=m
+CONFIG_DRM_HDLCD=m
CONFIG_DRM_MALI_DISPLAY=m
+CONFIG_DRM_KOMEDA=m
CONFIG_DRM_NOUVEAU=m
CONFIG_DRM_EXYNOS=m
CONFIG_DRM_EXYNOS5433_DECON=y
@@ -736,9 +762,11 @@ CONFIG_DRM_THINE_THC63LVD1024=m
CONFIG_DRM_TI_SN65DSI86=m
CONFIG_DRM_I2C_ADV7511=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
+CONFIG_DRM_CDNS_MHDP8546=m
CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
CONFIG_DRM_DW_HDMI_CEC=m
CONFIG_DRM_IMX_DCSS=m
+CONFIG_DRM_V3D=m
CONFIG_DRM_VC4=m
CONFIG_DRM_ETNAVIV=m
CONFIG_DRM_HISI_HIBMC=m
@@ -750,6 +778,7 @@ CONFIG_DRM_MESON=m
CONFIG_DRM_PL111=m
CONFIG_DRM_LIMA=m
CONFIG_DRM_PANFROST=m
+CONFIG_DRM_TIDSS=m
CONFIG_FB=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_EFI=y
@@ -779,6 +808,8 @@ CONFIG_SND_SOC_APQ8016_SBC=m
CONFIG_SND_SOC_MSM8996=m
CONFIG_SND_SOC_SDM845=m
CONFIG_SND_SOC_SM8250=m
+CONFIG_SND_SOC_SC7180=m
+CONFIG_SND_SOC_SC7280=m
CONFIG_SND_SOC_ROCKCHIP=m
CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
CONFIG_SND_SOC_ROCKCHIP_RT5645=m
@@ -786,12 +817,17 @@ CONFIG_SND_SOC_RK3399_GRU_SOUND=m
CONFIG_SND_SOC_SAMSUNG=y
CONFIG_SND_SOC_RCAR=m
CONFIG_SND_SOC_RZ=m
+CONFIG_SND_SUN8I_CODEC=m
+CONFIG_SND_SUN8I_CODEC_ANALOG=m
+CONFIG_SND_SUN50I_CODEC_ANALOG=m
CONFIG_SND_SUN4I_I2S=m
CONFIG_SND_SUN4I_SPDIF=m
CONFIG_SND_SOC_TEGRA=m
CONFIG_SND_SOC_TEGRA210_AHUB=m
CONFIG_SND_SOC_TEGRA210_DMIC=m
CONFIG_SND_SOC_TEGRA210_I2S=m
+CONFIG_SND_SOC_TEGRA210_OPE=m
+CONFIG_SND_SOC_TEGRA186_ASRC=m
CONFIG_SND_SOC_TEGRA186_DSPK=m
CONFIG_SND_SOC_TEGRA210_ADMAIF=m
CONFIG_SND_SOC_TEGRA210_MVC=m
@@ -812,7 +848,9 @@ CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
CONFIG_SND_SOC_SIMPLE_MUX=m
CONFIG_SND_SOC_TAS571X=m
CONFIG_SND_SOC_TLV320AIC32X4_I2C=m
+CONFIG_SND_SOC_WCD9335=m
CONFIG_SND_SOC_WCD934X=m
+CONFIG_SND_SOC_WM8524=m
CONFIG_SND_SOC_WM8904=m
CONFIG_SND_SOC_WM8960=m
CONFIG_SND_SOC_WM8962=m
@@ -821,6 +859,8 @@ CONFIG_SND_SOC_WSA881X=m
CONFIG_SND_SOC_NAU8822=m
CONFIG_SND_SOC_LPASS_WSA_MACRO=m
CONFIG_SND_SOC_LPASS_VA_MACRO=m
+CONFIG_SND_SOC_LPASS_RX_MACRO=m
+CONFIG_SND_SOC_LPASS_TX_MACRO=m
CONFIG_SND_SIMPLE_CARD=m
CONFIG_SND_AUDIO_GRAPH_CARD=m
CONFIG_SND_AUDIO_GRAPH_CARD2=m
@@ -832,6 +872,7 @@ CONFIG_USB_OTG=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_PCI_RENESAS=m
CONFIG_USB_XHCI_TEGRA=y
+CONFIG_USB_BRCMSTB=m
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_EXYNOS=y
CONFIG_USB_EHCI_HCD_PLATFORM=y
@@ -889,6 +930,7 @@ CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_ACPI=y
CONFIG_MMC_SDHCI_PLTFM=y
CONFIG_MMC_SDHCI_OF_ARASAN=y
+CONFIG_MMC_SDHCI_OF_DWCMSHC=y
CONFIG_MMC_SDHCI_OF_ESDHC=y
CONFIG_MMC_SDHCI_CADENCE=y
CONFIG_MMC_SDHCI_ESDHC_IMX=y
@@ -910,13 +952,21 @@ CONFIG_MMC_MTK=y
CONFIG_MMC_SDHCI_XENON=y
CONFIG_MMC_SDHCI_AM654=y
CONFIG_MMC_OWL=y
+CONFIG_SCSI_UFSHCD=y
+CONFIG_SCSI_UFSHCD_PLATFORM=y
+CONFIG_SCSI_UFS_QCOM=m
+CONFIG_SCSI_UFS_HISI=y
+CONFIG_SCSI_UFS_RENESAS=m
+CONFIG_SCSI_UFS_EXYNOS=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_CLASS_MULTICOLOR=m
CONFIG_LEDS_LM3692X=m
CONFIG_LEDS_PCA9532=m
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_SYSCON=y
+CONFIG_LEDS_QCOM_LPG=m
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_DISK=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
@@ -951,8 +1001,8 @@ CONFIG_RTC_DRV_PM8XXX=m
CONFIG_RTC_DRV_TEGRA=y
CONFIG_RTC_DRV_SNVS=m
CONFIG_RTC_DRV_IMX_SC=m
-CONFIG_RTC_DRV_XGENE=y
CONFIG_RTC_DRV_MT6397=m
+CONFIG_RTC_DRV_XGENE=y
CONFIG_DMADEVICES=y
CONFIG_DMA_BCM2835=y
CONFIG_DMA_SUN6I=m
@@ -963,9 +1013,11 @@ CONFIG_MV_XOR=y
CONFIG_MV_XOR_V2=y
CONFIG_OWL_DMA=y
CONFIG_PL330_DMA=y
+CONFIG_TEGRA186_GPC_DMA=y
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA210_ADMA=m
CONFIG_QCOM_BAM_DMA=y
+CONFIG_QCOM_GPI_DMA=m
CONFIG_QCOM_HIDMA_MGMT=y
CONFIG_QCOM_HIDMA=y
CONFIG_RCAR_DMAC=y
@@ -984,6 +1036,7 @@ CONFIG_STAGING=y
CONFIG_STAGING_MEDIA=y
CONFIG_VIDEO_HANTRO=m
CONFIG_VIDEO_IMX_MEDIA=m
+CONFIG_VIDEO_MAX96712=m
CONFIG_CHROME_PLATFORMS=y
CONFIG_CROS_EC=y
CONFIG_CROS_EC_I2C=y
@@ -1005,6 +1058,7 @@ CONFIG_CLK_IMX8MP=y
CONFIG_CLK_IMX8MQ=y
CONFIG_CLK_IMX8QXP=y
CONFIG_CLK_IMX8ULP=y
+CONFIG_CLK_IMX93=y
CONFIG_TI_SCI_CLK=y
CONFIG_COMMON_CLK_QCOM=y
CONFIG_QCOM_A53PLL=y
@@ -1021,14 +1075,18 @@ CONFIG_MSM_GCC_8998=y
CONFIG_QCS_GCC_404=y
CONFIG_SC_GCC_7180=y
CONFIG_SC_GCC_7280=y
+CONFIG_SC_GCC_8180X=y
+CONFIG_SC_GCC_8280XP=y
CONFIG_SDM_CAMCC_845=m
CONFIG_SDM_GPUCC_845=y
CONFIG_SDM_VIDEOCC_845=y
CONFIG_SDM_DISPCC_845=y
+CONFIG_SM_DISPCC_8250=y
CONFIG_SM_GCC_8350=y
CONFIG_SM_GCC_8450=y
CONFIG_SM_GPUCC_8150=y
CONFIG_SM_GPUCC_8250=y
+CONFIG_SM_VIDEOCC_8250=y
CONFIG_QCOM_HFPLL=y
CONFIG_CLK_GFM_LPASS_SM8250=m
CONFIG_CLK_RCAR_USB2_CLOCK_SEL=y
@@ -1048,11 +1106,13 @@ CONFIG_ARM_SMMU_V3=y
CONFIG_MTK_IOMMU=y
CONFIG_QCOM_IOMMU=y
CONFIG_REMOTEPROC=y
+CONFIG_QCOM_Q6V5_ADSP=m
CONFIG_QCOM_Q6V5_MSS=m
CONFIG_QCOM_Q6V5_PAS=m
CONFIG_QCOM_SYSMON=m
CONFIG_QCOM_WCNSS_PIL=m
CONFIG_RPMSG_CHAR=m
+CONFIG_RPMSG_CTRL=m
CONFIG_RPMSG_QCOM_GLINK_RPM=y
CONFIG_RPMSG_QCOM_GLINK_SMEM=m
CONFIG_RPMSG_QCOM_SMD=y
@@ -1069,6 +1129,8 @@ CONFIG_QCOM_AOSS_QMP=y
CONFIG_QCOM_COMMAND_DB=y
CONFIG_QCOM_CPR=y
CONFIG_QCOM_GENI_SE=y
+CONFIG_QCOM_LLCC=m
+CONFIG_QCOM_OCMEM=m
CONFIG_QCOM_RMTFS_MEM=m
CONFIG_QCOM_RPMH=y
CONFIG_QCOM_RPMHPD=y
@@ -1078,9 +1140,11 @@ CONFIG_QCOM_SMD_RPM=y
CONFIG_QCOM_SMP2P=y
CONFIG_QCOM_SMSM=y
CONFIG_QCOM_SOCINFO=m
+CONFIG_QCOM_SPM=m
CONFIG_QCOM_STATS=m
CONFIG_QCOM_WCNSS_CTRL=m
CONFIG_QCOM_APR=m
+CONFIG_QCOM_ICC_BWMON=m
CONFIG_ARCH_R8A77995=y
CONFIG_ARCH_R8A77990=y
CONFIG_ARCH_R8A77950=y
@@ -1092,11 +1156,15 @@ CONFIG_ARCH_R8A779F0=y
CONFIG_ARCH_R8A77980=y
CONFIG_ARCH_R8A77970=y
CONFIG_ARCH_R8A779A0=y
+CONFIG_ARCH_R8A779G0=y
CONFIG_ARCH_R8A774C0=y
CONFIG_ARCH_R8A774E1=y
CONFIG_ARCH_R8A774A1=y
CONFIG_ARCH_R8A774B1=y
+CONFIG_ARCH_R9A07G043=y
CONFIG_ARCH_R9A07G044=y
+CONFIG_ARCH_R9A07G054=y
+CONFIG_ARCH_R9A09G011=y
CONFIG_ROCKCHIP_IODOMAIN=y
CONFIG_ROCKCHIP_PM_DOMAINS=y
CONFIG_ARCH_TEGRA_132_SOC=y
@@ -1153,6 +1221,7 @@ CONFIG_RESET_RZG2L_USBPHY_CTRL=y
CONFIG_RESET_TI_SCI=y
CONFIG_PHY_XGENE=y
CONFIG_PHY_SUN4I_USB=y
+CONFIG_PHY_CADENCE_TORRENT=m
CONFIG_PHY_CADENCE_SIERRA=m
CONFIG_PHY_MIXEL_MIPI_DPHY=m
CONFIG_PHY_FSL_IMX8M_PCIE=y
@@ -1161,10 +1230,14 @@ CONFIG_PHY_HISTB_COMBPHY=y
CONFIG_PHY_HISI_INNO_USB2=y
CONFIG_PHY_MVEBU_CP110_COMPHY=y
CONFIG_PHY_MTK_TPHY=y
+CONFIG_PHY_QCOM_EDP=m
+CONFIG_PHY_QCOM_PCIE2=m
CONFIG_PHY_QCOM_QMP=m
CONFIG_PHY_QCOM_QUSB2=m
-CONFIG_PHY_QCOM_USB_HS=y
-CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=y
+CONFIG_PHY_QCOM_USB_HS=m
+CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=m
+CONFIG_PHY_QCOM_USB_HS_28NM=m
+CONFIG_PHY_QCOM_USB_SS=m
CONFIG_PHY_RCAR_GEN3_PCIE=y
CONFIG_PHY_RCAR_GEN3_USB2=y
CONFIG_PHY_RCAR_GEN3_USB3=m
@@ -1180,19 +1253,25 @@ CONFIG_PHY_UNIPHIER_USB3=y
CONFIG_PHY_TEGRA_XUSB=y
CONFIG_PHY_AM654_SERDES=m
CONFIG_PHY_J721E_WIZ=m
+CONFIG_ARM_CCI_PMU=m
+CONFIG_ARM_CCN=m
+CONFIG_ARM_CMN=m
CONFIG_ARM_SMMU_V3_PMU=m
+CONFIG_ARM_DSU_PMU=m
CONFIG_FSL_IMX8_DDR_PMU=m
+CONFIG_ARM_SPE_PMU=m
+CONFIG_ARM_DMC620_PMU=m
CONFIG_QCOM_L2_PMU=y
CONFIG_QCOM_L3_PMU=y
CONFIG_HISI_PMU=y
CONFIG_NVMEM_IMX_OCOTP=y
CONFIG_NVMEM_IMX_OCOTP_SCU=y
-CONFIG_MTK_EFUSE=y
-CONFIG_QCOM_QFPROM=y
-CONFIG_ROCKCHIP_EFUSE=y
+CONFIG_NVMEM_MTK_EFUSE=y
+CONFIG_NVMEM_QCOM_QFPROM=y
+CONFIG_NVMEM_ROCKCHIP_EFUSE=y
CONFIG_NVMEM_SUNXI_SID=y
-CONFIG_UNIPHIER_EFUSE=y
-CONFIG_MESON_EFUSE=m
+CONFIG_NVMEM_UNIPHIER_EFUSE=y
+CONFIG_NVMEM_MESON_EFUSE=m
CONFIG_NVMEM_RMEM=m
CONFIG_NVMEM_LAYERSCAPE_SFP=m
CONFIG_FPGA=y
@@ -1215,8 +1294,13 @@ CONFIG_INTERCONNECT_IMX8MN=m
CONFIG_INTERCONNECT_IMX8MQ=m
CONFIG_INTERCONNECT_QCOM=y
CONFIG_INTERCONNECT_QCOM_MSM8916=m
+CONFIG_INTERCONNECT_QCOM_MSM8996=m
CONFIG_INTERCONNECT_QCOM_OSM_L3=m
+CONFIG_INTERCONNECT_QCOM_QCS404=m
+CONFIG_INTERCONNECT_QCOM_SC7180=m
CONFIG_INTERCONNECT_QCOM_SC7280=y
+CONFIG_INTERCONNECT_QCOM_SC8180X=y
+CONFIG_INTERCONNECT_QCOM_SC8280XP=y
CONFIG_INTERCONNECT_QCOM_SDM845=y
CONFIG_INTERCONNECT_QCOM_SM8150=m
CONFIG_INTERCONNECT_QCOM_SM8250=m
@@ -1250,6 +1334,7 @@ CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_ISO8859_1=y
CONFIG_SECURITY=y
CONFIG_CRYPTO_ECHAINIV=y
+CONFIG_CRYPTO_MICHAEL_MIC=m
CONFIG_CRYPTO_ANSI_CPRNG=y
CONFIG_CRYPTO_USER_API_RNG=m
CONFIG_CRYPTO_DEV_SUN8I_CE=m
@@ -1263,12 +1348,20 @@ CONFIG_CRYPTO_DEV_HISI_HPRE=m
CONFIG_CRYPTO_DEV_HISI_TRNG=m
CONFIG_CMA_SIZE_MBYTES=32
CONFIG_PRINTK_TIME=y
-CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_KERNEL=y
+CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y
CONFIG_DEBUG_INFO_REDUCED=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_CORESIGHT=m
+CONFIG_CORESIGHT_LINK_AND_SINK_TMC=m
+CONFIG_CORESIGHT_CATU=m
+CONFIG_CORESIGHT_SINK_TPIU=m
+CONFIG_CORESIGHT_SINK_ETBV10=m
+CONFIG_CORESIGHT_STM=m
+CONFIG_CORESIGHT_CPU_DEBUG=m
+CONFIG_CORESIGHT_CTI=m
CONFIG_MEMTEST=y
diff --git a/recipes-kernel/linux/linux-fslc/defconfig b/recipes-kernel/linux/linux-fslc/defconfig
index 91104c53..4aacdcf7 100644
--- a/recipes-kernel/linux/linux-fslc/defconfig
+++ b/recipes-kernel/linux/linux-fslc/defconfig
@@ -1,5 +1,5 @@
CONFIG_SYSVIPC=y
-CONFIG_NO_HZ=y
+CONFIG_NO_HZ_IDLE=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_BPF_SYSCALL=y
CONFIG_PREEMPT_VOLUNTARY=y
@@ -12,8 +12,6 @@ CONFIG_RELAY=y
CONFIG_BLK_DEV_INITRD=y
CONFIG_EXPERT=y
CONFIG_PERF_EVENTS=y
-# CONFIG_SLUB_DEBUG is not set
-# CONFIG_COMPAT_BRK is not set
CONFIG_ARCH_MULTI_V6=y
CONFIG_ARCH_MXC=y
CONFIG_SOC_IMX31=y
@@ -32,7 +30,7 @@ CONFIG_SOC_VF610=y
CONFIG_SMP=y
CONFIG_ARM_PSCI=y
CONFIG_HIGHMEM=y
-CONFIG_FORCE_MAX_ZONEORDER=14
+CONFIG_ARCH_FORCE_MAX_ORDER=14
CONFIG_CMDLINE="noinitrd console=ttymxc0,115200"
CONFIG_KEXEC=y
CONFIG_CPU_FREQ=y
@@ -57,6 +55,7 @@ CONFIG_MODULE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_BINFMT_MISC=m
+# CONFIG_COMPAT_BRK is not set
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
@@ -65,7 +64,6 @@ CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_NETFILTER=y
CONFIG_CAN=y
-CONFIG_CAN_FLEXCAN=y
CONFIG_BT=y
CONFIG_BT_BNEP=m
CONFIG_BT_HCIUART=y
@@ -136,6 +134,7 @@ CONFIG_SMSC911X=y
# CONFIG_NET_VENDOR_STMICRO is not set
CONFIG_MICREL_PHY=y
CONFIG_AT803X_PHY=y
+CONFIG_CAN_FLEXCAN=y
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
CONFIG_USB_RTL8152=y
@@ -256,14 +255,14 @@ CONFIG_MEDIA_SUPPORT=y
CONFIG_MEDIA_USB_SUPPORT=y
CONFIG_USB_VIDEO_CLASS=m
CONFIG_V4L_PLATFORM_DRIVERS=y
-CONFIG_VIDEO_MUX=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_MUX=y
CONFIG_VIDEO_CODA=m
CONFIG_VIDEO_IMX_PXP=y
-CONFIG_VIDEO_ADV7180=m
CONFIG_VIDEO_OV2680=m
CONFIG_VIDEO_OV5640=m
CONFIG_VIDEO_OV5645=m
+CONFIG_VIDEO_ADV7180=m
CONFIG_IMX_IPUV3_CORE=y
CONFIG_DRM=y
CONFIG_DRM_MSM=y
@@ -400,6 +399,7 @@ CONFIG_IIO=y
CONFIG_MMA8452=y
CONFIG_IMX7D_ADC=y
CONFIG_RN5T618_ADC=y
+CONFIG_STMPE_ADC=y
CONFIG_VF610_ADC=y
CONFIG_SENSORS_ISL29018=y
CONFIG_MAG3110=y
@@ -465,6 +465,7 @@ CONFIG_PRINTK_TIME=y
# CONFIG_DEBUG_BUGVERBOSE is not set
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_FS=y
+# CONFIG_SLUB_DEBUG is not set
# CONFIG_SCHED_DEBUG is not set
CONFIG_PROVE_LOCKING=y
# CONFIG_FTRACE is not set
diff --git a/recipes-kernel/linux/linux-fslc/mxs-generic-bsp/defconfig b/recipes-kernel/linux/linux-fslc/mxs-generic-bsp/defconfig
index 67e47841..3bd09fa3 100644
--- a/recipes-kernel/linux/linux-fslc/mxs-generic-bsp/defconfig
+++ b/recipes-kernel/linux/linux-fslc/mxs-generic-bsp/defconfig
@@ -1,5 +1,5 @@
CONFIG_SYSVIPC=y
-CONFIG_NO_HZ=y
+CONFIG_NO_HZ_IDLE=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_TASKSTATS=y
@@ -15,7 +15,6 @@ CONFIG_CGROUPS=y
# CONFIG_NET_NS is not set
CONFIG_BLK_DEV_INITRD=y
CONFIG_PERF_EVENTS=y
-# CONFIG_COMPAT_BRK is not set
# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_MXS=y
CONFIG_AEABI=y
@@ -26,6 +25,7 @@ CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_BLK_DEV_INTEGRITY=y
+# CONFIG_COMPAT_BRK is not set
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
@@ -39,7 +39,6 @@ CONFIG_SYN_COOKIES=y
# CONFIG_INET_DIAG is not set
# CONFIG_IPV6 is not set
CONFIG_CAN=m
-CONFIG_CAN_FLEXCAN=m
# CONFIG_WIRELESS is not set
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
@@ -63,6 +62,7 @@ CONFIG_ICPLUS_PHY=y
CONFIG_MICREL_PHY=y
CONFIG_REALTEK_PHY=y
CONFIG_SMSC_PHY=y
+CONFIG_CAN_FLEXCAN=m
CONFIG_USB_USBNET=y
CONFIG_USB_NET_SMSC95XX=y
# CONFIG_WLAN is not set
@@ -94,6 +94,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y
CONFIG_DRM=y
CONFIG_DRM_PANEL_SEIKO_43WVF1G=y
CONFIG_DRM_MXSFB=y
+CONFIG_FB=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_BACKLIGHT_CLASS_DEVICE=y
@@ -163,10 +164,10 @@ CONFIG_CRC_ITU_T=m
CONFIG_CRC7=m
CONFIG_FONTS=y
CONFIG_PRINTK_TIME=y
-CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_KERNEL=y
+CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y
CONFIG_FRAME_WARN=2048
CONFIG_MAGIC_SYSRQ=y
-CONFIG_DEBUG_KERNEL=y
CONFIG_SOFTLOCKUP_DETECTOR=y
CONFIG_PROVE_LOCKING=y
CONFIG_BLK_DEV_IO_TRACE=y
diff --git a/recipes-kernel/linux/linux-fslc_5.18.bb b/recipes-kernel/linux/linux-fslc_6.1.bb
index 363a2989..ef37aa1c 100644
--- a/recipes-kernel/linux/linux-fslc_5.18.bb
+++ b/recipes-kernel/linux/linux-fslc_6.1.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.18.5"
+LINUX_VERSION = "6.1.57"
-KBRANCH = "5.18.x+fslc"
-SRCREV = "1d6b3055ae6a2ab50a911a6482dbd750c09cd3e0"
+KBRANCH = "6.1.x+fslc"
+SRCREV = "2c0a3c104b3104e0244b32ac25151f699ac960c3"
COMPATIBLE_MACHINE = "(imx-generic-bsp)"
diff --git a/recipes-kernel/linux/linux-imx-headers_5.15.bb b/recipes-kernel/linux/linux-imx-headers_5.15.bb
index 9fa78171..ae151906 100644
--- a/recipes-kernel/linux/linux-imx-headers_5.15.bb
+++ b/recipes-kernel/linux/linux-imx-headers_5.15.bb
@@ -7,10 +7,10 @@ New headers are installed in ${includedir}/imx."
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
+SRC_URI = "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
SRCBRANCH = "lf-5.15.y"
-LOCALVERSION = "-5.15.5-1.0.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
-SRCREV = "c1084c2773fc1005ed140db625399d5334d94a28"
+LOCALVERSION = "-5.15.71-2.2.0"
+SRCREV = "3313732e9984cb8a6b10a9085c7e18d58e770d56"
S = "${WORKDIR}/git"
diff --git a/recipes-kernel/linux/linux-imx.inc b/recipes-kernel/linux/linux-imx.inc
index ee438fed..b386e058 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-nxp-bsp/defconfig b/recipes-kernel/linux/linux-imx/imx-nxp-bsp/defconfig
index f4697de8..be46db23 100644
--- a/recipes-kernel/linux/linux-imx/imx-nxp-bsp/defconfig
+++ b/recipes-kernel/linux/linux-imx/imx-nxp-bsp/defconfig
@@ -147,6 +147,7 @@ CONFIG_BLK_DEV_MD=m
CONFIG_BLK_DEV_DM=m
CONFIG_DM_CRYPT=m
CONFIG_NETDEVICES=y
+CONFIG_TUN=y
# CONFIG_NET_VENDOR_BROADCOM is not set
CONFIG_CS89x0_PLATFORM=y
# CONFIG_NET_VENDOR_FARADAY is not set
@@ -585,3 +586,10 @@ CONFIG_CRYPTO_USER_API_AEAD=m
# enable KTLS
CONFIG_TLS=y
CONFIG_TLS_DEVICE=y
+
+#enable trust based hardware key
+CONFIG_TRUSTED_KEYS=m
+CONFIG_TRUSTED_KEYS_TPM=n
+CONFIG_TRUSTED_KEYS_TEE=n
+CONFIG_TRUSTED_KEYS_CAAM=n
+CONFIG_TRUSTED_KEYS_DCP=y
diff --git a/recipes-kernel/linux/linux-imx/mx8-nxp-bsp/defconfig b/recipes-kernel/linux/linux-imx/mx8-nxp-bsp/defconfig
index c00288d1..97dc633d 100644
--- a/recipes-kernel/linux/linux-imx/mx8-nxp-bsp/defconfig
+++ b/recipes-kernel/linux/linux-imx/mx8-nxp-bsp/defconfig
@@ -356,6 +356,7 @@ CONFIG_KEYBOARD_ADC=m
CONFIG_KEYBOARD_GPIO=y
CONFIG_KEYBOARD_RPMSG=y
CONFIG_KEYBOARD_SNVS_PWRKEY=y
+CONFIG_KEYBOARD_BBNSM_PWRKEY=y
CONFIG_KEYBOARD_IMX_SC_PWRKEY=y
CONFIG_KEYBOARD_CROS_EC=y
CONFIG_INPUT_TOUCHSCREEN=y
@@ -363,6 +364,7 @@ CONFIG_TOUCHSCREEN_ATMEL_MXT=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_EDT_FT5X06=m
CONFIG_TOUCHSCREEN_SYNAPTICS_DSX_I2C=m
+CONFIG_TOUCHSCREEN_EXC3000=m
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PWM_VIBRA=m
# CONFIG_SERIO_SERPORT is not set
@@ -431,6 +433,7 @@ CONFIG_PINCTRL_IMX8QM=y
CONFIG_PINCTRL_IMX8QXP=y
CONFIG_PINCTRL_IMX8DXL=y
CONFIG_PINCTRL_IMX8ULP=y
+CONFIG_PINCTRL_IMX93=y
CONFIG_PINCTRL_S32V234=y
CONFIG_GPIO_ALTERA=m
CONFIG_GPIO_DWAPB=y
@@ -443,6 +446,7 @@ CONFIG_GPIO_XGENE=y
CONFIG_GPIO_MAX732X=y
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_ADP5585=y
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
CONFIG_GPIO_SL28CPLD=m
@@ -481,6 +485,7 @@ CONFIG_IMX_SC_WDT=y
CONFIG_IMX7ULP_WDT=y
CONFIG_ARM_SMC_WATCHDOG=y
CONFIG_XEN_WDT=y
+CONFIG_MFD_ADP5585=y
CONFIG_MFD_BD9571MWV=y
CONFIG_MFD_AXP20X_I2C=y
CONFIG_MFD_IMX_MIX=y
@@ -544,13 +549,17 @@ CONFIG_VIDEO_MXC_CAPTURE=y
CONFIG_VIDEO_MX8_CAPTURE=y
CONFIG_VIDEO_MXC_CSI_CAMERA=y
CONFIG_MXC_MIPI_CSI=y
+CONFIG_DWC_MIPI_CSI2_HOST=y
CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y
CONFIG_V4L_MEM2MEM_DRIVERS=y
CONFIG_VIDEO_IMX8_JPEG=m
+CONFIG_VIDEO_AMPHION_VPU=y
CONFIG_SDR_PLATFORM_DRIVERS=y
CONFIG_VIDEO_IMX219=m
CONFIG_VIDEO_OV5640=y
CONFIG_VIDEO_OV5645=m
+CONFIG_VIDEO_MT9M114=y
+CONFIG_VIDEO_AP1302=y
CONFIG_IMX_DPU_CORE=y
CONFIG_IMX_LCDIF_CORE=y
CONFIG_IMX_LCDIFV3_CORE=y
@@ -564,6 +573,7 @@ CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
CONFIG_DRM_PANEL_LVDS=m
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_DRM_PANEL_MANTIX_MLAF057WE51=m
+CONFIG_DRM_PANEL_ONTAT_KD50G21_40NT_A1=y
CONFIG_DRM_PANEL_RAYDIUM_RM67191=y
CONFIG_DRM_PANEL_RAYDIUM_RM68200=y
CONFIG_DRM_PANEL_ROCKTECK_HIMAX8394F=y
@@ -591,6 +601,7 @@ 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=m
+CONFIG_DRM_DW_MIPI_DSI=y
CONFIG_DRM_ITE_IT6263=y
CONFIG_DRM_ITE_IT6161=y
CONFIG_DRM_IMX=y
@@ -601,6 +612,9 @@ CONFIG_DRM_IMX_LDB=y
CONFIG_DRM_IMX8QM_LDB=y
CONFIG_DRM_IMX8QXP_LDB=y
CONFIG_DRM_IMX8MP_LDB=y
+CONFIG_DRM_IMX93_LDB=y
+CONFIG_DRM_IMX93_PARALLEL_DISPLAY_FORMAT=y
+CONFIG_DRM_IMX_DW_MIPI_DSI=y
CONFIG_DRM_IMX_HDMI=y
CONFIG_DRM_IMX_SEC_DSIM=y
CONFIG_DRM_IMX_DCNANO=y
@@ -776,6 +790,7 @@ CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_LM3692X=m
CONFIG_LEDS_PCA9532=m
+CONFIG_LEDS_PCA995X=m
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_PWM=y
CONFIG_LEDS_SYSCON=y
@@ -807,6 +822,7 @@ CONFIG_RTC_DRV_CROS_EC=y
CONFIG_RTC_DRV_FSL_FTM_ALARM=m
CONFIG_RTC_DRV_PL031=y
CONFIG_RTC_DRV_SNVS=y
+CONFIG_RTC_DRV_BBNSM=y
CONFIG_RTC_DRV_IMX_SC=y
CONFIG_RTC_DRV_IMX_RPMSG=y
CONFIG_DMADEVICES=y
@@ -843,6 +859,8 @@ CONFIG_STAGING_MEDIA=y
CONFIG_VIDEO_HANTRO=m
CONFIG_VIDEO_IMX_CAPTURE=y
CONFIG_IMX8_MEDIA_DEVICE=m
+CONFIG_MHDP_HDMIRX=y
+CONFIG_MHDP_HDMIRX_CEC=y
CONFIG_FSL_DPAA2=y
CONFIG_FSL_PPFE=y
CONFIG_FSL_PPFE_UTIL_DISABLED=y
@@ -867,6 +885,7 @@ CONFIG_CLK_IMX8MP=y
CONFIG_CLK_IMX8MQ=y
CONFIG_CLK_IMX8QXP=y
CONFIG_CLK_IMX8ULP=y
+CONFIG_CLK_IMX93=y
CONFIG_HWSPINLOCK=y
CONFIG_ARM_MHU=y
CONFIG_IMX_MBOX=y
@@ -887,13 +906,13 @@ CONFIG_FSL_MC_DPIO=y
CONFIG_FSL_RCPM=y
CONFIG_FSL_QIXIS=y
CONFIG_SOC_TI=y
-CONFIG_ARM_IMX_BUS_DEVFREQ=m
-CONFIG_ARM_IMX8M_DDRC_DEVFREQ=m
CONFIG_EXTCON_PTN5150=m
CONFIG_EXTCON_USB_GPIO=y
CONFIG_EXTCON_USBC_CROS_EC=y
CONFIG_IIO=y
+CONFIG_FXLS8962AF_I2C=m
CONFIG_IMX8QXP_ADC=y
+CONFIG_IMX93_ADC=y
CONFIG_MAX9611=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPMI_ADC5=m
@@ -901,6 +920,7 @@ CONFIG_IIO_CROS_EC_SENSORS_CORE=m
CONFIG_IIO_CROS_EC_SENSORS=m
CONFIG_FXAS21002C=y
CONFIG_FXOS8700_I2C=y
+CONFIG_RPMSG_IIO_PEDOMETER=m
CONFIG_IIO_ST_LSM6DSX=y
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_SENSORS_ISL29018=y
@@ -909,6 +929,7 @@ CONFIG_IIO_ST_MAGN_3AXIS=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_MPL3115=y
CONFIG_PWM=y
+CONFIG_PWM_ADP5585=y
CONFIG_PWM_CROS_EC=m
CONFIG_PWM_FSL_FTM=m
CONFIG_PWM_IMX27=y
@@ -922,12 +943,14 @@ CONFIG_PHY_MIXEL_LVDS=y
CONFIG_PHY_MIXEL_LVDS_COMBO=y
CONFIG_PHY_CADENCE_SALVO=y
CONFIG_PHY_FSL_IMX8MP_LVDS=y
+CONFIG_PHY_FSL_IMX93_MIPI_DPHY=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_FSL_IMX9_DDR_PMU=y
CONFIG_HISI_PMU=y
CONFIG_NVMEM_IMX_OCOTP=y
CONFIG_NVMEM_IMX_OCOTP_SCU=y
@@ -941,9 +964,6 @@ CONFIG_TEE=y
CONFIG_OPTEE=y
CONFIG_MUX_MMIO=y
CONFIG_SLIM_QCOM_CTRL=m
-CONFIG_INTERCONNECT=y
-CONFIG_INTERCONNECT_IMX=m
-CONFIG_INTERCONNECT_IMX8MQ=m
CONFIG_MXC_SIM=y
CONFIG_MXC_EMVSIM=y
CONFIG_EXT2_FS=y
@@ -1038,3 +1058,12 @@ CONFIG_CORESIGHT_SOURCE_ETM4X=y
CONFIG_MEMTEST=y
CONFIG_TLS=y
CONFIG_TLS_DEVICE=y
+
+# enable Trusted Keys based on CAAM
+CONFIG_TRUSTED_KEYS=m
+CONFIG_TRUSTED_KEYS_TPM=n
+CONFIG_TRUSTED_KEYS_TEE=n
+CONFIG_TRUSTED_KEYS_CAAM=y
+
+CONFIG_SOC_IMX9=y
+CONFIG_ETHOSU=y
diff --git a/recipes-kernel/linux/linux-imx/mx9-nxp-bsp/defconfig b/recipes-kernel/linux/linux-imx/mx9-nxp-bsp/defconfig
new file mode 100644
index 00000000..97dc633d
--- /dev/null
+++ b/recipes-kernel/linux/linux-imx/mx9-nxp-bsp/defconfig
@@ -0,0 +1,1069 @@
+CONFIG_SYSVIPC=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_AUDIT=y
+CONFIG_NO_HZ_IDLE=y
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_BPF_JIT=y
+CONFIG_PREEMPT=y
+CONFIG_IRQ_TIME_ACCOUNTING=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_NUMA_BALANCING=y
+CONFIG_MEMCG=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_PIDS=y
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_HUGETLB=y
+CONFIG_CPUSETS=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_CGROUP_PERF=y
+CONFIG_USER_NS=y
+CONFIG_SCHED_AUTOGROUP=y
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_KALLSYMS_ALL=y
+# CONFIG_COMPAT_BRK is not set
+CONFIG_PROFILING=y
+CONFIG_ARCH_LAYERSCAPE=y
+CONFIG_ARCH_KEEMBAY=y
+CONFIG_ARCH_MXC=y
+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_KEXEC=y
+CONFIG_KEXEC_FILE=y
+CONFIG_CRASH_DUMP=y
+CONFIG_XEN=y
+CONFIG_FORCE_MAX_ZONEORDER=14
+CONFIG_COMPAT=y
+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
+CONFIG_CPU_FREQ_STAT=y
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+CONFIG_CPUFREQ_DT=y
+CONFIG_ACPI_CPPC_CPUFREQ=m
+CONFIG_ARM_SCPI_CPUFREQ=y
+CONFIG_ARM_IMX_CPUFREQ_DT=y
+CONFIG_ARM_SCMI_CPUFREQ=y
+CONFIG_QORIQ_CPUFREQ=y
+CONFIG_ARM_SCMI_PROTOCOL=y
+CONFIG_ARM_SCPI_PROTOCOL=y
+CONFIG_QCOM_SCM=m
+CONFIG_EFI_CAPSULE_LOADER=y
+CONFIG_IMX_DSP=y
+CONFIG_IMX_SCU=y
+CONFIG_IMX_SCU_PD=y
+CONFIG_ACPI=y
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+CONFIG_ARM64_CRYPTO=y
+CONFIG_CRYPTO_SHA1_ARM64_CE=y
+CONFIG_CRYPTO_SHA2_ARM64_CE=y
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+CONFIG_CRYPTO_SM3_ARM64_CE=m
+CONFIG_CRYPTO_GHASH_ARM64_CE=y
+CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
+CONFIG_CRYPTO_CHACHA20_NEON=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+CONFIG_JUMP_LABEL=y
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_KSM=y
+CONFIG_MEMORY_FAILURE=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IPV6_SIT=m
+CONFIG_NETFILTER=y
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_BRIDGE=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+CONFIG_NET_DSA=m
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC2=y
+CONFIG_NET_SCHED=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_QRTR=m
+CONFIG_QRTR_SMD=m
+CONFIG_QRTR_TUN=m
+CONFIG_NET_PKTGEN=m
+CONFIG_CAN=m
+CONFIG_CAN_FLEXCAN=m
+CONFIG_BT=y
+CONFIG_BT_RFCOMM=y
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=y
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_HIDP=y
+CONFIG_BT_LEDS=y
+# CONFIG_BT_DEBUGFS is not set
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIUART=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIUART_BCM=y
+CONFIG_BT_HCIUART_QCA=y
+CONFIG_BT_HCIVHCI=y
+CONFIG_CFG80211=y
+CONFIG_NL80211_TESTMODE=y
+CONFIG_CFG80211_WEXT=y
+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
+CONFIG_PCI_XGENE=y
+CONFIG_PCIE_ALTERA=y
+CONFIG_PCIE_ALTERA_MSI=y
+CONFIG_PCI_HOST_THUNDER_PEM=y
+CONFIG_PCI_HOST_THUNDER_ECAM=y
+CONFIG_PCI_IMX6_HOST=y
+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_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_FW_LOADER_USER_HELPER=y
+CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
+CONFIG_BRCMSTB_GISB_ARB=y
+CONFIG_SIMPLE_PM_BUS=y
+CONFIG_VEXPRESS_CONFIG=y
+CONFIG_FSL_MC_UAPI_SUPPORT=y
+CONFIG_GNSS=m
+CONFIG_GNSS_MTK_SERIAL=m
+CONFIG_MTD=y
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_BLOCK=y
+CONFIG_MTD_CFI=y
+CONFIG_MTD_CFI_ADV_OPTIONS=y
+CONFIG_MTD_CFI_INTELEXT=y
+CONFIG_MTD_CFI_AMDSTD=y
+CONFIG_MTD_CFI_STAA=y
+CONFIG_MTD_PHYSMAP=y
+CONFIG_MTD_PHYSMAP_OF=y
+CONFIG_MTD_DATAFLASH=y
+CONFIG_MTD_SST25L=y
+CONFIG_MTD_RAW_NAND=y
+CONFIG_MTD_NAND_DENALI_DT=y
+CONFIG_MTD_NAND_GPMI_NAND=y
+CONFIG_MTD_NAND_FSL_IFC=y
+CONFIG_MTD_SPI_NOR=y
+# CONFIG_MTD_SPI_NOR_USE_4K_SECTORS is not set
+CONFIG_MTD_UBI=y
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_NBD=m
+CONFIG_XEN_BLKDEV_BACKEND=m
+CONFIG_VIRTIO_BLK=y
+CONFIG_BLK_DEV_NVME=y
+CONFIG_SRAM=y
+CONFIG_PCI_ENDPOINT_TEST=y
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_AT25=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
+CONFIG_ATA=y
+CONFIG_SATA_AHCI=y
+CONFIG_SATA_AHCI_PLATFORM=y
+CONFIG_AHCI_IMX=y
+CONFIG_AHCI_CEVA=y
+CONFIG_AHCI_XGENE=y
+CONFIG_AHCI_QORIQ=y
+CONFIG_SATA_SIL24=y
+CONFIG_PATA_PLATFORM=y
+CONFIG_PATA_OF_PLATFORM=y
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_BLK_DEV_DM=m
+CONFIG_DM_CRYPT=m
+CONFIG_DM_MIRROR=m
+CONFIG_DM_ZERO=m
+CONFIG_NETDEVICES=y
+CONFIG_MACVLAN=m
+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_FEC_UIO=y
+CONFIG_FSL_FMAN=y
+CONFIG_FSL_DPAA_ETH=y
+CONFIG_FSL_DPAA2_ETH=y
+CONFIG_FSL_DPAA2_MAC=y
+CONFIG_FSL_DPAA2_SWITCH=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
+CONFIG_HNS3=y
+CONFIG_HNS3_HCLGE=y
+CONFIG_HNS3_ENET=y
+CONFIG_E1000=y
+CONFIG_E1000E=y
+CONFIG_IGB=y
+CONFIG_IGBVF=y
+CONFIG_MVMDIO=y
+CONFIG_SKY2=y
+CONFIG_MLX4_EN=m
+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_DWMAC_GENERIC=m
+CONFIG_AQUANTIA_PHY=y
+CONFIG_BROADCOM_PHY=m
+CONFIG_BCM54140_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=y
+CONFIG_USB_LAN78XX=m
+CONFIG_USB_USBNET=y
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_HOSTAP=y
+CONFIG_WL18XX=m
+CONFIG_WLCORE_SDIO=m
+CONFIG_XEN_NETDEV_BACKEND=m
+CONFIG_IVSHMEM_NET=y
+CONFIG_INPUT_EVDEV=y
+CONFIG_KEYBOARD_ADC=m
+CONFIG_KEYBOARD_GPIO=y
+CONFIG_KEYBOARD_RPMSG=y
+CONFIG_KEYBOARD_SNVS_PWRKEY=y
+CONFIG_KEYBOARD_BBNSM_PWRKEY=y
+CONFIG_KEYBOARD_IMX_SC_PWRKEY=y
+CONFIG_KEYBOARD_CROS_EC=y
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+CONFIG_TOUCHSCREEN_GOODIX=m
+CONFIG_TOUCHSCREEN_EDT_FT5X06=m
+CONFIG_TOUCHSCREEN_SYNAPTICS_DSX_I2C=m
+CONFIG_TOUCHSCREEN_EXC3000=m
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PWM_VIBRA=m
+# CONFIG_SERIO_SERPORT is not set
+CONFIG_SERIO_AMBAKMI=y
+CONFIG_LEGACY_PTY_COUNT=16
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_DW=y
+CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_IMX=y
+CONFIG_SERIAL_IMX_CONSOLE=y
+CONFIG_SERIAL_XILINX_PS_UART=y
+CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
+CONFIG_SERIAL_FSL_LPUART=y
+CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
+CONFIG_SERIAL_FSL_LINFLEXUART=y
+CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y
+CONFIG_SERIAL_DEV_BUS=y
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_TCG_TPM=y
+CONFIG_TCG_TIS_I2C_INFINEON=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_MUX=y
+CONFIG_I2C_MUX_PCA954x=y
+CONFIG_I2C_DESIGNWARE_PLATFORM=y
+CONFIG_I2C_GPIO=m
+CONFIG_I2C_IMX=y
+CONFIG_I2C_IMX_LPI2C=y
+CONFIG_I2C_RK3X=y
+CONFIG_I2C_RPBUS=y
+CONFIG_I2C_CROS_EC_TUNNEL=y
+CONFIG_XEN_I2C_BACKEND=y
+CONFIG_I3C=y
+CONFIG_SVC_I3C_MASTER=y
+CONFIG_SPI=y
+CONFIG_SPI_CADENCE_QUADSPI=y
+CONFIG_SPI_DESIGNWARE=m
+CONFIG_SPI_DW_DMA=y
+CONFIG_SPI_DW_MMIO=m
+CONFIG_SPI_FSL_LPSPI=y
+CONFIG_SPI_FSL_QUADSPI=y
+CONFIG_SPI_NXP_FLEXSPI=y
+CONFIG_SPI_IMX=y
+CONFIG_SPI_FSL_DSPI=y
+CONFIG_SPI_PL022=y
+CONFIG_SPI_ROCKCHIP=y
+CONFIG_SPI_SPIDEV=y
+CONFIG_SPI_SLAVE=y
+CONFIG_SPI_SLAVE_TIME=y
+CONFIG_SPI_SLAVE_SYSTEM_CONTROL=y
+CONFIG_SPMI=y
+CONFIG_PINCTRL_SINGLE=y
+CONFIG_PINCTRL_MAX77620=y
+CONFIG_PINCTRL_IMX8MM=y
+CONFIG_PINCTRL_IMX8MN=y
+CONFIG_PINCTRL_IMX8MP=y
+CONFIG_PINCTRL_IMX8MQ=y
+CONFIG_PINCTRL_IMX8QM=y
+CONFIG_PINCTRL_IMX8QXP=y
+CONFIG_PINCTRL_IMX8DXL=y
+CONFIG_PINCTRL_IMX8ULP=y
+CONFIG_PINCTRL_IMX93=y
+CONFIG_PINCTRL_S32V234=y
+CONFIG_GPIO_ALTERA=m
+CONFIG_GPIO_DWAPB=y
+CONFIG_GPIO_MB86S7X=y
+CONFIG_GPIO_MPC8XXX=y
+CONFIG_GPIO_PL061=y
+CONFIG_GPIO_IMX_RPMSG=y
+CONFIG_GPIO_WCD934X=m
+CONFIG_GPIO_XGENE=y
+CONFIG_GPIO_MAX732X=y
+CONFIG_GPIO_PCA953X=y
+CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_ADP5585=y
+CONFIG_GPIO_BD9571MWV=m
+CONFIG_GPIO_MAX77620=y
+CONFIG_GPIO_SL28CPLD=m
+CONFIG_POWER_RESET_BRCMSTB=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_BATTERY_MAX17042=m
+CONFIG_CHARGER_BQ25890=m
+CONFIG_CHARGER_BQ25980=m
+CONFIG_SENSORS_ARM_SCMI=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
+CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
+CONFIG_CPU_THERMAL=y
+CONFIG_THERMAL_EMULATION=y
+CONFIG_IMX_SC_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_ADP5585=y
+CONFIG_MFD_BD9571MWV=y
+CONFIG_MFD_AXP20X_I2C=y
+CONFIG_MFD_IMX_MIX=y
+CONFIG_MFD_HI6421_PMIC=y
+CONFIG_MFD_FP9931=y
+CONFIG_MFD_MAX77620=y
+CONFIG_MFD_MT6397=y
+CONFIG_MFD_RK808=y
+CONFIG_MFD_SEC_CORE=y
+CONFIG_MFD_SL28CPLD=y
+CONFIG_MFD_ROHM_BD718XX=y
+CONFIG_MFD_WCD934X=m
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+CONFIG_REGULATOR_AXP20X=y
+CONFIG_REGULATOR_BD718XX=y
+CONFIG_REGULATOR_BD9571MWV=y
+CONFIG_REGULATOR_FAN53555=y
+CONFIG_REGULATOR_GPIO=y
+CONFIG_REGULATOR_HI6421V530=y
+CONFIG_REGULATOR_MAX77620=y
+CONFIG_REGULATOR_MAX8973=y
+CONFIG_REGULATOR_FP9931=y
+CONFIG_REGULATOR_MP8859=y
+CONFIG_REGULATOR_MT6358=y
+CONFIG_REGULATOR_MT6397=y
+CONFIG_REGULATOR_PCA9450=y
+CONFIG_REGULATOR_PF8X00=y
+CONFIG_REGULATOR_PFUZE100=y
+CONFIG_REGULATOR_PWM=y
+CONFIG_REGULATOR_QCOM_SPMI=y
+CONFIG_REGULATOR_RK808=y
+CONFIG_REGULATOR_S2MPS11=y
+CONFIG_REGULATOR_TPS65132=m
+CONFIG_REGULATOR_VCTRL=m
+CONFIG_RC_CORE=m
+CONFIG_RC_DECODERS=y
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_SHARP_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_IR_XMP_DECODER=m
+CONFIG_IR_IMON_DECODER=m
+CONFIG_IR_RCMM_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_IR_GPIO_CIR=m
+CONFIG_MEDIA_SUPPORT=y
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=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_MXC_CAPTURE=y
+CONFIG_VIDEO_MX8_CAPTURE=y
+CONFIG_VIDEO_MXC_CSI_CAMERA=y
+CONFIG_MXC_MIPI_CSI=y
+CONFIG_DWC_MIPI_CSI2_HOST=y
+CONFIG_MXC_CAMERA_OV5640_MIPI_V2=y
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_IMX8_JPEG=m
+CONFIG_VIDEO_AMPHION_VPU=y
+CONFIG_SDR_PLATFORM_DRIVERS=y
+CONFIG_VIDEO_IMX219=m
+CONFIG_VIDEO_OV5640=y
+CONFIG_VIDEO_OV5645=m
+CONFIG_VIDEO_MT9M114=y
+CONFIG_VIDEO_AP1302=y
+CONFIG_IMX_DPU_CORE=y
+CONFIG_IMX_LCDIF_CORE=y
+CONFIG_IMX_LCDIFV3_CORE=y
+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_BOE_TV101WUM_NL6=m
+CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_SIMPLE=y
+CONFIG_DRM_PANEL_MANTIX_MLAF057WE51=m
+CONFIG_DRM_PANEL_ONTAT_KD50G21_40NT_A1=y
+CONFIG_DRM_PANEL_RAYDIUM_RM67191=y
+CONFIG_DRM_PANEL_RAYDIUM_RM68200=y
+CONFIG_DRM_PANEL_ROCKTECK_HIMAX8394F=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_LT8912B=m
+CONFIG_DRM_LONTIUM_LT9611=m
+CONFIG_DRM_LONTIUM_LT9611UXC=m
+CONFIG_DRM_FSL_IMX_LVDS_BRIDGE=y
+CONFIG_DRM_NWL_MIPI_DSI=y
+CONFIG_DRM_NXP_SEIKO_43WVFIG=y
+CONFIG_DRM_PARADE_PS8640=m
+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_I2C_ADV7511_AUDIO=y
+CONFIG_DRM_CDNS_HDCP=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=m
+CONFIG_DRM_DW_MIPI_DSI=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
+CONFIG_DRM_IMX_TVE=y
+CONFIG_DRM_IMX_LDB=y
+CONFIG_DRM_IMX8QM_LDB=y
+CONFIG_DRM_IMX8QXP_LDB=y
+CONFIG_DRM_IMX8MP_LDB=y
+CONFIG_DRM_IMX93_LDB=y
+CONFIG_DRM_IMX93_PARALLEL_DISPLAY_FORMAT=y
+CONFIG_DRM_IMX_DW_MIPI_DSI=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
+CONFIG_DRM_HISI_HIBMC=m
+CONFIG_DRM_HISI_KIRIN=m
+CONFIG_DRM_MXSFB=y
+CONFIG_DRM_PL111=m
+CONFIG_DRM_LIMA=m
+CONFIG_DRM_PANFROST=m
+CONFIG_FB=y
+CONFIG_FB_ARMCLCD=y
+CONFIG_FB_EFI=y
+CONFIG_FB_MXC_EINK_V2_PANEL=y
+CONFIG_BACKLIGHT_PWM=y
+CONFIG_BACKLIGHT_LP855X=m
+CONFIG_LOGO=y
+# CONFIG_LOGO_LINUX_MONO is not set
+# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_SOUND=y
+CONFIG_SND=y
+CONFIG_SND_ALOOP=m
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_SOC=y
+CONFIG_SND_SOC_FSL_ASRC=m
+CONFIG_SND_SOC_FSL_MQS=m
+CONFIG_SND_SOC_FSL_MICFIL=m
+CONFIG_SND_SOC_FSL_EASRC=m
+CONFIG_SND_SOC_FSL_XCVR=m
+CONFIG_SND_SOC_FSL_ESAI_CLIENT=y
+CONFIG_SND_SOC_FSL_RPMSG=m
+CONFIG_SND_IMX_SOC=m
+CONFIG_SND_SOC_IMX_SGTL5000=m
+CONFIG_SND_SOC_IMX_SPDIF=m
+CONFIG_SND_SOC_FSL_ASOC_CARD=m
+CONFIG_SND_SOC_IMX_AUDMIX=m
+CONFIG_SND_SOC_IMX_HDMI=m
+CONFIG_SND_SOC_IMX_CARD=m
+CONFIG_SND_SOC_IMX_PDM_MIC=m
+CONFIG_SND_SOC_IMX_PCM512X=m
+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=m
+CONFIG_SND_SOC_SOF_IMX8M=m
+CONFIG_SND_SOC_SOF_IMX8ULP=m
+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_GTM601=m
+CONFIG_SND_SOC_MAX98357A=m
+CONFIG_SND_SOC_MAX98927=m
+CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m
+CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m
+CONFIG_SND_SOC_PCM3168A_I2C=m
+CONFIG_SND_SOC_RT5659=m
+CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
+CONFIG_SND_SOC_SIMPLE_MUX=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=m
+CONFIG_SND_SOC_WM8962=m
+CONFIG_SND_SOC_WSA881X=m
+CONFIG_SND_SOC_RPMSG_WM8960=m
+CONFIG_SND_SOC_RPMSG_AK4497=m
+CONFIG_SND_SOC_LPASS_WSA_MACRO=m
+CONFIG_SND_SOC_LPASS_VA_MACRO=m
+CONFIG_SND_SIMPLE_CARD=y
+CONFIG_SND_AUDIO_GRAPH_CARD=y
+CONFIG_HID_MULTITOUCH=m
+CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF=m
+CONFIG_USB_CONN_GPIO=y
+CONFIG_USB=y
+CONFIG_USB_OTG=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_PCI_RENESAS=m
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_HCD_PLATFORM=y
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+CONFIG_USB_HCD_TEST_MODE=y
+CONFIG_USB_ACM=m
+CONFIG_USB_STORAGE=y
+CONFIG_USB_UAS=y
+CONFIG_USB_CDNS_SUPPORT=y
+CONFIG_USB_CDNS3=y
+CONFIG_USB_CDNS3_GADGET=y
+CONFIG_USB_CDNS3_HOST=y
+CONFIG_USB_MUSB_HDRC=y
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC2=y
+CONFIG_USB_CHIPIDEA=y
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+CONFIG_USB_ISP1760=y
+CONFIG_USB_SERIAL=y
+CONFIG_USB_SERIAL_CONSOLE=y
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=y
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_FTDI_SIO=y
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_TEST=m
+CONFIG_USB_EHSET_TEST_FIXTURE=y
+CONFIG_USB_HSIC_USB3503=y
+CONFIG_NOP_USB_XCEIV=y
+CONFIG_USB_MXS_PHY=y
+CONFIG_USB_ULPI=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_SNP_UDC_PLAT=y
+CONFIG_USB_BDC_UDC=y
+CONFIG_USB_CONFIGFS=y
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_MASS_STORAGE=y
+CONFIG_USB_CONFIGFS_F_LB_SS=y
+CONFIG_USB_CONFIGFS_F_FS=y
+CONFIG_USB_CONFIGFS_F_UAC1=y
+CONFIG_USB_CONFIGFS_F_UAC1_LEGACY=y
+CONFIG_USB_CONFIGFS_F_UAC2=y
+CONFIG_USB_CONFIGFS_F_MIDI=y
+CONFIG_USB_CONFIGFS_F_HID=y
+CONFIG_USB_CONFIGFS_F_UVC=y
+CONFIG_USB_ZERO=m
+CONFIG_USB_AUDIO=m
+CONFIG_USB_ETH=m
+CONFIG_USB_MASS_STORAGE=m
+CONFIG_USB_G_SERIAL=m
+CONFIG_TYPEC=y
+CONFIG_TYPEC_TCPM=y
+CONFIG_TYPEC_TCPCI=y
+CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC_TPS6598X=m
+CONFIG_TYPEC_HD3SS3220=m
+CONFIG_TYPEC_SWITCH_GPIO=y
+CONFIG_MMC=y
+CONFIG_MMC_BLOCK_MINORS=32
+CONFIG_MMC_ARMMMCI=y
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_ACPI=y
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MMC_SDHCI_OF_ARASAN=y
+CONFIG_MMC_SDHCI_OF_ESDHC=y
+CONFIG_MMC_SDHCI_CADENCE=y
+CONFIG_MMC_SDHCI_ESDHC_IMX=y
+CONFIG_MMC_SDHCI_F_SDH30=y
+CONFIG_MMC_SPI=y
+CONFIG_MMC_DW=y
+CONFIG_MMC_DW_EXYNOS=y
+CONFIG_MMC_DW_HI3798CV200=y
+CONFIG_MMC_DW_K3=y
+CONFIG_MMC_MTK=y
+CONFIG_MMC_SDHCI_XENON=y
+CONFIG_MMC_SDHCI_AM654=y
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_LM3692X=m
+CONFIG_LEDS_PCA9532=m
+CONFIG_LEDS_PCA995X=m
+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
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
+CONFIG_LEDS_TRIGGER_PANIC=y
+CONFIG_EDAC=y
+CONFIG_EDAC_GHES=y
+CONFIG_EDAC_LAYERSCAPE=m
+CONFIG_EDAC_SYNOPSYS=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_HYM8563=m
+CONFIG_RTC_DRV_MAX77686=y
+CONFIG_RTC_DRV_RK808=m
+CONFIG_RTC_DRV_PCF85363=m
+CONFIG_RTC_DRV_M41T80=m
+CONFIG_RTC_DRV_RX8581=m
+CONFIG_RTC_DRV_RV3028=m
+CONFIG_RTC_DRV_RV8803=m
+CONFIG_RTC_DRV_S5M=y
+CONFIG_RTC_DRV_DS3232=y
+CONFIG_RTC_DRV_PCF2127=m
+CONFIG_RTC_DRV_EFI=y
+CONFIG_RTC_DRV_CROS_EC=y
+CONFIG_RTC_DRV_FSL_FTM_ALARM=m
+CONFIG_RTC_DRV_PL031=y
+CONFIG_RTC_DRV_SNVS=y
+CONFIG_RTC_DRV_BBNSM=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
+CONFIG_MXS_DMA=y
+CONFIG_MXC_PXP_V3=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_PCI_GENERIC=y
+CONFIG_UIO_IVSHMEM=y
+CONFIG_VFIO=y
+CONFIG_VFIO_PCI=y
+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
+CONFIG_STAGING_MEDIA=y
+CONFIG_VIDEO_HANTRO=m
+CONFIG_VIDEO_IMX_CAPTURE=y
+CONFIG_IMX8_MEDIA_DEVICE=m
+CONFIG_MHDP_HDMIRX=y
+CONFIG_MHDP_HDMIRX_CEC=y
+CONFIG_FSL_DPAA2=y
+CONFIG_FSL_PPFE=y
+CONFIG_FSL_PPFE_UTIL_DISABLED=y
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=y
+CONFIG_CROS_EC_I2C=y
+CONFIG_CROS_EC_SPI=y
+CONFIG_CROS_EC_CHARDEV=m
+CONFIG_CLK_VEXPRESS_OSC=y
+CONFIG_COMMON_CLK_RK808=y
+CONFIG_COMMON_CLK_SCMI=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_CLK_IMX93=y
+CONFIG_HWSPINLOCK=y
+CONFIG_ARM_MHU=y
+CONFIG_IMX_MBOX=y
+CONFIG_PLATFORM_MHU=y
+CONFIG_IOMMU_IO_PGTABLE_ARMV7S=y
+CONFIG_ARM_SMMU=y
+CONFIG_ARM_SMMU_V3=y
+CONFIG_REMOTEPROC=y
+CONFIG_IMX_REMOTEPROC=y
+CONFIG_IMX_DSP_REMOTEPROC=m
+CONFIG_RPMSG_CHAR=m
+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_SOC_TI=y
+CONFIG_EXTCON_PTN5150=m
+CONFIG_EXTCON_USB_GPIO=y
+CONFIG_EXTCON_USBC_CROS_EC=y
+CONFIG_IIO=y
+CONFIG_FXLS8962AF_I2C=m
+CONFIG_IMX8QXP_ADC=y
+CONFIG_IMX93_ADC=y
+CONFIG_MAX9611=m
+CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPMI_ADC5=m
+CONFIG_IIO_CROS_EC_SENSORS_CORE=m
+CONFIG_IIO_CROS_EC_SENSORS=m
+CONFIG_FXAS21002C=y
+CONFIG_FXOS8700_I2C=y
+CONFIG_RPMSG_IIO_PEDOMETER=m
+CONFIG_IIO_ST_LSM6DSX=y
+CONFIG_IIO_CROS_EC_LIGHT_PROX=m
+CONFIG_SENSORS_ISL29018=y
+CONFIG_VCNL4000=m
+CONFIG_IIO_ST_MAGN_3AXIS=m
+CONFIG_IIO_CROS_EC_BARO=m
+CONFIG_MPL3115=y
+CONFIG_PWM=y
+CONFIG_PWM_ADP5585=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_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_FSL_IMX93_MIPI_DPHY=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_FSL_IMX9_DDR_PMU=y
+CONFIG_HISI_PMU=y
+CONFIG_NVMEM_IMX_OCOTP=y
+CONFIG_NVMEM_IMX_OCOTP_SCU=y
+CONFIG_NVMEM_RMEM=m
+CONFIG_FPGA=y
+CONFIG_FPGA_BRIDGE=m
+CONFIG_ALTERA_FREEZE_BRIDGE=m
+CONFIG_FPGA_REGION=m
+CONFIG_OF_FPGA_REGION=m
+CONFIG_TEE=y
+CONFIG_OPTEE=y
+CONFIG_MUX_MMIO=y
+CONFIG_SLIM_QCOM_CTRL=m
+CONFIG_MXC_SIM=y
+CONFIG_MXC_EMVSIM=y
+CONFIG_EXT2_FS=y
+CONFIG_EXT3_FS=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+CONFIG_FANOTIFY=y
+CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
+CONFIG_QUOTA=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_OVERLAY_FS=m
+CONFIG_VFAT_FS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_HUGETLBFS=y
+CONFIG_EFIVAR_FS=y
+CONFIG_JFFS2_FS=y
+CONFIG_UBIFS_FS=y
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_NFS_FS=y
+CONFIG_NFS_V4=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_ROOT_NFS=y
+CONFIG_9P_FS=y
+CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_ISO8859_1=y
+CONFIG_SECURITY=y
+CONFIG_CRYPTO_USER=y
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_ECHAINIV=y
+CONFIG_CRYPTO_TLS=m
+CONFIG_CRYPTO_CFB=m
+CONFIG_CRYPTO_CTS=m
+CONFIG_CRYPTO_LRW=m
+CONFIG_CRYPTO_OFB=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
+CONFIG_CRYPTO_BLAKE2S=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_STREEBOG=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_FCRYPT=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_ANSI_CPRNG=y
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_USER_API_AEAD=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=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_HISI_TRNG=m
+CONFIG_CRYPTO_DEV_AMLOGIC_GXL=m
+CONFIG_INDIRECT_PIO=y
+CONFIG_CRC_CCITT=m
+CONFIG_CRC8=y
+CONFIG_CMA_SIZE_MBYTES=32
+CONFIG_PRINTK_TIME=y
+CONFIG_DEBUG_INFO=y
+CONFIG_DEBUG_INFO_REDUCED=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_CORESIGHT=y
+CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y
+CONFIG_CORESIGHT_SOURCE_ETM4X=y
+CONFIG_MEMTEST=y
+CONFIG_TLS=y
+CONFIG_TLS_DEVICE=y
+
+# enable Trusted Keys based on CAAM
+CONFIG_TRUSTED_KEYS=m
+CONFIG_TRUSTED_KEYS_TPM=n
+CONFIG_TRUSTED_KEYS_TEE=n
+CONFIG_TRUSTED_KEYS_CAAM=y
+
+CONFIG_SOC_IMX9=y
+CONFIG_ETHOSU=y
diff --git a/recipes-kernel/linux/linux-imx_5.15.bb b/recipes-kernel/linux/linux-imx_5.15.bb
index 751e4c9f..b3c7a7fc 100644
--- a/recipes-kernel/linux/linux-imx_5.15.bb
+++ b/recipes-kernel/linux/linux-imx_5.15.bb
@@ -20,19 +20,19 @@ DEPENDS += "lzop-native bc-native"
# UPGRADE NOTE:
# The linux-imx kernel build uses a defconfig maintained in the layer. That
# defconfig is a copy of a defconfig maintained by NXP in the source.
-# | defconfig in layer | copied from NXP kernel source |
-# | linux-imx/imx-nxp-bsp/defconfig | arch/arm/configs/imx_v7_defconfig |
-# | linux-imx/mx8-nxp-bsp/defconfig | arch/arm64/configs/imx_v8_defconfig |
+# | SOURCE | LAYER |
+# | arch/arm/configs/imx_v7_defconfig | linux-imx/imx-nxp-bsp/defconfig |
+# | arch/arm64/configs/imx_v8_defconfig | linux-imx/mx8-nxp-bsp/defconfig |
SRCBRANCH = "lf-5.15.y"
-LOCALVERSION = "-5.15.5_1.0.0"
-SRCREV = "c1084c2773fc1005ed140db625399d5334d94a28"
+LOCALVERSION = "-5.15.71-2.2.0"
+SRCREV = "3313732e9984cb8a6b10a9085c7e18d58e770d56"
# 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.15.5"
+LINUX_VERSION = "5.15.71"
DEFAULT_PREFERENCE = "1"
diff --git a/recipes-kernel/linux/linux-mfgtool.inc b/recipes-kernel/linux/linux-mfgtool.inc
index 7ff370e4..93a27d8c 100644
--- a/recipes-kernel/linux/linux-mfgtool.inc
+++ b/recipes-kernel/linux/linux-mfgtool.inc
@@ -4,4 +4,4 @@
PROVIDES = "linux-mfgtool"
-KERNEL_PACKAGE_NAME = "mfgtool"
+KERNEL_PACKAGE_NAME = "linux-mfgtool"
diff --git a/recipes-kernel/linux/linux-qoriq_5.10.bb b/recipes-kernel/linux/linux-qoriq_5.10.bb
index b5315c71..c62de58e 100644
--- a/recipes-kernel/linux/linux-qoriq_5.10.bb
+++ b/recipes-kernel/linux/linux-qoriq_5.10.bb
@@ -2,7 +2,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
LINUX_VERSION = "5.10.52"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/linux;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/linux;protocol=https;nobranch=1"
SRCREV = "a11753a89ec610768301d4070e10b8bd60fde8cd"
require recipes-kernel/linux/linux-qoriq.inc
diff --git a/recipes-kernel/skmm-host/skmm-host_git.bb b/recipes-kernel/skmm-host/skmm-host_git.bb
index bbbfc588..9e75f5ef 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-yocto-sdk/skmm-host;protocol=https;nobranch=1"
SRCREV = "d5912ebdb8d3b29b1e2df52710e8821d1ce3eb80"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/alsa/imx-alsa-plugins_git.bb b/recipes-multimedia/alsa/imx-alsa-plugins_git.bb
index eb375905..38d00b8e 100644
--- a/recipes-multimedia/alsa/imx-alsa-plugins_git.bb
+++ b/recipes-multimedia/alsa/imx-alsa-plugins_git.bb
@@ -1,5 +1,5 @@
-# Copyright (C) 2013-2016 Freescale Semiconductor
-# Copyright (C) 2017-2019 NXP
+# Copyright 2013-2016 Freescale Semiconductor
+# Copyright 2017-2022 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "Freescale alsa-lib plugins"
@@ -17,10 +17,11 @@ LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f"
inherit autotools pkgconfig use-imx-headers
-SRCBRANCH = "MM_04.05.01_1909_L4.19.35"
PV = "1.0.26+${SRCPV}"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-alsa-plugins.git;protocol=https;branch=${SRCBRANCH}"
-SRCREV = "cde60d68ab2acee913dbfacb8aabb53d87dd3e38"
+
+SRC_URI = "git://github.com/nxp-imx/imx-alsa-plugins.git;protocol=https;branch=${SRCBRANCH}"
+SRCBRANCH = "MM_04.07.01_2208_L5.15.y"
+SRCREV = "a9643b8820dd89b7a8c99941a90e9498f1b68c14"
S = "${WORKDIR}/git"
@@ -28,6 +29,11 @@ INCLUDE_DIR = "-I${STAGING_INCDIR_IMX}"
EXTRA_OECONF = "CFLAGS="${INCLUDE_DIR}""
+PACKAGECONFIG ??= "${PACKAGECONFIG_SWPDM}"
+PACKAGECONFIG_SWPDM = ""
+PACKAGECONFIG_SWPDM:mx8-nxp-bsp = "swpdm"
+PACKAGECONFIG[swpdm] = "--enable-swpdm,--disable-swpdm,imx-sw-pdm"
+
INSANE_SKIP:${PN} = "dev-so"
FILES:${PN} += "${libdir}/alsa-lib/libasound_*.so"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb
deleted file mode 100644
index 62005cc8..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.18.5.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-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 = "LGPL-2.0-or-later"
-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] = "822e008a910e9dd13aedbdd8dc63fedef4040c0ee2e927bab3112e9de693a548"
-
-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"
-
-COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch
deleted file mode 100644
index ead6897f..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0002-avoid-including-sys-poll.h-directly.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 3b05e91720c10fcf6e0e408595b7217f6fa145c2 Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Wed, 3 Feb 2016 18:05:41 -0800
-Subject: [PATCH 2/4] avoid including <sys/poll.h> directly
-
-musl libc generates warnings if <sys/poll.h> is included directly.
-
-Upstream-Status: Pending
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
----
- sys/dvb/gstdvbsrc.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sys/dvb/gstdvbsrc.c b/sys/dvb/gstdvbsrc.c
-index ca6b92a..b2772db 100644
---- a/sys/dvb/gstdvbsrc.c
-+++ b/sys/dvb/gstdvbsrc.c
-@@ -97,7 +97,7 @@
- #include <gst/gst.h>
- #include <gst/glib-compat-private.h>
- #include <sys/ioctl.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <fcntl.h>
- #include <errno.h>
- #include <stdio.h>
---
-2.28.0
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch
deleted file mode 100644
index 88fbc40d..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 5ed27de9f662fe063b8b3d5d4335aa64cd4718c9 Mon Sep 17 00:00:00 2001
-From: Andre McCurdy <armccurdy@gmail.com>
-Date: Tue, 9 Feb 2016 14:00:00 -0800
-Subject: [PATCH 3/4] ensure valid sentinals for gst_structure_get() etc
-
-For GStreamer functions declared with G_GNUC_NULL_TERMINATED,
-ie __attribute__((__sentinel__)), gcc will generate a warning if the
-last parameter passed to the function is not NULL (where a valid NULL
-in this context is defined as zero with any pointer type).
-
-The C callers to such functions within gst-plugins-bad use the C NULL
-definition (ie ((void*)0)), which is a valid sentinel.
-
-However the C++ NULL definition (ie 0L), is not a valid sentinel
-without an explicit cast to a pointer type.
-
-Upstream-Status: Pending
-
-Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
----
- sys/decklink/gstdecklink.cpp | 10 +++++-----
- sys/decklink/gstdecklinkaudiosrc.cpp | 2 +-
- sys/decklink/gstdecklinkvideosink.cpp | 2 +-
- 3 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp
-index 4dac7e1..43762ce 100644
---- a/sys/decklink/gstdecklink.cpp
-+++ b/sys/decklink/gstdecklink.cpp
-@@ -674,7 +674,7 @@ gst_decklink_mode_get_generic_structure (GstDecklinkModeEnum e)
- "pixel-aspect-ratio", GST_TYPE_FRACTION, mode->par_n, mode->par_d,
- "interlace-mode", G_TYPE_STRING,
- mode->interlaced ? "interleaved" : "progressive",
-- "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, NULL);
-+ "framerate", GST_TYPE_FRACTION, mode->fps_n, mode->fps_d, (void*)NULL);
-
- return s;
- }
-@@ -699,16 +699,16 @@ gst_decklink_mode_get_structure (GstDecklinkModeEnum e, BMDPixelFormat f,
- case bmdFormat8BitYUV: /* '2vuy' */
- gst_structure_set (s, "format", G_TYPE_STRING, "UYVY",
- "colorimetry", G_TYPE_STRING, mode->colorimetry,
-- "chroma-site", G_TYPE_STRING, "mpeg2", NULL);
-+ "chroma-site", G_TYPE_STRING, "mpeg2", (void*)NULL);
- break;
- case bmdFormat10BitYUV: /* 'v210' */
-- gst_structure_set (s, "format", G_TYPE_STRING, "v210", NULL);
-+ gst_structure_set (s, "format", G_TYPE_STRING, "v210", (void*)NULL);
- break;
- case bmdFormat8BitARGB: /* 'ARGB' */
-- gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", NULL);
-+ gst_structure_set (s, "format", G_TYPE_STRING, "ARGB", (void*)NULL);
- break;
- case bmdFormat8BitBGRA: /* 'BGRA' */
-- gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", NULL);
-+ gst_structure_set (s, "format", G_TYPE_STRING, "BGRA", (void*)NULL);
- break;
- case bmdFormat10BitRGB: /* 'r210' Big-endian RGB 10-bit per component with SMPTE video levels (64-960). Packed as 2:10:10:10 */
- case bmdFormat12BitRGB: /* 'R12B' Big-endian RGB 12-bit per component with full range (0-4095). Packed as 12-bit per component */
-diff --git a/sys/decklink/gstdecklinkaudiosrc.cpp b/sys/decklink/gstdecklinkaudiosrc.cpp
-index 2fef934..c47229a 100644
---- a/sys/decklink/gstdecklinkaudiosrc.cpp
-+++ b/sys/decklink/gstdecklinkaudiosrc.cpp
-@@ -379,7 +379,7 @@ gst_decklink_audio_src_start (GstDecklinkAudioSrc * self)
- g_mutex_unlock (&self->input->lock);
-
- if (videosrc) {
-- g_object_get (videosrc, "connection", &vconn, NULL);
-+ g_object_get (videosrc, "connection", &vconn, (void *) NULL);
- gst_object_unref (videosrc);
-
- switch (vconn) {
-diff --git a/sys/decklink/gstdecklinkvideosink.cpp b/sys/decklink/gstdecklinkvideosink.cpp
-index e3a6775..f1a5aae 100644
---- a/sys/decklink/gstdecklinkvideosink.cpp
-+++ b/sys/decklink/gstdecklinkvideosink.cpp
-@@ -286,7 +286,7 @@ reset_framerate (GstCapsFeatures * features, GstStructure * structure,
- gpointer user_data)
- {
- gst_structure_set (structure, "framerate", GST_TYPE_FRACTION_RANGE, 0, 1,
-- G_MAXINT, 1, NULL);
-+ G_MAXINT, 1, (void *) NULL);
-
- return TRUE;
- }
---
-2.28.0
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
index b8167090..029b80e1 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
@@ -1,7 +1,7 @@
-From f19ff66640f2f472c4e9d9055253032d34e125c6 Mon Sep 17 00:00:00 2001
+From 3bc5d48257032b6bbee532aad15062fbbcc43bfe Mon Sep 17 00:00:00 2001
From: Andrey Zhizhikin <andrey.z@gmail.com>
Date: Mon, 27 Jan 2020 10:22:35 +0000
-Subject: [PATCH 4/4] opencv: resolve missing opencv data dir in yocto build
+Subject: [PATCH] opencv: resolve missing opencv data dir in yocto build
When Yocto build is performed, opencv searches for data dir using simple
'test' command, this fails because pkg-config provides an absolute
@@ -11,39 +11,23 @@ in order for the 'test' utility to pick up the absolute path.
Upstream-Status: Inappropriate [OE-specific]
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+
---
- ext/opencv/meson.build | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
+ ext/opencv/meson.build | 3 +++
+ 1 file changed, 3 insertions(+)
diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build
-index 0b0b3fc..0ed3344 100644
+index 1d86b90..b5c8b95 100644
--- a/ext/opencv/meson.build
+++ b/ext/opencv/meson.build
-@@ -78,20 +78,21 @@ else
- endif
-
- if opencv_found
-+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
- opencv_prefix = opencv_dep.get_pkgconfig_variable('prefix')
+@@ -87,6 +87,9 @@ if opencv_found
+ opencv_prefix = opencv_dep.get_variable('prefix')
gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"']
++ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
++ opencv_prefix = pkgconf_sysroot + opencv_prefix
++
# Check the data dir used by opencv for its xml data files
# Use prefix from pkg-config to be compatible with cross-compilation
-- r = run_command('test', '-d', opencv_prefix + '/share/opencv')
-+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/opencv')
- if r.returncode() == 0
- gstopencv_cargs += '-DOPENCV_PATH_NAME="opencv"'
- else
-- r = run_command('test', '-d', opencv_prefix + '/share/OpenCV')
-+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/OpenCV')
- if r.returncode() == 0
- gstopencv_cargs += '-DOPENCV_PATH_NAME="OpenCV"'
- else
-- r = run_command('test', '-d', opencv_prefix + '/share/opencv4')
-+ r = run_command('test', '-d', pkgconf_sysroot + opencv_prefix + '/share/opencv4')
- if r.returncode() == 0
- gstopencv_cargs += '-DOPENCV_PATH_NAME="opencv4"'
- else
---
-2.28.0
-
+ r = run_command('test', '-d', opencv_prefix + '/share/opencv', check: false)
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch
deleted file mode 100644
index cb3bb7d3..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0005-msdk-fix-includedir-path.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 1f00d5026118ebd48e4ccf83d32d67155c4e7f60 Mon Sep 17 00:00:00 2001
-From: Naveen Saini <naveen.kumar.saini@intel.com>
-Date: Wed, 30 Dec 2020 16:37:47 +0800
-Subject: [PATCH] msdk: fix includedir path
-
-In cross compilation, need to prepend PKG_CONFIG_SYSROOT_DIR to the dir path.
-
-Upstream-Status: Inappropriate [OE-specific]
-
-Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
----
- sys/msdk/meson.build | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/sys/msdk/meson.build b/sys/msdk/meson.build
-index 6346c9451..068f38548 100644
---- a/sys/msdk/meson.build
-+++ b/sys/msdk/meson.build
-@@ -40,7 +40,9 @@ endif
-
- mfx_dep = dependency('libmfx', required: false)
- if mfx_dep.found()
-+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
- mfx_incdir = mfx_dep.get_pkgconfig_variable('includedir')
-+ mfx_incdir = pkgconf_sysroot + mfx_incdir
- mfx_inc = []
- else
- # Old versions of MediaSDK don't provide a pkg-config file
---
-2.17.1
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.3.imx.bb
index 44b95451..2dfe80b5 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.3.imx.bb
@@ -3,9 +3,10 @@
# recipe. The second section customizes the recipe for i.MX.
########### OE-core copy ##################
-# Upstream hash: bb6ddc3691ab04162ec5fd69a2d5e7876713fd15
+# Upstream hash: a21649109374fde44cf77de845cfb3cb6cbfb138
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
+require recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
DESCRIPTION = "'Bad' GStreamer plugins and helper libraries "
HOMEPAGE = "https://gstreamer.freedesktop.org/"
@@ -18,11 +19,11 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad
file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
file://0005-msdk-fix-includedir-path.patch \
"
-SRC_URI[sha256sum] = "74e806bc5595b18c70e9ca93571e27e79dfb808e5d2e7967afa952b52e99c85f"
+SRC_URI[sha256sum] = "09d3c2cf5911f0bc7da6bf557a55251779243d3de216b6a26cc90c445b423848"
S = "${WORKDIR}/gst-plugins-bad-${PV}"
-LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later & LGPL-2.1-or-later"
+LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
DEPENDS += "gstreamer1.0-plugins-base"
@@ -32,11 +33,12 @@ inherit gobject-introspection
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 vulkan x11', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \
- bz2 closedcaption curl dash dtls hls openssl rsvg sbc smoothstreaming \
+ bz2 closedcaption curl dash dtls hls openssl sbc smoothstreaming \
sndfile ttml uvch264 webp \
+ ${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'rsvg', d)} \
"
PACKAGECONFIG[aom] = "-Daom=enabled,-Daom=disabled,aom"
@@ -63,7 +65,6 @@ PACKAGECONFIG[gcrypt] = "-Dhls-crypto=libgcrypt,,libgcrypt"
PACKAGECONFIG[gl] = "-Dgl=enabled,-Dgl=disabled,"
PACKAGECONFIG[kms] = "-Dkms=enabled,-Dkms=disabled,libdrm"
PACKAGECONFIG[libde265] = "-Dlibde265=enabled,-Dlibde265=disabled,libde265"
-PACKAGECONFIG[libmms] = "-Dlibmms=enabled,-Dlibmms=disabled,libmms"
PACKAGECONFIG[libssh2] = "-Dcurl-ssh2=enabled,-Dcurl-ssh2=disabled,libssh2"
PACKAGECONFIG[lcms2] = "-Dcolormanagement=enabled,-Dcolormanagement=disabled,lcms"
PACKAGECONFIG[modplug] = "-Dmodplug=enabled,-Dmodplug=disabled,libmodplug"
@@ -99,10 +100,15 @@ PACKAGECONFIG[webp] = "-Dwebp=enabled,-Dwebp=disabled,libwebp"
PACKAGECONFIG[webrtc] = "-Dwebrtc=enabled,-Dwebrtc=disabled,libnice"
PACKAGECONFIG[webrtcdsp] = "-Dwebrtcdsp=enabled,-Dwebrtcdsp=disabled,webrtc-audio-processing"
PACKAGECONFIG[zbar] = "-Dzbar=enabled,-Dzbar=disabled,zbar"
+PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libxcb libxkbcommon"
PACKAGECONFIG[x265] = "-Dx265=enabled,-Dx265=disabled,x265"
+GSTREAMER_GPL = "${@bb.utils.filter('PACKAGECONFIG', 'faad resindvd x265', d)}"
+
EXTRA_OEMESON += " \
-Ddoc=disabled \
+ -Daes=enabled \
+ -Dcodecalpha=enabled \
-Ddecklink=enabled \
-Ddvb=enabled \
-Dfbdev=enabled \
@@ -111,6 +117,7 @@ EXTRA_OEMESON += " \
-Dtranscode=enabled \
-Dandroidmedia=disabled \
-Dapplemedia=disabled \
+ -Dasio=disabled \
-Davtp=disabled \
-Dbs2b=disabled \
-Dchromaprint=disabled \
@@ -121,10 +128,12 @@ EXTRA_OEMESON += " \
-Dfdkaac=disabled \
-Dflite=disabled \
-Dgme=disabled \
+ -Dgs=disabled \
-Dgsm=disabled \
-Diqa=disabled \
-Dkate=disabled \
-Dladspa=disabled \
+ -Dldac=disabled \
-Dlv2=disabled \
-Dmagicleap=disabled \
-Dmediafoundation=disabled \
@@ -133,10 +142,12 @@ EXTRA_OEMESON += " \
-Dmplex=disabled \
-Dmusepack=disabled \
-Dnvcodec=disabled \
- -Dofa=disabled \
-Dopenexr=disabled \
-Dopenni2=disabled \
+ -Dopenaptx=disabled \
-Dopensles=disabled \
+ -Donnx=disabled \
+ -Dqroverlay=disabled \
-Dsoundtouch=disabled \
-Dspandsp=disabled \
-Dsvthevcenc=disabled \
@@ -149,7 +160,6 @@ EXTRA_OEMESON += " \
-Dwpe=disabled \
-Dzxing=disabled \
"
-
export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
ARM_INSTRUCTION_SET:armv4 = "arm"
@@ -168,34 +178,39 @@ DEFAULT_PREFERENCE = "-1"
DEPENDS:append:imxgpu2d = " virtual/libg2d"
-SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz"
-GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https"
-SRCBRANCH = "MM_04.06.04_2112_L5.15.y"
+SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
+ file://0002-avoid-including-sys-poll.h-directly.patch \
+ file://0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch \
+ file://0005-msdk-fix-includedir-path.patch \
+ "
SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} "
-SRCREV = "1dd01156ea45fc7a61e9edc4186353cd63a03800"
+GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https"
+SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
+SRCREV = "cfb43ae30f9038a004ea1b916c74bc66f33e1171"
S = "${WORKDIR}/git"
inherit use-imx-headers
PACKAGE_ARCH:imxpxp = "${MACHINE_SOCARCH}"
-PACKAGE_ARCH:mx8 = "${MACHINE_SOCARCH}"
+PACKAGE_ARCH:mx8-nxp-bsp = "${MACHINE_SOCARCH}"
PACKAGECONFIG_REMOVE ?= " \
dtls vulkan \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', 'gl', d)} \
"
PACKAGECONFIG:remove = "${PACKAGECONFIG_REMOVE}"
-PACKAGECONFIG:append:mx8 = " kms tinycompress"
+PACKAGECONFIG:append:mx8-nxp-bsp = " kms tinycompress"
PACKAGECONFIG[tinycompress] = "-Dtinycompress=enabled,-Dtinycompress=disabled,tinycompress"
-# Disable introspection to fix [GstPlayer-1.0.gir] Error
EXTRA_OEMESON += " \
- -Dintrospection=disabled \
-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \
"
COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
+# it uses nested functions sadly, in ext/wayland/gstwaylandsink.c for GST_ELEMENT_REGISTER_DEFINE
+#
+TOOLCHAIN = "gcc"
########### End of i.MX overrides #########
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch
new file mode 100644
index 00000000..19057147
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch
@@ -0,0 +1,48 @@
+From 071fd005ad6572767d7441c97549b1c904719944 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 12 Sep 2022 20:29:25 -0700
+Subject: [PATCH] gstallocatorphymem.c: Typecast result of gst_phymem_get_phy
+ to guintptr
+
+This fixes a warning/error found with clang-15
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ gst-libs/gst/allocators/gstallocatorphymem.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/gst-libs/gst/allocators/gstallocatorphymem.c
++++ b/gst-libs/gst/allocators/gstallocatorphymem.c
+@@ -225,7 +225,7 @@ static guintptr
+ gst_allocator_phymem_get_phys_addr (GstPhysMemoryAllocator * allocator,
+ GstMemory * mem)
+ {
+- return gst_phymem_get_phy (mem);
++ return (guintptr)gst_phymem_get_phy (mem);
+ }
+
+ static void
+--- a/gst-libs/gst/gl/gstglphymemory.c
++++ b/gst-libs/gst/gl/gstglphymemory.c
+@@ -337,7 +337,7 @@ gst_gl_physical_memory_setup_buffer (Gst
+ GST_VIDEO_INFO_HEIGHT (info),
+ viv_fmt,
+ memblk->vaddr,
+- memblk->paddr,
++ (guint)memblk->paddr,
+ FALSE
+ };
+
+--- a/gst/subparse/gstssaparse.c
++++ b/gst/subparse/gstssaparse.c
+@@ -24,7 +24,9 @@
+ #include "config.h"
+ #endif
+
++#include <ctype.h> /* isspace() */
+ #include <stdlib.h> /* atoi() */
++#include <stdio.h> /* sscanf() */
+ #include <string.h>
+
+ #include "gstssaparse.h"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-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
deleted file mode 100644
index b8fc8827..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0003-viv-fb-Make-sure-config.h-is-included.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-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
-
-This prevents build errors due to missing GST_API_* symbols
-
-Upstream-Status: Pending
-
-Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
-
----
- gst-libs/gst/gl/gl-prelude.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/gst-libs/gst/gl/gl-prelude.h b/gst-libs/gst/gl/gl-prelude.h
-index 05e1f6229..96ce5e685 100644
---- a/gst-libs/gst/gl/gl-prelude.h
-+++ b/gst-libs/gst/gl/gl-prelude.h
-@@ -22,6 +22,10 @@
- #ifndef __GST_GL_PRELUDE_H__
- #define __GST_GL_PRELUDE_H__
-
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include <gst/gst.h>
-
- #ifdef BUILDING_GST_GL
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.3.imx.bb
index 03bfa129..d365699f 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.18.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.3.imx.bb
@@ -3,24 +3,22 @@
# recipe. The second section customizes the recipe for i.MX.
########### OE-core copy ##################
-# Upstream hash: bb6ddc3691ab04162ec5fd69a2d5e7876713fd15
+# Upstream hash: a21649109374fde44cf77de845cfb3cb6cbfb138
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 = "GPL-2.0-or-later & LGPL-2.0-or-later"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d"
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770"
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \
file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \
file://0003-viv-fb-Make-sure-config.h-is-included.patch \
file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \
- file://0004-glimagesink-Downrank-to-marginal.patch \
- file://4ef5c91697a141fea7317aff7f0f28e5a861db99.patch \
"
-SRC_URI[sha256sum] = "29e53229a84d01d722f6f6db13087231cdf6113dd85c25746b9b58c3d68e8323"
+SRC_URI[sha256sum] = "96d8a6413ba9394fbec1217aeef63741a729d476a505a797c1d5337d8fa7c204"
S = "${WORKDIR}/gst-plugins-base-${PV}"
@@ -51,11 +49,13 @@ X11DISABLEOPTS = "-Dx11=disabled -Dxvideo=disabled -Dxshm=disabled"
PACKAGECONFIG[alsa] = "-Dalsa=enabled,-Dalsa=disabled,alsa-lib"
PACKAGECONFIG[cdparanoia] = "-Dcdparanoia=enabled,-Dcdparanoia=disabled,cdparanoia"
+PACKAGECONFIG[graphene] = "-Dgl-graphene=enabled,-Dgl-graphene=disabled,graphene"
PACKAGECONFIG[jpeg] = "-Dgl-jpeg=enabled,-Dgl-jpeg=disabled,jpeg"
PACKAGECONFIG[ogg] = "-Dogg=enabled,-Dogg=disabled,libogg"
PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus"
PACKAGECONFIG[pango] = "-Dpango=enabled,-Dpango=disabled,pango"
PACKAGECONFIG[png] = "-Dgl-png=enabled,-Dgl-png=disabled,libpng"
+PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native"
PACKAGECONFIG[theora] = "-Dtheora=enabled,-Dtheora=disabled,libtheora"
PACKAGECONFIG[tremor] = "-Dtremor=enabled,-Dtremor=disabled,tremor"
PACKAGECONFIG[visual] = "-Dlibvisual=enabled,-Dlibvisual=disabled,libvisual"
@@ -79,7 +79,6 @@ OPENGL_WINSYS = "${@bb.utils.filter('PACKAGECONFIG', 'x11 gbm wayland dispmanx e
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)} \
@@ -110,14 +109,13 @@ DEFAULT_PREFERENCE = "-1"
SRC_URI:remove = " \
https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-${PV}.tar.xz \
file://0001-ENGR00312515-get-caps-from-src-pad-when-query-caps.patch \
- file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \
- file://0004-glimagesink-Downrank-to-marginal.patch \
- file://4ef5c91697a141fea7317aff7f0f28e5a861db99.patch \
-"
-GST1.0-PLUGINS-BASE_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-base.git;protocol=https"
-SRCBRANCH = "MM_04.06.04_2112_L5.15.y"
+ file://0003-viv-fb-Make-sure-config.h-is-included.patch \
+ file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch"
SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} "
-SRCREV = "d8f5d6e1d477a299ccb7f4ba7aacd36ff5e39f8b"
+SRC_URI += "file://0001-gstallocatorphymem.c-Typecast-result-of-gst_phymem_g.patch"
+GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https"
+SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
+SRCREV = "cbf542ce3e0bad1009d5ecf72707e870c375c3f0"
S = "${WORKDIR}/git"
@@ -139,6 +137,10 @@ PACKAGECONFIG[viv-fb] = ",,virtual/libgles2"
EXTRA_OEMESON += "-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}""
+# links with imx-gpu libs which are pre-built for glibc
+# gcompat will address it during runtime
+LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined"
+
COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
########### End of i.MX overrides #########
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb
index de61be01..8cbbd2d1 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.18.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.3.imx.bb
@@ -3,7 +3,7 @@
# recipe. The second section customizes the recipe for i.MX.
########### OE-core copy ##################
-# Upstream hash: bb6ddc3691ab04162ec5fd69a2d5e7876713fd15
+# Upstream hash: 66ba273c10b7d738f18620b5a2883d735fff3162
require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
@@ -13,15 +13,13 @@ BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \
- file://0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch \
- file://0003-Remove-volatile-from-static-vars-to-fix-build-with-g.patch \
"
-SRC_URI[sha256sum] = "b6e50e3a9bbcd56ee6ec71c33aa8332cc9c926b0c1fae995aac8b3040ebe39b0"
+SRC_URI[sha256sum] = "f8f3c206bf5cdabc00953920b47b3575af0ef15e9f871c0b6966f6d0aa5868b7"
S = "${WORKDIR}/gst-plugins-good-${PV}"
-LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
+LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe"
@@ -58,7 +56,12 @@ PACKAGECONFIG[libv4l2] = "-Dv4l2-libv4l2=enabled,-Dv4l2-libv4l2=disabled,v4l-
PACKAGECONFIG[mpg123] = "-Dmpg123=enabled,-Dmpg123=disabled,mpg123"
PACKAGECONFIG[pulseaudio] = "-Dpulse=enabled,-Dpulse=disabled,pulseaudio"
PACKAGECONFIG[qt5] = "-Dqt5=enabled,-Dqt5=disabled,qtbase qtdeclarative qtbase-native ${QT5WAYLANDDEPENDS}"
-PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,libsoup-2.4"
+# Starting with version 1.20, the GStreamer soup plugin loads libsoup with dlopen()
+# instead of linking to it. And instead of using the default libsoup C headers, it
+# uses its own stub header. Consequently, objdump will not show the libsoup .so as
+# a dependency, and libsoup won't be added to an image. Fix this by setting libsoup
+# as RDEPEND instead of DEPEND.
+PACKAGECONFIG[soup] = "-Dsoup=enabled,-Dsoup=disabled,,libsoup-2.4"
PACKAGECONFIG[speex] = "-Dspeex=enabled,-Dspeex=disabled,speex"
PACKAGECONFIG[rpi] = "-Drpicamsrc=enabled,-Drpicamsrc=disabled,userland"
PACKAGECONFIG[taglib] = "-Dtaglib=enabled,-Dtaglib=disabled,taglib"
@@ -91,18 +94,14 @@ FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs"
DEFAULT_PREFERENCE = "-1"
# fb implementation of v4l2 uses libdrm
-DEPENDS_V4L2 = "${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'libdrm', d)}"
DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}"
+DEPENDS_V4L2 = "${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'libdrm', d)}"
-SRC_URI:remove = " \
- https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
- file://0002-rtpjitterbuffer-Fix-parsing-of-the-mediaclk-direct-f.patch \
- file://0003-Remove-volatile-from-static-vars-to-fix-build-with-g.patch \
-"
-GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-good.git;protocol=https"
-SRCBRANCH = "MM_04.06.04_2112_L5.15.y"
+SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz"
SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} "
-SRCREV = "2438ae179ed4245fbeaa2ce36b1918ed7232d442"
+GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https"
+SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
+SRCREV = "643478677a4acb225dbb48e64720b06a7c6da668"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.1.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
index fb18f1bb..70ae8937 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.1.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
@@ -15,7 +15,7 @@ RDEPENDS:gstreamer1.0-plugins-imx-imxvpu = "gstreamer1.0-plugins-bad-videoparser
PV .= "+git${SRCPV}"
SRCBRANCH ?= "master"
-SRCREV = "b1e5cca1a6df9d2c0dc505ae222775798108d340"
+SRCREV = "cb3cd45676e808b222ac573e8a118f44fd70c288"
SRC_URI = "git://github.com/Freescale/gstreamer-imx.git;branch=${SRCBRANCH};protocol=https"
S = "${WORKDIR}/git"
@@ -31,18 +31,24 @@ LIBG2D_DEPENDENCIES = "virtual/libg2d"
LIBG2D_DPU_OPTION:imxdpu = "-Dg2d-based-on-dpu=true"
LIBG2D_DEPENDENCIES:imxdpu = "virtual/libg2d libdrm"
-EXTRA_OEMESON += "-Dimx-headers-path=${STAGING_INCDIR_IMX}"
+# v4l2-amphion and v4l2-isi are meant for the Amphion Malone
+# VPU decoder and the ISI drivers in older kernels, which had
+# lots of bugs that required nontrivial workarounds. In the
+# kernels in this release, newer drivers are present, which
+# obviate the need for these special elements.
+EXTRA_OEMESON += "-Dimx-headers-path=${STAGING_INCDIR_IMX} -Dv4l2-amphion=disabled -Dv4l2-isi=false"
PACKAGECONFIG ?= "uniaudiodec"
PACKAGECONFIG:append:imxgpu2d = " g2d"
PACKAGECONFIG:append:imxvpu = " vpu"
PACKAGECONFIG:append:imxipu = " ipu"
PACKAGECONFIG:append:imxpxp = " pxp"
-# The custom imxv4l2 elements are only available on the i.MX6.
+# The custom imxv4l2 source and sink elements are only
+# available on the i.MX6.
# The 2D blitter sinks require an MXC framebuffer, which
# is not available anymore on the i.MX8 (since these SoCs
# now use KMS instead of the old Linux framebuffer).
-PACKAGECONFIG:append:mx6-nxp-bsp = " imx2dvideosink v4l2"
+PACKAGECONFIG:append:mx6-nxp-bsp = " imx2dvideosink v4l2-mxc-source-sink"
PACKAGECONFIG:append:mx7-nxp-bsp = " imx2dvideosink"
PACKAGECONFIG[g2d] = "-Dg2d=enabled ${LIBG2D_DPU_OPTION},-Dg2d=disabled,${LIBG2D_DEPENDENCIES}"
@@ -50,7 +56,7 @@ PACKAGECONFIG[pxp] = "-Dpxp=enabled,-Dpxp=disabled,"
PACKAGECONFIG[ipu] = "-Dipu=enabled,-Dipu=disabled,"
PACKAGECONFIG[vpu] = "-Dvpu=enabled,-Dvpu=disabled,libimxvpuapi2"
PACKAGECONFIG[imx2dvideosink] = "-Dimx2d-videosink=true,-Dimx2d-videosink=false,"
-PACKAGECONFIG[v4l2] = "-Dv4l2=true,-Dv4l2=false,"
+PACKAGECONFIG[v4l2-mxc-source-sink] = "-Dv4l2-mxc-source-sink=true,-Dv4l2-mxc-source-sink=false,"
PACKAGECONFIG[uniaudiodec] = "-Duniaudiodec=enabled,-Duniaudiodec=disabled,imx-codec"
PACKAGECONFIG[mp3encoder] = "-Dmp3encoder=enabled,-Dmp3encoder=disabled,imx-codec"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb
deleted file mode 100644
index 98e94786..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.18.5.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-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"
-
-LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & LGPL-2.0-or-later"
-LICENSE_FLAGS = "commercial"
-
-SRC_URI = " \
- https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
- "
-SRC_URI[sha256sum] = "df32803e98f8a9979373fa2ca7e05e62f977b1097576d3a80619d9f5c69f66d9"
-
-S = "${WORKDIR}/gst-plugins-ugly-${PV}"
-
-DEPENDS += "gstreamer1.0-plugins-base"
-
-GST_PLUGIN_SET_HAS_EXAMPLES = "0"
-
-PACKAGECONFIG ??= " \
- ${GSTREAMER_ORC} \
- a52dec mpeg2dec \
-"
-
-PACKAGECONFIG[a52dec] = "-Da52dec=enabled,-Da52dec=disabled,liba52"
-PACKAGECONFIG[amrnb] = "-Damrnb=enabled,-Damrnb=disabled,opencore-amr"
-PACKAGECONFIG[amrwb] = "-Damrwbdec=enabled,-Damrwbdec=disabled,opencore-amr"
-PACKAGECONFIG[cdio] = "-Dcdio=enabled,-Dcdio=disabled,libcdio"
-PACKAGECONFIG[dvdread] = "-Ddvdread=enabled,-Ddvdread=disabled,libdvdread"
-PACKAGECONFIG[mpeg2dec] = "-Dmpeg2dec=enabled,-Dmpeg2dec=disabled,mpeg2dec"
-PACKAGECONFIG[x264] = "-Dx264=enabled,-Dx264=disabled,x264"
-
-EXTRA_OEMESON += " \
- -Ddoc=disabled \
- -Dsidplay=disabled \
-"
-
-FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
-FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
-
-COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb
deleted file mode 100644
index d4c4e576..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.18.5.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "A library on top of GStreamer for building an RTSP server"
-HOMEPAGE = "http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/"
-SECTION = "multimedia"
-LICENSE = "LGPL-2.0-only"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d"
-
-DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base"
-
-PNREAL = "gst-rtsp-server"
-
-SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
-
-SRC_URI[sha256sum] = "04d63bf48816c6f41c73f6de0f912a7cef0aab39c44162a7bcece1923dfc9d1f"
-
-S = "${WORKDIR}/${PNREAL}-${PV}"
-
-inherit meson pkgconfig upstream-version-is-even gobject-introspection
-
-EXTRA_OEMESON += " \
- -Ddoc=disabled \
- -Dexamples=disabled \
- -Dtests=disabled \
-"
-
-GIR_MESON_ENABLE_FLAG = "enabled"
-GIR_MESON_DISABLE_FLAG = "disabled"
-
-# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well
-require recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
-
-CVE_PRODUCT += "gst-rtsp-server"
-
-COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
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
deleted file mode 100644
index 23ebd5c6..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0001-gst-gstpluginloader.c-when-env-var-is-set-do-not-fal.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-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.
-
-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 | 15 +++++++--------
- 1 file changed, 7 insertions(+), 8 deletions(-)
-
-diff --git a/gst/gstpluginloader.c b/gst/gstpluginloader.c
-index d1e404d98..c626bf263 100644
---- a/gst/gstpluginloader.c
-+++ b/gst/gstpluginloader.c
-@@ -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);
-- }
--
-- 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.29.2
-
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch
index 6f571a12..312c04fb 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-respect-the-idententaion-used-in-meson.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch
@@ -1,4 +1,4 @@
-From 122e5ac3dd16a461b6ae595605490c8f5d1c3a9d Mon Sep 17 00:00:00 2001
+From 1eb77a4ea5a3967c688d8f1192f99c605badc7e2 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
@@ -7,13 +7,13 @@ Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
---
- tests/check/meson.build | 10 +++++-----
+ subprojects/gstreamer/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
+diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build
+index 9c4228b6e4..506606684d 100644
+--- a/subprojects/gstreamer/tests/check/meson.build
++++ b/subprojects/gstreamer/tests/check/meson.build
@@ -146,11 +146,11 @@ foreach t : core_tests
if not skip_test
@@ -32,5 +32,5 @@ index a617cf159..b2636714b 100644
env = environment()
--
-2.31.1
+2.33.1
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
deleted file mode 100644
index 5805e8b6..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0002-Remove-unused-valgrind-detection.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From d7f05d09c55d35bbe4e0f856759519ef183d9a56 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] 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 eea1a219d..d3035d6db 100644
---- a/gst/gstinfo.c
-+++ b/gst/gstinfo.c
-@@ -305,36 +305,6 @@ static gboolean pretty_tags = PRETTY_TAGS_DEFAULT;
- static gint G_GNUC_MAY_ALIAS __default_level = GST_LEVEL_DEFAULT;
- static 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"))
-@@ -2505,12 +2472,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 82a17282b..42ae61790 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',
- ]
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch
index b77fb579..d18c19c3 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-add-support-for-install-the-tests.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch
@@ -1,4 +1,4 @@
-From c9e93c7a3e4d2773abef4f5e1464af24f36700b3 Mon Sep 17 00:00:00 2001
+From 62f5bb7bfc2498219df7280e73480d8ed2378ce5 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
@@ -11,54 +11,44 @@ Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-
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
+ subprojects/gstreamer/meson.build | 4 ++++
+ subprojects/gstreamer/meson_options.txt | 1 +
+ subprojects/gstreamer/tests/check/meson.build | 22 ++++++++++++++++++-
+ .../gstreamer/tests/check/template.test.in | 3 +++
+ 4 files changed, 29 insertions(+), 1 deletion(-)
+ create mode 100644 subprojects/gstreamer/tests/check/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()
+diff --git a/subprojects/gstreamer/meson.build b/subprojects/gstreamer/meson.build
+index d20fe0040f..b595d8f990 100644
+--- a/subprojects/gstreamer/meson.build
++++ b/subprojects/gstreamer/meson.build
+@@ -562,6 +562,10 @@ if bashcomp_dep.found()
endif
endif
++installed_tests_enabled = get_option('installed_tests')
+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
+diff --git a/subprojects/gstreamer/meson_options.txt b/subprojects/gstreamer/meson_options.txt
+index 7363bdb7a1..a34ba37dad 100644
+--- a/subprojects/gstreamer/meson_options.txt
++++ b/subprojects/gstreamer/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')
++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
+diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build
+index 506606684d..00a138a568 100644
+--- a/subprojects/gstreamer/tests/check/meson.build
++++ b/subprojects/gstreamer/tests/check/meson.build
@@ -124,10 +124,16 @@ test_defines = [
'-UG_DISABLE_ASSERT',
'-UG_DISABLE_CAST_CHECKS',
@@ -95,7 +85,7 @@ index b2636714b..a697a7b06 100644
+ test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir))
+ test_conf.set('program', test_name)
+ configure_file(
-+ input: installed_tests_template,
++ input: 'template.test.in',
+ output: test_name + '.test',
+ install_dir: installed_tests_metadir,
+ configuration: test_conf
@@ -105,6 +95,15 @@ index b2636714b..a697a7b06 100644
test(test_name, exe, env: env, timeout : 3 * 60)
endif
endforeach
+diff --git a/subprojects/gstreamer/tests/check/template.test.in b/subprojects/gstreamer/tests/check/template.test.in
+new file mode 100644
+index 0000000000..f701627f87
+--- /dev/null
++++ b/subprojects/gstreamer/tests/check/template.test.in
+@@ -0,0 +1,3 @@
++[Test]
++Type=session
++Exec=@installed_tests_dir@/@program@
--
-2.31.1
+2.33.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
deleted file mode 100644
index e0e64e2c..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-seek-Don-t-use-too-strict-timeout-for-validati.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-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/0006-tests-use-a-dictionaries-for-environment.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch
index 46813cec..10a6dcc6 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0006-tests-use-a-dictionaries-for-environment.patch
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch
@@ -1,4 +1,4 @@
-From e82dedec1803922656e92285fc1bb75b2cdc0aad Mon Sep 17 00:00:00 2001
+From fe830f0f75f3b4b41e3dbef8d4cf6ee4103c9e06 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
@@ -10,29 +10,31 @@ Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
---
- tests/check/meson.build | 19 +++++++++++--------
- 1 file changed, 11 insertions(+), 8 deletions(-)
+ subprojects/gstreamer/tests/check/meson.build | 21 ++++++++++++-------
+ 1 file changed, 13 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
+diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build
+index 00a138a568..48ec2532f8 100644
+--- a/subprojects/gstreamer/tests/check/meson.build
++++ b/subprojects/gstreamer/tests/check/meson.build
+@@ -161,14 +161,19 @@ foreach t : core_tests
install: installed_tests_enabled,
)
- env = environment()
-- env.set('GST_PLUGIN_PATH_1_0', meson.build_root())
+- env.set('GST_PLUGIN_PATH_1_0', meson.project_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
++ # meson environment object can't be passed to configure_file and
++ # installed tests uses configure_file to install the environment.
++ # use a dictionary as this is the simplest solution
++ # to install the environment.
+ env = {
-+ 'GST_PLUGIN_PATH_1_0': meson.build_root(),
++ 'GST_PLUGIN_PATH_1_0': meson.project_build_root(),
+ 'GST_PLUGIN_SYSTEM_PATH_1_0': '',
+ 'GST_STATE_IGNORE_ELEMENTS': '',
+ 'CK_DEFAULT_TIMEOUT': '20',
@@ -44,5 +46,5 @@ index a697a7b06..f64524904 100644
if installed_tests_enabled
test_conf = configuration_data()
--
-2.31.1
+2.33.1
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch
new file mode 100644
index 00000000..efa004f8
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch
@@ -0,0 +1,74 @@
+From 4dcbabebca2ad6f1fdd59ee35a858082e87db7b6 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: add helper script to run the installed_tests
+
+- this is a bash script that will run the installed_tests
+with some of the environment variables used in the meson
+testing framework.
+
+Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789]
+
+Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
+---
+ subprojects/gstreamer/tests/check/meson.build | 17 +++++++++++++++++
+ .../gstreamer/tests/check/template.sh.in | 9 +++++++++
+ .../gstreamer/tests/check/template.test.in | 2 +-
+ 3 files changed, 27 insertions(+), 1 deletion(-)
+ create mode 100755 subprojects/gstreamer/tests/check/template.sh.in
+
+diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build
+index 48ec2532f8..7dc4990d4e 100644
+--- a/subprojects/gstreamer/tests/check/meson.build
++++ b/subprojects/gstreamer/tests/check/meson.build
+@@ -185,6 +185,23 @@ foreach t : core_tests
+ install_dir: installed_tests_metadir,
+ configuration: test_conf
+ )
++
++ # All the tests will be deployed on the target machine and
++ # we use the home folder ~ for the registry which will then expand at runtime.
++ # Using the /tmp/gstreamer-1.0/@0@.registry can be problematic as it mostly
++ # is mounted using tmpfs and if the machine crash from some reason we can lost the registry
++ # that is useful for debug propose of the tests itself.
++ env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)}
++
++ # Set the full path for the test it self.
++ env += {'TEST': '@0@/@1@'.format(join_paths(prefix, installed_tests_execdir), test_name)}
++
++ configure_file(
++ input : 'template.sh.in',
++ output: test_name + '.sh',
++ install_dir: installed_tests_execdir,
++ configuration : env,
++ )
+ endif
+
+ test(test_name, exe, env: env, timeout : 3 * 60)
+diff --git a/subprojects/gstreamer/tests/check/template.sh.in b/subprojects/gstreamer/tests/check/template.sh.in
+new file mode 100755
+index 0000000000..cf7d31b0ea
+--- /dev/null
++++ b/subprojects/gstreamer/tests/check/template.sh.in
+@@ -0,0 +1,9 @@
++#!/bin/sh
++
++set -ax
++
++CK_DEFAULT_TIMEOUT="@CK_DEFAULT_TIMEOUT@"
++GST_PLUGIN_LOADING_WHITELIST="@GST_PLUGIN_LOADING_WHITELIST@"
++GST_REGISTRY=@GST_REGISTRY@
++GST_STATE_IGNORE_ELEMENTS="@GST_STATE_IGNORE_ELEMENTS@"
++exec @TEST@
+diff --git a/subprojects/gstreamer/tests/check/template.test.in b/subprojects/gstreamer/tests/check/template.test.in
+index f701627f87..b74ef6ad73 100644
+--- a/subprojects/gstreamer/tests/check/template.test.in
++++ b/subprojects/gstreamer/tests/check/template.test.in
+@@ -1,3 +1,3 @@
+ [Test]
+ Type=session
+-Exec=@installed_tests_dir@/@program@
++Exec=@installed_tests_dir@/@program@.sh
+--
+2.33.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch
new file mode 100644
index 00000000..f51df6d2
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0005-tests-remove-gstbin-test_watch_for_state_change-test.patch
@@ -0,0 +1,107 @@
+From b935abba3d8fa3ea1ce384c08e650afd8c20b78a Mon Sep 17 00:00:00 2001
+From: Claudius Heine <ch@denx.de>
+Date: Wed, 2 Feb 2022 13:47:02 +0100
+Subject: [PATCH] tests: remove gstbin:test_watch_for_state_change testcase
+
+This testcase seems to be flaky, and upstream marked it as such:
+https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/778
+
+This patch removes the testcase to avoid it interfering with out ptest.
+
+Signed-off-by: Claudius Heine <ch@denx.de>
+
+Upstream-Status: Inappropriate [needs proper upstream fix]
+---
+ tests/check/gst/gstbin.c | 69 -------------------
+ 1 file changed, 69 deletions(-)
+
+diff --git a/tests/check/gst/gstbin.c b/tests/check/gst/gstbin.c
+index e366d5fe20..ac29d81474 100644
+--- a/tests/check/gst/gstbin.c
++++ b/tests/check/gst/gstbin.c
+@@ -691,74 +691,6 @@ GST_START_TEST (test_message_state_changed_children)
+
+ GST_END_TEST;
+
+-GST_START_TEST (test_watch_for_state_change)
+-{
+- GstElement *src, *sink, *bin;
+- GstBus *bus;
+- GstStateChangeReturn ret;
+-
+- bin = gst_element_factory_make ("bin", NULL);
+- fail_unless (bin != NULL, "Could not create bin");
+-
+- bus = g_object_new (gst_bus_get_type (), NULL);
+- gst_object_ref_sink (bus);
+- gst_element_set_bus (GST_ELEMENT_CAST (bin), bus);
+-
+- src = gst_element_factory_make ("fakesrc", NULL);
+- fail_if (src == NULL, "Could not create fakesrc");
+- sink = gst_element_factory_make ("fakesink", NULL);
+- fail_if (sink == NULL, "Could not create fakesink");
+-
+- gst_bin_add (GST_BIN (bin), sink);
+- gst_bin_add (GST_BIN (bin), src);
+-
+- fail_unless (gst_element_link (src, sink), "could not link src and sink");
+-
+- /* change state, spawning two times three messages */
+- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED);
+- fail_unless (ret == GST_STATE_CHANGE_ASYNC);
+- ret =
+- gst_element_get_state (GST_ELEMENT (bin), NULL, NULL,
+- GST_CLOCK_TIME_NONE);
+- fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
+-
+- pop_state_changed (bus, 6);
+- pop_async_done (bus);
+- pop_latency (bus);
+-
+- fail_unless (gst_bus_have_pending (bus) == FALSE,
+- "Unexpected messages on bus");
+-
+- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PLAYING);
+- fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
+-
+- pop_state_changed (bus, 3);
+-
+- /* this one might return either SUCCESS or ASYNC, likely SUCCESS */
+- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_PAUSED);
+- gst_element_get_state (GST_ELEMENT (bin), NULL, NULL, GST_CLOCK_TIME_NONE);
+-
+- pop_state_changed (bus, 3);
+- if (ret == GST_STATE_CHANGE_ASYNC) {
+- pop_async_done (bus);
+- pop_latency (bus);
+- }
+-
+- fail_unless (gst_bus_have_pending (bus) == FALSE,
+- "Unexpected messages on bus");
+-
+- gst_bus_set_flushing (bus, TRUE);
+-
+- ret = gst_element_set_state (GST_ELEMENT (bin), GST_STATE_NULL);
+- fail_unless (ret == GST_STATE_CHANGE_SUCCESS);
+-
+- /* clean up */
+- gst_object_unref (bus);
+- gst_object_unref (bin);
+-}
+-
+-GST_END_TEST;
+-
+ GST_START_TEST (test_state_change_error_message)
+ {
+ GstElement *src, *sink, *bin;
+@@ -1956,7 +1888,6 @@ gst_bin_suite (void)
+ tcase_add_test (tc_chain, test_message_state_changed);
+ tcase_add_test (tc_chain, test_message_state_changed_child);
+ tcase_add_test (tc_chain, test_message_state_changed_children);
+- tcase_add_test (tc_chain, test_watch_for_state_change);
+ tcase_add_test (tc_chain, test_state_change_error_message);
+ tcase_add_test (tc_chain, test_add_linked);
+ tcase_add_test (tc_chain, test_add_self);
+--
+2.33.1
+
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0006-systemclock-Use-futex_time64-syscall-if-available-32.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0006-systemclock-Use-futex_time64-syscall-if-available-32.patch
new file mode 100644
index 00000000..f3e7975c
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0/0006-systemclock-Use-futex_time64-syscall-if-available-32.patch
@@ -0,0 +1,211 @@
+From 9ca6b1196e31a4a483fdddad191221616e2c9c3d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
+Date: Mon, 12 Dec 2022 11:34:51 +0200
+Subject: [PATCH] systemclock: Use `futex_time64` syscall if available (32-bit
+ systems) and use correct `struct timespec` definition
+
+See also https://gitlab.gnome.org/GNOME/glib/-/issues/2634
+
+Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1648
+
+Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3561>
+---
+ gst/gstsystemclock.c | 125 ++++++++++++++++++---
+ meson.build | 11 +-
+ 2 files changed, 121 insertions(+), 15 deletions(-)
+
+diff --git a/gst/gstsystemclock.c b/gst/gstsystemclock.c
+index 6d0b6ec47b..7d8efb171e 100644
+--- a/gst/gstsystemclock.c
++++ b/gst/gstsystemclock.c
+@@ -70,11 +70,15 @@
+ #define GST_SYSTEM_CLOCK_WAIT(clock) g_cond_wait(GST_SYSTEM_CLOCK_GET_COND(clock),GST_SYSTEM_CLOCK_GET_LOCK(clock))
+ #define GST_SYSTEM_CLOCK_BROADCAST(clock) g_cond_broadcast(GST_SYSTEM_CLOCK_GET_COND(clock))
+
+-#if defined(HAVE_FUTEX)
++#if defined(HAVE_FUTEX) || defined(HAVE_FUTEX_TIME64)
+ #include <unistd.h>
+ #include <linux/futex.h>
+ #include <sys/syscall.h>
+
++#if !defined(__NR_futex) && !defined(__NR_futex_time64)
++#error "Neither __NR_futex nor __NR_futex_time64 are defined but were found by meson"
++#endif
++
+ #ifndef FUTEX_WAIT_BITSET_PRIVATE
+ #define FUTEX_WAIT_BITSET_PRIVATE FUTEX_WAIT_BITSET
+ #endif
+@@ -123,14 +127,35 @@ gst_futex_cond_broadcast (guint * cond_val)
+ {
+ g_atomic_int_inc (cond_val);
+
++#if defined(__NR_futex_time64)
++ {
++ int res;
++ res = syscall (__NR_futex_time64, cond_val, (gsize) FUTEX_WAKE_PRIVATE,
++ (gsize) INT_MAX, NULL);
++
++ /* If the syscall does not exist (`ENOSYS`), we retry again below with the
++ * normal `futex` syscall. This can happen if newer kernel headers are
++ * used than the kernel that is actually running.
++ */
++#ifdef __NR_futex
++ if (res >= 0 || errno != ENOSYS) {
++#else
++ {
++#endif
++ return;
++ }
++ }
++#endif
++
++#if defined(__NR_futex)
+ syscall (__NR_futex, cond_val, (gsize) FUTEX_WAKE_PRIVATE, (gsize) INT_MAX,
+ NULL);
++#endif
+ }
+
+ static gboolean
+ gst_futex_cond_wait_until (guint * cond_val, GMutex * mutex, gint64 end_time)
+ {
+- struct timespec end;
+ guint sampled;
+ int res;
+ gboolean success;
+@@ -138,20 +163,92 @@ gst_futex_cond_wait_until (guint * cond_val, GMutex * mutex, gint64 end_time)
+ if (end_time < 0)
+ return FALSE;
+
+- end.tv_sec = end_time / 1000000000;
+- end.tv_nsec = end_time % 1000000000;
+-
+ sampled = *cond_val;
+ g_mutex_unlock (mutex);
+- /* we use FUTEX_WAIT_BITSET_PRIVATE rather than FUTEX_WAIT_PRIVATE to be
+- * able to use absolute time */
+- res =
+- syscall (__NR_futex, cond_val, (gsize) FUTEX_WAIT_BITSET_PRIVATE,
+- (gsize) sampled, &end, NULL, FUTEX_BITSET_MATCH_ANY);
+- success = (res < 0 && errno == ETIMEDOUT) ? FALSE : TRUE;
+- g_mutex_lock (mutex);
+-
+- return success;
++
++ /* `struct timespec` as defined by the libc headers does not necessarily
++ * have any relation to the one used by the kernel for the `futex` syscall.
++ *
++ * Specifically, the libc headers might use 64-bit `time_t` while the kernel
++ * headers use 32-bit `__kernel_old_time_t` on certain systems.
++ *
++ * To get around this problem we
++ * a) check if `futex_time64` is available, which only exists on 32-bit
++ * platforms and always uses 64-bit `time_t`.
++ * b) otherwise (or if that returns `ENOSYS`), we call the normal `futex`
++ * syscall with the `struct timespec_t` used by the kernel, which uses
++ * `__kernel_long_t` for both its fields. We use that instead of
++ * `__kernel_old_time_t` because it is equivalent and available in the
++ * kernel headers for a longer time.
++ *
++ * Also some 32-bit systems do not define `__NR_futex` at all and only
++ * define `__NR_futex_time64`.
++ */
++
++#ifdef __NR_futex_time64
++ {
++ struct
++ {
++ gint64 tv_sec;
++ gint64 tv_nsec;
++ } end;
++
++ end.tv_sec = end_time / 1000000000;
++ end.tv_nsec = end_time % 1000000000;
++
++ /* we use FUTEX_WAIT_BITSET_PRIVATE rather than FUTEX_WAIT_PRIVATE to be
++ * able to use absolute time */
++ res =
++ syscall (__NR_futex_time64, cond_val, (gsize) FUTEX_WAIT_BITSET_PRIVATE,
++ (gsize) sampled, &end, NULL, FUTEX_BITSET_MATCH_ANY);
++
++ /* If the syscall does not exist (`ENOSYS`), we retry again below with the
++ * normal `futex` syscall. This can happen if newer kernel headers are
++ * used than the kernel that is actually running.
++ */
++#ifdef __NR_futex
++ if (res >= 0 || errno != ENOSYS) {
++#else
++ {
++#endif
++ success = (res < 0 && errno == ETIMEDOUT) ? FALSE : TRUE;
++ g_mutex_lock (mutex);
++
++ return success;
++ }
++ }
++#endif
++
++#ifdef __NR_futex
++ {
++ struct
++ {
++ __kernel_long_t tv_sec;
++ __kernel_long_t tv_nsec;
++ } end;
++
++ /* Make sure to only ever call this if the end time actually fits into the
++ * target type */
++ g_assert (sizeof (__kernel_long_t) >= 8
++ || end_time / 1000000000 <= G_MAXINT32);
++
++ end.tv_sec = end_time / 1000000000;
++ end.tv_nsec = end_time % 1000000000;
++
++ /* we use FUTEX_WAIT_BITSET_PRIVATE rather than FUTEX_WAIT_PRIVATE to be
++ * able to use absolute time */
++ res =
++ syscall (__NR_futex, cond_val, (gsize) FUTEX_WAIT_BITSET_PRIVATE,
++ (gsize) sampled, &end, NULL, FUTEX_BITSET_MATCH_ANY);
++ success = (res < 0 && errno == ETIMEDOUT) ? FALSE : TRUE;
++ g_mutex_lock (mutex);
++
++ return success;
++ }
++#endif
++
++ /* We can't end up here because of the checks above */
++ g_assert_not_reached ();
+ }
+
+ #elif defined (G_OS_UNIX)
+diff --git a/meson.build b/meson.build
+index 0641f7678b..7331c66150 100644
+--- a/meson.build
++++ b/meson.build
+@@ -294,7 +294,7 @@ if cc.has_header_symbol('pthread.h', 'pthread_cond_timedwait_relative_np')
+ endif
+
+ # Check for futex(2)
+-if cc.links('''#include <linux/futex.h>
++if cc.compiles('''#include <linux/futex.h>
+ #include <sys/syscall.h>
+ #include <unistd.h>
+ int main (int argc, char ** argv) {
+@@ -303,6 +303,15 @@ if cc.links('''#include <linux/futex.h>
+ }''', name : 'futex(2) system call')
+ cdata.set('HAVE_FUTEX', 1)
+ endif
++if cc.compiles('''#include <linux/futex.h>
++ #include <sys/syscall.h>
++ #include <unistd.h>
++ int main (int argc, char ** argv) {
++ syscall (__NR_futex_time64, NULL, FUTEX_WAKE, FUTEX_WAIT);
++ return 0;
++ }''', name : 'futex(2) system call')
++ cdata.set('HAVE_FUTEX_TIME64', 1)
++endif
+
+ # Check for posix timers and monotonic clock
+ time_prefix = '#include <time.h>\n'
+--
+2.25.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
deleted file mode 100644
index eabe7bcb..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0/0007-tests-install-the-environment-for-installed_tests.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-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_1.18.5.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0_1.20.3.imx.bb
index 3aabcf2d..850a5385 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0_1.18.5.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0_1.20.3.imx.bb
@@ -3,7 +3,7 @@
# recipe. The second section customizes the recipe for i.MX.
########### OE-core copy ##################
-# Upstream hash: bb6ddc3691ab04162ec5fd69a2d5e7876713fd15
+# Upstream hash: a21649109374fde44cf77de845cfb3cb6cbfb138
SUMMARY = "GStreamer 1.0 multimedia framework"
DESCRIPTION = "GStreamer is a multimedia framework for encoding and decoding video and sound. \
@@ -11,28 +11,27 @@ It supports a wide range of formats including mp3, ogg, avi, mpeg and quicktime.
HOMEPAGE = "http://gstreamer.freedesktop.org/"
BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
SECTION = "multimedia"
-LICENSE = "LGPL-2.0-or-later"
+LICENSE = "LGPL-2.1-or-later"
DEPENDS = "glib-2.0 glib-2.0-native libxml2 bison-native flex-native"
inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection ptest-gnome
-LIC_FILES_CHKSUM = "file://COPYING;md5=6762ed442b3822387a51c92d928ead0d \
+LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
S = "${WORKDIR}/gstreamer-${PV}"
SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
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 \
+ file://0001-tests-respect-the-idententaion-used-in-meson.patch;striplevel=3 \
+ file://0002-tests-add-support-for-install-the-tests.patch;striplevel=3 \
+ file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \
+ file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \
+ file://0005-tests-remove-gstbin-test_watch_for_state_change-test.patch \
+ file://0006-systemclock-Use-futex_time64-syscall-if-available-32.patch \
"
-SRC_URI[sha256sum] = "9aeec99b38e310817012aa2d1d76573b787af47f8a725a65b833880a094dfbc5"
+SRC_URI[sha256sum] = "de094a404a3ad8f4977829ea87edf695a4da0b5c8f613ebe54ab414bac89f031"
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
check \
@@ -43,7 +42,7 @@ 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[tests] = "-Dtests=enabled -Dinstalled_tests=true,-Dtests=disabled -Dinstalled_tests=false"
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"
@@ -89,10 +88,10 @@ DEFAULT_PREFERENCE = "-1"
# Use i.MX fork of GST for customizations
SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz"
-GST1.0_SRC ?= "gitsm://source.codeaurora.org/external/imx/gstreamer.git;protocol=https"
-SRCBRANCH = "MM_04.06.04_2112_L5.15.y"
SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} "
-SRCREV = "a55998c70940bd183d25d29e1b82fd3bc9f43df3"
+GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https"
+SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
+SRCREV = "6d2a525316b3f5cbda6a87fc5b213ab03055f320"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.6.4.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
index ab8117b3..cdd5d848 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.6.4.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
@@ -11,6 +11,7 @@ DEPENDS = "imx-codec imx-parser gstreamer1.0 gstreamer1.0-plugins-base gstreamer
DEPENDS:append:mx6-nxp-bsp = " imx-lib"
DEPENDS:append:mx7-nxp-bsp = " imx-lib"
DEPENDS:append:mx8ulp-nxp-bsp = " imx-lib"
+DEPENDS:append:mx9-nxp-bsp = " imx-lib"
DEPENDS:append:imxvpu = " imx-vpuwrap"
DEPENDS:append:imxfbdev:imxgpu = " libdrm"
@@ -22,12 +23,11 @@ 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.06.04_2112_L5.15.y"
+PV = "4.7.2+git${SRCPV}"
-
-
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH}"
-SRCREV = "f4b3105ab33e608c717855cdd1a520b60f377bf3"
+SRC_URI = "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH}"
+SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
+SRCREV = "3a0250b983f2610e6936d10c63b45e2d39eadd7e"
S = "${WORKDIR}/git"
@@ -41,6 +41,7 @@ PLATFORM:mx6sll-nxp-bsp = "MX6SLL"
PLATFORM:mx7-nxp-bsp= "MX7D"
PLATFORM:mx7ulp-nxp-bsp= "MX7ULP"
PLATFORM:mx8-nxp-bsp = "MX8"
+PLATFORM:mx9-nxp-bsp = "MX9"
# Todo add a mechanism to map possible build targets
EXTRA_OEMESON = "-Dplatform=${PLATFORM} \
diff --git a/recipes-multimedia/imx-codec/imx-codec_4.6.2.bb b/recipes-multimedia/imx-codec/imx-codec_4.7.2.bb
index 3e142694..488bcc6d 100644
--- a/recipes-multimedia/imx-codec/imx-codec_4.6.2.bb
+++ b/recipes-multimedia/imx-codec/imx-codec_4.7.2.bb
@@ -5,29 +5,28 @@
DESCRIPTION = "Freescale Multimedia codec libs"
LICENSE = "Proprietary"
SECTION = "multimedia"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e565271ec9a80ce47abbddc4bffe56fa"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
# Backward compatibility
PROVIDES += "libfslcodec"
SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "309cae6f73a777f6e5a89831acf622ee"
-SRC_URI[sha256sum] = "7b070ab3f1762accee2806e7aba4146ef5242c67a8cd88fb90dacfc1c8b3ef5e"
+SRC_URI[md5sum] = "ef8b76bbe907539e62b5bd30c0c08f75"
+SRC_URI[sha256sum] = "90e541b82b6849ec8b00bdf70b89b2af3a36cebde8b9b067341243ea46bc786a"
inherit fsl-eula-unpack autotools pkgconfig
+PACKAGECONFIG ??= "${PACKAGECONFIG_VPU}"
+# Support Chips&Media VPU only
+PACKAGECONFIG_VPU = ""
+PACKAGECONFIG_VPU:mx6q-nxp-bsp = "vpu"
+PACKAGECONFIG_VPU:mx6dl-nxp-bsp = "vpu"
+PACKAGECONFIG[vpu] = "--enable-vpu,--disable-vpu,virtual/imxvpu"
+
# Choose between 32-bit and 64-bit binaries and between Soft Float-Point and Hard Float-Point
EXTRA_OECONF = "${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8', \
bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '--enable-fhw', '', d), d)}"
-PACKAGECONFIG ?= ""
-PACKAGECONFIG:imxvpu = "vpu"
-
-# We need to ensure we don't have '-src' package overrided
-PACKAGE_DEBUG_SPLIT_STYLE = 'debug-without-src'
-
-PACKAGECONFIG[vpu] = "--enable-vpu,--disable-vpu,virtual/imxvpu"
-
do_install:append() {
# LTIB move the files around or gst-fsl-plugin won't find them
for p in $(find ${D}${libdir}/imx-mm -mindepth 2 -maxdepth 2 -not -type d); do
@@ -52,7 +51,7 @@ python __set_insane_skip() {
# the source we cannot fix it. Disable the insane check for now.
if p == 'imx-codec-test-bin':
# FIXME: includes the DUT .so files so we need to deploy those
- d.setVar("INSANE_SKIP:%s" % p, "ldflags textrel libdir file-rdeps")
+ d.setVar("INSANE_SKIP:%s" % p, "ldflags textrel libdir")
else:
d.setVar("INSANE_SKIP:%s" % p, "ldflags textrel")
}
@@ -90,6 +89,9 @@ python __set_metapkg_rdepends() {
PACKAGESPLITFUNCS =+ "__split_libfslcodec_plugins __set_metapkg_rdepends"
+# We need to ensure we don't have '-src' package overrided
+PACKAGE_DEBUG_SPLIT_STYLE = 'debug-without-src'
+
PACKAGES_DYNAMIC = "${PN}-*"
INHIBIT_PACKAGE_STRIP = "1"
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
@@ -115,5 +117,5 @@ FILES:${PN}-oggvorbis += "${libdir}/imx-mm/audio-codec/wrap/lib_vorbisd_wrap_arm
FILES:${PN}-nb += "${libdir}/imx-mm/audio-codec/wrap/lib_nbamrd_wrap_arm*_elinux.so.*"
FILES:${PN}-wb += "${libdir}/imx-mm/audio-codec/wrap/lib_wbamrd_wrap_arm*_elinux.so.*"
-PACKAGE_ARCH = "${MACHINE_ARCH}"
+PACKAGE_ARCH = "${MACHINE_SOCARCH}"
COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb b/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_2.0.2.bb
index 470fb7fa..49497f81 100644
--- a/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_1.2.0.bb
+++ b/recipes-multimedia/imx-dsp/imx-dsp-codec-ext_2.0.2.bb
@@ -2,14 +2,14 @@
DESCRIPTION = "i.MX DSP Codec Wrapper and Lib owned by NXP"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=03bcadc8dc0a788f66ca9e2b89f56c6f"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
inherit fsl-eula-unpack autotools pkgconfig
SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "9e1d0e06f4fed47a37cb390e135f453f"
-SRC_URI[sha256sum] = "2703a9dc619a2ac32352d65cfa58f8217e65abcabd33b77b0be02425dc896ae2"
+SRC_URI[md5sum] = "80f1ea02e8af55f08efcc1014b51565b"
+SRC_URI[sha256sum] = "3575152bb1372842b07794e7daafb8282827ce301c1c944bd1c2b5fc12120671"
# Fix strip command failed: 'Unable to recognise the format of the input file'
INHIBIT_PACKAGE_STRIP = "1"
diff --git a/recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb b/recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb
deleted file mode 100644
index bfa279a0..00000000
--- a/recipes-multimedia/imx-dsp/imx-dsp_1.2.0.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-# 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-nxp-bsp = "hifi4_imx8mp.bin"
-HIFI4_BIN:mx8ulp-nxp-bsp = "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-nxp-bsp|mx8qxp-nxp-bsp|mx8dx-nxp-bsp|mx8mp-nxp-bsp|mx8ulp-nxp-bsp)"
diff --git a/recipes-multimedia/imx-dsp/imx-dsp_2.0.2.bb b/recipes-multimedia/imx-dsp/imx-dsp_2.0.2.bb
new file mode 100644
index 00000000..76b7d786
--- /dev/null
+++ b/recipes-multimedia/imx-dsp/imx-dsp_2.0.2.bb
@@ -0,0 +1,56 @@
+# Copyright 2017-2022 NXP
+
+DESCRIPTION = "i.MX DSP Wrapper, Firmware Binary, Codec Libraries"
+LICENSE = "Proprietary"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
+
+inherit fsl-eula-unpack autotools pkgconfig
+
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
+
+SRC_URI[md5sum] = "1ba2634775bf9b7a66fe25ce72195aca"
+SRC_URI[sha256sum] = "f3fb2f61dc3d9a5ae4e42474d309d891f6ac710540b47adb147df33560629aa8"
+
+EXTRA_OECONF = " \
+ -datadir=${base_libdir}/firmware \
+ --bindir=/unit_tests \
+ ${@bb.utils.contains('TUNE_FEATURES', 'aarch64', '--enable-armv8', '', d)} \
+"
+
+HIFI4_PLATFORM ?= "HIFI4_PLATFORM_IS_UNDEFINED"
+HIFI4_PLATFORM:mx8qm-nxp-bsp = "imx8qmqxp"
+HIFI4_PLATFORM:mx8qxp-nxp-bsp = "imx8qmqxp"
+HIFI4_PLATFORM:mx8dx-nxp-bsp = "imx8qmqxp"
+HIFI4_PLATFORM:mx8mp-nxp-bsp = "imx8mp"
+HIFI4_PLATFORM:mx8ulp-nxp-bsp = "imx8ulp"
+
+UNSUPPORTED_TESTS = "dsp_tflm"
+UNSUPPORTED_TESTS:mx8ulp-nxp-bsp = ""
+
+do_install:append () {
+ # Remove firmware not for this platform
+ find ${D}/${base_libdir}/firmware/imx/dsp -name hifi4_*.bin -not -name *${HIFI4_PLATFORM}* -exec rm {} \;
+ # Set the expected generic name for the firmware
+ mv ${D}/${base_libdir}/firmware/imx/dsp/hifi4_${HIFI4_PLATFORM}.bin ${D}/${base_libdir}/firmware/imx/dsp/hifi4.bin
+ # Remove unit tests not for this platform
+ for unsupported_test in ${UNSUPPORTED_TESTS}; do
+ find ${D}/unit_tests/DSP -name $unsupported_test* -exec rm {} \;
+ done
+}
+
+FILES:${PN} = "${libdir}/imx-mm/audio-codec/dsp \
+ ${libdir}/imx-mm/audio-codec/wrap \
+ ${base_libdir}/firmware/imx/dsp \
+ /unit_tests \
+"
+RDEPENDS:${PN} += "imx-dsp-codec-ext"
+
+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-nxp-bsp|mx8qxp-nxp-bsp|mx8dx-nxp-bsp|mx8mp-nxp-bsp|mx8ulp-nxp-bsp)"
diff --git a/recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.1.bb b/recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.1.bb
index 7bf6d932..48be837a 100644
--- a/recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.1.bb
+++ b/recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.1.bb
@@ -4,7 +4,7 @@ LICENSE = "Proprietary"
SECTION = "multimedia"
LIC_FILES_CHKSUM = "file://COPYING;md5=72c0f70181bb6e83eee6aab8de12a9f3"
-SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
SRC_URI[md5sum] = "d46005ee29ca603caa2e1b1e82953ff1"
SRC_URI[sha256sum] = "e79cbf4788a86a0068bbe80c37317e3332ae76e3d5c3ff2eabd71f03121fab6a"
diff --git a/recipes-multimedia/imx-parser/imx-parser_4.6.2.bb b/recipes-multimedia/imx-parser/imx-parser_4.7.2.bb
index 847734a4..004c2417 100644
--- a/recipes-multimedia/imx-parser/imx-parser_4.6.2.bb
+++ b/recipes-multimedia/imx-parser/imx-parser_4.7.2.bb
@@ -1,11 +1,11 @@
# Copyright (C) 2012-2018 O.S. Systems Software LTDA.
# Copyright (C) 2012-2016 Freescale Semiconductor
-# Copyright (C) 2017, 2019 NXP
+# Copyright (C) 2017-2021 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "Freescale Multimedia parser libs"
LICENSE = "Proprietary"
SECTION = "multimedia"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e565271ec9a80ce47abbddc4bffe56fa"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
# For backwards compatibility
PROVIDES += "libfslparser"
@@ -13,9 +13,9 @@ RREPLACES:${PN} = "libfslparser"
RPROVIDES:${PN} = "libfslparser"
RCONFLICTS:${PN} = "libfslparser"
-SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "987437601084e0fec59e0dbece9cf46b"
-SRC_URI[sha256sum] = "5c26f1e71ab821ef36b60fb8b6df9a3a85418e3eebc87298c4f6bee4abbc4abd"
+SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
+SRC_URI[md5sum] = "b4fee8f21ecef727af00f7106620f44b"
+SRC_URI[sha256sum] = "745dbc6c9d28bf380b707f0aeb6dfde02a3bcbb34522640510f8756e945c7320"
inherit fsl-eula-unpack autotools pkgconfig
diff --git a/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.1.bb b/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb
index d1fc1f76..957d6ddf 100644
--- a/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.1.bb
+++ b/recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.2.bb
@@ -3,11 +3,11 @@
DESCRIPTION = "NXP PDM to PCM Software Decimation SIMD Library"
LICENSE = "Proprietary"
SECTION = "multimedia"
-LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143"
+LIC_FILES_CHKSUM = "file://COPYING;md5=03bcadc8dc0a788f66ca9e2b89f56c6f"
SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true"
-SRC_URI[md5sum] = "65d5b2cb378f96a5cb4577925eda236b"
-SRC_URI[sha256sum] = "68fca50d8f7526127ee5650e9002b3f9479b197f3085c68a97f7957f50ec5e5b"
+SRC_URI[md5sum] = "af01428c2971af339d0308f4aca1dac0"
+SRC_URI[sha256sum] = "d310ef581f9e6e6d726c5dc8998178b7993680b5552c45561e56ac0e927b6d9c"
inherit fsl-eula-unpack autotools pkgconfig
@@ -16,3 +16,7 @@ INSANE_SKIP:${PN} = "already-stripped"
FILES:${PN} += "${datadir}/imx-mm"
COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
+
+INSANE_SKIP:append:libc-musl = " file-rdeps"
+
+RDEPENDS:${PN}:append:libc-musl = " gcompat"
diff --git a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.6.2.bb b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb
index 24af9e2b..ad00e3a1 100644
--- a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.6.2.bb
+++ b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb
@@ -1,19 +1,18 @@
# Copyright (C) 2013-2016 Freescale Semiconductor
-# Copyright (C) 2017-2020 NXP
+# Copyright 2017-2022 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "Freescale Multimedia VPU wrapper"
LICENSE = "Proprietary"
SECTION = "multimedia"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e565271ec9a80ce47abbddc4bffe56fa"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe"
DEPENDS = "virtual/imxvpu"
DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc"
SRC_URI = "git://github.com/NXP/imx-vpuwrap.git;protocol=https;branch=${SRCBRANCH}"
-
-SRCBRANCH = "MM_04.06.02_2108_L5.10.y"
-SRCREV = "f09ceba7bcf733b1b27e57462496d3b81ca28e50"
+SRCBRANCH = "MM_04.07.02_2210_L5.15.y"
+SRCREV = "c9fc1fd57094accdb6e0e72e635716718482efe7"
S = "${WORKDIR}/git"
diff --git a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.1.bb b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.3.0.bb
index 41b14de2..1e7d8252 100644
--- a/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.2.1.bb
+++ b/recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.3.0.bb
@@ -4,11 +4,14 @@ LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://LICENSE;md5=38fa42a5a6425b26d2919b17b1527324"
SECTION = "multimedia"
DEPENDS = "virtual/imxvpu libimxdmabuffer"
+# Add imx-vpu-hantro-vc as dependency for being
+# able to encode video using the VC8000E encoder
+DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc"
PV .= "+git${SRCPV}"
SRCBRANCH ?= "master"
-SRCREV = "e81db32d10aee42c74ab50172487e04cbec6cbe0"
+SRCREV = "6f803f46d6b53a08cf02fc3d440072e01e2f3a09"
SRC_URI = "git://github.com/Freescale/libimxvpuapi.git;branch=${SRCBRANCH};protocol=https"
S = "${WORKDIR}/git"
@@ -18,7 +21,7 @@ inherit waf pkgconfig use-imx-headers
IMX_PLATFORM:mx6-nxp-bsp = "imx6"
IMX_PLATFORM:mx8mq-nxp-bsp = "imx8m"
IMX_PLATFORM:mx8mm-nxp-bsp = "imx8mm"
-IMX_PLATFORM:mx8mp-nxp-bsp = "imx8mm"
+IMX_PLATFORM:mx8mp-nxp-bsp = "imx8mp"
EXTRA_OECONF = "--imx-platform=${IMX_PLATFORM} --libdir=${libdir} --imx-headers=${STAGING_INCDIR_IMX} --sysroot-path=${RECIPE_SYSROOT}"
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch
new file mode 100644
index 00000000..12a04cb7
--- /dev/null
+++ b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch
@@ -0,0 +1,32 @@
+From c21e24f5c53e81fc715905c54a6c82b69e397e63 Mon Sep 17 00:00:00 2001
+From: "shengjiu.wang" <b02247@freescale.com>
+Date: Thu, 3 Apr 2014 14:22:02 +0800
+Subject: [PATCH] Fix pulseaudio mutex issue when do pause in gstreamer
+
+The error log is "Assertion 'pthread_mutex_unlock(&m->mutex) == 0'
+failed at pulsecore/mutex-posix.c:106, function pa_mutex_unlock(). Aborting"
+
+This fix is a workaround base on the solution from this link "
+https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/932096"
+
+Upstream status: Inappropriate [i.MX specific]
+Signed-off-by: shengjiu.wang <b02247@freescale.com>
+---
+ src/pulsecore/mutex-posix.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/pulsecore/mutex-posix.c b/src/pulsecore/mutex-posix.c
+index 36c2787..d592501 100644
+--- a/src/pulsecore/mutex-posix.c
++++ b/src/pulsecore/mutex-posix.c
+@@ -30,6 +30,7 @@
+ #include <pulsecore/macro.h>
+
+ #include "mutex.h"
++#undef HAVE_PTHREAD_PRIO_INHERIT
+
+ struct pa_mutex {
+ pthread_mutex_t mutex;
+--
+1.7.9.5
+
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0100-pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
index 57c28741..57c28741 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
+++ b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/0100-pulseaudio-remove-the-control-for-speaker-headphone-widge.patch
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/daemon.conf b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/daemon.conf
index 9eb954bb..b9f533a0 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/daemon.conf
+++ b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/daemon.conf
@@ -76,6 +76,8 @@ rlimit-rttime = 4000000
; default-sample-format = s16le
; default-sample-rate = 44100
; alternate-sample-rate = 48000
+# Disable alternate-sample-rate by setting same as default
+alternate-sample-rate = 44100
; default-sample-channels = 2
; default-channel-map = front-left,front-right
diff --git a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/default.pa b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/default.pa
index 83a6ba8d..b6c646b9 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/default.pa
+++ b/recipes-multimedia/pulseaudio/pulseaudio/imx-nxp-bsp/default.pa
@@ -72,7 +72,7 @@ load-module module-bluetooth-policy
.endif
.ifexists module-bluetooth-discover.so
-load-module module-bluetooth-discover
+load-module module-bluetooth-discover headset=auto
.endif
### Load several protocols
diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index c7a4292e..69a9ec6b 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,13 +1,18 @@
-
-CACHED_CONFIGUREVARS:append:mx6-nxp-bsp = " ax_cv_PTHREAD_PRIO_INHERIT=no"
-
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}/imx-nxp-bsp:"
-SRC_URI:append:mx6-nxp-bsp = " file://daemon.conf file://default.pa"
-SRC_URI:append:mx7-nxp-bsp = " file://daemon.conf file://default.pa \
- file://pulseaudio-remove-the-control-for-speaker-headphone-widge.patch \
-"
-SRC_URI:append:mx8-nxp-bsp = " file://daemon.conf file://default.pa"
+SRC_URI += "${SRC_URI_IMX}"
+SRC_URI_IMX = ""
+SRC_URI_IMX:mx6-nxp-bsp = " \
+ file://0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch \
+ file://daemon.conf \
+ file://default.pa"
+SRC_URI_IMX:mx7-nxp-bsp = " \
+ ${SRC_URI_IMX:mx6-nxp-bsp} \
+ file://0100-pulseaudio-remove-the-control-for-speaker-headphone-widge.patch"
+SRC_URI_IMX:mx8-nxp-bsp = " \
+ ${SRC_URI_IMX:mx6-nxp-bsp}"
+
+CACHED_CONFIGUREVARS:append:mx6-nxp-bsp = " ax_cv_PTHREAD_PRIO_INHERIT=no"
do_install:append() {
if [ -e "${WORKDIR}/daemon.conf" ] && [ -e "${WORKDIR}/default.pa" ]; then
diff --git a/recipes-security/optee-imx/optee-client_3.15.0.imx.bb b/recipes-security/optee-imx/optee-client_3.19.0.imx.bb
index 53ee5bc4..b0fb9178 100644
--- a/recipes-security/optee-imx/optee-client_3.15.0.imx.bb
+++ b/recipes-security/optee-imx/optee-client_3.19.0.imx.bb
@@ -5,28 +5,26 @@ HOMEPAGE = "http://www.optee.org/"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=69663ab153298557a59c67a60a743e5b"
-SRCBRANCH = "lf-5.15.5_1.0.0"
SRC_URI = " \
- git://source.codeaurora.org/external/imx/imx-optee-client.git;protocol=https;branch=${SRCBRANCH} \
- file://tee-supplicant.service \
-"
-
-SRCREV = "182874320395787a389e5b0f7df02b32f3c0a1b0"
+ git://github.com/nxp-imx/imx-optee-client.git;protocol=https;branch=${SRCBRANCH} \
+ file://tee-supplicant.service"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "644022f8970c832a40be00747fcec70c7b5d488c"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
-inherit python3native systemd features_check
+inherit python3native systemd features_check pkgconfig
+
+DEPENDS = "util-linux-libuuid"
REQUIRED_MACHINE_FEATURES = "optee"
SYSTEMD_SERVICE:${PN} = "tee-supplicant.service"
-OPTEE_ARCH ?= "arm32"
-OPTEE_ARCH:armv7a = "arm32"
-OPTEE_ARCH:aarch64 = "arm64"
-
-EXTRA_OEMAKE = "ARCH=${OPTEE_ARCH} O=${B}"
+EXTRA_OEMAKE = " \
+ -C ${S} O=${B} \
+"
do_install () {
oe_runmake -C ${S} install
diff --git a/recipes-security/optee-imx/optee-os/0001-core-Define-section-attributes-for-clang.patch b/recipes-security/optee-imx/optee-os/0001-core-Define-section-attributes-for-clang.patch
new file mode 100644
index 00000000..2abd78a8
--- /dev/null
+++ b/recipes-security/optee-imx/optee-os/0001-core-Define-section-attributes-for-clang.patch
@@ -0,0 +1,230 @@
+From f189457b79989543f65b8a4e8729eff2cdf9a758 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 13 Aug 2022 19:24:55 -0700
+Subject: [PATCH] core: Define section attributes for clang
+
+Clang's attribute section is not same as gcc, here we need to add flags
+to sections so they can be eventually collected by linker into final
+output segments. Only way to do so with clang is to use
+
+pragma clang section ...
+
+The behavious is described here [1], this allows us to define names bss
+sections. This was not an issue until clang-15 where LLD linker starts
+to detect the section flags before merging them and throws the following
+errors
+
+| ld.lld: error: section type mismatch for .nozi.kdata_page
+| >>> /mnt/b/yoe/master/build/tmp/work/qemuarm64-yoe-linux/optee-os-tadevkit/3.17.0-r0/build/core/arch/arm/kernel/thread.o:(.nozi.kdata_page): SHT_PROGBITS
+| >>> output section .nozi: SHT_NOBITS
+|
+| ld.lld: error: section type mismatch for .nozi.mmu.l2
+| >>> /mnt/b/yoe/master/build/tmp/work/qemuarm64-yoe-linux/optee-os-tadevkit/3.17.0-r0/build/core/arch/arm/mm/core_mmu_lpae.o:(.nozi.mmu.l2): SHT_PROGBITS
+| >>> output section .nozi: SHT_NOBITS
+
+These sections should be carrying SHT_NOBITS but so far it was not
+possible to do so, this patch tries to use clangs pragma to get this
+going and match the functionality with gcc.
+
+[1] https://intel.github.io/llvm-docs/clang/LanguageExtensions.html#specifying-section-names-for-global-objects-pragma-clang-section
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ core/arch/arm/kernel/thread.c | 19 +++++++++++++++--
+ core/arch/arm/mm/core_mmu_lpae.c | 35 ++++++++++++++++++++++++++++----
+ core/arch/arm/mm/pgt_cache.c | 12 ++++++++++-
+ core/kernel/thread.c | 13 +++++++++++-
+ 4 files changed, 71 insertions(+), 8 deletions(-)
+
+--- a/core/arch/arm/kernel/thread.c
++++ b/core/arch/arm/kernel/thread.c
+@@ -44,16 +44,31 @@ static size_t thread_user_kcode_size __n
+ #if defined(CFG_CORE_UNMAP_CORE_AT_EL0) && \
+ defined(CFG_CORE_WORKAROUND_SPECTRE_BP_SEC) && defined(ARM64)
+ long thread_user_kdata_sp_offset __nex_bss;
++#ifdef __clang__
++#ifndef CFG_VIRTUALIZATION
++#pragma clang section bss=".nozi.kdata_page"
++#else
++#pragma clang section bss=".nex_nozi.kdata_page"
++#endif
++#endif
+ static uint8_t thread_user_kdata_page[
+ ROUNDUP(sizeof(struct thread_core_local) * CFG_TEE_CORE_NB_CORE,
+ SMALL_PAGE_SIZE)]
+ __aligned(SMALL_PAGE_SIZE)
++#ifndef __clang__
+ #ifndef CFG_VIRTUALIZATION
+- __section(".nozi.kdata_page");
++ __section(".nozi.kdata_page")
+ #else
+- __section(".nex_nozi.kdata_page");
++ __section(".nex_nozi.kdata_page")
+ #endif
+ #endif
++ ;
++#endif
++
++/* reset BSS section to default ( .bss ) */
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ #ifdef ARM32
+ uint32_t __nostackcheck thread_get_exceptions(void)
+--- a/core/arch/arm/mm/core_mmu_lpae.c
++++ b/core/arch/arm/mm/core_mmu_lpae.c
+@@ -233,19 +233,46 @@ typedef uint16_t l1_idx_t;
+ typedef uint64_t base_xlat_tbls_t[CFG_TEE_CORE_NB_CORE][NUM_BASE_LEVEL_ENTRIES];
+ typedef uint64_t xlat_tbl_t[XLAT_TABLE_ENTRIES];
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.base_table"
++#endif
+ static base_xlat_tbls_t base_xlation_table[NUM_BASE_TABLES]
+ __aligned(NUM_BASE_LEVEL_ENTRIES * XLAT_ENTRY_SIZE)
+- __section(".nozi.mmu.base_table");
++#ifndef __clang__
++ __section(".nozi.mmu.base_table")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ static xlat_tbl_t xlat_tables[MAX_XLAT_TABLES]
+- __aligned(XLAT_TABLE_SIZE) __section(".nozi.mmu.l2");
++ __aligned(XLAT_TABLE_SIZE)
++#ifndef __clang__
++ __section(".nozi.mmu.l2")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ #define XLAT_TABLES_SIZE (sizeof(xlat_tbl_t) * MAX_XLAT_TABLES)
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ /* MMU L2 table for TAs, one for each thread */
+ static xlat_tbl_t xlat_tables_ul1[CFG_NUM_THREADS]
+- __aligned(XLAT_TABLE_SIZE) __section(".nozi.mmu.l2");
+-
++#ifndef __clang__
++ __aligned(XLAT_TABLE_SIZE) __section(".nozi.mmu.l2")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+ /*
+ * TAs page table entry inside a level 1 page table.
+ *
+--- a/core/arch/arm/mm/pgt_cache.c
++++ b/core/arch/arm/mm/pgt_cache.c
+@@ -410,8 +410,18 @@ void pgt_init(void)
+ * has a large alignment, while .bss has a small alignment. The current
+ * link script is optimized for small alignment in .bss
+ */
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ static uint8_t pgt_tables[PGT_CACHE_SIZE][PGT_SIZE]
+- __aligned(PGT_SIZE) __section(".nozi.pgt_cache");
++ __aligned(PGT_SIZE)
++#ifndef __clang__
++ __section(".nozi.pgt_cache")
++#endif
++ ;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+ size_t n;
+
+ for (n = 0; n < ARRAY_SIZE(pgt_tables); n++) {
+--- a/core/kernel/thread.c
++++ b/core/kernel/thread.c
+@@ -38,13 +38,24 @@ struct thread_core_local thread_core_loc
+ name[stack_num][sizeof(name[stack_num]) / sizeof(uint32_t) - 1]
+ #endif
+
++#define DO_PRAGMA(x) _Pragma (#x)
++
++#ifdef __clang__
++#define DECLARE_STACK(name, num_stacks, stack_size, linkage) \
++DO_PRAGMA (clang section bss=".nozi_stack." #name) \
++linkage uint32_t name[num_stacks] \
++ [ROUNDUP(stack_size + STACK_CANARY_SIZE + STACK_CHECK_EXTRA, \
++ STACK_ALIGNMENT) / sizeof(uint32_t)] \
++ __attribute__((aligned(STACK_ALIGNMENT))); \
++DO_PRAGMA(clang section bss="")
++#else
+ #define DECLARE_STACK(name, num_stacks, stack_size, linkage) \
+ linkage uint32_t name[num_stacks] \
+ [ROUNDUP(stack_size + STACK_CANARY_SIZE + STACK_CHECK_EXTRA, \
+ STACK_ALIGNMENT) / sizeof(uint32_t)] \
+ __attribute__((section(".nozi_stack." # name), \
+ aligned(STACK_ALIGNMENT)))
+-
++#endif
+ #define GET_STACK(stack) ((vaddr_t)(stack) + STACK_SIZE(stack))
+
+ DECLARE_STACK(stack_tmp, CFG_TEE_CORE_NB_CORE, STACK_TMP_SIZE,
+--- a/core/arch/arm/mm/core_mmu_v7.c
++++ b/core/arch/arm/mm/core_mmu_v7.c
+@@ -204,16 +204,46 @@ typedef uint32_t l1_xlat_tbl_t[NUM_L1_EN
+ typedef uint32_t l2_xlat_tbl_t[NUM_L2_ENTRIES];
+ typedef uint32_t ul1_xlat_tbl_t[NUM_UL1_ENTRIES];
+
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l1"
++#endif
+ static l1_xlat_tbl_t main_mmu_l1_ttb
+- __aligned(L1_ALIGNMENT) __section(".nozi.mmu.l1");
++ __aligned(L1_ALIGNMENT)
++#ifndef __clang__
++ __section(".nozi.mmu.l1")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ /* L2 MMU tables */
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.l2"
++#endif
+ static l2_xlat_tbl_t main_mmu_l2_ttb[MAX_XLAT_TABLES]
+- __aligned(L2_ALIGNMENT) __section(".nozi.mmu.l2");
++ __aligned(L2_ALIGNMENT)
++#ifndef __clang__
++ __section(".nozi.mmu.l2")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ /* MMU L1 table for TAs, one for each thread */
++#ifdef __clang__
++#pragma clang section bss=".nozi.mmu.ul1"
++#endif
+ static ul1_xlat_tbl_t main_mmu_ul1_ttb[CFG_NUM_THREADS]
+- __aligned(UL1_ALIGNMENT) __section(".nozi.mmu.ul1");
++ __aligned(UL1_ALIGNMENT)
++#ifndef __clang__
++ __section(".nozi.mmu.ul1")
++#endif
++;
++#ifdef __clang__
++#pragma clang section bss=""
++#endif
+
+ struct mmu_partition {
+ l1_xlat_tbl_t *l1_table;
diff --git a/recipes-security/optee-imx/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch b/recipes-security/optee-imx/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
new file mode 100644
index 00000000..c07d0482
--- /dev/null
+++ b/recipes-security/optee-imx/optee-os/0006-allow-setting-sysroot-for-libgcc-lookup.patch
@@ -0,0 +1,33 @@
+From 528aeb42652a3159c1bfd51d6c1442c3ff27b84c Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Tue, 26 May 2020 14:38:02 -0500
+Subject: [PATCH] allow setting sysroot for libgcc lookup
+
+Explicitly pass the new variable LIBGCC_LOCATE_CFLAGS variable when searching
+for the compiler libraries as there's no easy way to reliably pass --sysroot
+otherwise.
+
+Upstream-Status: Pending [https://github.com/OP-TEE/optee_os/issues/4188]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+---
+ mk/gcc.mk | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/mk/gcc.mk
++++ b/mk/gcc.mk
+@@ -13,11 +13,11 @@ nostdinc$(sm) := -nostdinc -isystem $(sh
+ -print-file-name=include 2> /dev/null)
+
+ # Get location of libgcc from gcc
+-libgcc$(sm) := $(shell $(CC$(sm)) $(CFLAGS$(arch-bits-$(sm))) \
++libgcc$(sm) := $(shell $(CC$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CFLAGS$(arch-bits-$(sm))) \
+ -print-libgcc-file-name 2> /dev/null)
+-libstdc++$(sm) := $(shell $(CXX$(sm)) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \
++libstdc++$(sm) := $(shell $(CXX$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \
+ -print-file-name=libstdc++.a 2> /dev/null)
+-libgcc_eh$(sm) := $(shell $(CXX$(sm)) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \
++libgcc_eh$(sm) := $(shell $(CXX$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CXXFLAGS$(arch-bits-$(sm))) $(comp-cxxflags$(sm)) \
+ -print-file-name=libgcc_eh.a 2> /dev/null)
+
+ # Define these to something to discover accidental use
diff --git a/recipes-security/optee-imx/optee-os/0007-allow-setting-sysroot-for-clang.patch b/recipes-security/optee-imx/optee-os/0007-allow-setting-sysroot-for-clang.patch
new file mode 100644
index 00000000..dc6d5517
--- /dev/null
+++ b/recipes-security/optee-imx/optee-os/0007-allow-setting-sysroot-for-clang.patch
@@ -0,0 +1,28 @@
+From db9e44af75c7cfd3316cab15aaa387383df3e57e Mon Sep 17 00:00:00 2001
+From: Brett Warren <brett.warren@arm.com>
+Date: Wed, 23 Sep 2020 09:27:34 +0100
+Subject: [PATCH] optee: enable clang support
+
+When compiling with clang, the LIBGCC_LOCATE_CFLAG variable used
+to provide a sysroot wasn't included, which results in not locating
+compiler-rt. This is mitigated by including the variable as ammended.
+
+Upstream-Status: Pending
+ChangeId: 8ba69a4b2eb8ebaa047cb266c9aa6c2c3da45701
+Signed-off-by: Brett Warren <brett.warren@arm.com>
+
+---
+ mk/clang.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/mk/clang.mk
++++ b/mk/clang.mk
+@@ -30,7 +30,7 @@ comp-cflags-warns-clang := -Wno-language
+
+ # Note, use the compiler runtime library (libclang_rt.builtins.*.a) instead of
+ # libgcc for clang
+-libgcc$(sm) := $(shell $(CC$(sm)) $(CFLAGS$(arch-bits-$(sm))) \
++libgcc$(sm) := $(shell $(CC$(sm)) $(LIBGCC_LOCATE_CFLAGS) $(CFLAGS$(arch-bits-$(sm))) \
+ -rtlib=compiler-rt -print-libgcc-file-name 2> /dev/null)
+
+ # Core ASLR relies on the executable being ready to run from its preferred load
diff --git a/recipes-security/optee-imx/optee-os/0010-add-note-GNU-stack-section.patch b/recipes-security/optee-imx/optee-os/0010-add-note-GNU-stack-section.patch
new file mode 100644
index 00000000..b82aabdc
--- /dev/null
+++ b/recipes-security/optee-imx/optee-os/0010-add-note-GNU-stack-section.patch
@@ -0,0 +1,114 @@
+From ec30e84671aac9a2e9549754eb7bc6201728db4c Mon Sep 17 00:00:00 2001
+From: Jerome Forissier <jerome.forissier@linaro.org>
+Date: Tue, 23 Aug 2022 12:31:46 +0000
+Subject: [PATCH] arm32: libutils, libutee, ta: add .note.GNU-stack section to
+
+ .S files
+
+When building for arm32 with GNU binutils 2.39, the linker outputs
+warnings when linking Trusted Applications:
+
+ arm-unknown-linux-uclibcgnueabihf-ld.bfd: warning: utee_syscalls_a32.o: missing .note.GNU-stack section implies executable stack
+ arm-unknown-linux-uclibcgnueabihf-ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
+
+We could silence the warning by adding the '-z execstack' option to the
+TA link flags, like we did in the parent commit for the TEE core and
+ldelf. Indeed, ldelf always allocates a non-executable piece of memory
+for the TA to use as a stack.
+
+However it seems preferable to comply with the common ELF practices in
+this case. A better fix is therefore to add the missing .note.GNU-stack
+sections in the assembler files.
+
+Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
+
+Signed-off-by: Anton Antonov <Anton.Antonov@arm.com>
+Upstream-Status: Backport [https://github.com/OP-TEE/optee_os/pull/5499]
+
+---
+ lib/libutee/arch/arm/utee_syscalls_a32.S | 2 ++
+ lib/libutils/ext/arch/arm/atomic_a32.S | 2 ++
+ lib/libutils/ext/arch/arm/mcount_a32.S | 2 ++
+ lib/libutils/isoc/arch/arm/arm32_aeabi_divmod_a32.S | 2 ++
+ lib/libutils/isoc/arch/arm/arm32_aeabi_ldivmod_a32.S | 2 ++
+ lib/libutils/isoc/arch/arm/setjmp_a32.S | 2 ++
+ ta/arch/arm/ta_entry_a32.S | 2 ++
+ 7 files changed, 14 insertions(+)
+
+--- a/lib/libutee/arch/arm/utee_syscalls_a32.S
++++ b/lib/libutee/arch/arm/utee_syscalls_a32.S
+@@ -9,6 +9,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ .section .text
+ .balign 4
+ .code 32
+--- a/lib/libutils/ext/arch/arm/atomic_a32.S
++++ b/lib/libutils/ext/arch/arm/atomic_a32.S
+@@ -7,6 +7,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ /* uint32_t atomic_inc32(uint32_t *v); */
+ FUNC atomic_inc32 , :
+ ldrex r1, [r0]
+--- a/lib/libutils/ext/arch/arm/mcount_a32.S
++++ b/lib/libutils/ext/arch/arm/mcount_a32.S
+@@ -9,6 +9,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ /*
+ * Convert return address to call site address by subtracting the size of the
+ * mcount call instruction (blx __gnu_mcount_nc).
+--- a/lib/libutils/isoc/arch/arm/arm32_aeabi_divmod_a32.S
++++ b/lib/libutils/isoc/arch/arm/arm32_aeabi_divmod_a32.S
+@@ -7,6 +7,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ /*
+ * signed ret_idivmod_values(signed quot, signed rem);
+ * return quotient and remaining the EABI way (regs r0,r1)
+--- a/lib/libutils/isoc/arch/arm/arm32_aeabi_ldivmod_a32.S
++++ b/lib/libutils/isoc/arch/arm/arm32_aeabi_ldivmod_a32.S
+@@ -7,6 +7,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ /*
+ * __value_in_regs lldiv_t __aeabi_ldivmod( long long n, long long d)
+ */
+--- a/lib/libutils/isoc/arch/arm/setjmp_a32.S
++++ b/lib/libutils/isoc/arch/arm/setjmp_a32.S
+@@ -53,6 +53,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ /* Arm/Thumb interworking support:
+
+ The interworking scheme expects functions to use a BX instruction
+--- a/ta/arch/arm/ta_entry_a32.S
++++ b/ta/arch/arm/ta_entry_a32.S
+@@ -7,6 +7,8 @@
+
+ .section .note.GNU-stack,"",%progbits
+
++ .section .note.GNU-stack,"",%progbits
++
+ /*
+ * This function is the bottom of the user call stack. Mark it as such so that
+ * the unwinding code won't try to go further down.
diff --git a/recipes-security/optee-imx/optee-os_3.15.0.imx.bb b/recipes-security/optee-imx/optee-os_3.19.0.imx.bb
index 6d10b93d..82751a80 100644
--- a/recipes-security/optee-imx/optee-os_3.15.0.imx.bb
+++ b/recipes-security/optee-imx/optee-os_3.19.0.imx.bb
@@ -6,14 +6,20 @@ HOMEPAGE = "http://www.optee.org/"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c1f21c4f72f372ef38a5a4aee55ec173"
-DEPENDS = "python3-pycryptodomex-native python3-pyelftools-native u-boot-mkimage-native"
-
-SRCBRANCH = "lf-5.15.5_1.0.0"
-SRC_URI = "git://source.codeaurora.org/external/imx/imx-optee-os.git;protocol=https;branch=${SRCBRANCH}"
-
-SRCREV = "807629a0889ad5e888f1fd187932ab7f701ddf8c"
+DEPENDS = "python3-pyelftools-native u-boot-mkimage-native \
+ python3-cryptography-native"
+DEPENDS:append:toolchain-clang = " compiler-rt"
+
+SRC_URI = "git://github.com/nxp-imx/imx-optee-os.git;protocol=https;branch=${SRCBRANCH} \
+ file://0001-core-Define-section-attributes-for-clang.patch \
+ file://0006-allow-setting-sysroot-for-libgcc-lookup.patch \
+ file://0007-allow-setting-sysroot-for-clang.patch \
+ file://0010-add-note-GNU-stack-section.patch"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "00919403f040fad4f8603e605932281ff8451b1d"
S = "${WORKDIR}/git"
+B = "${WORKDIR}/build"
inherit deploy python3native autotools features_check
@@ -24,10 +30,9 @@ PLATFORM_FLAVOR = "${@d.getVar('MACHINE')[1:]}"
PLATFORM_FLAVOR:imx6qdlsabresd = "mx6qsabresd"
PLATFORM_FLAVOR:imx6qdlsabreauto = "mx6qsabreauto"
PLATFORM_FLAVOR:imx6qpdlsolox = "mx6qsabresd"
-PLATFORM_FLAVOR:imx6ul = "mx6ulevk"
-PLATFORM_FLAVOR:imx6ull = "mx6ullevk"
-PLATFORM_FLAVOR:imx6ull = "mx6ullevk"
-PLATFORM_FLAVOR:imx6ulz = "mx6ulzevk"
+PLATFORM_FLAVOR:mx6ul-nxp-bsp = "mx6ulevk"
+PLATFORM_FLAVOR:mx6ull-nxp-bsp = "mx6ullevk"
+PLATFORM_FLAVOR:mx6ulz-nxp-bsp = "mx6ulzevk"
PLATFORM_FLAVOR:mx8mq-nxp-bsp = "mx8mqevk"
PLATFORM_FLAVOR:mx8mm-nxp-bsp = "mx8mmevk"
PLATFORM_FLAVOR:mx8mn-nxp-bsp = "mx8mnevk"
@@ -39,62 +44,79 @@ PLATFORM_FLAVOR:mx8qxp-nxp-bsp = "mx8qxpmek"
PLATFORM_FLAVOR:mx8dx-nxp-bsp = "mx8dxmek"
PLATFORM_FLAVOR:mx8dxl-nxp-bsp = "mx8dxlevk"
PLATFORM_FLAVOR:mx8ulp-nxp-bsp = "mx8ulpevk"
+PLATFORM_FLAVOR:mx93-nxp-bsp = "mx93evk"
OPTEE_ARCH:arm = "arm32"
OPTEE_ARCH:aarch64 = "arm64"
+COMPILER ?= "gcc"
+COMPILER:toolchain-clang = "clang"
+
# Optee-os can be built for 32 bits and 64 bits at the same time
# as long as the compilers are correctly defined.
# For 64bits, CROSS_COMPILE64 must be set
# When defining CROSS_COMPILE and CROSS_COMPILE64, we assure that
# any 32 or 64 bits builds will pass
EXTRA_OEMAKE = " \
- PLATFORM=imx \
- PLATFORM_FLAVOR=${PLATFORM_FLAVOR} \
- CROSS_COMPILE=${HOST_PREFIX} \
- CROSS_COMPILE64=${HOST_PREFIX} \
- CFG_TEE_TA_LOG_LEVEL=0 \
- CFG_TEE_CORE_LOG_LEVEL=0 \
- -C ${S} O=${B}\
+ PLATFORM=imx-${PLATFORM_FLAVOR} \
+ CROSS_COMPILE=${HOST_PREFIX} \
+ CROSS_COMPILE64=${HOST_PREFIX} \
+ CFG_TEE_TA_LOG_LEVEL=0 \
+ CFG_TEE_CORE_LOG_LEVEL=0 \
+ OPENSSL_MODULES=${STAGING_LIBDIR_NATIVE}/ossl-modules \
+ COMPILER=${COMPILER} \
+ -C ${S} O=${B} \
"
-LDFLAGS = ""
+LDFLAGS[unexport] = "1"
+CPPFLAGS[unexport] = "1"
+AS[unexport] = "1"
+LD[unexport] = "1"
+
CFLAGS += "--sysroot=${STAGING_DIR_HOST}"
CXXFLAGS += "--sysroot=${STAGING_DIR_HOST}"
+do_configure[noexec] = "1"
+
+do_compile:prepend() {
+ PLAT_LIBGCC_PATH=$(${CC} -print-libgcc-file-name)
+}
+
+do_compile:arm () {
+ oe_runmake all uTee
+}
+
+do_compile:aarch64 () {
+ oe_runmake all
+}
+do_compile[cleandirs] = "${B}"
+
do_deploy () {
install -d ${DEPLOYDIR}
cp ${B}/core/tee-raw.bin ${DEPLOYDIR}/tee.${PLATFORM_FLAVOR}.bin
ln -sf tee.${PLATFORM_FLAVOR}.bin ${DEPLOYDIR}/tee.bin
+}
- if [ "${OPTEE_ARCH}" != "arm64" ]; then
- IMX_LOAD_ADDR=`${TARGET_PREFIX}readelf -h ${B}/core/tee.elf | grep "Entry point address" | awk '{print $4}'`
- uboot-mkimage -A arm -O linux -C none -a ${IMX_LOAD_ADDR} -e ${IMX_LOAD_ADDR} \
- -d ${DEPLOYDIR}/tee.${PLATFORM_FLAVOR}.bin ${DEPLOYDIR}/uTee-${OPTEE_BIN_EXT}
- fi
+do_deploy:append:arm () {
+ cp ${B}/core/uTee ${DEPLOYDIR}/uTee-${OPTEE_BIN_EXT}
}
do_install () {
install -d ${D}${nonarch_base_libdir}/firmware/
install -m 644 ${B}/core/*.bin ${D}${nonarch_base_libdir}/firmware/
+ # Install embedded TAs
+ install -d ${D}${nonarch_base_libdir}/optee_armtz/
+ install -m 444 ${B}/ta/*/*.ta ${D}${nonarch_base_libdir}/optee_armtz/
+
# Install the TA devkit
install -d ${D}${includedir}/optee/export-user_ta_${OPTEE_ARCH}/
-
- for f in ${B}/export-ta_${OPTEE_ARCH}/*; do
- cp -aR $f ${D}${includedir}/optee/export-user_ta_${OPTEE_ARCH}/
- done
-
- # Install embedded TAs
- install -d ${D}${nonarch_base_libdir}/optee_armtz
- find ${B}/ta -name '*.ta' | while read name; do
- install -m 444 $name ${D}${nonarch_base_libdir}/optee_armtz/
- done
+ cp -aR ${B}/export-ta_${OPTEE_ARCH}/* \
+ ${D}${includedir}/optee/export-user_ta_${OPTEE_ARCH}/
}
addtask deploy after do_compile before do_install
-
FILES:${PN} = "${nonarch_base_libdir}/firmware/ ${nonarch_base_libdir}/optee_armtz/"
FILES:${PN}-staticdev = "${includedir}/optee/"
RDEPENDS:${PN}-dev += "${PN}-staticdev"
diff --git a/recipes-security/optee-imx/optee-test_3.15.0.imx.bb b/recipes-security/optee-imx/optee-test_3.19.0.imx.bb
index a3649d74..fa418b87 100644
--- a/recipes-security/optee-imx/optee-test_3.15.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_3.19.0.imx.bb
@@ -6,17 +6,15 @@ HOMEPAGE = "http://www.optee.org/"
LICENSE = "BSD-2-Clause & GPL-2.0-only"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=daa2bcccc666345ab8940aab1315a4fa"
-DEPENDS = "python3-pycryptodome-native python3-pycryptodomex-native optee-os optee-client openssl"
+DEPENDS = "python3-cryptography-native optee-os optee-client openssl"
-SRCBRANCH = "lf-5.15.5_1.0.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}"
+SRCBRANCH = "lf-5.15.71_2.2.0"
+SRCREV = "5c1dbb531b304f7ae100958f6261b6cefea49b62"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build"
-SRCREV = "e9d8bf6ee121d6686e6e409c727caee76496bb86"
-
inherit python3native features_check
REQUIRED_MACHINE_FEATURES = "optee"
@@ -29,11 +27,11 @@ CXXFLAGS += "--sysroot=${STAGING_DIR_HOST}"
EXTRA_OEMAKE = " \
TA_DEV_KIT_DIR=${STAGING_INCDIR}/optee/export-user_ta_${OPTEE_ARCH}/ \
- ARCH=${OPTEE_ARCH} \
OPTEE_CLIENT_EXPORT=${STAGING_DIR_HOST}${exec_prefix} \
CROSS_COMPILE_HOST=${HOST_PREFIX} \
CROSS_COMPILE_TA=${HOST_PREFIX} \
CROSS_COMPILE=${HOST_PREFIX} \
+ OPENSSL_MODULES=${STAGING_LIBDIR_NATIVE}/ossl-modules \
-C ${S} O=${B} \
"
diff --git a/recipes-security/optee/optee-client-qoriq_3.13.0.bb b/recipes-security/optee-qoriq/optee-client-qoriq_3.13.0.bb
index 94123e43..94123e43 100644
--- a/recipes-security/optee/optee-client-qoriq_3.13.0.bb
+++ b/recipes-security/optee-qoriq/optee-client-qoriq_3.13.0.bb
diff --git a/recipes-security/optee/optee-client.nxp.inc b/recipes-security/optee-qoriq/optee-client.nxp.inc
index fa187e84..a7d34497 100644
--- a/recipes-security/optee/optee-client.nxp.inc
+++ b/recipes-security/optee-qoriq/optee-client.nxp.inc
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=69663ab153298557a59c67a60a743e5b"
inherit python3native systemd
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/optee_client.git;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/optee_client.git;protocol=https;nobranch=1"
SRCREV = "7c9c423d00e96bf51debd5fe10fd70dce83be5cc"
FILESEXTRAPATHS:prepend := "${THISDIR}/optee-client:"
diff --git a/recipes-security/optee/optee-client/tee-supplicant.service b/recipes-security/optee-qoriq/optee-client/tee-supplicant.service
index 0e2b4f6b..0e2b4f6b 100644
--- a/recipes-security/optee/optee-client/tee-supplicant.service
+++ b/recipes-security/optee-qoriq/optee-client/tee-supplicant.service
diff --git a/recipes-security/optee/optee-os-qoriq_3.13.0.bb b/recipes-security/optee-qoriq/optee-os-qoriq_3.13.0.bb
index 3c3652d3..3c3652d3 100644
--- a/recipes-security/optee/optee-os-qoriq_3.13.0.bb
+++ b/recipes-security/optee-qoriq/optee-os-qoriq_3.13.0.bb
diff --git a/recipes-security/optee/optee-os.nxp.inc b/recipes-security/optee-qoriq/optee-os.nxp.inc
index 72af6ca4..5b90b937 100644
--- a/recipes-security/optee/optee-os.nxp.inc
+++ b/recipes-security/optee-qoriq/optee-os.nxp.inc
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=c1f21c4f72f372ef38a5a4aee55ec173"
inherit deploy python3native autotools
DEPENDS = "python3-pycryptodome-native python3-pyelftools-native python3-pycryptodomex-native dtc-native"
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/optee_os.git;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/optee_os.git;protocol=https;nobranch=1"
SRCREV = "735d98806dc26fbeeecad7f5e60ffeab8170c67e"
S = "${WORKDIR}/git"
diff --git a/recipes-security/optee/optee-test-qoriq_3.13.0.bb b/recipes-security/optee-qoriq/optee-test-qoriq_3.13.0.bb
index 69ef73d3..69ef73d3 100644
--- a/recipes-security/optee/optee-test-qoriq_3.13.0.bb
+++ b/recipes-security/optee-qoriq/optee-test-qoriq_3.13.0.bb
diff --git a/recipes-security/optee/optee-test.nxp.inc b/recipes-security/optee-qoriq/optee-test.nxp.inc
index e3ba0c8e..14a42ac5 100644
--- a/recipes-security/optee/optee-test.nxp.inc
+++ b/recipes-security/optee-qoriq/optee-test.nxp.inc
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=daa2bcccc666345ab8940aab1315a4fa"
DEPENDS = "python3-pycryptodome-native python3-pycryptodomex-native openssl"
inherit python3native cmake
-SRC_URI = "git://source.codeaurora.org/external/qoriq/qoriq-components/optee_test.git;nobranch=1"
+SRC_URI = "git://github.com/nxp-qoriq/optee_test.git;protocol=https;nobranch=1"
SRCREV = "69722dab8c1f2683e30e0ee3b536053367e37aad"
S = "${WORKDIR}/git"
diff --git a/recipes-security/smw/keyctl-caam_git.bb b/recipes-security/smw/keyctl-caam_git.bb
new file mode 100644
index 00000000..25a5f656
--- /dev/null
+++ b/recipes-security/smw/keyctl-caam_git.bb
@@ -0,0 +1,23 @@
+# Copyright 2020-2022 NXP
+
+SUMMARY = "NXP i.MX CAAM Keyctl"
+DESCRIPTION = "NXP i.MX keyctl tool to manage CAAM Keys"
+SECTION = "base"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=8636bd68fc00cc6a3809b7b58b45f982"
+
+SRCBRANCH = "master"
+SRC_URI = "git://github.com/nxp-imx/keyctl_caam.git;protocol=https;branch=${SRCBRANCH}"
+
+SRCREV = "81dc06cdb9c4d0d4ba10459d85af9a8603774948"
+
+S = "${WORKDIR}/git"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_install () {
+ oe_runmake DESTDIR=${D} install
+}
+
+COMPATIBLE_MACHINE = "(imx-generic-bsp)"
+
diff --git a/recipes-security/smw/smw_git.bb b/recipes-security/smw/smw_git.bb
new file mode 100644
index 00000000..3f77ad06
--- /dev/null
+++ b/recipes-security/smw/smw_git.bb
@@ -0,0 +1,64 @@
+# Copyright 2020-23 NXP
+
+SUMMARY = "NXP i.MX Security Middleware Library"
+DESCRIPTION = "NXP i.MX Security Middleware Library"
+SECTION = "base"
+LICENSE = "BSD-3-Clause"
+LICENSE = "Apache-2.0 & BSD-3-Clause & Zlib"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=8636bd68fc00cc6a3809b7b58b45f982 \
+ file://../psa-arch-tests/LICENSE.md;md5=2a944942e1496af1886903d274dedb13"
+
+DEPENDS = "json-c optee-os optee-client python3-cryptography-native"
+DEPENDS:append:mx8qxp-nxp-bsp = " imx-seco-libs"
+DEPENDS:append:mx8dx-nxp-bsp = " imx-seco-libs"
+DEPENDS:append:mx8ulp-nxp-bsp = " imx-secure-enclave"
+
+SRC_URI = "git://github.com/nxp-imx/imx-smw.git;protocol=https;branch=release/version_2.x;name=smw;destsuffix=git/smw \
+ git://github.com/ARM-software/psa-arch-tests.git;protocol=https;branch=main;name=psa;destsuffix=git/psa-arch-tests \
+ "
+SRCREV_smw = "f0570b3e8cb5f68d54edc4f9dd7cb984f6f604ed"
+SRCREV_psa = "463cb95ada820bc6f758d50066cf8c0ed5cc3a02"
+SRCREV_FORMAT = "smw_psa"
+S = "${WORKDIR}/git/smw"
+
+inherit cmake python3native
+
+CFLAGS[unexport] = "1"
+CPPFLAGS[unexport] = "1"
+AS[unexport] = "1"
+LD[unexport] = "1"
+
+# setting the linker options
+TARGET_LDFLAGS:remove = "${DEBUG_PREFIX_MAP}"
+
+OPTEE_OS_TA_EXPORT_DIR:aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64"
+OPTEE_OS_TA_EXPORT_DIR:arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32"
+
+# Needs to sign OPTEE TAs
+export OPENSSL_MODULES="${STAGING_LIBDIR_NATIVE}/ossl-modules"
+
+EXTRA_OECMAKE = " \
+ -DTA_DEV_KIT_ROOT=${OPTEE_OS_TA_EXPORT_DIR} \
+ -DTEEC_ROOT=${STAGING_DIR_HOST} \
+ -DJSONC_ROOT="${COMPONENTS_DIR}/${TARGET_ARCH}/json-c/usr" \
+ -DPSA_ARCH_TESTS_SRC_PATH=../${PSA_ARCH_TESTS_SRC_PATH} \
+"
+EXTRA_OECMAKE:append:mx8qxp-nxp-bsp = "-DSECO_ROOT=${STAGING_DIR_HOST}"
+EXTRA_OECMAKE:append:mx8dx-nxp-bsp = "-DSECO_ROOT=${STAGING_DIR_HOST}"
+EXTRA_OECMAKE:append:mx8ulp-nxp-bsp = "-DELE_ROOT=${STAGING_DIR_HOST}"
+EXTRA_OECMAKE_IMX:mx93-nxp-bsp = "-DELE_ROOT=${STAGING_DIR_HOST}"
+
+OECMAKE_TARGET_COMPILE += "build_tests"
+OECMAKE_TARGET_INSTALL += "install_tests"
+
+INSANE_SKIP_${PN}-tests = "textrel"
+
+PACKAGES =+ "${PN}-tests"
+
+FILES:${PN} += "${base_libdir}/optee_armtz/*"
+
+FILES:${PN}-tests = "${bindir}/* ${datadir}/${BPN}/*"
+
+RDEPENDS:${PN}-tests += "bash cmake"
+
+COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch b/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch
new file mode 100644
index 00000000..59da6ab3
--- /dev/null
+++ b/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch
@@ -0,0 +1,26 @@
+From d6bdd0a91eb0ed57688c0af5ba5088cf0afdc0a0 Mon Sep 17 00:00:00 2001
+From: Jochen Sprickerhof <jspricke@debian.org>
+Date: Mon, 8 Aug 2022 21:10:13 +0200
+Subject: [PATCH] Add missing header for LIBAVCODEC_VERSION_INT
+
+Upstream-Status: Backport [https://github.com/opencv/opencv/pull/22357]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ modules/videoio/src/ffmpeg_codecs.hpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/modules/videoio/src/ffmpeg_codecs.hpp b/modules/videoio/src/ffmpeg_codecs.hpp
+index 61788e0345..faad2596ed 100644
+--- a/modules/videoio/src/ffmpeg_codecs.hpp
++++ b/modules/videoio/src/ffmpeg_codecs.hpp
+@@ -60,6 +60,7 @@ extern "C" {
+ #include <errno.h>
+ #endif
+
++#include <libavcodec/version.h>
+ #include <libavformat/avformat.h>
+
+ #ifdef __cplusplus
+--
+2.38.1
+
diff --git a/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch b/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch
index 0e83e994..ef7831a5 100644
--- a/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch
+++ b/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch
@@ -31,7 +31,7 @@ Index: git/samples/dnn/classification.cpp
===================================================================
--- git.orig/samples/dnn/classification.cpp
+++ git/samples/dnn/classification.cpp
-@@ -11,6 +11,7 @@ std::string keys =
+@@ -12,6 +12,7 @@ std::string keys =
"{ help h | | Print help message. }"
"{ @alias | | An alias name of model to extract preprocessing parameters from models.yml file. }"
"{ zoo | models.yml | An optional path to file with preprocessing parameters }"
@@ -39,7 +39,7 @@ Index: git/samples/dnn/classification.cpp
"{ input i | | Path to input image or video file. Skip this argument to capture frames from a camera.}"
"{ initial_width | 0 | Preprocess input image by initial resizing to a specific width.}"
"{ initial_height | 0 | Preprocess input image by initial resizing to a specific height.}"
-@@ -102,7 +103,7 @@ int main(int argc, char** argv)
+@@ -113,7 +114,7 @@ int main(int argc, char** argv)
if (parser.has("input"))
cap.open(parser.get<String>("input"));
else
@@ -48,19 +48,21 @@ Index: git/samples/dnn/classification.cpp
//! [Open a video file or an image file or a camera stream]
// Process frames.
-@@ -151,13 +152,13 @@ int main(int argc, char** argv)
- double freq = getTickFrequency() / 1000;
- double t = net.getPerfProfile(layersTimes) / freq;
- std::string label = format("Inference time: %.2f ms", t);
+@@ -195,14 +196,14 @@ int main(int argc, char** argv)
+ }
+ std::string label = format("Inference time of 1 round: %.2f ms", t1);
+ std::string label2 = format("Average time of 200 rounds: %.2f ms", timeRecorder.getTimeMilli()/200);
- putText(frame, label, Point(0, 15), FONT_HERSHEY_SIMPLEX, 0.5, Scalar(0, 255, 0));
+- putText(frame, label2, Point(0, 35), FONT_HERSHEY_SIMPLEX, 0.5, Scalar(0, 255, 0));
+ putText(frame, label, Point(0, 20), FONT_HERSHEY_SIMPLEX, 0.8, Scalar(0, 0, 255), 2, 8, false);
++ putText(frame, label2, Point(0, 45), FONT_HERSHEY_SIMPLEX, 0.8, Scalar(0, 0, 255), 2, 8, false);
// Print predicted class.
label = format("%s: %.4f", (classes.empty() ? format("Class #%d", classId).c_str() :
classes[classId].c_str()),
confidence);
-- putText(frame, label, Point(0, 40), FONT_HERSHEY_SIMPLEX, 0.5, Scalar(0, 255, 0));
-+ putText(frame, label, Point(0, 45), FONT_HERSHEY_SIMPLEX, 0.8, Scalar(0, 0, 255), 2, 8, false);
+- putText(frame, label, Point(0, 55), FONT_HERSHEY_SIMPLEX, 0.5, Scalar(0, 255, 0));
++ putText(frame, label, Point(0, 70), FONT_HERSHEY_SIMPLEX, 0.8, Scalar(0, 0, 255), 2, 8, false);
imshow(kWinName, frame);
}
@@ -68,7 +70,7 @@ Index: git/samples/dnn/object_detection.cpp
===================================================================
--- git.orig/samples/dnn/object_detection.cpp
+++ git/samples/dnn/object_detection.cpp
-@@ -251,13 +251,13 @@ int main(int argc, char** argv)
+@@ -260,13 +260,13 @@ int main(int argc, char** argv)
if (predictionsQueue.counter > 1)
{
std::string label = format("Camera: %.2f FPS", framesQueue.getFPS());
@@ -85,7 +87,7 @@ Index: git/samples/dnn/object_detection.cpp
}
imshow(kWinName, frame);
}
-@@ -293,7 +293,7 @@ int main(int argc, char** argv)
+@@ -302,7 +302,7 @@ int main(int argc, char** argv)
double freq = getTickFrequency() / 1000;
double t = net.getPerfProfile(layersTimes) / freq;
std::string label = format("Inference time: %.2f ms", t);
@@ -94,7 +96,7 @@ Index: git/samples/dnn/object_detection.cpp
imshow(kWinName, frame);
}
-@@ -462,7 +462,7 @@ void drawPred(int classId, float conf, i
+@@ -471,7 +471,7 @@ void drawPred(int classId, float conf, i
top = max(top, labelSize.height);
rectangle(frame, Point(left, top - labelSize.height),
Point(left + labelSize.width, top + baseLine), Scalar::all(255), FILLED);
@@ -107,7 +109,7 @@ Index: git/samples/dnn/segmentation.cpp
===================================================================
--- git.orig/samples/dnn/segmentation.cpp
+++ git/samples/dnn/segmentation.cpp
-@@ -157,7 +157,7 @@ int main(int argc, char** argv)
+@@ -162,7 +162,7 @@ int main(int argc, char** argv)
double freq = getTickFrequency() / 1000;
double t = net.getPerfProfile(layersTimes) / freq;
std::string label = format("Inference time: %.2f ms", t);
diff --git a/recipes-support/opencv/opencv_4.5.2.imx.bb b/recipes-support/opencv/opencv_4.6.0.imx.bb
index 331189ea..efb29c16 100644
--- a/recipes-support/opencv/opencv_4.5.2.imx.bb
+++ b/recipes-support/opencv/opencv_4.6.0.imx.bb
@@ -3,6 +3,7 @@
# recipe. The second section customizes the recipe for i.MX.
########## meta-openembedded copy ###########
+# Upstream hash: 72dc42966be7da07f9553f75b825123b81704f0b
SUMMARY = "Opencv : The Open Computer Vision Library"
HOMEPAGE = "http://opencv.org/"
@@ -16,8 +17,8 @@ ARM_INSTRUCTION_SET:armv5 = "arm"
DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp"
-SRCREV_opencv = "69357b1e88680658a07cffde7678a4d697469f03"
-SRCREV_contrib = "f5d7f6712d4ff229ba4f45cf79dfd11c557d56fd"
+SRCREV_opencv = "b0dc474160e389b9c9045da5db49d03ae17c6a6b"
+SRCREV_contrib = "7b77c355a8fdc97667b3fa1e7a0d37e4973fc868"
SRCREV_ipp = "a56b6ac6f030c312b2dce17430eef13aed9af274"
SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"
SRCREV_vgg = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"
@@ -45,22 +46,21 @@ IPP_MD5 = "${@ipp_md5sum(d)}"
SRCREV_FORMAT = "opencv_contrib_ipp_boostdesc_vgg"
SRC_URI = "git://github.com/opencv/opencv.git;name=opencv;branch=master;protocol=https \
- git://github.com/opencv/opencv_contrib.git;destsuffix=contrib;name=contrib;branch=master;protocol=https \
- git://github.com/opencv/opencv_3rdparty.git;branch=ippicv/master_20191018;destsuffix=ipp;name=ipp;protocol=https \
- git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=boostdesc;name=boostdesc;protocol=https \
- git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg;protocol=https \
- git://github.com/opencv/opencv_3rdparty.git;branch=contrib_face_alignment_20170818;destsuffix=face;name=face;protocol=https \
- git://github.com/WeChatCV/opencv_3rdparty.git;branch=wechat_qrcode;destsuffix=wechat_qrcode;name=wechat-qrcode;protocol=https \
+ git://github.com/opencv/opencv_contrib.git;destsuffix=git/contrib;name=contrib;branch=master;protocol=https \
+ git://github.com/opencv/opencv_3rdparty.git;branch=ippicv/master_20191018;destsuffix=git/ipp;name=ipp;protocol=https \
+ git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=git/boostdesc;name=boostdesc;protocol=https \
+ git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=git/vgg;name=vgg;protocol=https \
+ git://github.com/opencv/opencv_3rdparty.git;branch=contrib_face_alignment_20170818;destsuffix=git/face;name=face;protocol=https \
+ git://github.com/WeChatCV/opencv_3rdparty.git;branch=wechat_qrcode;destsuffix=git/wechat_qrcode;name=wechat-qrcode;protocol=https \
file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \
file://0003-To-fix-errors-as-following.patch \
file://0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch \
file://0001-Dont-use-isystem.patch \
file://download.patch \
file://0001-Make-ts-module-external.patch \
- file://0001-sfm-link-with-Glog_LIBS.patch;patchdir=../contrib \
- file://0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch \
+ file://0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch \
"
-SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib"
+SRC_URI:append:riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=contrib"
S = "${WORKDIR}/git"
@@ -69,7 +69,7 @@ S = "${WORKDIR}/git"
OPENCV_DLDIR = "${WORKDIR}/downloads"
do_unpack_extra() {
- tar xzf ${WORKDIR}/ipp/ippicv/${IPP_FILENAME} -C ${WORKDIR}
+ tar xzf ${S}/ipp/ippicv/${IPP_FILENAME} -C ${S}
md5() {
# Return the MD5 of $1
@@ -84,22 +84,22 @@ do_unpack_extra() {
test -e $DEST || ln -s $F $DEST
done
}
- cache xfeatures2d/boostdesc ${WORKDIR}/boostdesc/*.i
- cache xfeatures2d/vgg ${WORKDIR}/vgg/*.i
- cache data ${WORKDIR}/face/*.dat
- cache wechat_qrcode ${WORKDIR}/wechat_qrcode/*.caffemodel
- cache wechat_qrcode ${WORKDIR}/wechat_qrcode/*.prototxt
+ cache xfeatures2d/boostdesc ${S}/boostdesc/*.i
+ cache xfeatures2d/vgg ${S}/vgg/*.i
+ cache data ${S}/face/*.dat
+ cache wechat_qrcode ${S}/wechat_qrcode/*.caffemodel
+ cache wechat_qrcode ${S}/wechat_qrcode/*.prototxt
}
addtask unpack_extra after do_unpack before do_patch
CMAKE_VERBOSE = "VERBOSE=1"
-EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
+EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${S}/contrib/modules \
-DWITH_1394=OFF \
-DENABLE_PRECOMPILED_HEADERS=OFF \
-DCMAKE_SKIP_RPATH=ON \
-DOPENCV_ICV_HASH=${IPP_MD5} \
- -DIPPROOT=${WORKDIR}/ippicv_lnx \
+ -DIPPROOT=${S}/ippicv_lnx \
-DOPENCV_GENERATE_PKGCONFIG=ON \
-DOPENCV_DOWNLOAD_PATH=${OPENCV_DLDIR} \
-DOPENCV_ALLOW_DOWNLOADS=OFF \
@@ -107,11 +107,17 @@ EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1", "", d)} \
${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \
"
+LDFLAGS:append:mips = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
+LDFLAGS:append:riscv32 = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
+
EXTRA_OECMAKE:append:x86 = " -DX86=ON"
+# disable sse4.1 and sse4.2 to fix 32bit build failure
+# https://github.com/opencv/opencv/issues/21597
+EXTRA_OECMAKE:remove:x86 = " -DENABLE_SSE41=1 -DENABLE_SSE42=1"
PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \
${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
- ${@bb.utils.contains("LICENSE_FLAGS_ACCEPTED", "commercial", "libav", "", d)}"
+ ${@bb.utils.contains_any("LICENSE_FLAGS_ACCEPTED", "commercial_ffmpeg commercial", "libav", "", d)}"
# TBB does not build for powerpc so disable that package config
PACKAGECONFIG:remove:powerpc = "tbb"
@@ -167,10 +173,10 @@ PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '
python populate_packages:prepend () {
cv_libdir = d.expand('${libdir}')
- do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True)
- do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
- do_split_packages(d, cv_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
- do_split_packages(d, cv_libdir, '^lib(.*)\.so\.*', 'lib%s', 'OpenCV %s library', extra_depends='', allow_links=True)
+ do_split_packages(d, cv_libdir, r'^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True)
+ do_split_packages(d, cv_libdir, r'^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
+ do_split_packages(d, cv_libdir, r'^lib(.*)\.a$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
+ do_split_packages(d, cv_libdir, r'^lib(.*)\.so\.*', 'lib%s', 'OpenCV %s library', extra_depends='', allow_links=True)
pn = d.getVar('PN')
metapkg = pn + '-dev'
@@ -251,37 +257,46 @@ SUMMARY = "Opencv : The Open Computer Vision Library, i.MX Fork"
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;branch=master"
-SRCBRANCH = "4.5.2_imx"
SRC_URI:remove = "git://github.com/opencv/opencv.git;name=opencv;branch=master;protocol=https"
SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv"
+OPENCV_SRC ?= "git://github.com/nxp-imx/opencv-imx.git;protocol=https;branch=master"
+SRCBRANCH = "4.6.0_imx"
+SRCREV_opencv = "d3440df40a6e90cd1d2a1b729bcbc16aa4d42f5d"
# Add opencv_extra
-SRCREV_extra = "855c4528402e563283f86f28c6393f57eb5dcf62"
SRC_URI += " \
git://github.com/opencv/opencv_extra.git;destsuffix=extra;name=extra;branch=master;protocol=https \
file://0001-Add-smaller-version-of-download_models.py.patch;patchdir=../extra \
"
SRCREV_FORMAT:append = "_extra"
+SRCREV_extra = "936854e2b666853d6d0732a8eabc2d699f4fa3d8"
# Patch DNN example
SRC_URI += " \
file://OpenCV_DNN_examples.patch \
"
-PACKAGECONFIG:remove = "eigen"
-PACKAGECONFIG:append:mx8-nxp-bsp = " dnn text"
-PACKAGECONFIG_OPENCL = ""
-PACKAGECONFIG_OPENCL:mx8-nxp-bsp = "opencl"
-PACKAGECONFIG_OPENCL:mx8dxl-nxp-bsp = ""
-PACKAGECONFIG_OPENCL:mx8mm-nxp-bsp = ""
-PACKAGECONFIG_OPENCL:mx8mnlite-nxp-bsp = ""
-PACKAGECONFIG:append = " ${PACKAGECONFIG_OPENCL}"
+PACKAGECONFIG:remove = "eigen"
+
+PACKAGECONFIG:append:mx8-nxp-bsp = " dnn text"
+PACKAGECONFIG:append:mx9-nxp-bsp = " dnn text"
+
+PACKAGECONFIG:append = " ${PACKAGECONFIG_OPENCL}"
+PACKAGECONFIG_OPENCL = ""
+PACKAGECONFIG_OPENCL:mx8-nxp-bsp = "opencl"
+PACKAGECONFIG_OPENCL:mx8dxl-nxp-bsp = ""
+PACKAGECONFIG_OPENCL:mx8mm-nxp-bsp = ""
+PACKAGECONFIG_OPENCL:mx8mnul-nxp-bsp = ""
PACKAGECONFIG[openvx] = "-DWITH_OPENVX=ON -DOPENVX_ROOT=${STAGING_LIBDIR} -DOPENVX_LIB_CANDIDATES='OpenVX;OpenVXU',-DWITH_OPENVX=OFF,virtual/libopenvx,"
PACKAGECONFIG[qt5] = "-DWITH_QT=ON -DOE_QMAKE_PATH_EXTERNAL_HOST_BINS=${STAGING_BINDIR_NATIVE} -DCMAKE_PREFIX_PATH=${STAGING_BINDIR_NATIVE}/cmake,-DWITH_QT=OFF,qtbase qtbase-native,"
+PACKAGECONFIG[qt6] = "-DWITH_QT=ON -DQT_HOST_PATH=${RECIPE_SYSROOT_NATIVE}${prefix_native},-DWITH_QT=OFF,qtbase qtbase-native,"
PACKAGECONFIG[tests-imx] = "-DINSTALL_TESTS=ON -DOPENCV_TEST_DATA_PATH=${S}/../extra/testdata, -DINSTALL_TESTS=OFF,"
+PACKAGECONFIG[tim-vx] = "-DWITH_TIMVX=ON -DTIMVX_INSTALL_DIR=${STAGING_DIR_HOST}${libdir},-DWITH_TIMVX=OFF,tim-vx"
+
+# Disable cvv module in opencv_contrib as it is not yet suppported for Qt6
+# (opencv debug framework)
+EXTRA_OECMAKE:append = " -DBUILD_opencv_cvv=OFF"
do_install:append() {
ln -sf opencv4/opencv2 ${D}${includedir}/opencv2
@@ -296,6 +311,6 @@ do_install:append() {
FILES:${PN}-samples += "${datadir}/OpenCV/samples"
-COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
+COMPATIBLE_MACHINE = "(mx8-nxp-bsp|mx9-nxp-bsp)"
########## End of i.MX overrides ##########
diff --git a/v5.15.48-v5.15.47.log b/v5.15.48-v5.15.47.log
deleted file mode 100644
index ceebe069..00000000
--- a/v5.15.48-v5.15.47.log
+++ /dev/null
@@ -1,22 +0,0 @@
-linux-fslc-imx: update to v5.15.48
-
-Kernel repository has been upgraded up to v5.15.48 from stable korg.
-
-Following upstream commits are included in this version:
-----
-e1dd58c995da Linux 5.15.48
-147ae04a7c52 x86/speculation/mmio: Print SMT warning
-59d665a709b0 KVM: x86/speculation: Disable Fill buffer clear within guests
-ebd0f558b480 x86/speculation/mmio: Reuse SRBDS mitigation for SBDS
-30120b433c1f x86/speculation/srbds: Update SRBDS mitigation selection
-531eb5fe3171 x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data
-2044838ab228 x86/speculation/mmio: Enable CPU Fill buffer clearing on idle
-407d97b99f27 x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations
-d74f4eb1ddf0 x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data
-8b9521e71179 x86/speculation: Add a common function for MD_CLEAR mitigation update
-d822b10f97f6 x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug
-1fcc3d646f0b Documentation: Add documentation for Processor MMIO Stale Data
-----
-
-Link: https://lore.kernel.org/r/20220614183720.512073672@linuxfoundation.org # v5.15.48
-Link: https://github.com/Freescale/linux-fslc/pull/587
diff --git a/wic/imx-imx-boot.wks.in b/wic/imx-imx-boot.wks.in
new file mode 100644
index 00000000..8e78b5e3
--- /dev/null
+++ b/wic/imx-imx-boot.wks.in
@@ -0,0 +1,19 @@
+# short-description: Create SD card image with a boot partition
+# long-description:
+# Create an image that can be written onto a SD card using dd for use
+# with i.MX SoC family
+# It uses u-boot + other binaries gathered together on imx-boot file
+#
+# The disk layout used is:
+# - ---------- --------------
+# | | imx-boot | rootfs |
+# - ---------- --------------
+# ^ ^ ^ ^
+# | | | |
+# 0 | 8MiB 8MiB + rootfs + IMAGE_EXTRA_SPACE (default 10MiB)
+# ${IMX_BOOT_SEEK} 32 or 33kiB, see reference manual
+#
+part u-boot --source rawcopy --sourceparams="file=imx-boot" --ondisk mmcblk --no-table --align ${IMX_BOOT_SEEK}
+part / --source rootfs --ondisk mmcblk --fstype=ext4 --label root --align 8192
+
+bootloader --ptable msdos