summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/backport.yaml31
-rw-r--r--LICENSE84
-rw-r--r--README.md6
-rw-r--r--SECURITY.md17
-rw-r--r--classes/imx-boot-container.bbclass10
-rw-r--r--classes/qoriq_build_64bit_kernel.bbclass6
-rw-r--r--conf/fragments/bsp/fslc.conf8
-rw-r--r--conf/fragments/bsp/nxp.conf32
-rw-r--r--conf/fragments/graphics/x11.conf5
-rw-r--r--conf/layer.conf2
-rw-r--r--conf/machine/imx6ullevk.conf2
-rw-r--r--conf/machine/imx8mnul-ddr3l-evk.conf2
-rw-r--r--conf/machine/imx8mq-evk.conf2
-rw-r--r--conf/machine/imx8qm-mek.conf6
-rw-r--r--conf/machine/include/imx-base.inc61
-rw-r--r--conf/machine/include/imx8dxl-evk.inc6
-rw-r--r--conf/machine/include/imx8mp-evk.inc2
-rw-r--r--conf/machine/include/imx8ulp-evk.inc6
-rw-r--r--conf/machine/include/imx8x-mek.inc6
-rw-r--r--conf/machine/include/imx93-evk.inc1
-rw-r--r--conf/machine/include/imx943-evk.inc2
-rw-r--r--conf/machine/include/imx95-evk.inc1
-rw-r--r--default-registry/configurations/fsl-community-bsp-master.conf.json60
-rw-r--r--dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb2
-rw-r--r--dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2026q1.bb (renamed from dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2025q4.bb)2
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/bluealsa/bluealsa_%.bbappend1
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch31
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-launch-allow-pipewire-pulse-can-be-started-by-root.patch41
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-systemd-allow-pipewire-user-services-for-root.patch41
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch51
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend12
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/0001-wpctl-fix-set-default-Segmentation-fault-on-32bit-pl.patch33
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/51-bluez-imx.conf16
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/80-disable-logind.conf6
-rw-r--r--dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/wireplumber_%.bbappend18
-rw-r--r--dynamic-layers/networking-layer/recipes-fsl/packagegroups/packagegroup-fsl-network.bbappend1
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/utp-com/utp-com_git.bb (renamed from recipes-devtools/utp-com/utp-com_git.bb)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-devtools/uuu/uuu_git.bb (renamed from recipes-devtools/uuu/uuu_git.bb)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-opencv-imx.bb (renamed from recipes-fsl/packagegroups/packagegroup-fsl-opencv-imx.bb)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-benchmark.bb23
-rw-r--r--dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-testapps.bb45
-rw-r--r--dynamic-layers/openembedded-layer/recipes-graphics/glm/glm_%.bbappend2
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch (renamed from recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch (renamed from recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Add-smaller-version-of-download_models.py.patch (renamed from recipes-support/opencv/opencv/0001-Add-smaller-version-of-download_models.py.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch (renamed from recipes-support/opencv/opencv/0001-Dont-use-isystem.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch (renamed from recipes-support/opencv/opencv/0001-Make-ts-module-external.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch (renamed from recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch (renamed from recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch (renamed from recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch (renamed from recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch (renamed from recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch (renamed from recipes-support/opencv/opencv/OpenCV_DNN_examples.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/download.patch (renamed from recipes-support/opencv/opencv/download.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/fix-build-with-protobuf-v22.patch (renamed from recipes-support/opencv/opencv/fix-build-with-protobuf-v22.patch)0
-rw-r--r--dynamic-layers/openembedded-layer/recipes-support/opencv/opencv_4.6.0.imx.bb (renamed from recipes-support/opencv/opencv_4.6.0.imx.bb)0
-rw-r--r--files/wic/imx-imx-boot-bootpart.wks.in (renamed from wic/imx-imx-boot-bootpart.wks.in)0
-rw-r--r--files/wic/imx-imx-boot.wks.in (renamed from wic/imx-imx-boot.wks.in)0
-rw-r--r--files/wic/imx-uboot-bootpart.wks.in (renamed from wic/imx-uboot-bootpart.wks.in)0
-rw-r--r--files/wic/imx-uboot-mxs-bootpart.wks.in (renamed from wic/imx-uboot-mxs-bootpart.wks.in)0
-rw-r--r--files/wic/imx-uboot-mxs.wks.in (renamed from wic/imx-uboot-mxs.wks.in)0
-rw-r--r--files/wic/imx-uboot-spl-bootpart.wks.in (renamed from wic/imx-uboot-spl-bootpart.wks.in)0
-rw-r--r--files/wic/imx-uboot-spl.wks.in (renamed from wic/imx-uboot-spl.wks.in)0
-rw-r--r--files/wic/imx-uboot.wks (renamed from wic/imx-uboot.wks)0
-rw-r--r--files/wic/ls104x-uboot-bootpart.wks.in (renamed from wic/ls104x-uboot-bootpart.wks.in)0
-rw-r--r--recipes-bsp/firmware-imx/firmware-ele-imx_2.0.5.bb (renamed from recipes-bsp/firmware-imx/firmware-ele-imx_2.0.2.bb)22
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx-8.31.inc (renamed from recipes-bsp/firmware-imx/firmware-imx-8.28.inc)8
-rw-r--r--recipes-bsp/firmware-imx/firmware-imx_8.31.bb (renamed from recipes-bsp/firmware-imx/firmware-imx_8.28.bb)10
-rw-r--r--recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb41
-rw-r--r--recipes-bsp/firmware-imx/imx-boot-firmware-files_8.31.bb (renamed from recipes-bsp/firmware-imx/imx-boot-firmware-files_8.28.bb)2
-rw-r--r--recipes-bsp/imx-atf/imx-atf/0001-scmi-imx9-Remove-unused-tmp-pointer.patch38
-rw-r--r--recipes-bsp/imx-atf/imx-atf_2.12.bb45
-rw-r--r--recipes-bsp/imx-mkimage/imx-boot_1.0.bb83
-rw-r--r--recipes-bsp/imx-mkimage/imx-mkimage_git.bb2
-rw-r--r--recipes-bsp/imx-mkimage/imx-mkimage_git.inc11
-rw-r--r--recipes-bsp/imx-seco/imx-seco_5.9.4.1.bb6
-rw-r--r--recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc/0001-base_type.h-make-header-compatible-with-c23.patch39
-rw-r--r--recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.11.0.bb (renamed from recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.10.1.bb)13
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.9.0.bb (renamed from recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.5.0.bb)4
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-basetype.h-make-header-compatible-with-c23.patch38
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-test-md5-convert-to-ansi-c.patch90
-rw-r--r--recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.40.0.bb (renamed from recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.36.0.bb)12
-rw-r--r--recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb34
-rw-r--r--recipes-bsp/isp-imx/basler-camera_4.2.2.26.1.bb29
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch11
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch134
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch37
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch51
-rw-r--r--recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch36
-rw-r--r--recipes-bsp/isp-imx/isp-imx_4.2.2.26.1.bb (renamed from recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb)43
-rw-r--r--recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.2.0.bb (renamed from recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb)2
-rw-r--r--recipes-bsp/mxsldr/mxsldr_git.bb2
-rw-r--r--recipes-bsp/u-boot/u-boot-imx_2025.04.bb23
-rw-r--r--recipes-connectivity/iproute2/iproute2_%.bbappend10
-rw-r--r--recipes-core/udev/udev-rules-qoriq.bb1
-rw-r--r--recipes-devtools/half/half_2.1.0.bb19
-rw-r--r--recipes-devtools/stb/stb_git.bb18
-rw-r--r--recipes-extended/dpdk/dpdk_22.11.bb3
-rw-r--r--recipes-extended/merge-files/merge-files_1.0.bb2
-rw-r--r--recipes-fsl/fsl-rc-local/fsl-rc-local.bb23
-rw-r--r--recipes-fsl/fsl-rc-local/fsl-rc-local/LICENSE1
-rwxr-xr-xrecipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.etc14
-rwxr-xr-xrecipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.init36
-rw-r--r--recipes-fsl/images/fsl-image-machine-test.bb33
-rw-r--r--recipes-fsl/images/fsl-image-multimedia-full.bb8
-rw-r--r--recipes-fsl/images/fsl-image-multimedia.bb30
-rw-r--r--recipes-fsl/images/fsl-image-network-full-cmdline.bb22
-rw-r--r--recipes-fsl/mcore-demos/README11
-rw-r--r--recipes-fsl/mcore-demos/imx-m33-demos_26.03.00.bb (renamed from recipes-fsl/mcore-demos/imx-m33-demos_25.12.00.bb)5
-rw-r--r--recipes-fsl/mcore-demos/imx-m4-demos_26.03.00.bb (renamed from recipes-fsl/mcore-demos/imx-m4-demos_25.09.00.bb)5
-rw-r--r--recipes-fsl/mcore-demos/imx-m7-demos_25.12.00.bb7
-rw-r--r--recipes-fsl/mcore-demos/imx-m7-demos_26.03.00.bb (renamed from recipes-fsl/mcore-demos/imx-m7-demos_25.03.00.bb)11
-rw-r--r--recipes-fsl/mcore-demos/imx-mcore-demos_26.03.00.bb (renamed from recipes-fsl/mcore-demos/imx-mcore-demos_25.12.00.bb)4
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-commercial.bb17
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-full.bb15
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0.bb118
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-network.bb49
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu-external.bb28
-rw-r--r--recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu.bb32
-rw-r--r--recipes-fsl/packagegroups/packagegroup-imx-tools-audio.bb33
-rw-r--r--recipes-graphics/devil/devil_1.8.0.bb21
-rw-r--r--recipes-graphics/drm/libdrm_2.4.127.imx.bb (renamed from recipes-graphics/drm/libdrm_2.4.123.imx.bb)4
-rw-r--r--recipes-graphics/gli/gli_0.8.4.0.bb22
-rw-r--r--recipes-graphics/imx-g2d/imx-dpu-g2d_2.5.0.2.bb (renamed from recipes-graphics/imx-g2d/imx-dpu-g2d_2.4.0.0.bb)11
-rw-r--r--recipes-graphics/imx-g2d/imx-g2d-samples_git.bb6
-rw-r--r--recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p4.4.bb (renamed from recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p3.2.bb)11
-rw-r--r--recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb8
-rw-r--r--recipes-graphics/imx-gpu-sdk/imx-gpu-sdk-src.inc4
-rw-r--r--recipes-graphics/imx-gpu-sdk/imx-gpu-sdk_6.1.1.bb145
-rw-r--r--recipes-graphics/imx-gpu-sdk/libxdg-shell.bb21
-rw-r--r--recipes-graphics/imx-gpu-sdk/libxdg-shell/0001-xdg-shell-Add-CMake-minimum.patch38
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc2
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch32.bb9
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch64.bb9
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch32.bb9
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch64.bb27
-rw-r--r--recipes-graphics/piglit/piglit_%.bbappend2
-rw-r--r--recipes-graphics/rapidopencl/rapidopencl_1.1.0.1.bb16
-rw-r--r--recipes-graphics/rapidopenvx/rapidopenvx_1.1.0.bb14
-rw-r--r--recipes-graphics/rapidvulkan/rapidvulkan_1.2.162.0.bb15
-rw-r--r--recipes-graphics/vulkan/assimp/0001-X3D-Fix-invalid-vector-back-usage-6283.patch52
-rw-r--r--recipes-graphics/vulkan/assimp_5.4.3.bb34
-rw-r--r--recipes-graphics/vulkan/vulkan-wsi-layer/0001-wayland-Add-C-guard-before-__STDC_VERSION__-define.patch106
-rw-r--r--recipes-graphics/vulkan/vulkan-wsi-layer_git.bb7
-rw-r--r--recipes-graphics/waffle/waffle_%.bbappend4
-rw-r--r--recipes-graphics/wayland/wayland-protocols/0001-unstable-Add-alpha-compositing-protocol.patch12
-rw-r--r--recipes-graphics/wayland/wayland-protocols/0002-unstable-Add-hdr10-metadata-protocol.patch12
-rw-r--r--recipes-graphics/wayland/wayland-protocols_%.bbappend6
-rw-r--r--recipes-graphics/wayland/weston-init.bbappend44
-rw-r--r--recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini2
-rw-r--r--recipes-graphics/wayland/weston_10.0.5.imx.bb5
-rw-r--r--recipes-graphics/wayland/weston_14.0.2.imx.bb8
-rw-r--r--recipes-graphics/xwayland/xwayland_%.bbappend (renamed from recipes-graphics/xwayland/xwayland_24.1.6.imx.bbappend)0
-rw-r--r--recipes-graphics/xwayland/xwayland_24.1.6.imx.bb62
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.4.bb (renamed from recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.2.bb)13
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-video-add-v4l2-fh-compat-for-pre-6.18-kernels.patch88
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.25.4.bb23
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.26.1.bb24
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-nxp-wlan/0001-mlinux-moal_main-fix-device-wakeup-capability.patch52
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-nxp-wlan/mlinux-moal_main-lower-PRINTM_MMSG-log-level-to-KERN_INFO.patch33
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb8
-rw-r--r--recipes-kernel/linux/linux-fslc-imx_6.18.bb (renamed from recipes-kernel/linux/linux-fslc-imx_6.12.bb)37
-rw-r--r--recipes-kernel/linux/linux-imx-headers/0001-ipu-uapi-Do-not-redefine-standard-integer-types.patch42
-rw-r--r--recipes-kernel/linux/linux-imx-headers_6.18.bb4
-rw-r--r--recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack/0001-ethosu.hpp-Fix-gcc15-build-issues.patch32
-rw-r--r--recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb9
-rw-r--r--recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb4
-rw-r--r--recipes-multimedia/alsa/imx-alsa-plugins_git.bb9
-rw-r--r--recipes-multimedia/gstreamer/gst-devtools_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gst-devtools_1.26.0.imx.bb)18
-rw-r--r--recipes-multimedia/gstreamer/gst-examples_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb)15
-rw-r--r--recipes-multimedia/gstreamer/gst-variable-rtsp-server_1.0.bb25
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.0.imx.bb)12
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-MMFMWK-9590-gstcuda-disable-gir-build-for-cuda-plugi.patch30
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch33
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.6.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.0.imx.bb)27
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-9590-gstgl-1.0-disable-gir-build-for-gl-plugi.patch67
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bb)13
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bbappend (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bbappend)0
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc47
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.6.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.0.imx.bb)14
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc19
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc73
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bb)17
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bbappend (renamed from recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bbappend)0
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.0.imx.bb)12
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch63
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.0.imx.bb)24
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend1
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.6.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.0.imx.bb)10
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0_1.26.6.imx.bb (renamed from recipes-multimedia/gstreamer/gstreamer1.0_1.26.0.imx.bb)16
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-gplay2-fix-termio.h-no-longer-existing.patch35
-rw-r--r--recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb29
-rw-r--r--recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.11.0.bb (renamed from recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.8.0.bb)6
-rw-r--r--recipes-multimedia/imx-parser/imx-parser_4.10.3.bb (renamed from recipes-multimedia/imx-parser/imx-parser_4.10.0.bb)6
-rw-r--r--recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb9
-rw-r--r--recipes-multimedia/libcamera/libcamera_0.6.0.imx.bb115
-rw-r--r--recipes-multimedia/libcamera/neo-ipa-uguzzi_0.2.6.bb35
-rw-r--r--recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb9
-rw-r--r--recipes-multimedia/nxp-afe/nxp-afe_git.bb13
-rw-r--r--recipes-multimedia/pulseaudio/pulseaudio_%.bbappend6
-rw-r--r--recipes-security/optee-imx/optee-client-fslc-imx.inc4
-rw-r--r--recipes-security/optee-imx/optee-client-fslc.inc2
-rw-r--r--recipes-security/optee-imx/optee-client_4.6.0.imx.bb4
-rw-r--r--recipes-security/optee-imx/optee-client_4.8.0.imx.bb4
-rw-r--r--recipes-security/optee-imx/optee-fslc.inc9
-rw-r--r--recipes-security/optee-imx/optee-os-common-fslc-imx.inc3
-rw-r--r--recipes-security/optee-imx/optee-os-fslc-imx.inc2
-rw-r--r--recipes-security/optee-imx/optee-os-fslc.inc11
-rw-r--r--recipes-security/optee-imx/optee-os-tadevkit-fslc-imx.inc5
-rw-r--r--recipes-security/optee-imx/optee-os-tadevkit_4.6.0.imx.bb4
-rw-r--r--recipes-security/optee-imx/optee-os-tadevkit_4.8.0.imx.bb4
-rw-r--r--recipes-security/optee-imx/optee-os_4.6.0.imx.bb6
-rw-r--r--recipes-security/optee-imx/optee-os_4.8.0.imx.bb6
-rw-r--r--recipes-security/optee-imx/optee-test-fslc-imx.inc6
-rw-r--r--recipes-security/optee-imx/optee-test-fslc.inc3
-rw-r--r--recipes-security/optee-imx/optee-test_4.8.0.imx.bb (renamed from recipes-security/optee-imx/optee-test_4.6.0.imx.bb)6
-rw-r--r--recipes-security/optee-qoriq/optee-test.nxp.inc4
-rw-r--r--recipes-security/smw/crypto-af-alg_git.bb21
-rw-r--r--recipes-security/smw/files/0001-Fixed-discarded-qualifiers-error.patch28
-rw-r--r--recipes-security/smw/itest_git.bb34
-rw-r--r--recipes-security/smw/keyctl-caam_git.bb10
-rw-r--r--recipes-security/smw/smw_5.3.bb88
-rw-r--r--recipes-security/smw/smw_git.bb64
224 files changed, 2866 insertions, 1493 deletions
diff --git a/.github/workflows/backport.yaml b/.github/workflows/backport.yaml
index cf3177704..6faabda04 100644
--- a/.github/workflows/backport.yaml
+++ b/.github/workflows/backport.yaml
@@ -1,28 +1,21 @@
1name: Backport labeled merged pull requests 1name: Backport merged pull requests
2on: 2on:
3 pull_request_target: 3 pull_request_target:
4 types: [closed] 4 types: [closed, labeled]
5
6permissions:
7 contents: write
8 pull-requests: write
9
5jobs: 10jobs:
6 build: 11 backport:
7 name: Create backport PRs 12 name: Create backport PRs
8 runs-on: ubuntu-latest 13 runs-on: ubuntu-latest
9 # Only run when pull request is merged 14 # Run on merged PRs that carry a 'backport <branch>' label, whether the
10 # or when a comment containing `/backport` is created 15 # label was added before the merge or afterwards.
11 if: github.event.pull_request.merged 16 if: github.event.pull_request.merged
12 steps: 17 steps:
13 - uses: actions/checkout@v2 18 - uses: actions/checkout@v4
14 with: 19 with:
15 # Required to find all branches
16 fetch-depth: 0 20 fetch-depth: 0
17 - name: Create backport PRs 21 - uses: korthout/backport-action@v4
18 # Should be kept in sync with `version`
19 uses: zeebe-io/backport-action@v0.0.4
20 with:
21 # Required
22 # Version of the backport-action
23 # Must equal the version in `uses`
24 # Recommended: latest tag or `master`
25 version: v0.0.4
26
27 github_token: ${{ secrets.GITHUB_TOKEN }}
28 github_workspace: ${{ github.workspace }}
diff --git a/LICENSE b/LICENSE
index 67b326c9c..69b1cd2fd 100644
--- a/LICENSE
+++ b/LICENSE
@@ -3,14 +3,17 @@
3This file lists all licenses used by recipes in the meta-freescale layer. 3This file lists all licenses used by recipes in the meta-freescale layer.
4 4
5./dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb: LICENSE = "BSD-3-Clause" 5./dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb: LICENSE = "BSD-3-Clause"
6./dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2025q4.bb: LICENSE = "BSD-3-Clause" 6./dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2026q1.bb: LICENSE = "BSD-3-Clause"
7./dynamic-layers/openembedded-layer/recipes-devtools/utp-com/utp-com_git.bb: LICENSE = "GPL-2.0-only"
8./dynamic-layers/openembedded-layer/recipes-devtools/uuu/uuu_git.bb: LICENSE = "BSD-3-Clause"
7./dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb: LICENSE = "MIT" 9./dynamic-layers/openembedded-layer/recipes-dpaa/fmc/fmc_git.bb: LICENSE = "MIT"
10./dynamic-layers/openembedded-layer/recipes-support/opencv/opencv_4.6.0.imx.bb: LICENSE = "Apache-2.0"
8./recipes-bsp/atf/qoriq-atf-2.12.inc: LICENSE = "BSD-3-Clause" 11./recipes-bsp/atf/qoriq-atf-2.12.inc: LICENSE = "BSD-3-Clause"
9./recipes-bsp/boot-format/boot-format_git.bb: LICENSE = "GPL-2.0-only" 12./recipes-bsp/boot-format/boot-format_git.bb: LICENSE = "GPL-2.0-only"
10./recipes-bsp/ddr-phy/ddr-phy_git.bb: LICENSE = "NXP-Binary-EULA" 13./recipes-bsp/ddr-phy/ddr-phy_git.bb: LICENSE = "NXP-Binary-EULA"
11./recipes-bsp/dp-firmware-cadence/dp-firmware-cadence_22.04.bb: LICENSE = "Proprietary" 14./recipes-bsp/dp-firmware-cadence/dp-firmware-cadence_22.04.bb: LICENSE = "Proprietary"
12./recipes-bsp/firmware-imx/firmware-ele-imx_2.0.2.bb: LICENSE = "Proprietary" 15./recipes-bsp/firmware-imx/firmware-ele-imx_2.0.5.bb: LICENSE = "Proprietary"
13./recipes-bsp/firmware-imx/firmware-imx-8.28.inc: LICENSE = "Proprietary" 16./recipes-bsp/firmware-imx/firmware-imx-8.31.inc: LICENSE = "Proprietary"
14./recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb: LICENSE = "Proprietary" 17./recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb: LICENSE = "Proprietary"
15./recipes-bsp/firmware-imx/firmware-sof-imx_2.3.0.bb: LICENSE = "BSD-3-Clause" 18./recipes-bsp/firmware-imx/firmware-sof-imx_2.3.0.bb: LICENSE = "BSD-3-Clause"
16./recipes-bsp/firmware-upower/firmware-upower_1.3.1.bb: LICENSE = "Proprietary" 19./recipes-bsp/firmware-upower/firmware-upower_1.3.1.bb: LICENSE = "Proprietary"
@@ -27,14 +30,14 @@ This file lists all licenses used by recipes in the meta-freescale layer.
27./recipes-bsp/imx-test/imx-test_00.00.00.bb: LICENSE = "MIT" 30./recipes-bsp/imx-test/imx-test_00.00.00.bb: LICENSE = "MIT"
28./recipes-bsp/imx-test/imx-test_git.bb: LICENSE = "GPL-2.0-or-later" 31./recipes-bsp/imx-test/imx-test_git.bb: LICENSE = "GPL-2.0-or-later"
29./recipes-bsp/imx-uuc/imx-uuc_git.bb: LICENSE = "GPL-2.0-only" 32./recipes-bsp/imx-uuc/imx-uuc_git.bb: LICENSE = "GPL-2.0-only"
30./recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.10.1.bb: LICENSE = "Proprietary" 33./recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.11.0.bb: LICENSE = "Proprietary"
31./recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.5.0.bb: LICENSE = "MIT" 34./recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.9.0.bb: LICENSE = "MIT"
32./recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.36.0.bb: LICENSE = "Proprietary" 35./recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.40.0.bb: LICENSE = "Proprietary"
33./recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb: LICENSE = "Proprietary" 36./recipes-bsp/imx-vpu/imx-vpu_5.4.39.3.bb: LICENSE = "Proprietary"
34./recipes-bsp/inphi/inphi_git.bb: LICENSE = "NXP-Binary-EULA" 37./recipes-bsp/inphi/inphi_git.bb: LICENSE = "NXP-Binary-EULA"
35./recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb: LICENSE = "Proprietary" 38./recipes-bsp/isp-imx/basler-camera_4.2.2.26.1.bb: LICENSE = "Proprietary"
36./recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb: LICENSE = "Proprietary" 39./recipes-bsp/isp-imx/isp-imx_4.2.2.26.1.bb: LICENSE = "Proprietary"
37./recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb: LICENSE = "LGPL-2.1-only" 40./recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.2.0.bb: LICENSE = "LGPL-2.1-only"
38./recipes-bsp/ls2-phy/ls2-phy_git.bb: LICENSE = "NXP-Binary-EULA" 41./recipes-bsp/ls2-phy/ls2-phy_git.bb: LICENSE = "NXP-Binary-EULA"
39./recipes-bsp/mc-utils/mc-utils_git.bb: LICENSE = "BSD-3-Clause" 42./recipes-bsp/mc-utils/mc-utils_git.bb: LICENSE = "BSD-3-Clause"
40./recipes-bsp/mxsldr/mxsldr_git.bb: LICENSE = "GPL-2.0-or-later" 43./recipes-bsp/mxsldr/mxsldr_git.bb: LICENSE = "GPL-2.0-or-later"
@@ -49,12 +52,12 @@ This file lists all licenses used by recipes in the meta-freescale layer.
49./recipes-core/udev/udev-rules-imx.bb: LICENSE = "MIT" 52./recipes-core/udev/udev-rules-imx.bb: LICENSE = "MIT"
50./recipes-core/udev/udev-rules-qoriq.bb: LICENSE = "MIT" 53./recipes-core/udev/udev-rules-qoriq.bb: LICENSE = "MIT"
51./recipes-devtools/devregs/devregs_git.bb: LICENSE = "GPL-2.0-only" 54./recipes-devtools/devregs/devregs_git.bb: LICENSE = "GPL-2.0-only"
55./recipes-devtools/half/half_2.1.0.bb: LICENSE = "MIT"
52./recipes-devtools/imx-usb-loader/imx-usb-loader_git.bb: LICENSE = "LGPL-2.1-only" 56./recipes-devtools/imx-usb-loader/imx-usb-loader_git.bb: LICENSE = "LGPL-2.1-only"
53./recipes-devtools/qemu/qemu-qoriq.inc: LICENSE = "GPL-2.0-only & LGPL-2.1-only" 57./recipes-devtools/qemu/qemu-qoriq.inc: LICENSE = "GPL-2.0-only & LGPL-2.1-only"
54./recipes-devtools/qoriq-cst/qoriq-cst_git.bb: LICENSE = "BSD-3-Clause" 58./recipes-devtools/qoriq-cst/qoriq-cst_git.bb: LICENSE = "BSD-3-Clause"
55./recipes-devtools/utp-com/utp-com_git.bb: LICENSE = "GPL-2.0-only" 59./recipes-devtools/stb/stb_git.bb: LICENSE = "MIT"
56./recipes-devtools/uuu/uuu-bin_1.5.233.bb: LICENSE = "BSD-3-Clause & LGPL-2.1-or-later" 60./recipes-devtools/uuu/uuu-bin_1.5.233.bb: LICENSE = "BSD-3-Clause & LGPL-2.1-or-later"
57./recipes-devtools/uuu/uuu_git.bb: LICENSE = "BSD-3-Clause"
58./recipes-downgrade/glslang/glslang_1.3.275.0.imx.bb: LICENSE = "BSD-3-Clause & BSD-2-Clause & MIT & Apache-2.0 & GPL-3-with-bison-exception" 61./recipes-downgrade/glslang/glslang_1.3.275.0.imx.bb: LICENSE = "BSD-3-Clause & BSD-2-Clause & MIT & Apache-2.0 & GPL-3-with-bison-exception"
59./recipes-downgrade/spir/spirv-headers_1.3.275.0.imx.bb: LICENSE = "MIT" 62./recipes-downgrade/spir/spirv-headers_1.3.275.0.imx.bb: LICENSE = "MIT"
60./recipes-downgrade/spir/spirv-tools_1.3.275.0.imx.bb: LICENSE = "Apache-2.0" 63./recipes-downgrade/spir/spirv-tools_1.3.275.0.imx.bb: LICENSE = "Apache-2.0"
@@ -86,28 +89,41 @@ This file lists all licenses used by recipes in the meta-freescale layer.
86./recipes-extended/skmm-ep/skmm-ep_git.bb: LICENSE = "BSD & GPL-2.0-only" 89./recipes-extended/skmm-ep/skmm-ep_git.bb: LICENSE = "BSD & GPL-2.0-only"
87./recipes-extended/testfloat/testfloat_2a.bb: LICENSE = "TestFloat" 90./recipes-extended/testfloat/testfloat_2a.bb: LICENSE = "TestFloat"
88./recipes-extended/tsntool/tsntool_git.bb: LICENSE = "GPL-2.0-only" 91./recipes-extended/tsntool/tsntool_git.bb: LICENSE = "GPL-2.0-only"
92./recipes-fsl/fsl-rc-local/fsl-rc-local.bb: LICENSE = "LGPL-2.0-only"
93./recipes-fsl/images/fsl-image-machine-test.bb: LICENSE = "MIT"
89./recipes-fsl/images/fsl-image-mfgtool-initramfs.bb: LICENSE = "MIT" 94./recipes-fsl/images/fsl-image-mfgtool-initramfs.bb: LICENSE = "MIT"
95./recipes-fsl/images/fsl-image-multimedia.bb: LICENSE = "MIT"
96./recipes-fsl/images/fsl-image-network-full-cmdline.bb: LICENSE = "MIT"
90./recipes-fsl/mcore-demos/imx-mcore-demos.inc: LICENSE = "Proprietary" 97./recipes-fsl/mcore-demos/imx-mcore-demos.inc: LICENSE = "Proprietary"
98./recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-commercial.bb: LICENSE_FLAGS = "commercial"
91./recipes-fsl/packagegroups/packagegroup-fsl-mfgtool.bb: LICENSE = "MIT" 99./recipes-fsl/packagegroups/packagegroup-fsl-mfgtool.bb: LICENSE = "MIT"
92./recipes-graphics/drm/libdrm_2.4.123.imx.bb: LICENSE = "MIT" 100./recipes-fsl/packagegroups/packagegroup-imx-tools-audio.bb: LICENSE = "MIT"
93./recipes-graphics/imx-g2d/imx-dpu-g2d_2.4.0.0.bb: LICENSE = "Proprietary" 101./recipes-graphics/devil/devil_1.8.0.bb: LICENSE = "LGPL-2.1-only"
102./recipes-graphics/drm/libdrm_2.4.127.imx.bb: LICENSE = "MIT"
103./recipes-graphics/gli/gli_0.8.4.0.bb: LICENSE = "MIT"
104./recipes-graphics/imx-g2d/imx-dpu-g2d_2.5.0.2.bb: LICENSE = "Proprietary"
94./recipes-graphics/imx-g2d/imx-g2d-samples_git.bb: LICENSE = "BSD-3-Clause" 105./recipes-graphics/imx-g2d/imx-g2d-samples_git.bb: LICENSE = "BSD-3-Clause"
95./recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p3.2.bb: LICENSE = "Proprietary" 106./recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p4.4.bb: LICENSE = "Proprietary"
96./recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb: LICENSE = "Proprietary" 107./recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb: LICENSE = "Proprietary"
97./recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.0.0.bb: LICENSE = "MIT" 108./recipes-graphics/imx-gpu-apitrace/imx-gpu-apitrace_10.0.0.bb: LICENSE = "MIT"
109./recipes-graphics/imx-gpu-sdk/imx-gpu-sdk_6.1.1.bb: LICENSE = "BSD-3-Clause"
110./recipes-graphics/imx-gpu-sdk/libxdg-shell.bb: LICENSE = "BSD-3-Clause"
98./recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc: LICENSE = "Proprietary" 111./recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc: LICENSE = "Proprietary"
99./recipes-graphics/mali/mali-imx_r54.0.bb: LICENSE = "Proprietary" 112./recipes-graphics/mali/mali-imx_r54.0.bb: LICENSE = "Proprietary"
100./recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb: LICENSE = "MIT" 113./recipes-graphics/mesa/mesa-etnaviv-env_0.1.bb: LICENSE = "MIT"
114./recipes-graphics/rapidopencl/rapidopencl_1.1.0.1.bb: LICENSE = "BSD-3-Clause"
115./recipes-graphics/rapidopenvx/rapidopenvx_1.1.0.bb: LICENSE = "BSD-3-Clause"
116./recipes-graphics/rapidvulkan/rapidvulkan_1.2.162.0.bb: LICENSE = "BSD-3-Clause"
117./recipes-graphics/vulkan/assimp_5.4.3.bb: LICENSE = "BSD-3-Clause"
101./recipes-graphics/vulkan/vulkan-wsi-layer_git.bb: LICENSE = "MIT" 118./recipes-graphics/vulkan/vulkan-wsi-layer_git.bb: LICENSE = "MIT"
102./recipes-graphics/wayland/weston_10.0.5.imx.bb: LICENSE = "MIT" 119./recipes-graphics/wayland/weston_10.0.5.imx.bb: LICENSE = "MIT"
103./recipes-graphics/wayland/weston_14.0.2.imx.bb: LICENSE = "MIT" 120./recipes-graphics/wayland/weston_14.0.2.imx.bb: LICENSE = "MIT"
104./recipes-graphics/xwayland/xwayland_24.1.6.imx.bb: LICENSE = "MIT"
105./recipes-kernel/ceetm/ceetm_git.bb: LICENSE = "GPL-2.0-only" 121./recipes-kernel/ceetm/ceetm_git.bb: LICENSE = "GPL-2.0-only"
106./recipes-kernel/kernel-modules/kernel-module-ar_git.bb: LICENSE = "GPL-2.0-only & BSD" 122./recipes-kernel/kernel-modules/kernel-module-ar_git.bb: LICENSE = "GPL-2.0-only & BSD"
107./recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p2.2+fslc.bb: LICENSE = "GPL-2.0-only" 123./recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p2.2+fslc.bb: LICENSE = "GPL-2.0-only"
108./recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.2.bb: LICENSE = "GPL-2.0-only" 124./recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.4.bb: LICENSE = "GPL-2.0-only"
109./recipes-kernel/kernel-modules/kernel-module-ipc.inc: LICENSE = "BSD" 125./recipes-kernel/kernel-modules/kernel-module-ipc.inc: LICENSE = "BSD"
110./recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.25.4.bb: LICENSE = "GPL-2.0-only" 126./recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.26.1.bb: LICENSE = "GPL-2.0-only"
111./recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb: LICENSE = "GPL-2.0-or-later" 127./recipes-kernel/kernel-modules/kernel-module-ls-debug_git.bb: LICENSE = "GPL-2.0-or-later"
112./recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb: LICENSE = "GPL-2.0-only" 128./recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb: LICENSE = "GPL-2.0-only"
113./recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb: LICENSE = "GPL-2.0-only" 129./recipes-kernel/kernel-modules/kernel-module-uio-seville_0.1.bb: LICENSE = "GPL-2.0-only"
@@ -119,29 +135,32 @@ This file lists all licenses used by recipes in the meta-freescale layer.
119./recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb: LICENSE = "Apache-2.0" 135./recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb: LICENSE = "Apache-2.0"
120./recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb: LICENSE = "Apache-2.0 & GPL-2.0-only & BSD-3-Clause" 136./recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb: LICENSE = "Apache-2.0 & GPL-2.0-only & BSD-3-Clause"
121./recipes-multimedia/alsa/imx-alsa-plugins_git.bb: LICENSE = "GPL-2.0-only" 137./recipes-multimedia/alsa/imx-alsa-plugins_git.bb: LICENSE = "GPL-2.0-only"
122./recipes-multimedia/gstreamer/gst-devtools_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 138./recipes-multimedia/gstreamer/gst-devtools_1.26.6.bb: LICENSE = "LGPL-2.1-or-later"
123./recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb: LICENSE = "LGPL-2.0-or-later" 139./recipes-multimedia/gstreamer/gst-examples_1.26.6.bb: LICENSE = "LGPL-2.0-or-later"
124./recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.0.imx.bb: LICENSE_FLAGS = "commercial" 140./recipes-multimedia/gstreamer/gst-variable-rtsp-server_1.0.bb: LICENSE = "GPL-3.0-only"
141./recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.6.bb: LICENSE_FLAGS = "commercial"
125LICENSE = "LGPL-2.1-or-later" 142LICENSE = "LGPL-2.1-or-later"
126./recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" 143./recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.6.imx.bb: LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
127./recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 144./recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bb: LICENSE = "LGPL-2.1-or-later"
128./recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 145./recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.6.imx.bb: LICENSE = "LGPL-2.1-or-later"
129./recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb: LICENSE = "LGPL-2.0-or-later" 146./recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb: LICENSE = "LGPL-2.0-or-later"
130./recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" 147./recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bb: LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
131LICENSE_FLAGS = "commercial" 148LICENSE_FLAGS = "commercial"
132./recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 149./recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.6.bb: LICENSE = "LGPL-2.1-or-later"
133./recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 150./recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.6.bb: LICENSE = "LGPL-2.1-or-later"
134./recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 151./recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.6.bb: LICENSE = "LGPL-2.1-or-later"
135./recipes-multimedia/gstreamer/gstreamer1.0_1.26.0.imx.bb: LICENSE = "LGPL-2.1-or-later" 152./recipes-multimedia/gstreamer/gstreamer1.0_1.26.6.imx.bb: LICENSE = "LGPL-2.1-or-later"
136./recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb: LICENSE = "GPL-2.0-only & LGPL-2.0-only & LGPL-2.1-only" 153./recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb: LICENSE = "GPL-2.0-only & LGPL-2.0-only & LGPL-2.1-only"
137./recipes-multimedia/imx-codec/imx-codec_4.10.0.bb: LICENSE = "Proprietary" 154./recipes-multimedia/imx-codec/imx-codec_4.10.0.bb: LICENSE = "Proprietary"
138./recipes-multimedia/imx-dsp/imx-dsp-codec-ext_2.1.8.bb: LICENSE = "Proprietary" 155./recipes-multimedia/imx-dsp/imx-dsp-codec-ext_2.1.8.bb: LICENSE = "Proprietary"
139./recipes-multimedia/imx-dsp/imx-dsp_2.1.10.bb: LICENSE = "Proprietary" 156./recipes-multimedia/imx-dsp/imx-dsp_2.1.10.bb: LICENSE = "Proprietary"
140./recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.2.bb: LICENSE = "Proprietary" 157./recipes-multimedia/imx-dspc-asrc/imx-dspc-asrc_1.0.2.bb: LICENSE = "Proprietary"
141./recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.8.0.bb: LICENSE = "Proprietary" 158./recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.11.0.bb: LICENSE = "Proprietary"
142./recipes-multimedia/imx-parser/imx-parser_4.10.0.bb: LICENSE = "Proprietary" 159./recipes-multimedia/imx-parser/imx-parser_4.10.3.bb: LICENSE = "Proprietary"
143./recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.3.bb: LICENSE = "Proprietary" 160./recipes-multimedia/imx-sw-pdm/imx-sw-pdm_1.0.3.bb: LICENSE = "Proprietary"
144./recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb: LICENSE = "Proprietary" 161./recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb: LICENSE = "Proprietary"
162./recipes-multimedia/libcamera/libcamera_0.6.0.imx.bb: LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
163./recipes-multimedia/libcamera/neo-ipa-uguzzi_0.2.6.bb: LICENSE = "Apache-2.0 & BSD-2-Clause & GPL-2.0-or-later & LGPL-2.1-or-later & MIT & Proprietary"
145./recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.3.1.bb: LICENSE = "LGPL-2.1-only" 164./recipes-multimedia/libimxvpuapi/libimxvpuapi2_2.3.1.bb: LICENSE = "LGPL-2.1-only"
146./recipes-multimedia/libimxvpuapi/libimxvpuapi_git.bb: LICENSE = "LGPL-2.1-only" 165./recipes-multimedia/libimxvpuapi/libimxvpuapi_git.bb: LICENSE = "LGPL-2.1-only"
147./recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb: LICENSE = "Proprietary" 166./recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb: LICENSE = "Proprietary"
@@ -150,7 +169,8 @@ LICENSE_FLAGS = "commercial"
150./recipes-security/optee-imx/optee-client-fslc.inc: LICENSE = "BSD-2-Clause" 169./recipes-security/optee-imx/optee-client-fslc.inc: LICENSE = "BSD-2-Clause"
151./recipes-security/optee-imx/optee-os-fslc.inc: LICENSE = "BSD-2-Clause" 170./recipes-security/optee-imx/optee-os-fslc.inc: LICENSE = "BSD-2-Clause"
152./recipes-security/optee-imx/optee-test-fslc.inc: LICENSE = "BSD-2-Clause & GPL-2.0-only" 171./recipes-security/optee-imx/optee-test-fslc.inc: LICENSE = "BSD-2-Clause & GPL-2.0-only"
172./recipes-security/smw/crypto-af-alg_git.bb: LICENSE = "BSD-3-Clause"
173./recipes-security/smw/itest_git.bb: LICENSE = "BSD-3-Clause"
153./recipes-security/smw/keyctl-caam_git.bb: LICENSE = "BSD-3-Clause" 174./recipes-security/smw/keyctl-caam_git.bb: LICENSE = "BSD-3-Clause"
154./recipes-security/smw/smw_git.bb: LICENSE = "BSD-3-Clause" 175./recipes-security/smw/smw_5.3.bb: LICENSE = "BSD-3-Clause"
155LICENSE = "Apache-2.0 & BSD-3-Clause & Zlib" 176LICENSE = "Apache-2.0 & BSD-3-Clause & Zlib"
156./recipes-support/opencv/opencv_4.6.0.imx.bb: LICENSE = "Apache-2.0"
diff --git a/README.md b/README.md
index 91ffff93b..03f71b45a 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,11 @@ Welcome to `meta-freescale`. This document outlines our commitment to providing
4 4
5This layer provides support for NXP's platforms for use with OpenEmbedded and/or Yocto Project. 5This layer provides support for NXP's platforms for use with OpenEmbedded and/or Yocto Project.
6 6
7### Dependencies 7## Maintainer
8
9Otavio Salvador <otavio.salvador@ossystems.com.br>
10
11## Dependencies
8 12
9This layer depends on: 13This layer depends on:
10 14
diff --git a/SECURITY.md b/SECURITY.md
new file mode 100644
index 000000000..3ebe6e61f
--- /dev/null
+++ b/SECURITY.md
@@ -0,0 +1,17 @@
1# How to Report a Potential Vulnerability
2
3 Confirmed or potential security vulnerabilities in the meta-freescale layer
4 should be submitted through the
5 [Issues](https://github.com/Freescale/meta-freescale/issues) page.
6
7 For urgent or not-yet-released issues, contact the maintainer listed in the
8 [README](README.md). Include:
9
10 - The affected layer or software module
11 - The recipe and its version
12 - Example code, if available
13
14 ## Branches Maintained with Security Fixes
15
16 See the [Yocto Project release list](https://wiki.yoctoproject.org/wiki/Releases).
17 Security patches are accepted for the LTS releases and the master branch.
diff --git a/classes/imx-boot-container.bbclass b/classes/imx-boot-container.bbclass
index 57ec558c6..5365e5fd7 100644
--- a/classes/imx-boot-container.bbclass
+++ b/classes/imx-boot-container.bbclass
@@ -1,6 +1,6 @@
1# 1#
2# This class provides a support to build the boot container for 2# This class provides a support to build the boot container for
3# i.MX8M and i.MX95 derivatives 3# i.MX8M, i.MX91, i.MX93 and i.MX95 derivatives
4# 4#
5# imx8m machines require a separate build target to be executed 5# imx8m machines require a separate build target to be executed
6# due to the fact that final boot image is constructed using flash.bin 6# due to the fact that final boot image is constructed using flash.bin
@@ -26,7 +26,7 @@
26inherit use-imx-security-controller-firmware 26inherit use-imx-security-controller-firmware
27 27
28# Define ATF binary file to be deployed to the U-Boot build folder 28# Define ATF binary file to be deployed to the U-Boot build folder
29ATF_MACHINE_NAME = "bl31-${ATF_PLATFORM}.bin" 29ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
30ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}" 30ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
31 31
32OEI_NAME ?= "oei-${OEI_CORE}-*.bin" 32OEI_NAME ?= "oei-${OEI_CORE}-*.bin"
@@ -36,6 +36,12 @@ IMX_BOOT_CONTAINER_FIRMWARE_SOC:mx8mq-generic-bsp = " \
36 signed_dp_imx8m.bin \ 36 signed_dp_imx8m.bin \
37 signed_hdmi_imx8m.bin \ 37 signed_hdmi_imx8m.bin \
38" 38"
39IMX_BOOT_CONTAINER_FIRMWARE_SOC:mx91-generic-bsp = " \
40 ${SECO_FIRMWARE_NAME} \
41"
42IMX_BOOT_CONTAINER_FIRMWARE_SOC:mx93-generic-bsp = " \
43 ${SECO_FIRMWARE_NAME} \
44"
39IMX_BOOT_CONTAINER_FIRMWARE_SOC:mx95-generic-bsp = " \ 45IMX_BOOT_CONTAINER_FIRMWARE_SOC:mx95-generic-bsp = " \
40 ${SECO_FIRMWARE_NAME} \ 46 ${SECO_FIRMWARE_NAME} \
41 ${OEI_NAME} \ 47 ${OEI_NAME} \
diff --git a/classes/qoriq_build_64bit_kernel.bbclass b/classes/qoriq_build_64bit_kernel.bbclass
index 5186c2a41..9c8f9ce7d 100644
--- a/classes/qoriq_build_64bit_kernel.bbclass
+++ b/classes/qoriq_build_64bit_kernel.bbclass
@@ -12,7 +12,7 @@ python () {
12 d.setVar('KERNEL_LD', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ld.bfd' + d.getVar('HOST_LD_KERNEL_ARCH', False) + tc_options) 12 d.setVar('KERNEL_LD', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ld.bfd' + d.getVar('HOST_LD_KERNEL_ARCH', False) + tc_options)
13 d.setVar('KERNEL_AR', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ar' + d.getVar('HOST_AR_KERNEL_ARCH', False)) 13 d.setVar('KERNEL_AR', d.getVar('CCACHE', False) + sys_multilib + '-' + 'ar' + d.getVar('HOST_AR_KERNEL_ARCH', False))
14 14
15 error_qa = d.getVar('ERROR_QA') 15 error_qa = (d.getVar('ERROR_QA') or '').split()
16 if 'arch' in error_qa: 16 if 'arch' in error_qa:
17 d.setVar('ERROR_QA', error_qa.replace(' arch', '')) 17 d.setVar('ERROR_QA', ' '.join(flag for flag in error_qa if flag != 'arch'))
18} 18}
diff --git a/conf/fragments/bsp/fslc.conf b/conf/fragments/bsp/fslc.conf
new file mode 100644
index 000000000..4cf33a1b7
--- /dev/null
+++ b/conf/fragments/bsp/fslc.conf
@@ -0,0 +1,8 @@
1BB_CONF_FRAGMENT_SUMMARY = "Use FSLC BSP components (linux-fslc, u-boot-fslc)"
2BB_CONF_FRAGMENT_DESCRIPTION = "Sets IMX_DEFAULT_BSP = 'mainline' and selects the FSLC \
3linux-fslc kernel and u-boot-fslc bootloader as defaults for i.MX builds. \
4Note: DISTRO = 'poky' is used as-is; TARGET_VENDOR and DISTROOVERRIDES from \
5the legacy fslc-base.inc are not carried over."
6
7IMX_DEFAULT_BSP = "mainline"
8IMX_DEFAULT_BOOTLOADER = "u-boot-fslc"
diff --git a/conf/fragments/bsp/nxp.conf b/conf/fragments/bsp/nxp.conf
new file mode 100644
index 000000000..8a13b96ff
--- /dev/null
+++ b/conf/fragments/bsp/nxp.conf
@@ -0,0 +1,32 @@
1BB_CONF_FRAGMENT_SUMMARY = "Use NXP downstream BSP components (linux-imx, u-boot-imx)"
2BB_CONF_FRAGMENT_DESCRIPTION = "Sets IMX_DEFAULT_BSP = 'nxp' and selects NXP downstream \
3providers for the kernel, bootloader, and GStreamer plugins on mx6/mx7/mx8/mx9 SoCs. \
4Requires a layer providing linux-imx and u-boot-imx (e.g. meta-imx). \
5Note: DISTRO = 'poky' is used as-is; TARGET_VENDOR and DISTROOVERRIDES from \
6the legacy fsl-base.inc are not carried over."
7
8IMX_DEFAULT_BSP = "nxp"
9IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
10
11PREFERRED_PROVIDER_virtual/kernel:mx6-nxp-bsp = "linux-imx"
12PREFERRED_PROVIDER_virtual/kernel:mx7-nxp-bsp = "linux-imx"
13PREFERRED_PROVIDER_virtual/kernel:mx8-nxp-bsp = "linux-imx"
14PREFERRED_PROVIDER_virtual/kernel:mx9-nxp-bsp = "linux-imx"
15
16MACHINE_GSTREAMER_1_0_PLUGIN:mx6-nxp-bsp = "imx-gst1.0-plugin"
17MACHINE_GSTREAMER_1_0_PLUGIN:mx7-nxp-bsp = "imx-gst1.0-plugin"
18MACHINE_GSTREAMER_1_0_PLUGIN:mx8-nxp-bsp = "imx-gst1.0-plugin"
19MACHINE_GSTREAMER_1_0_PLUGIN:mx9-nxp-bsp = "imx-gst1.0-plugin"
20
21PREFERRED_VERSION_gstreamer1.0 ??= "1.24.7.imx"
22PREFERRED_VERSION_gstreamer1.0-plugins-bad ??= "1.24.7.imx"
23PREFERRED_VERSION_gstreamer1.0-plugins-base ??= "1.24.7.imx"
24PREFERRED_VERSION_gstreamer1.0-plugins-good ??= "1.24.7.imx"
25PREFERRED_VERSION_gst-devtools ??= "1.24.0.imx"
26PREFERRED_VERSION_gstreamer1.0-libav ??= "1.24.0.imx"
27PREFERRED_VERSION_gstreamer1.0-plugins-ugly ??= "1.24.0.imx"
28PREFERRED_VERSION_gstreamer1.0-python ??= "1.24.0.imx"
29PREFERRED_VERSION_gstreamer1.0-rtsp-server ??= "1.24.0.imx"
30PREFERRED_VERSION_gstreamer1.0-vaapi ??= "1.24.0.imx"
31
32PACKAGECONFIG:append:pn-pulseaudio = " autospawn-for-root"
diff --git a/conf/fragments/graphics/x11.conf b/conf/fragments/graphics/x11.conf
new file mode 100644
index 000000000..11fb07b88
--- /dev/null
+++ b/conf/fragments/graphics/x11.conf
@@ -0,0 +1,5 @@
1BB_CONF_FRAGMENT_SUMMARY = "Enable X11 display backend"
2BB_CONF_FRAGMENT_DESCRIPTION = "Enables X11 display backend while removing Wayland support."
3
4DISTRO_FEATURES:remove = "wayland"
5DISTRO_FEATURES:append = " x11"
diff --git a/conf/layer.conf b/conf/layer.conf
index ad2f52d75..c91f4c4f8 100644
--- a/conf/layer.conf
+++ b/conf/layer.conf
@@ -57,6 +57,8 @@ BBFILES_DYNAMIC += " \
57 multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bb \ 57 multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bb \
58 multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bbappend \ 58 multimedia-layer:${LAYERDIR}/dynamic-layers/multimedia-layer/*/*/*.bbappend \
59 \ 59 \
60 networking-layer:${LAYERDIR}/dynamic-layers/networking-layer/*/*/*.bbappend \
61 \
60 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \ 62 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bb \
61 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \ 63 openembedded-layer:${LAYERDIR}/dynamic-layers/openembedded-layer/*/*/*.bbappend \
62 \ 64 \
diff --git a/conf/machine/imx6ullevk.conf b/conf/machine/imx6ullevk.conf
index a9ff8bf10..b419bb1d4 100644
--- a/conf/machine/imx6ullevk.conf
+++ b/conf/machine/imx6ullevk.conf
@@ -11,7 +11,7 @@ include conf/machine/include/arm/armv7a/tune-cortexa7.inc
11 11
12MACHINE_FIRMWARE:append = " firmware-imx-epdc" 12MACHINE_FIRMWARE:append = " firmware-imx-epdc"
13 13
14MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8801-sdio nxp8987-sdio" 14MACHINE_FEATURES += "wifi bluetooth bcm4339 bcm43455 nxp8987-sdio"
15MACHINE_FEATURES:append:use-nxp-bsp = " nxpwifi-all-sdio" 15MACHINE_FEATURES:append:use-nxp-bsp = " nxpwifi-all-sdio"
16 16
17KERNEL_DEVICETREE = " \ 17KERNEL_DEVICETREE = " \
diff --git a/conf/machine/imx8mnul-ddr3l-evk.conf b/conf/machine/imx8mnul-ddr3l-evk.conf
index a71ec3019..1ee50439d 100644
--- a/conf/machine/imx8mnul-ddr3l-evk.conf
+++ b/conf/machine/imx8mnul-ddr3l-evk.conf
@@ -14,7 +14,7 @@ MACHINE_FEATURES += "wifi bluetooth bcm43455 bcm4356"
14# NXP BSP can consume proprietary jailhouse and Broadcom drivers 14# NXP BSP can consume proprietary jailhouse and Broadcom drivers
15# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have 15# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
16# a full support for it yet. 16# a full support for it yet.
17MACHINE_FEATURES:append:use-nxp-bsp = " optee jailhouse bcm4359 nxpwifi-all-sdio" 17MACHINE_FEATURES:append:use-nxp-bsp = " optee bcm4359 nxpwifi-all-sdio"
18 18
19KERNEL_DEVICETREE_BASENAME = "imx8mn-ddr3l-evk" 19KERNEL_DEVICETREE_BASENAME = "imx8mn-ddr3l-evk"
20KERNEL_DEVICETREE = " \ 20KERNEL_DEVICETREE = " \
diff --git a/conf/machine/imx8mq-evk.conf b/conf/machine/imx8mq-evk.conf
index 9e5c27b43..9974928db 100644
--- a/conf/machine/imx8mq-evk.conf
+++ b/conf/machine/imx8mq-evk.conf
@@ -14,7 +14,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc
14# inline NEON and FPU code generation 14# inline NEON and FPU code generation
15DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto" 15DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
16 16
17MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356 nxp8997-pcie nxp8997-sdio nxp9098-pcie nxp9098-sdio" 17MACHINE_FEATURES += "pci wifi bluetooth bcm43455 bcm4356 nxp9098-pcie nxp9098-sdio"
18MACHINE_FEATURES:append:use-nxp-bsp = " optee bcm4359 jailhouse nxpwifi-all-pcie nxpwifi-all-sdio" 18MACHINE_FEATURES:append:use-nxp-bsp = " optee bcm4359 jailhouse nxpwifi-all-pcie nxpwifi-all-sdio"
19 19
20MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d" 20MACHINE_SOCARCH_FILTER:append:mx8mq = " virtual/libopenvg virtual/libgles1 virtual/libgles2 virtual/egl virtual/mesa virtual/libgl virtual/libg2d"
diff --git a/conf/machine/imx8qm-mek.conf b/conf/machine/imx8qm-mek.conf
index bb65ae13e..4eef2bce8 100644
--- a/conf/machine/imx8qm-mek.conf
+++ b/conf/machine/imx8qm-mek.conf
@@ -11,7 +11,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa72-cortexa53.inc
11 11
12IMX_DEFAULT_BSP = "nxp" 12IMX_DEFAULT_BSP = "nxp"
13 13
14MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie" 14MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp9098-pcie"
15MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359 nxpwifi-all-pcie nxpwifi-all-sdio" 15MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359 nxpwifi-all-pcie nxpwifi-all-sdio"
16 16
17# Don't include kernels in standard images 17# Don't include kernels in standard images
@@ -107,8 +107,8 @@ IMAGE_BOOT_FILES += "hdmitxfw.bin hdmirxfw.bin dpfw.bin"
107ATF_PLATFORM = "imx8qm" 107ATF_PLATFORM = "imx8qm"
108 108
109IMXBOOT_TARGETS_SD = \ 109IMXBOOT_TARGETS_SD = \
110 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl', \ 110 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl flash_linux_m4', \
111 'flash flash_ca72', d)}" 111 'flash flash_ca72 flash_regression_linux_m4', d)}"
112IMXBOOT_TARGETS_FSPI = \ 112IMXBOOT_TARGETS_FSPI = \
113 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \ 113 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \
114 'flash_flexspi', d)}" 114 'flash_flexspi', d)}"
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc
index 8810085d6..6a0fe3f11 100644
--- a/conf/machine/include/imx-base.inc
+++ b/conf/machine/include/imx-base.inc
@@ -467,22 +467,10 @@ MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm43455',
467MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}" 467MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'bcm4356', 'linux-firmware-bcm4356-pcie', '', d)}"
468 468
469# Extra NXP Wi-Fi and Bluetooth driver firmware and driver 469# Extra NXP Wi-Fi and Bluetooth driver firmware and driver
470MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8801-sdio', 'firmware-nxp-wifi-nxp8801-sdio', '', d)}"
471MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8801-sdio', 'kernel-module-nxp-wlan', '', d)}"
472
473MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'firmware-nxp-wifi-nxp8987-sdio', '', d)}" 470MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'firmware-nxp-wifi-nxp8987-sdio', '', d)}"
474MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'kernel-module-nxp-wlan', '', d)}" 471MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8987-sdio', 'kernel-module-nxp-wlan', '', d)}"
475PREFERRED_RPROVIDER_linux-firmware-nxp8987-sdio = "firmware-nxp-wifi" 472PREFERRED_RPROVIDER_linux-firmware-nxp8987-sdio = "firmware-nxp-wifi"
476 473
477MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-pcie', 'firmware-nxp-wifi-nxp8997-pcie', '', d)}"
478MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-pcie', 'kernel-module-nxp-wlan', '', d)}"
479PREFERRED_RPROVIDER_linux-firmware-nxp8997-common = "firmware-nxp-wifi"
480PREFERRED_RPROVIDER_linux-firmware-nxp8997-pcie = "firmware-nxp-wifi"
481
482MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-sdio', 'firmware-nxp-wifi-nxp8997-sdio', '', d)}"
483MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp8997-sdio', 'kernel-module-nxp-wlan', '', d)}"
484PREFERRED_RPROVIDER_linux-firmware-nxp8997-sdio = "firmware-nxp-wifi"
485
486MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'firmware-nxp-wifi-nxp9098-pcie', '', d)}" 474MACHINE_FIRMWARE:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'firmware-nxp-wifi-nxp9098-pcie', '', d)}"
487MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'kernel-module-nxp-wlan', '', d)}" 475MACHINE_EXTRA_RRECOMMENDS:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'nxp9098-pcie', 'kernel-module-nxp-wlan', '', d)}"
488PREFERRED_RPROVIDER_linux-firmware-nxp9098-common = "firmware-nxp-wifi" 476PREFERRED_RPROVIDER_linux-firmware-nxp9098-common = "firmware-nxp-wifi"
@@ -513,9 +501,12 @@ MACHINE_EXTRA_RRECOMMENDS += " \
513 ${@bb.utils.filter('COMBINED_FEATURES', 'jailhouse', d)} \ 501 ${@bb.utils.filter('COMBINED_FEATURES', 'jailhouse', d)} \
514" 502"
515 503
516# ELE extra Firmware 504# ELE extra Firmware,to be installed and accessed from userspace.
517SECOEXT_FIRMWARE_NAME ?= "UNDEFINED" 505# Note that multiple names can be given in order to install multiple versions
506# to a single rootfs.
507SECOEXT_FIRMWARE_NAME ?= ""
518SECOEXT_FIRMWARE_NAME:mx8ulp-generic-bsp ?= "mx8ulp${IMX_SOC_REV_LOWER}ext-ahab-container.img" 508SECOEXT_FIRMWARE_NAME:mx8ulp-generic-bsp ?= "mx8ulp${IMX_SOC_REV_LOWER}ext-ahab-container.img"
509SECOEXT_FIRMWARE_NAME:mx95-generic-bsp ?= "mx95a0runtime-ahab-container.img mx95b0runtime-ahab-container.img"
519SECOEXT_FIRMWARE_NAME:mx943-generic-bsp ?= "mx943${IMX_SOC_REV_LOWER}runtime-ahab-container.img" 510SECOEXT_FIRMWARE_NAME:mx943-generic-bsp ?= "mx943${IMX_SOC_REV_LOWER}runtime-ahab-container.img"
520 511
521# GStreamer 1.0 plugins 512# GStreamer 1.0 plugins
@@ -538,20 +529,28 @@ MACHINE_GSTREAMER_1_0_PLUGIN:mx8ulp-nxp-bsp ?= "imx-gst1.0-plugin"
538MACHINE_GSTREAMER_1_0_PLUGIN:mx93-nxp-bsp ?= "imx-gst1.0-plugin" 529MACHINE_GSTREAMER_1_0_PLUGIN:mx93-nxp-bsp ?= "imx-gst1.0-plugin"
539 530
540# GStreamer forked recipes 531# GStreamer forked recipes
541PREFERRED_VERSION_gstreamer1.0:imx-nxp-bsp ??= "1.26.0.imx" 532PREFERRED_VERSION_gstreamer1.0:imx-nxp-bsp ??= "1.26.6.imx"
542PREFERRED_VERSION_gstreamer1.0-plugins-bad:imx-nxp-bsp ??= "1.26.0.imx" 533PREFERRED_VERSION_gstreamer1.0-plugins-bad:imx-nxp-bsp ??= "1.26.6.imx"
543PREFERRED_VERSION_gstreamer1.0-plugins-base:imx-nxp-bsp ??= "1.26.0.imx" 534PREFERRED_VERSION_gstreamer1.0-plugins-base:imx-nxp-bsp ??= "1.26.6.imx"
544PREFERRED_VERSION_gstreamer1.0-plugins-good:imx-nxp-bsp ??= "1.26.0.imx" 535PREFERRED_VERSION_gstreamer1.0-plugins-good:imx-nxp-bsp ??= "1.26.6.imx"
545 536
546 537
547# GStreamer copied recipes 538# GStreamer copied recipes
548PREFERRED_VERSION_gst-devtools:imx-nxp-bsp ??= "1.26.0.imx" 539PREFERRED_VERSION_gst-devtools:imx-nxp-bsp ??= "1.26.6"
549PREFERRED_VERSION_gst-examples:imx-nxp-bsp ??= "1.24.7.imx" 540PREFERRED_VERSION_gst-examples:imx-nxp-bsp ??= "1.26.6"
550PREFERRED_VERSION_gstreamer1.0-libav:imx-nxp-bsp ??= "1.26.0.imx" 541PREFERRED_VERSION_gstreamer1.0-libav:imx-nxp-bsp ??= "1.26.6"
551PREFERRED_VERSION_gstreamer1.0-plugins-ugly:imx-nxp-bsp ??= "1.26.0.imx" 542PREFERRED_VERSION_gstreamer1.0-plugins-ugly:imx-nxp-bsp ??= "1.26.6"
552PREFERRED_VERSION_gstreamer1.0-python:imx-nxp-bsp ??= "1.26.0.imx" 543PREFERRED_VERSION_gstreamer1.0-python:imx-nxp-bsp ??= "1.26.6"
553PREFERRED_VERSION_gstreamer1.0-rtsp-server:imx-nxp-bsp ??= "1.26.0.imx" 544PREFERRED_VERSION_gstreamer1.0-rtsp-server:imx-nxp-bsp ??= "1.26.6"
554PREFERRED_VERSION_gstreamer1.0-vaapi:imx-nxp-bsp ??= "1.26.0.imx" 545PREFERRED_VERSION_gstreamer1.0-vaapi:imx-nxp-bsp ??= "1.26.6"
546
547# Use libcamera fork for certain SOCs
548PREFERRED_VERSION_libcamera ??= "${PREFERRED_VERSION_LIBCAMERA_IMX}"
549PREFERRED_VERSION_LIBCAMERA_IMX = ""
550PREFERRED_VERSION_LIBCAMERA_IMX:mx95-nxp-bsp = "0.6.0.imx"
551PREFERRED_VERSION_LIBCAMERA_IMX:mx8mm-nxp-bsp = "0.6.0.imx"
552PREFERRED_VERSION_LIBCAMERA_IMX:mx8ulp-nxp-bsp = "0.6.0.imx"
553PREFERRED_VERSION_LIBCAMERA_IMX:mx8mq-nxp-bsp = "0.6.0.imx"
555 554
556# Determines if the SoC has support for Vivante kernel driver 555# Determines if the SoC has support for Vivante kernel driver
557SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0" 556SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0"
@@ -600,10 +599,8 @@ PREFERRED_VERSION_weston:mx6-nxp-bsp ??= "10.0.5.imx"
600PREFERRED_VERSION_weston:mx7-nxp-bsp ??= "10.0.5.imx" 599PREFERRED_VERSION_weston:mx7-nxp-bsp ??= "10.0.5.imx"
601PREFERRED_VERSION_weston:imx-mainline-bsp = "" 600PREFERRED_VERSION_weston:imx-mainline-bsp = ""
602 601
603PREFERRED_VERSION_xwayland:imx-nxp-bsp ??= "24.1.6.imx"
604
605# Use i.MX libdrm Version 602# Use i.MX libdrm Version
606PREFERRED_VERSION_libdrm:imx-nxp-bsp ??= "2.4.123.imx" 603PREFERRED_VERSION_libdrm:imx-nxp-bsp ??= "2.4.127.imx"
607 604
608PREFERRED_VERSION_glslang:imxvulkan ??= "1.3.275.0.imx" 605PREFERRED_VERSION_glslang:imxvulkan ??= "1.3.275.0.imx"
609PREFERRED_VERSION_spirv-headers:imxvulkan ??= "1.3.275.0.imx" 606PREFERRED_VERSION_spirv-headers:imxvulkan ??= "1.3.275.0.imx"
@@ -615,10 +612,10 @@ PREFERRED_VERSION_vulkan-utility-libraries:imxvulkan ??= "1.3.275.0.imx"
615PREFERRED_VERSION_vulkan-validation-layers:imxvulkan ??= "1.3.275.0.imx" 612PREFERRED_VERSION_vulkan-validation-layers:imxvulkan ??= "1.3.275.0.imx"
616 613
617# Use i.MX optee Version 614# Use i.MX optee Version
618PREFERRED_VERSION_optee-os:imx-nxp-bsp ??= "4.6.0.imx" 615PREFERRED_VERSION_optee-os:imx-nxp-bsp ??= "4.8.0.imx"
619PREFERRED_VERSION_optee-client:imx-nxp-bsp ??= "4.6.0.imx" 616PREFERRED_VERSION_optee-client:imx-nxp-bsp ??= "4.8.0.imx"
620PREFERRED_VERSION_optee-test:imx-nxp-bsp ??= "4.6.0.imx" 617PREFERRED_VERSION_optee-test:imx-nxp-bsp ??= "4.8.0.imx"
621PREFERRED_VERSION_optee-os-tadevkit:imx-nxp-bsp ??= "4.6.0.imx" 618PREFERRED_VERSION_optee-os-tadevkit:imx-nxp-bsp ??= "4.8.0.imx"
622 619
623# Use i.MX opencv Version 620# Use i.MX opencv Version
624PREFERRED_VERSION_opencv:mx8-nxp-bsp ??= "4.6.0.imx" 621PREFERRED_VERSION_opencv:mx8-nxp-bsp ??= "4.6.0.imx"
diff --git a/conf/machine/include/imx8dxl-evk.inc b/conf/machine/include/imx8dxl-evk.inc
index 50ee85b42..44a55c00b 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
5 5
6IMX_DEFAULT_BSP = "nxp" 6IMX_DEFAULT_BSP = "nxp"
7 7
8MACHINE_FEATURES += "pci bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie" 8MACHINE_FEATURES += "pci bcm43455 bcm4356 nxp9098-pcie"
9MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359 dpdk nxpwifi-all-sdio" 9MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359 dpdk nxpwifi-all-sdio"
10 10
11# Don't include kernels in standard images 11# Don't include kernels in standard images
@@ -45,8 +45,8 @@ UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
45IMX_BOOT_SEEK = "32" 45IMX_BOOT_SEEK = "32"
46 46
47IMXBOOT_TARGETS_SD = \ 47IMXBOOT_TARGETS_SD = \
48 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl', \ 48 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl flash_linux_m4 flash_linux_m4_no_v2x ', \
49 'flash', d)}" 49 'flash flash_regression_linux_m4', d)}"
50IMXBOOT_TARGETS_FSPI = \ 50IMXBOOT_TARGETS_FSPI = \
51 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \ 51 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \
52 'flash_flexspi', d)}" 52 'flash_flexspi', d)}"
diff --git a/conf/machine/include/imx8mp-evk.inc b/conf/machine/include/imx8mp-evk.inc
index 79d7bc15e..d7ec72a9a 100644
--- a/conf/machine/include/imx8mp-evk.inc
+++ b/conf/machine/include/imx8mp-evk.inc
@@ -8,7 +8,7 @@ require conf/machine/include/arm/armv8a/tune-cortexa53.inc
8# inline NEON and FPU code generation 8# inline NEON and FPU code generation
9DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto" 9DEFAULTTUNE:use-mainline-bsp = "cortexa53-crypto"
10 10
11MACHINE_FEATURES += "pci wifi bluetooth nxp8997-pcie nxp8997-sdio nxp9098-pcie nxp9098-sdio" 11MACHINE_FEATURES += "pci wifi bluetooth nxp9098-pcie nxp9098-sdio"
12 12
13# NXP BSP can consume proprietary jailhouse and Marvell drivers 13# NXP BSP can consume proprietary jailhouse and Marvell drivers
14# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have 14# OP-TEE is also applicable to NXP BSP, mainline BSP seems not to have
diff --git a/conf/machine/include/imx8ulp-evk.inc b/conf/machine/include/imx8ulp-evk.inc
index 7a1f2213d..967f3ec7d 100644
--- a/conf/machine/include/imx8ulp-evk.inc
+++ b/conf/machine/include/imx8ulp-evk.inc
@@ -26,9 +26,9 @@ UBOOT_CONFIG[nd] = "${UBOOT_CONFIG_BASENAME}_nd_defconfig"
26# Set ATF platform name 26# Set ATF platform name
27ATF_PLATFORM = "imx8ulp" 27ATF_PLATFORM = "imx8ulp"
28 28
29IMXBOOT_TARGETS_SD = "flash_singleboot flash_dualboot" 29IMXBOOT_TARGETS_SD = "flash_singleboot_m33 flash_singleboot flash_dualboot_m33 flash_dualboot"
30IMXBOOT_TARGETS_FSPI = "flash_dualboot_flexspi" 30IMXBOOT_TARGETS_FSPI = "flash_singleboot_m33_flexspi flash_dualboot_flexspi"
31IMXBOOT_TARGETS_ND = "" 31IMXBOOT_TARGETS_ND = "flash_singleboot_m33"
32 32
33IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \ 33IMXBOOT_TARGETS = "${@bb.utils.contains('UBOOT_CONFIG', 'sd', '${IMXBOOT_TARGETS_SD}', \
34 bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_FSPI}', \ 34 bb.utils.contains('UBOOT_CONFIG', 'fspi', '${IMXBOOT_TARGETS_FSPI}', \
diff --git a/conf/machine/include/imx8x-mek.inc b/conf/machine/include/imx8x-mek.inc
index ad3422e07..18c23e1d9 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
3 3
4IMX_DEFAULT_BSP = "nxp" 4IMX_DEFAULT_BSP = "nxp"
5 5
6MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp8997-pcie nxp9098-pcie" 6MACHINE_FEATURES += "pci optee bcm43455 bcm4356 nxp9098-pcie"
7MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359 nxpwifi-all-pcie nxpwifi-all-sdio" 7MACHINE_FEATURES:append:use-nxp-bsp = " bcm4359 nxpwifi-all-pcie nxpwifi-all-sdio"
8 8
9# Don't include kernels in standard images 9# Don't include kernels in standard images
@@ -55,8 +55,8 @@ IMX_DEFAULT_BOOTLOADER = "u-boot-imx"
55UBOOT_SUFFIX = "bin" 55UBOOT_SUFFIX = "bin"
56 56
57IMXBOOT_TARGETS_SD = \ 57IMXBOOT_TARGETS_SD = \
58 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl', \ 58 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl flash_linux_m4', \
59 'flash', d)}" 59 'flash flash_regression_linux_m4', d)}"
60IMXBOOT_TARGETS_FSPI = \ 60IMXBOOT_TARGETS_FSPI = \
61 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \ 61 "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'flash_spl_flexspi', \
62 'flash_flexspi', d)}" 62 'flash_flexspi', d)}"
diff --git a/conf/machine/include/imx93-evk.inc b/conf/machine/include/imx93-evk.inc
index f504694f3..9e9108d99 100644
--- a/conf/machine/include/imx93-evk.inc
+++ b/conf/machine/include/imx93-evk.inc
@@ -26,7 +26,6 @@ UBOOT_CONFIG ??= "sd"
26UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig" 26UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig"
27UBOOT_CONFIG[ecc] = "${UBOOT_CONFIG_BASENAME}_inline_ecc_defconfig" 27UBOOT_CONFIG[ecc] = "${UBOOT_CONFIG_BASENAME}_inline_ecc_defconfig"
28UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig" 28UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig"
29UBOOT_CONFIG_IMAGE_FSTYPES[sd] = "sdcard"
30 29
31# Set ATF platform name 30# Set ATF platform name
32ATF_PLATFORM = "imx93" 31ATF_PLATFORM = "imx93"
diff --git a/conf/machine/include/imx943-evk.inc b/conf/machine/include/imx943-evk.inc
index a2abe30dc..fb9acd7e1 100644
--- a/conf/machine/include/imx943-evk.inc
+++ b/conf/machine/include/imx943-evk.inc
@@ -36,8 +36,6 @@ UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig"
36UBOOT_CONFIG[sd-ecc] = "${UBOOT_CONFIG_BASENAME}_defconfig" 36UBOOT_CONFIG[sd-ecc] = "${UBOOT_CONFIG_BASENAME}_defconfig"
37UBOOT_CONFIG[crrm] = "${UBOOT_CONFIG_BASENAME}_xspi_crrm_defconfig" 37UBOOT_CONFIG[crrm] = "${UBOOT_CONFIG_BASENAME}_xspi_crrm_defconfig"
38UBOOT_CONFIG[xspi] = "${UBOOT_CONFIG_BASENAME}_xspi_defconfig" 38UBOOT_CONFIG[xspi] = "${UBOOT_CONFIG_BASENAME}_xspi_defconfig"
39UBOOT_CONFIG_IMAGE_FSTYPES[sd] = "sdcard"
40UBOOT_CONFIG_IMAGE_FSTYPES[sd-ecc] = "sdcard"
41 39
42ATF_PLATFORM = "imx94" 40ATF_PLATFORM = "imx94"
43OEI_CORE = "m33" 41OEI_CORE = "m33"
diff --git a/conf/machine/include/imx95-evk.inc b/conf/machine/include/imx95-evk.inc
index 3cea26090..8e078fe79 100644
--- a/conf/machine/include/imx95-evk.inc
+++ b/conf/machine/include/imx95-evk.inc
@@ -21,7 +21,6 @@ UBOOT_CONFIG ??= "sd"
21UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig" 21UBOOT_CONFIG[sd] = "${UBOOT_CONFIG_BASENAME}_defconfig"
22UBOOT_CONFIG[sd-ecc] = "${UBOOT_CONFIG_BASENAME}_defconfig" 22UBOOT_CONFIG[sd-ecc] = "${UBOOT_CONFIG_BASENAME}_defconfig"
23UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig" 23UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_fspi_defconfig"
24UBOOT_CONFIG_IMAGE_FSTYPES[sd] = "sdcard"
25 24
26ATF_PLATFORM = "imx95" 25ATF_PLATFORM = "imx95"
27OEI_CORE = "m33" 26OEI_CORE = "m33"
diff --git a/default-registry/configurations/fsl-community-bsp-master.conf.json b/default-registry/configurations/fsl-community-bsp-master.conf.json
index fa08eacea..e392c1762 100644
--- a/default-registry/configurations/fsl-community-bsp-master.conf.json
+++ b/default-registry/configurations/fsl-community-bsp-master.conf.json
@@ -167,73 +167,39 @@
167 ] 167 ]
168 }, 168 },
169 "distro": { 169 "distro": {
170 "description": "Target Distributions", 170 "description": "Distribution",
171 "options": [ 171 "options": [
172 {"name": "distro/fsl", "description": "FSL NXP BSP base distribution"}, 172 {"name": "distro/poky", "description": "Poky reference distribution"},
173 {"name": "distro/fslc", "description": "FSLC Community BSP base distribution"} 173 {"name": "distro/nodistro", "description": "No distribution policy"}
174 ] 174 ]
175 } 175 }
176 }, 176 },
177 "configurations": [ 177 "configurations": [
178 { 178 {
179 "name": "fsl", 179 "name": "fslc-framebuffer",
180 "description": "I will use the distro base configuration only (either FSL or FSLC)" 180 "description": "FSLC BSP with framebuffer backend",
181 },
182 {
183 "name": "accept-fsl-eula",
184 "description": "Accept NXP EULA only",
185 "oe-fragments": [
186 "freescale-layer/accept-fsl-eula"
187 ]
188 },
189 {
190 "name": "fsl-framebuffer",
191 "description": "Accept NXP EULA and configure FrameBuffer backend",
192 "oe-fragments": [ 181 "oe-fragments": [
193 "freescale-layer/eula/accept-fsl-eula", 182 "freescale-layer/bsp/fslc",
194 "freescale-layer/graphics/framebuffer" 183 "freescale-layer/graphics/framebuffer"
195 ] 184 ]
196 }, 185 },
197 { 186 {
198 "name": "fsl-wayland", 187 "name": "nxp-framebuffer",
199 "description": "Accept NXP EULA and configure Wayland with systemd", 188 "description": "Accept NXP EULA, NXP BSP with framebuffer backend",
200 "oe-fragments": [ 189 "oe-fragments": [
201 "freescale-layer/eula/accept-fsl-eula", 190 "freescale-layer/eula/accept-fsl-eula",
202 "freescale-layer/init/systemd", 191 "freescale-layer/bsp/nxp",
203 "freescale-layer/graphics/wayland" 192 "freescale-layer/graphics/framebuffer"
204 ] 193 ]
205 }, 194 },
206 { 195 {
207 "name": "fsl-xwayland", 196 "name": "fslc-eula-framebuffer",
208 "description": "Accept NXP EULA and configure XWayland with systemd", 197 "description": "Accept NXP EULA, FSLC BSP with framebuffer backend",
209 "oe-fragments": [ 198 "oe-fragments": [
210 "freescale-layer/eula/accept-fsl-eula", 199 "freescale-layer/eula/accept-fsl-eula",
211 "freescale-layer/init/systemd", 200 "freescale-layer/bsp/fslc",
212 "freescale-layer/graphics/xwayland"
213 ]
214 },
215 {
216 "name": "framebuffer",
217 "description": "Configure FrameBuffer backend",
218 "oe-fragments": [
219 "freescale-layer/graphics/framebuffer" 201 "freescale-layer/graphics/framebuffer"
220 ] 202 ]
221 },
222 {
223 "name": "wayland",
224 "description": "Configure Wayland with systemd",
225 "oe-fragments": [
226 "freescale-layer/init/systemd",
227 "freescale-layer/graphics/wayland"
228 ]
229 },
230 {
231 "name": "xwayland",
232 "description": "Configure XWayland with systemd",
233 "oe-fragments": [
234 "freescale-layer/init/systemd",
235 "freescale-layer/graphics/xwayland"
236 ]
237 } 203 }
238 ] 204 ]
239 } 205 }
diff --git a/dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb b/dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb
index 227d76b2c..2962a1acc 100644
--- a/dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb
+++ b/dynamic-layers/arm-toolchain/recipes-bsp/imx-oei/imx-oei_1.0.0.bb
@@ -12,6 +12,6 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b66f32a90f9577a5a3255c21d79bc619"
12SRC_URI = "${IMX_OEI_SRC};branch=${SRCBRANCH}" 12SRC_URI = "${IMX_OEI_SRC};branch=${SRCBRANCH}"
13IMX_OEI_SRC ?= "git://github.com/nxp-imx/imx-oei.git;protocol=https" 13IMX_OEI_SRC ?= "git://github.com/nxp-imx/imx-oei.git;protocol=https"
14SRCBRANCH = "master" 14SRCBRANCH = "master"
15SRCREV = "49bfaa93e9d1fe213866bcb9507927a59a9ede5a" 15SRCREV = "fa9e9a29e8c8939cc360beafd01393ca393e439a"
16 16
17require imx-oei.inc 17require imx-oei.inc
diff --git a/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2025q4.bb b/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2026q1.bb
index 81233bbff..888b883bc 100644
--- a/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2025q4.bb
+++ b/dynamic-layers/arm-toolchain/recipes-bsp/imx-system-manager/imx-system-manager_2026q1.bb
@@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f2a70813bc08547f509361c08b718861"
14SRC_URI = "${IMX_SYSTEM_MANAGER_SRC};branch=${SRCBRANCH}" 14SRC_URI = "${IMX_SYSTEM_MANAGER_SRC};branch=${SRCBRANCH}"
15IMX_SYSTEM_MANAGER_SRC ?= "git://github.com/nxp-imx/imx-sm.git;protocol=https" 15IMX_SYSTEM_MANAGER_SRC ?= "git://github.com/nxp-imx/imx-sm.git;protocol=https"
16SRCBRANCH = "master" 16SRCBRANCH = "master"
17SRCREV = "de30901b287e5c9a1e467d2d9a497b97bb6f7939" 17SRCREV = "c450f53974ea1df826970ad399cb338625b5638d"
18 18
19require imx-system-manager.inc 19require imx-system-manager.inc
20 20
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/bluealsa/bluealsa_%.bbappend b/dynamic-layers/multimedia-layer/recipes-multimedia/bluealsa/bluealsa_%.bbappend
new file mode 100644
index 000000000..212dd3b7a
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/bluealsa/bluealsa_%.bbappend
@@ -0,0 +1 @@
SYSTEMD_AUTO_ENABLE:${PN} = "disable"
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch
new file mode 100644
index 000000000..bf41f1b4b
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch
@@ -0,0 +1,31 @@
1From 46670dce02361a318fc66e503d32a0ceb53ec1ea Mon Sep 17 00:00:00 2001
2From: Haihua Hu <jared.hu@nxp.com>
3Date: Mon, 30 Jun 2025 17:56:50 +0900
4Subject: [PATCH] YOCIMX-9095 pipewiresrc: set rank to secondary
5
6Upstream-Status: Pending
7
8currently, pipewiresrc cannot been used as default
9video or audio src, so no need primary rank.
10
11Signed-off-by: Haihua Hu <jared.hu@nxp.com>
12---
13 src/gst/gstpipewire.c | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/src/gst/gstpipewire.c b/src/gst/gstpipewire.c
17index 5761a099d..15f2ac946 100644
18--- a/src/gst/gstpipewire.c
19+++ b/src/gst/gstpipewire.c
20@@ -26,7 +26,7 @@ plugin_init (GstPlugin *plugin)
21 {
22 pw_init (NULL, NULL);
23
24- gst_element_register (plugin, "pipewiresrc", GST_RANK_PRIMARY + 1,
25+ gst_element_register (plugin, "pipewiresrc", GST_RANK_SECONDARY + 1,
26 GST_TYPE_PIPEWIRE_SRC);
27 gst_element_register (plugin, "pipewiresink", GST_RANK_NONE,
28 GST_TYPE_PIPEWIRE_SINK);
29--
302.34.1
31
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-launch-allow-pipewire-pulse-can-be-started-by-root.patch b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-launch-allow-pipewire-pulse-can-be-started-by-root.patch
deleted file mode 100644
index ab34dc2fa..000000000
--- a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-launch-allow-pipewire-pulse-can-be-started-by-root.patch
+++ /dev/null
@@ -1,41 +0,0 @@
1From 2cac94185824aa7df07ec48a2872f3d26d517a6d Mon Sep 17 00:00:00 2001
2From: Shengjiu Wang <shengjiu.wang@nxp.com>
3Date: Tue, 28 Nov 2023 10:23:42 +0800
4Subject: [PATCH] launch: allow pipewire-pulse can be started by root.
5
6revert commit 8942f6b40 ("launch: avoid autostarting pipewire-pulse
7systemd units for root")
8
9Upstream-Status: Inappropriate [i.MX specific]
10Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
11---
12 src/daemon/systemd/user/pipewire-pulse.service.in | 1 -
13 src/daemon/systemd/user/pipewire-pulse.socket | 1 -
14 2 files changed, 2 deletions(-)
15
16diff --git a/src/daemon/systemd/user/pipewire-pulse.service.in b/src/daemon/systemd/user/pipewire-pulse.service.in
17index 73d22e532..da7728ee3 100644
18--- a/src/daemon/systemd/user/pipewire-pulse.service.in
19+++ b/src/daemon/systemd/user/pipewire-pulse.service.in
20@@ -14,7 +14,6 @@ Description=PipeWire PulseAudio
21 # After=pipewire-pulse.socket is not needed, as it is already implicit in the
22 # socket-service relationship, see systemd.socket(5).
23 Requires=pipewire-pulse.socket
24-ConditionUser=!root
25 Wants=pipewire.service pipewire-session-manager.service
26 After=pipewire.service pipewire-session-manager.service
27 Conflicts=pulseaudio.service
28diff --git a/src/daemon/systemd/user/pipewire-pulse.socket b/src/daemon/systemd/user/pipewire-pulse.socket
29index 1ae5edafb..d27fb0e26 100644
30--- a/src/daemon/systemd/user/pipewire-pulse.socket
31+++ b/src/daemon/systemd/user/pipewire-pulse.socket
32@@ -1,6 +1,5 @@
33 [Unit]
34 Description=PipeWire PulseAudio
35-ConditionUser=!root
36 Conflicts=pulseaudio.socket
37
38 [Socket]
39--
402.34.1
41
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-systemd-allow-pipewire-user-services-for-root.patch b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-systemd-allow-pipewire-user-services-for-root.patch
new file mode 100644
index 000000000..da159cfb2
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0001-systemd-allow-pipewire-user-services-for-root.patch
@@ -0,0 +1,41 @@
1From 5e89cf0818c555dff31a1ef9e02828c2541b7e1f Mon Sep 17 00:00:00 2001
2From: Shengjiu Wang <shengjiu.wang@nxp.com>
3Date: Mon, 31 Mar 2025 14:44:23 +0800
4Subject: [PATCH] systemd: allow pipewire user services for root
5
6Revert commit 9bc29b4b3 ("systemd: Disable pipewire user services for root")
7
8BT ofono service needs root permission for starting service.
9
10wireplumber[789]: 5:185m5:185mspa.bluez5: Failed to start HFP/HSP backend ofono
11
12Upstream-Status: Inappropriate [i.MX specific]
13Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
14---
15 src/daemon/systemd/user/pipewire.service.in | 1 -
16 src/daemon/systemd/user/pipewire.socket | 1 -
17 2 files changed, 2 deletions(-)
18
19Index: pipewire-1.4.8/src/daemon/systemd/user/pipewire.service.in
20===================================================================
21--- pipewire-1.4.8.orig/src/daemon/systemd/user/pipewire.service.in
22+++ pipewire-1.4.8/src/daemon/systemd/user/pipewire.service.in
23@@ -14,7 +14,6 @@ Description=PipeWire Multimedia Service
24 # After=pipewire.socket is not needed, as it is already implicit in the
25 # socket-service relationship, see systemd.socket(5).
26 Requires=pipewire.socket @PW_SERVICE_REQS@
27-ConditionUser=!root
28
29 [Service]
30 LockPersonality=yes
31Index: pipewire-1.4.8/src/daemon/systemd/user/pipewire.socket
32===================================================================
33--- pipewire-1.4.8.orig/src/daemon/systemd/user/pipewire.socket
34+++ pipewire-1.4.8/src/daemon/systemd/user/pipewire.socket
35@@ -1,6 +1,5 @@
36 [Unit]
37 Description=PipeWire Multimedia System Sockets
38-ConditionUser=!root
39
40 [Socket]
41 Priority=6
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch
new file mode 100644
index 000000000..ce4d14371
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire/0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch
@@ -0,0 +1,51 @@
1From f01c4d27819fc2897b10f7e2bc0f30bd183c45b8 Mon Sep 17 00:00:00 2001
2From: Elliot Chen <elliot.chen@nxp.com>
3Date: Sat, 28 Feb 2026 14:47:22 +0900
4Subject: [PATCH] pipewiresrc: update per-plane stride and offset according to
5 chunk info
6
7Upstream-Status: Pending
8
9---
10 meson.build | 2 +-
11 src/gst/gstpipewiresrc.c | 11 +++++++++++
12 2 files changed, 12 insertions(+), 1 deletion(-)
13
14diff --git a/meson.build b/meson.build
15index bca2c7a27..e290217e9 100644
16--- a/meson.build
17+++ b/meson.build
18@@ -412,7 +412,7 @@ gst_deps_def = {
19 'gio-unix-2.0': {},
20 'gstreamer-1.0': {'version': '>= 1.10.0'},
21 'gstreamer-base-1.0': {},
22- 'gstreamer-video-1.0': {},
23+ 'gstreamer-video-1.0': {'version': '>= 1.22.0'},
24 'gstreamer-audio-1.0': {},
25 'gstreamer-allocators-1.0': {},
26 }
27diff --git a/src/gst/gstpipewiresrc.c b/src/gst/gstpipewiresrc.c
28index b0de17dfd..044c0d583 100644
29--- a/src/gst/gstpipewiresrc.c
30+++ b/src/gst/gstpipewiresrc.c
31@@ -838,6 +838,17 @@ static GstBuffer *dequeue_buffer(GstPipeWireSrc *pwsrc)
32
33 video_size += d->chunk->size;
34 }
35+
36+ /* If the buffer number is smaller than the plane number,
37+ * update the stride and offset for the remain planes.
38+ */
39+ if (n_datas && n_datas < n_planes) {
40+ for (i = n_datas; i < n_planes; i++) {
41+ meta->stride[i] = gst_video_format_info_extrapolate_stride (info->finfo, i, b->buffer->datas[0].chunk->stride);
42+ meta->offset[i] = meta->offset[i-1] +
43+ meta->stride[i-1] * GST_VIDEO_FORMAT_INFO_SCALE_HEIGHT (info->finfo, i-1, GST_VIDEO_INFO_HEIGHT(info));
44+ }
45+ }
46 }
47
48 if (b->buffer->n_datas != gst_buffer_n_memory(data->buf)) {
49--
502.34.1
51
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
index 865b29349..2c28aca5f 100644
--- a/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/pipewire/pipewire_%.bbappend
@@ -1,8 +1,12 @@
1FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" 1FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
2 2
3SRC_URI:append:imx-nxp-bsp = " file://0001-launch-allow-pipewire-pulse-can-be-started-by-root.patch" 3SRC_URI:append:imx-nxp-bsp = " \
4 4 file://0001-systemd-allow-pipewire-user-services-for-root.patch \
5SYSTEMD_AUTO_ENABLE:imx-nxp-bsp = "disable" 5 file://0001-YOCIMX-9095-pipewiresrc-set-rank-to-secondary.patch \
6"
7SRC_URI:append:mx95-nxp-bsp = " \
8 file://0003-pipewiresrc-update-per-plane-stride-and-offset-accor.patch \
9"
6 10
7DEPENDS:append:mx95-nxp-bsp = " libdrm" 11DEPENDS:append:mx95-nxp-bsp = " libdrm"
8 12
@@ -10,8 +14,6 @@ PACKAGECONFIG:remove = "${PACKAGECONFIG_REMOVE}"
10PACKAGECONFIG_REMOVE ?= "" 14PACKAGECONFIG_REMOVE ?= ""
11PACKAGECONFIG_REMOVE:mx6-nxp-bsp ?= "gstreamer" 15PACKAGECONFIG_REMOVE:mx6-nxp-bsp ?= "gstreamer"
12PACKAGECONFIG_REMOVE:mx7-nxp-bsp ?= "gstreamer" 16PACKAGECONFIG_REMOVE:mx7-nxp-bsp ?= "gstreamer"
13PACKAGECONFIG_REMOVE:mx8-nxp-bsp ?= "gstreamer"
14PACKAGECONFIG_REMOVE:mx93-nxp-bsp ?= "gstreamer"
15 17
16PACKAGECONFIG:class-target:append:imx-nxp-bsp = " ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez-lc3', '', d)}" 18PACKAGECONFIG:class-target:append:imx-nxp-bsp = " ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez-lc3', '', d)}"
17 19
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/0001-wpctl-fix-set-default-Segmentation-fault-on-32bit-pl.patch b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/0001-wpctl-fix-set-default-Segmentation-fault-on-32bit-pl.patch
new file mode 100644
index 000000000..52db25494
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/0001-wpctl-fix-set-default-Segmentation-fault-on-32bit-pl.patch
@@ -0,0 +1,33 @@
1From 9cebf00856ef24b9a4d6306775013b10da821172 Mon Sep 17 00:00:00 2001
2From: Shengjiu Wang <shengjiu.wang@nxp.com>
3Date: Thu, 9 Nov 2023 15:15:04 +0800
4Subject: [PATCH] wpctl: fix set-default Segmentation fault on 32bit platform
5
6Upstream-Status: Inappropriate [i.MX specific]
7Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com>
8---
9 src/tools/wpctl.c | 10 +++++++++-
10 1 file changed, 9 insertions(+), 1 deletion(-)
11
12Index: wireplumber-0.5.11/src/tools/wpctl.c
13===================================================================
14--- wireplumber-0.5.11.orig/src/tools/wpctl.c
15+++ wireplumber-0.5.11/src/tools/wpctl.c
16@@ -832,9 +832,16 @@ set_default_parse_positional (gint argc,
17 static gboolean
18 set_default_prepare (WpCtl * self, GError ** error)
19 {
20+ g_autoptr (WpPlugin) def_nodes_api = wp_plugin_find (self->core, "default-nodes-api");
21+ guint32 id;
22+
23+ if (!translate_id (def_nodes_api, cmdline.set_default.id, &id, error)) {
24+ fprintf(stderr, "Translate ID error.\n");
25+ return FALSE;
26+ }
27 wp_object_manager_add_interest (self->om, WP_TYPE_NODE,
28 WP_CONSTRAINT_TYPE_PW_GLOBAL_PROPERTY,
29- "object.id", "=u", (guint32) cmdline.set_default.id,
30+ "object.id", "=u", id,
31 NULL);
32 wp_object_manager_request_object_features (self->om, WP_TYPE_NODE,
33 WP_PIPEWIRE_OBJECT_FEATURES_MINIMAL);
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/51-bluez-imx.conf b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/51-bluez-imx.conf
new file mode 100644
index 000000000..cab02a96d
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/51-bluez-imx.conf
@@ -0,0 +1,16 @@
1monitor.bluez.properties = {
2 ## These features do not work on all headsets, so they are enabled
3 ## by default based on the hardware database. They can also be
4 ## forced on/off for all devices by the following options:
5 bluez5.enable-msbc = true
6
7 ## HFP/HSP backend (default: native).
8 ## Available values: any, none, hsphfpd, ofono, native
9 bluez5.hfphsp-backend = "ofono"
10
11 ## HFP/HSP hardware offload SCO support (default: false).
12 ## Using this feature requires a custom WirePlumber script that
13 ## handles audio routing in a platform-specific way. See
14 ## tests/examples/bt-pinephone.lua for an example.
15 bluez5.hw-offload-sco = true
16}
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/80-disable-logind.conf b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/80-disable-logind.conf
new file mode 100644
index 000000000..4255174ad
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/files/imx-nxp-bsp/80-disable-logind.conf
@@ -0,0 +1,6 @@
1# Disabling seat monitoring via logind in the BlueZ monitor
2wireplumber.profiles = {
3 main = {
4 monitor.bluez.seat-monitoring = disabled
5 }
6}
diff --git a/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/wireplumber_%.bbappend b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/wireplumber_%.bbappend
new file mode 100644
index 000000000..e79e98cfe
--- /dev/null
+++ b/dynamic-layers/multimedia-layer/recipes-multimedia/wireplumber/wireplumber_%.bbappend
@@ -0,0 +1,18 @@
1FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
2
3SRC_URI:append:imx-nxp-bsp = " file://51-bluez-imx.conf \
4 file://80-disable-logind.conf \
5 file://0001-wpctl-fix-set-default-Segmentation-fault-on-32bit-pl.patch \
6 "
7
8do_install:append:imx-nxp-bsp () {
9
10 install -d ${D}${datadir}
11
12 # Install nxp configure file to /usr/share/wireplumber/wireplumber.conf.d
13 install -d ${D}${datadir}/wireplumber/wireplumber.conf.d
14 install -m 0644 ${UNPACKDIR}/51-bluez-imx.conf ${D}${datadir}/wireplumber/wireplumber.conf.d
15 install -m 0644 ${UNPACKDIR}/80-disable-logind.conf ${D}${datadir}/wireplumber/wireplumber.conf.d
16}
17
18FILES:${PN}:append = " ${datadir}/wireplumber/wireplumber.conf.d"
diff --git a/dynamic-layers/networking-layer/recipes-fsl/packagegroups/packagegroup-fsl-network.bbappend b/dynamic-layers/networking-layer/recipes-fsl/packagegroups/packagegroup-fsl-network.bbappend
new file mode 100644
index 000000000..8de766138
--- /dev/null
+++ b/dynamic-layers/networking-layer/recipes-fsl/packagegroups/packagegroup-fsl-network.bbappend
@@ -0,0 +1 @@
NETWORK_TOOLS:append = " tcpdump"
diff --git a/recipes-devtools/utp-com/utp-com_git.bb b/dynamic-layers/openembedded-layer/recipes-devtools/utp-com/utp-com_git.bb
index 364c91bcc..364c91bcc 100644
--- a/recipes-devtools/utp-com/utp-com_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/utp-com/utp-com_git.bb
diff --git a/recipes-devtools/uuu/uuu_git.bb b/dynamic-layers/openembedded-layer/recipes-devtools/uuu/uuu_git.bb
index 3af8bc569..3af8bc569 100644
--- a/recipes-devtools/uuu/uuu_git.bb
+++ b/dynamic-layers/openembedded-layer/recipes-devtools/uuu/uuu_git.bb
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-opencv-imx.bb b/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-opencv-imx.bb
index 724d0ff53..724d0ff53 100644
--- a/recipes-fsl/packagegroups/packagegroup-fsl-opencv-imx.bb
+++ b/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-opencv-imx.bb
diff --git a/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-benchmark.bb b/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-benchmark.bb
new file mode 100644
index 000000000..534d37627
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-benchmark.bb
@@ -0,0 +1,23 @@
1# Copyright (C) 2012-2016 Freescale Semiconductor
2# Released under the MIT license (see COPYING.MIT for the terms)
3
4DESCRIPTION = "Package group used by FSL Community to provide a set of benchmark applications."
5SUMMARY = "FSL Communtiy package group - tools/benchmark"
6
7PACKAGE_ARCH = "${MACHINE_ARCH}"
8
9inherit packagegroup
10
11RDEPENDS:${PN} = " \
12 lmbench \
13 bonnie++ \
14 dbench \
15 fio \
16 iozone3 \
17 iperf3 \
18 nbench-byte \
19 tiobench \
20 ${@bb.utils.contains('TUNE_FEATURES', 'neon', 'cpuburn-neon', \
21 bb.utils.contains('TUNE_FEATURES', 'cortexa53 crypto', 'cpuburn-neon', \
22 '', d), d)} \
23"
diff --git a/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-testapps.bb b/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-testapps.bb
new file mode 100644
index 000000000..2706dca97
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-fsl/packagegroups/packagegroup-fsl-tools-testapps.bb
@@ -0,0 +1,45 @@
1# Copyright (C) 2012-2014, 2016 Freescale Semiconductor
2# Copyright (C) 2015, 2016 O.S. Systems Software LTDA.
3# Released under the MIT license (see COPYING.MIT for the terms)
4
5DESCRIPTION = "Packagegroup used by FSL Community to provide a set of packages and utilities \
6for hardware test."
7SUMMARY = "FSL Community packagegroup - tools/testapps"
8
9PACKAGE_ARCH = "${MACHINE_ARCH}"
10
11inherit packagegroup
12
13SOC_TOOLS_TEST = ""
14SOC_TOOLS_TEST:imx-nxp-bsp = "imx-test"
15SOC_TOOLS_TEST:imxgpu = "imx-test imx-gpu-viv-demos"
16SOC_TOOLS_TEST:qoriq = "ceetm optee-test-qoriq"
17
18RDEPENDS:${PN} = " \
19 alsa-utils \
20 alsa-tools \
21 dosfstools \
22 evtest \
23 e2fsprogs-mke2fs \
24 ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'fsl-rc-local', '', d)} \
25 fbset \
26 i2c-tools \
27 iproute2 \
28 memtester \
29 python3-core \
30 python3-json \
31 python3-datetime \
32 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'v4l-utils', '', d)} \
33 ethtool \
34 mtd-utils \
35 mtd-utils-ubifs \
36 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtk+3-demo', '', d)} \
37 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', \
38 'weston-examples', '', d)} \
39 ${SOC_TOOLS_TEST} \
40"
41
42RDEPENDS_IMX_TO_REMOVE = ""
43RDEPENDS_IMX_TO_REMOVE:imxgpu3d = ""
44
45RDEPENDS:${PN}:remove = "${RDEPENDS_IMX_TO_REMOVE}"
diff --git a/dynamic-layers/openembedded-layer/recipes-graphics/glm/glm_%.bbappend b/dynamic-layers/openembedded-layer/recipes-graphics/glm/glm_%.bbappend
new file mode 100644
index 000000000..88a16cb9d
--- /dev/null
+++ b/dynamic-layers/openembedded-layer/recipes-graphics/glm/glm_%.bbappend
@@ -0,0 +1,2 @@
1# This is a header-only library, so the main package will be empty.
2ALLOW_EMPTY:${PN} = "1"
diff --git a/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
index b1b00623d..b1b00623d 100644
--- a/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch
diff --git a/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch
index 59da6ab32..59da6ab32 100644
--- a/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Add-missing-header-for-LIBAVCODEC_VERSION_INT.patch
diff --git a/recipes-support/opencv/opencv/0001-Add-smaller-version-of-download_models.py.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Add-smaller-version-of-download_models.py.patch
index 46232ec5c..46232ec5c 100644
--- a/recipes-support/opencv/opencv/0001-Add-smaller-version-of-download_models.py.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Add-smaller-version-of-download_models.py.patch
diff --git a/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch
index 948a80faf..948a80faf 100644
--- a/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch
diff --git a/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch
index d56b8ae67..d56b8ae67 100644
--- a/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch
diff --git a/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch
index aa7d335ea..aa7d335ea 100644
--- a/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch
diff --git a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
index c5a64387f..c5a64387f 100644
--- a/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch
diff --git a/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch
index 5d88d1a6a..5d88d1a6a 100644
--- a/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-Use-the-one-argument-version-of-SetTotalBytesLimit.patch
diff --git a/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
index 7b2c4100a..7b2c4100a 100644
--- a/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0001-sfm-link-with-Glog_LIBS.patch
diff --git a/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch
index d39c05822..d39c05822 100644
--- a/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch
diff --git a/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch
index ef7831a5f..ef7831a5f 100644
--- a/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch
diff --git a/recipes-support/opencv/opencv/download.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/download.patch
index 33ac48312..33ac48312 100644
--- a/recipes-support/opencv/opencv/download.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/download.patch
diff --git a/recipes-support/opencv/opencv/fix-build-with-protobuf-v22.patch b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/fix-build-with-protobuf-v22.patch
index 3538f24b3..3538f24b3 100644
--- a/recipes-support/opencv/opencv/fix-build-with-protobuf-v22.patch
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv/fix-build-with-protobuf-v22.patch
diff --git a/recipes-support/opencv/opencv_4.6.0.imx.bb b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv_4.6.0.imx.bb
index 0195bc61a..0195bc61a 100644
--- a/recipes-support/opencv/opencv_4.6.0.imx.bb
+++ b/dynamic-layers/openembedded-layer/recipes-support/opencv/opencv_4.6.0.imx.bb
diff --git a/wic/imx-imx-boot-bootpart.wks.in b/files/wic/imx-imx-boot-bootpart.wks.in
index 46a2a0a68..46a2a0a68 100644
--- a/wic/imx-imx-boot-bootpart.wks.in
+++ b/files/wic/imx-imx-boot-bootpart.wks.in
diff --git a/wic/imx-imx-boot.wks.in b/files/wic/imx-imx-boot.wks.in
index fdb411803..fdb411803 100644
--- a/wic/imx-imx-boot.wks.in
+++ b/files/wic/imx-imx-boot.wks.in
diff --git a/wic/imx-uboot-bootpart.wks.in b/files/wic/imx-uboot-bootpart.wks.in
index 4959d02df..4959d02df 100644
--- a/wic/imx-uboot-bootpart.wks.in
+++ b/files/wic/imx-uboot-bootpart.wks.in
diff --git a/wic/imx-uboot-mxs-bootpart.wks.in b/files/wic/imx-uboot-mxs-bootpart.wks.in
index 175499d63..175499d63 100644
--- a/wic/imx-uboot-mxs-bootpart.wks.in
+++ b/files/wic/imx-uboot-mxs-bootpart.wks.in
diff --git a/wic/imx-uboot-mxs.wks.in b/files/wic/imx-uboot-mxs.wks.in
index 8d82b7b86..8d82b7b86 100644
--- a/wic/imx-uboot-mxs.wks.in
+++ b/files/wic/imx-uboot-mxs.wks.in
diff --git a/wic/imx-uboot-spl-bootpart.wks.in b/files/wic/imx-uboot-spl-bootpart.wks.in
index be0f0fe03..be0f0fe03 100644
--- a/wic/imx-uboot-spl-bootpart.wks.in
+++ b/files/wic/imx-uboot-spl-bootpart.wks.in
diff --git a/wic/imx-uboot-spl.wks.in b/files/wic/imx-uboot-spl.wks.in
index c6c9aaa2c..c6c9aaa2c 100644
--- a/wic/imx-uboot-spl.wks.in
+++ b/files/wic/imx-uboot-spl.wks.in
diff --git a/wic/imx-uboot.wks b/files/wic/imx-uboot.wks
index cde24798d..cde24798d 100644
--- a/wic/imx-uboot.wks
+++ b/files/wic/imx-uboot.wks
diff --git a/wic/ls104x-uboot-bootpart.wks.in b/files/wic/ls104x-uboot-bootpart.wks.in
index 8ca231c6b..8ca231c6b 100644
--- a/wic/ls104x-uboot-bootpart.wks.in
+++ b/files/wic/ls104x-uboot-bootpart.wks.in
diff --git a/recipes-bsp/firmware-imx/firmware-ele-imx_2.0.2.bb b/recipes-bsp/firmware-imx/firmware-ele-imx_2.0.5.bb
index f776e463d..0f6edf28b 100644
--- a/recipes-bsp/firmware-imx/firmware-ele-imx_2.0.2.bb
+++ b/recipes-bsp/firmware-imx/firmware-ele-imx_2.0.5.bb
@@ -1,15 +1,15 @@
1# Copyright 2021-2025 NXP 1# Copyright 2021-2026 NXP
2SUMMARY = "NXP i.MX ELE firmware" 2SUMMARY = "NXP i.MX ELE firmware"
3DESCRIPTION = "EdgeLock Secure Enclave firmware for i.MX series SoCs" 3DESCRIPTION = "EdgeLock Secure Enclave firmware for i.MX series SoCs"
4SECTION = "base" 4SECTION = "base"
5LICENSE = "Proprietary" 5LICENSE = "Proprietary"
6LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 6LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
7 7
8inherit fsl-eula-unpack use-imx-security-controller-firmware deploy 8inherit fsl-eula-unpack use-imx-security-controller-firmware deploy
9 9
10SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true" 10SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
11IMX_SRCREV_ABBREV = "89161a8" 11IMX_SRCREV_ABBREV = "29313e0"
12SRC_URI[sha256sum] = "2d29f0a4de3662ba15f6a7d9069702d4eaed415d96a17f29d5b127f2c6fdd634" 12SRC_URI[sha256sum] = "3af1a5e1336ae3379cf573ccdf34fd8adec99005c4abb70ea0f14af3ac5fb1ae"
13 13
14S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" 14S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
15 15
@@ -17,10 +17,9 @@ do_compile[noexec] = "1"
17 17
18do_install() { 18do_install() {
19 install -d ${D}${nonarch_base_libdir}/firmware/imx/ele 19 install -d ${D}${nonarch_base_libdir}/firmware/imx/ele
20 install -m 0644 ${S}/${SECO_FIRMWARE_NAME} ${D}${nonarch_base_libdir}/firmware/imx/ele 20 for fw in ${SECO_FIRMWARE_NAME} ${SECOEXT_FIRMWARE_NAME}; do
21 if [ -e ${S}/${SECOEXT_FIRMWARE_NAME} ]; then 21 install -m 0644 ${S}/$fw ${D}${nonarch_base_libdir}/firmware/imx/ele
22 install -m 0644 ${S}/${SECOEXT_FIRMWARE_NAME} ${D}${nonarch_base_libdir}/firmware/imx/ele 22 done
23 fi
24} 23}
25 24
26do_deploy () { 25do_deploy () {
@@ -29,12 +28,7 @@ do_deploy () {
29} 28}
30addtask deploy after do_install before do_build 29addtask deploy after do_install before do_build
31 30
32PACKAGES += "${PN}-ext" 31FILES:${PN} = "${nonarch_base_libdir}/firmware"
33
34ALLOW_EMPTY:${PN}-ext = "1"
35
36FILES:${PN} += "${nonarch_base_libdir}/firmware/imx/ele/${SECO_FIRMWARE_NAME}"
37FILES:${PN}-ext += "${nonarch_base_libdir}/firmware/imx/ele/${SECOEXT_FIRMWARE_NAME}"
38 32
39RREPLACES:${PN} = "firmware-sentinel" 33RREPLACES:${PN} = "firmware-sentinel"
40RPROVIDES:${PN} = "firmware-sentinel" 34RPROVIDES:${PN} = "firmware-sentinel"
diff --git a/recipes-bsp/firmware-imx/firmware-imx-8.28.inc b/recipes-bsp/firmware-imx/firmware-imx-8.31.inc
index 63febc19b..efc895760 100644
--- a/recipes-bsp/firmware-imx/firmware-imx-8.28.inc
+++ b/recipes-bsp/firmware-imx/firmware-imx-8.31.inc
@@ -1,16 +1,16 @@
1# Copyright (C) 2012-2016 Freescale Semiconductor 1# Copyright (C) 2012-2016 Freescale Semiconductor
2# Copyright 2017-2025 NXP 2# Copyright 2017-2026 NXP
3# Copyright (C) 2018 O.S. Systems Software LTDA. 3# Copyright (C) 2018 O.S. Systems Software LTDA.
4HOMEPAGE = "https://www.nxp.com/" 4HOMEPAGE = "https://www.nxp.com/"
5SECTION = "base" 5SECTION = "base"
6LICENSE = "Proprietary" 6LICENSE = "Proprietary"
7LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 7LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
8 8
9# Note: This .inc file is used from differently named recipes, so the package 9# Note: This .inc file is used from differently named recipes, so the package
10# name must be hard-coded, i.e., ${BPN} cannot be used. 10# name must be hard-coded, i.e., ${BPN} cannot be used.
11SRC_URI = "${FSL_MIRROR}/firmware-imx-${PV}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true" 11SRC_URI = "${FSL_MIRROR}/firmware-imx-${PV}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
12IMX_SRCREV_ABBREV = "994fa14" 12IMX_SRCREV_ABBREV = "4fa5b46"
13SRC_URI[sha256sum] = "55996f340e87825685a00cd309901189066ec9545ee607734f942c3cde4d69dc" 13SRC_URI[sha256sum] = "7f83731cae7056ea4007bf8f0b19734cd76d53affb258405c85223ba7ade5354"
14 14
15S = "${UNPACKDIR}/firmware-imx-${PV}-${IMX_SRCREV_ABBREV}" 15S = "${UNPACKDIR}/firmware-imx-${PV}-${IMX_SRCREV_ABBREV}"
16 16
diff --git a/recipes-bsp/firmware-imx/firmware-imx_8.28.bb b/recipes-bsp/firmware-imx/firmware-imx_8.31.bb
index 2cd449165..0847a96c0 100644
--- a/recipes-bsp/firmware-imx/firmware-imx_8.28.bb
+++ b/recipes-bsp/firmware-imx/firmware-imx_8.31.bb
@@ -1,5 +1,5 @@
1# Copyright (C) 2012-2016 Freescale Semiconductor 1# Copyright (C) 2012-2016 Freescale Semiconductor
2# Copyright 2017-2021,2024-2025 NXP 2# Copyright 2017-2021,2024-2026 NXP
3# Copyright (C) 2018 O.S. Systems Software LTDA. 3# Copyright (C) 2018 O.S. Systems Software LTDA.
4SUMMARY = "Freescale i.MX firmware" 4SUMMARY = "Freescale i.MX firmware"
5DESCRIPTION = "Freescale i.MX firmware such as for the VPU" 5DESCRIPTION = "Freescale i.MX firmware such as for the VPU"
@@ -65,6 +65,10 @@ do_install() {
65 mv ${D}${nonarch_base_libdir}/firmware/vpu/vpu_fw_imx8* ${D}${nonarch_base_libdir}/firmware/amphion/vpu/ 65 mv ${D}${nonarch_base_libdir}/firmware/vpu/vpu_fw_imx8* ${D}${nonarch_base_libdir}/firmware/amphion/vpu/
66 # Install i.MX 95 VPU firmware 66 # Install i.MX 95 VPU firmware
67 install -m 0644 ${S}/firmware/vpu/wave633c_codec_fw.bin ${D}${nonarch_base_libdir}/firmware 67 install -m 0644 ${S}/firmware/vpu/wave633c_codec_fw.bin ${D}${nonarch_base_libdir}/firmware
68 # Install i.MX 952 VPU firmware
69 install -d ${D}${nonarch_base_libdir}/firmware/cnm
70 install -m 0644 ${S}/firmware/vpu/coda980_enc_fw.bin ${D}${nonarch_base_libdir}/firmware/cnm
71 install -m 0644 ${S}/firmware/vpu/wave511_dec_fw.bin ${D}${nonarch_base_libdir}/firmware/cnm
68} 72}
69 73
70# 74#
@@ -157,7 +161,7 @@ PACKAGES_DYNAMIC = "${PN}-vpu-* ${PN}-sdma-* ${PN}-easrc-* ${PN}-xcvr-* ${PN}-xu
157# is empty. 161# is empty.
158# Therefore, we opt-out from producing -dev package here, since also for firmware 162# Therefore, we opt-out from producing -dev package here, since also for firmware
159# files it makes no sense. 163# files it makes no sense.
160PACKAGES = "${PN} ${PN}-epdc ${PN}-hdmi ${PN}-vpu-amphion ${PN}-vpu-wave" 164PACKAGES = "${PN} ${PN}-epdc ${PN}-hdmi ${PN}-vpu-amphion ${PN}-vpu-coda980 ${PN}-vpu-wave511 ${PN}-vpu-wave"
161 165
162FILES:${PN}-epdc = "${nonarch_base_libdir}/firmware/imx/epdc/" 166FILES:${PN}-epdc = "${nonarch_base_libdir}/firmware/imx/epdc/"
163FILES:${PN}-hdmi = " \ 167FILES:${PN}-hdmi = " \
@@ -166,6 +170,8 @@ FILES:${PN}-hdmi = " \
166 ${nonarch_base_libdir}/firmware/dpfw.bin \ 170 ${nonarch_base_libdir}/firmware/dpfw.bin \
167" 171"
168FILES:${PN}-vpu-amphion = "${nonarch_base_libdir}/firmware/amphion/vpu/*" 172FILES:${PN}-vpu-amphion = "${nonarch_base_libdir}/firmware/amphion/vpu/*"
173FILES:${PN}-vpu-coda980 = "${nonarch_base_libdir}/firmware/cnm/coda980_enc_fw.bin"
174FILES:${PN}-vpu-wave511 = "${nonarch_base_libdir}/firmware/cnm/wave511_dec_fw.bin"
169FILES:${PN}-vpu-wave = "${nonarch_base_libdir}/firmware/wave633c_codec_fw.bin" 175FILES:${PN}-vpu-wave = "${nonarch_base_libdir}/firmware/wave633c_codec_fw.bin"
170 176
171COMPATIBLE_MACHINE = "(imx-generic-bsp)" 177COMPATIBLE_MACHINE = "(imx-generic-bsp)"
diff --git a/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb b/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb
index d0607a093..58b69bae8 100644
--- a/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb
+++ b/recipes-bsp/firmware-imx/firmware-nxp-wifi_1.1.bb
@@ -10,9 +10,8 @@ LICENSE = "Proprietary"
10LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=bc649096ad3928ec06a8713b8d787eac" 10LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=bc649096ad3928ec06a8713b8d787eac"
11 11
12SRC_URI = "git://github.com/nxp-imx/imx-firmware.git;protocol=https;branch=${SRCBRANCH}" 12SRC_URI = "git://github.com/nxp-imx/imx-firmware.git;protocol=https;branch=${SRCBRANCH}"
13SRCBRANCH = "lf-6.12.49_2.2.0" 13SRCBRANCH = "lf-6.18.2_1.0.0"
14SRCREV = "8c9b278016c97527b285f2fcbe53c2d428eb171d" 14SRCREV = "d7e4bb37b45bbf93faf888e0ca6763a29e28054a"
15
16 15
17inherit allarch 16inherit allarch
18 17
@@ -28,15 +27,13 @@ do_install() {
28 install -d ${D}${nonarch_base_libdir}/firmware/nxp 27 install -d ${D}${nonarch_base_libdir}/firmware/nxp
29 oe_runmake install INSTALLDIR=${D}${nonarch_base_libdir}/firmware/nxp 28 oe_runmake install INSTALLDIR=${D}${nonarch_base_libdir}/firmware/nxp
30 29
31 # Upstream SDIO8997 and IW416 driver firmwares are located on mrvl folder 30 # Upstream ISDIO8997 and W416 driver firmwares are located on mrvl folder
32 install -d ${D}${nonarch_base_libdir}/firmware/mrvl 31 install -d ${D}${nonarch_base_libdir}/firmware/mrvl
33 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sdiouart8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sdiouart8997_combo_v4.bin 32 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sdiouart8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sdiouart8997_combo_v4.bin
34 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sdiouartiw416_combo_v0.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sdiouartiw416_combo_v0.bin 33 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sdiouartiw416_combo_v0.bin ${D}${nonarch_base_libdir}/firmware/mrvl/sdiouartiw416_combo_v0.bin
35 34
36 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sd9098_wlan_v1.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdio9098_wlan_v1.bin 35 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sd9098_wlan_v1.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdio9098_wlan_v1.bin
37 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sduart9098_combo_v1.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdiouart9098_combo_v1.bin 36 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sduart9098_combo_v1.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdiouart9098_combo_v1.bin
38 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sd8997_wlan_v4.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdio8997_wlan_v4.bin
39 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sduart8997_combo_v4.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdiouart8997_combo_v4.bin
40 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sduartiw416_combo.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdiouartiw416_combo_v0.bin 37 ln -frs ${D}${nonarch_base_libdir}/firmware/nxp/sduartiw416_combo.bin ${D}${nonarch_base_libdir}/firmware/nxp/sdiouartiw416_combo_v0.bin
41} 38}
42 39
@@ -47,8 +44,6 @@ PACKAGES =+ " \
47 \ 44 \
48 ${PN}-nxp-common \ 45 ${PN}-nxp-common \
49 ${PN}-nxp8987-sdio \ 46 ${PN}-nxp8987-sdio \
50 ${PN}-nxp8997-common \
51 ${PN}-nxp8997-pcie \
52 ${PN}-nxp8997-sdio \ 47 ${PN}-nxp8997-sdio \
53 ${PN}-nxp9098-common \ 48 ${PN}-nxp9098-common \
54 ${PN}-nxp9098-pcie \ 49 ${PN}-nxp9098-pcie \
@@ -70,7 +65,6 @@ RDEPENDS:${PN}-all-sdio = " \
70" 65"
71 66
72RDEPENDS:${PN}-all-pcie = " \ 67RDEPENDS:${PN}-all-pcie = " \
73 ${PN}-nxp8997-pcie \
74 ${PN}-nxp9098-pcie \ 68 ${PN}-nxp9098-pcie \
75 ${PN}-nxpaw693-pcie \ 69 ${PN}-nxpaw693-pcie \
76" 70"
@@ -92,32 +86,9 @@ RPROVIDES:${PN}-nxp8987-sdio = "linux-firmware-nxp8987-sdio"
92RREPLACES:${PN}-nxp8987-sdio = "linux-firmware-nxp8987-sdio" 86RREPLACES:${PN}-nxp8987-sdio = "linux-firmware-nxp8987-sdio"
93RCONFLICTS:${PN}-nxp8987-sdio = "linux-firmware-nxp8987-sdio" 87RCONFLICTS:${PN}-nxp8987-sdio = "linux-firmware-nxp8987-sdio"
94 88
95FILES:${PN}-nxp8997-common = " \
96 ${nonarch_base_libdir}/firmware/nxp/ed_mac_ctrl_V3_8997.conf \
97 ${nonarch_base_libdir}/firmware/nxp/txpwrlimit_cfg_8997.conf \
98 ${nonarch_base_libdir}/firmware/nxp/uart8997_bt_v4.bin \
99"
100RDEPENDS:${PN}-nxp8997-common += "${PN}-nxp-common"
101RPROVIDES:${PN}-nxp8997-common = "linux-firmware-nxp8997-common"
102RREPLACES:${PN}-nxp8997-common = "linux-firmware-nxp8997-common"
103RCONFLICTS:${PN}-nxp8997-common = "linux-firmware-nxp8997-common"
104
105FILES:${PN}-nxp8997-pcie = " \
106 ${nonarch_base_libdir}/firmware/nxp/pci*8997* \
107"
108RDEPENDS:${PN}-nxp8997-pcie += "${PN}-nxp8997-common"
109RPROVIDES:${PN}-nxp8997-pcie = "linux-firmware-nxp8997-pcie"
110RREPLACES:${PN}-nxp8997-pcie = "linux-firmware-nxp8997-pcie"
111RCONFLICTS:${PN}-nxp8997-pcie = "linux-firmware-nxp8997-pcie"
112
113FILES:${PN}-nxp8997-sdio = " \ 89FILES:${PN}-nxp8997-sdio = " \
114 ${nonarch_base_libdir}/firmware/mrvl/sdiouart8997_combo_v4.bin \ 90 ${nonarch_base_libdir}/firmware/mrvl/sdiouart8997_combo_v4.bin \
115 ${nonarch_base_libdir}/firmware/nxp/sd*8997* \
116" 91"
117RDEPENDS:${PN}-nxp8997-sdio += "${PN}-nxp8997-common"
118RPROVIDES:${PN}-nxp8997-sdio = "linux-firmware-nxp8997-sdio"
119RREPLACES:${PN}-nxp8997-sdio = "linux-firmware-nxp8997-sdio"
120RCONFLICTS:${PN}-nxp8997-sdio = "linux-firmware-nxp8997-sdio"
121 92
122FILES:${PN}-nxp9098-common = " \ 93FILES:${PN}-nxp9098-common = " \
123 ${nonarch_base_libdir}/firmware/nxp/ed_mac_ctrl_V3_909x.conf \ 94 ${nonarch_base_libdir}/firmware/nxp/ed_mac_ctrl_V3_909x.conf \
@@ -178,11 +149,11 @@ FILES:${PN}-nxpiw610-usb += " \
178RDEPENDS:${PN}-nxpiw610-usb += "${PN}-nxp-common" 149RDEPENDS:${PN}-nxpiw610-usb += "${PN}-nxp-common"
179 150
180FILES:${PN}-nxpiw612-sdio = " \ 151FILES:${PN}-nxpiw612-sdio = " \
181 ${nonarch_base_libdir}/firmware/nxp/sduart_nw61x_v1.bin.se \
182 ${nonarch_base_libdir}/firmware/nxp/sd_w61x_v1.bin.se \ 152 ${nonarch_base_libdir}/firmware/nxp/sd_w61x_v1.bin.se \
183 ${nonarch_base_libdir}/firmware/nxp/uartspi_n61x_v1.bin.se \ 153 ${nonarch_base_libdir}/firmware/nxp/sduart_nw61x_*.bin.se \
154 ${nonarch_base_libdir}/firmware/nxp/uartspi_n61x_*.bin.se \
155 ${nonarch_base_libdir}/firmware/nxp/uartuart_n61x_*.bin.se \
184 ${nonarch_base_libdir}/firmware/nxp/IW612_SD_RFTest/ \ 156 ${nonarch_base_libdir}/firmware/nxp/IW612_SD_RFTest/ \
185 ${nonarch_base_libdir}/firmware/nxp/uartuart_n61x_v1.bin.se \
186" 157"
187RDEPENDS:${PN}-nxpiw612-sdio += "${PN}-nxp-common" 158RDEPENDS:${PN}-nxpiw612-sdio += "${PN}-nxp-common"
188RPROVIDES:${PN}-nxpiw612-sdio = "linux-firmware-nxpiw612-sdio" 159RPROVIDES:${PN}-nxpiw612-sdio = "linux-firmware-nxpiw612-sdio"
diff --git a/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.28.bb b/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.31.bb
index 4c0d51c8a..53edf58bd 100644
--- a/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.28.bb
+++ b/recipes-bsp/firmware-imx/imx-boot-firmware-files_8.31.bb
@@ -1,4 +1,4 @@
1# Copyright (C) 2018-2025 NXP 1# Copyright (C) 2018-2026 NXP
2SUMMARY = "Freescale i.MX Firmware files used for boot" 2SUMMARY = "Freescale i.MX Firmware files used for boot"
3 3
4require firmware-imx-${PV}.inc 4require firmware-imx-${PV}.inc
diff --git a/recipes-bsp/imx-atf/imx-atf/0001-scmi-imx9-Remove-unused-tmp-pointer.patch b/recipes-bsp/imx-atf/imx-atf/0001-scmi-imx9-Remove-unused-tmp-pointer.patch
new file mode 100644
index 000000000..ce801061a
--- /dev/null
+++ b/recipes-bsp/imx-atf/imx-atf/0001-scmi-imx9-Remove-unused-tmp-pointer.patch
@@ -0,0 +1,38 @@
1From 455e501513345b98ff93d9c214f2f17629edd318 Mon Sep 17 00:00:00 2001
2From: Franz Schnyder <franz.schnyder@toradex.com>
3Date: Fri, 29 May 2026 11:04:45 +0200
4Subject: [PATCH] scmi: imx9: Remove unused tmp pointer
5
6The scmi_per_lpm_mode_set function declares a tmp pointer but is never
7read. The newer GCC version 16.1.0 treats the unused pointer as
8-Wunused-but-set-variable. With -Werror, this breaks the build.
9
10Upstream-Status: Pending
11Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
12---
13 drivers/arm/css/scmi/vendor/scmi_imx9.c | 2 --
14 1 file changed, 2 deletions(-)
15
16diff --git a/drivers/arm/css/scmi/vendor/scmi_imx9.c b/drivers/arm/css/scmi/vendor/scmi_imx9.c
17index 8319eeb69..3a0f5b95b 100644
18--- a/drivers/arm/css/scmi/vendor/scmi_imx9.c
19+++ b/drivers/arm/css/scmi/vendor/scmi_imx9.c
20@@ -400,7 +400,6 @@ int scmi_per_lpm_mode_set(void *p, uint32_t cpu_id, uint32_t num_configs,
21 unsigned int token = 0;
22 int ret;
23 scmi_channel_t *ch = (scmi_channel_t *)p;
24- struct scmi_per_lpm_config *tmp = cfg;
25
26 validate_scmi_channel(ch);
27
28@@ -428,7 +427,6 @@ int scmi_per_lpm_mode_set(void *p, uint32_t cpu_id, uint32_t num_configs,
29
30 if (num_configs > MAX_PER_LPI_CONFIGS_PER_CMD) {
31 num_configs -= MAX_PER_LPI_CONFIGS_PER_CMD;
32- tmp += MAX_PER_LPI_CONFIGS_PER_CMD;
33 } else {
34 break;
35 }
36--
372.43.0
38
diff --git a/recipes-bsp/imx-atf/imx-atf_2.12.bb b/recipes-bsp/imx-atf/imx-atf_2.12.bb
index ba494594f..7cef23416 100644
--- a/recipes-bsp/imx-atf/imx-atf_2.12.bb
+++ b/recipes-bsp/imx-atf/imx-atf_2.12.bb
@@ -1,4 +1,4 @@
1# Copyright (C) 2017-2025 NXP 1# Copyright (C) 2017-2026 NXP
2 2
3DESCRIPTION = "i.MX ARM Trusted Firmware" 3DESCRIPTION = "i.MX ARM Trusted Firmware"
4SECTION = "BSP" 4SECTION = "BSP"
@@ -7,13 +7,23 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;m
7 7
8PV .= "+git${SRCPV}" 8PV .= "+git${SRCPV}"
9 9
10SRC_URI = "git://github.com/nxp-imx/imx-atf.git;protocol=https;branch=${SRCBRANCH} \ 10SRC_URI = "${ATF_SRC};branch=${SRCBRANCH} \
11 file://0001-imx93-trdc-Fix-header-guard.patch" 11 file://0001-scmi-imx9-Remove-unused-tmp-pointer.patch \
12"
13ATF_SRC ?= "git://github.com/nxp-imx/imx-atf.git;protocol=https"
12SRCBRANCH = "lf_v2.12" 14SRCBRANCH = "lf_v2.12"
13SRCREV = "6ddd57019494cabfca5065368349109c37f2cc9f" 15SRCREV = "4a2e9ef5f9f185bda68470b46365add008903b8c"
14 16
15inherit deploy 17inherit deploy
16 18
19PACKAGECONFIG ??= " \
20 ${@bb.utils.filter('UBOOT_CONFIG', 'crrm', d)} \
21 ${@bb.utils.filter('MACHINE_FEATURES', 'optee', d)}"
22
23PACKAGECONFIG[crrm] = "IMX_CRRM=1"
24PACKAGECONFIG[debug] = "DEBUG=1,DEBUG=0"
25PACKAGECONFIG[optee] = "SPD=opteed"
26
17ATF_PLATFORM ??= "INVALID" 27ATF_PLATFORM ??= "INVALID"
18 28
19# FIXME: We should return INVALID here but currently only i.MX8M has support to override the UART 29# FIXME: We should return INVALID here but currently only i.MX8M has support to override the UART
@@ -23,8 +33,9 @@ ATF_BOOT_UART_BASE ?= ""
23EXTRA_OEMAKE += " \ 33EXTRA_OEMAKE += " \
24 CROSS_COMPILE=${TARGET_PREFIX} \ 34 CROSS_COMPILE=${TARGET_PREFIX} \
25 PLAT=${ATF_PLATFORM} \ 35 PLAT=${ATF_PLATFORM} \
36 ${PACKAGECONFIG_CONFARGS} \
37 bl31 \
26" 38"
27
28# Let the Makefile handle setting up the CFLAGS and LDFLAGS as it is a standalone application 39# Let the Makefile handle setting up the CFLAGS and LDFLAGS as it is a standalone application
29CFLAGS[unexport] = "1" 40CFLAGS[unexport] = "1"
30LDFLAGS[unexport] = "1" 41LDFLAGS[unexport] = "1"
@@ -38,8 +49,6 @@ DEPENDS = "virtual/cross-cc"
38# Bring in clang compiler if using clang as default 49# Bring in clang compiler if using clang as default
39DEPENDS:append:toolchain-clang = " clang-cross-${TARGET_ARCH}" 50DEPENDS:append:toolchain-clang = " clang-cross-${TARGET_ARCH}"
40 51
41BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}"
42
43# CC and LD introduce arguments which conflict with those otherwise provided by 52# CC and LD introduce arguments which conflict with those otherwise provided by
44# this recipe. The heads of these variables excluding those arguments 53# this recipe. The heads of these variables excluding those arguments
45# are therefore used instead. 54# are therefore used instead.
@@ -58,23 +67,19 @@ EXTRA_OEMAKE += 'IMX_BOOT_UART_BASE=${ATF_BOOT_UART_BASE}'
58 67
59do_configure[noexec] = "1" 68do_configure[noexec] = "1"
60 69
61do_compile() {
62 # Clear LDFLAGS to avoid the option -Wl recognize issue
63 oe_runmake bl31
64 if ${BUILD_OPTEE}; then
65 oe_runmake clean BUILD_BASE=build-optee
66 oe_runmake BUILD_BASE=build-optee SPD=opteed bl31
67 fi
68}
69
70do_install[noexec] = "1" 70do_install[noexec] = "1"
71 71
72ANNOTATED_NAME = "bl31-${ATF_PLATFORM}.bin"
73ANNOTATED_NAME:append = "${@bb.utils.contains('PACKAGECONFIG', 'crrm', '-crrm', '', d)}"
74ANNOTATED_NAME:append = "${@bb.utils.contains('PACKAGECONFIG', 'optee', '-optee', '', d)}"
75
72addtask deploy after do_compile 76addtask deploy after do_compile
73do_deploy() { 77do_deploy() {
74 install -Dm 0644 ${S}/build/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin 78 OUTPUT_FOLDER="${@bb.utils.contains('PACKAGECONFIG', 'debug', 'debug', 'release', d)}"
75 if ${BUILD_OPTEE}; then 79 for deploydir in ${DEPLOYDIR} ${DEPLOYDIR}/imx-boot-tools; do
76 install -m 0644 ${S}/build-optee/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin-optee 80 install -Dm 0644 ${S}/build/${ATF_PLATFORM}/${OUTPUT_FOLDER}/bl31.bin $deploydir/${ANNOTATED_NAME}
77 fi 81 done
82 ln -sf ${ANNOTATED_NAME} ${DEPLOYDIR}/bl31.bin
78} 83}
79 84
80PACKAGE_ARCH = "${MACHINE_ARCH}" 85PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
index 120f0594e..fcc8f84b3 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_1.0.bb
@@ -1,4 +1,4 @@
1# Copyright (C) 2017-2024 NXP 1# Copyright (C) 2017-2024,2026 NXP
2 2
3require imx-mkimage_git.inc 3require imx-mkimage_git.inc
4 4
@@ -7,19 +7,30 @@ LICENSE = "GPL-2.0-only"
7LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" 7LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
8SECTION = "BSP" 8SECTION = "BSP"
9 9
10inherit use-imx-security-controller-firmware uboot-config 10DEPENDS += "xxd-native"
11DEPENDS:append:mx8m-generic-bsp = " u-boot-mkimage-native dtc-native u-boot-mkeficapsule-native"
12DEPENDS:append:mx93-generic-bsp = " u-boot-mkimage-native dtc-native u-boot-mkeficapsule-native"
13DEPENDS:append:mx95-generic-bsp = " u-boot-mkeficapsule-native"
11 14
15# This package aggregates output deployed by other packages,
16# so set the appropriate dependencies
12DEPENDS += " \ 17DEPENDS += " \
13 u-boot \ 18 virtual/bootloader \
14 ${IMX_EXTRA_FIRMWARE} \ 19 ${IMX_EXTRA_FIRMWARE} \
15 imx-atf \ 20 imx-atf \
21 ${@bb.utils.contains('UBOOT_CONFIG', 'crrm', '${CRRM_DEPLOY_DEPENDS}', '', d)} \
16 ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'optee-os', '', d)} \ 22 ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'optee-os', '', d)} \
17" 23"
18# xxd is a dependency of fspi_packer.sh
19DEPENDS += "xxd-native"
20DEPENDS:append:mx8m-generic-bsp = " u-boot-mkimage-native dtc-native"
21DEPENDS:append:mx93-generic-bsp = " u-boot-mkimage-native dtc-native"
22 24
25do_compile[deptask] = "do_deploy"
26do_compile[depends] += "${@bb.utils.contains('UBOOT_CONFIG', 'crrm', '${CRRM_INITRAMFS}:do_build', '', d)}"
27
28CRRM_DEPLOY_DEPENDS ?= " \
29 virtual/kernel \
30 ${CRRM_INITRAMFS}"
31CRRM_INITRAMFS ??= "imx-image-crrm-initramfs"
32
33inherit use-imx-security-controller-firmware uboot-config
23inherit deploy uuu_bootloader_tag 34inherit deploy uuu_bootloader_tag
24 35
25UUU_BOOTLOADER = "imx-boot" 36UUU_BOOTLOADER = "imx-boot"
@@ -27,21 +38,12 @@ UUU_BOOTLOADER = "imx-boot"
27# Add CFLAGS with native INCDIR & LIBDIR for imx-mkimage build 38# Add CFLAGS with native INCDIR & LIBDIR for imx-mkimage build
28CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR_NATIVE} -L ${STAGING_LIBDIR_NATIVE}" 39CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR_NATIVE} -L ${STAGING_LIBDIR_NATIVE}"
29 40
30# This package aggregates output deployed by other packages,
31# so set the appropriate dependencies
32do_compile[depends] += " \
33 virtual/bootloader:do_deploy \
34 ${@' '.join('%s:do_deploy' % r for r in '${IMX_EXTRA_FIRMWARE}'.split() )} \
35 imx-atf:do_deploy \
36 ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'optee-os:do_deploy', '', d)} \
37"
38
39SC_FIRMWARE_NAME ?= "scfw_tcm.bin" 41SC_FIRMWARE_NAME ?= "scfw_tcm.bin"
40 42
41OEI_ENABLE = "${@bb.utils.contains('DEPENDS', 'virtual/imx-oei', 'YES', 'NO', d)}"
42OEI_NAME ?= "oei-${OEI_CORE}-*.bin" 43OEI_NAME ?= "oei-${OEI_CORE}-*.bin"
43 44
44ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin" 45ATF_MACHINE_NAME ?= "bl31-${ATF_PLATFORM}.bin"
46ATF_MACHINE_NAME:append = "${@bb.utils.contains('UBOOT_CONFIG', 'crrm', '-crrm', '', d)}"
45ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}" 47ATF_MACHINE_NAME:append = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', '-optee', '', d)}"
46 48
47BOOT_VARIANT ?= "" 49BOOT_VARIANT ?= ""
@@ -80,21 +82,35 @@ REV_OPTION ?= "REV=${IMX_SOC_REV_UPPER}"
80 82
81MKIMAGE_EXTRA_ARGS ?= "" 83MKIMAGE_EXTRA_ARGS ?= ""
82MKIMAGE_EXTRA_ARGS:mx943-nxp-bsp ?= " \ 84MKIMAGE_EXTRA_ARGS:mx943-nxp-bsp ?= " \
83 OEI=${OEI_ENABLE} \ 85 OEI=YES \
84 LPDDR_TYPE=${DDR_TYPE} \ 86 LPDDR_TYPE=${DDR_TYPE} \
85 MSEL=${MSEL_TYPE} \ 87 MSEL=${MSEL_TYPE} \
86" 88"
87MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp ?= " \ 89MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp ?= " \
88 OEI=${OEI_ENABLE} \ 90 OEI=YES \
89 LPDDR_TYPE=${DDR_TYPE} \ 91 LPDDR_TYPE=${DDR_TYPE} \
90 ${@'LPDDR_FW_VERSION='+d.getVar('LPDDR_FW_VERSION') if d.getVar('LPDDR_FW_VERSION') else ''} \ 92 ${@'LPDDR_FW_VERSION='+d.getVar('LPDDR_FW_VERSION') if d.getVar('LPDDR_FW_VERSION') else ''} \
91 ${@bb.utils.contains('SYSTEM_MANAGER_CONFIG', 'mx95alt', 'MSEL=1', '', d)}" 93 ${@bb.utils.contains('SYSTEM_MANAGER_CONFIG', 'mx95alt', 'MSEL=1', '', d)}"
94MKIMAGE_EXTRA_ARGS:imx95-19x19-lpddr5-frdm-pro ?= " \
95 ${MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp} \
96 QSPI_HEADER=./scripts/fspi_header-W25Q512NWEIQ"
97
92MKIMAGE_EXTRA_ARGS:imx95-19x19-verdin ?= " \ 98MKIMAGE_EXTRA_ARGS:imx95-19x19-verdin ?= " \
93 ${MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp} \ 99 ${MKIMAGE_EXTRA_ARGS:mx95-nxp-bsp} \
94 QSPI_HEADER=./scripts/fspi_header_133" 100 QSPI_HEADER=./scripts/fspi_header_133"
101MKIMAGE_EXTRA_ARGS:imx95-a1-19x19-verdin ?= " \
102 ${MKIMAGE_EXTRA_ARGS:imx95-19x19-verdin} \
103"
95 104
96UBOOT_DTB_BINARY ?= "u-boot.dtb" 105UBOOT_DTB_BINARY ?= "u-boot.dtb"
97 106
107CRRM_FILES = " \
108 ${KERNEL_IMAGETYPE}.gz \
109 ${KERNEL_IMAGETYPE}_crrm.gz \
110 ${KERNEL_DEVICETREE_BASENAME}.dtb \
111 ${KERNEL_DEVICETREE_BASENAME}-crrm.dtb \
112 ${CRRM_INITRAMFS}-${MACHINE}.cpio.zst.u-boot"
113
98compile_mx8m() { 114compile_mx8m() {
99 bbnote 8MQ/8MM/8MN/8MP boot binary build 115 bbnote 8MQ/8MM/8MN/8MP boot binary build
100 for ddr_firmware in ${DDR_FIRMWARE_NAME}; do 116 for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
@@ -188,6 +204,7 @@ compile_mx943() {
188 bbnote i.MX 943 boot binary build 204 bbnote i.MX 943 boot binary build
189 compile_mx93 205 compile_mx93
190 206
207 cp ${DEPLOY_DIR_IMAGE}/${OEI_NAME} ${BOOT_STAGING}
191 cp ${DEPLOY_DIR_IMAGE}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin \ 208 cp ${DEPLOY_DIR_IMAGE}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin \
192 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin 209 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin
193} 210}
@@ -196,6 +213,7 @@ compile_mx95() {
196 bbnote i.MX 95 boot binary build 213 bbnote i.MX 95 boot binary build
197 compile_mx93 214 compile_mx93
198 215
216 cp ${DEPLOY_DIR_IMAGE}/${OEI_NAME} ${BOOT_STAGING}
199 cp ${DEPLOY_DIR_IMAGE}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin \ 217 cp ${DEPLOY_DIR_IMAGE}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin \
200 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin 218 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin
201} 219}
@@ -210,9 +228,13 @@ do_compile() {
210 cp ${DEPLOY_DIR_IMAGE}/tee.bin ${BOOT_STAGING}/tee.bin-stmm 228 cp ${DEPLOY_DIR_IMAGE}/tee.bin ${BOOT_STAGING}/tee.bin-stmm
211 fi 229 fi
212 fi 230 fi
213 # Copy OEI firmware to SoC target folder to mkimage 231 # Copy CRRM binaries to SoC target folder to mkimage
214 if [ "${OEI_ENABLE}" = "YES" ]; then 232 if [ ${@bb.utils.filter('UBOOT_CONFIG', 'crrm', d)} ]; then
215 cp ${DEPLOY_DIR_IMAGE}/${OEI_NAME} ${BOOT_STAGING} 233 for f in ${CRRM_FILES}; do
234 cp ${DEPLOY_DIR_IMAGE}/$f ${BOOT_STAGING}/$f
235 done
236 ln -sf ${CRRM_INITRAMFS}-${MACHINE}.cpio.zst.u-boot \
237 ${BOOT_STAGING}/initramfs.cpio.zst.u-boot
216 fi 238 fi
217 239
218 for type in ${UBOOT_CONFIG}; do 240 for type in ${UBOOT_CONFIG}; do
@@ -250,11 +272,11 @@ do_compile() {
250 ;; 272 ;;
251 *stmm_capsule) 273 *stmm_capsule)
252 # target for flash_evk_stmm_capsule or 274 # target for flash_evk_stmm_capsule or
253 # flash_singleboot_stmm_capsule 275 # flash_singleboot_stmm_capsule or flash_lpboot_sm_all_stmm_capsule
254 cp ${RECIPE_SYSROOT_NATIVE}/${bindir}/mkeficapsule ${BOOT_STAGING} 276 cp ${RECIPE_SYSROOT_NATIVE}/${bindir}/mkeficapsule ${BOOT_STAGING}
255 bbnote "building ${IMX_BOOT_SOC_TARGET} - TEE=tee.bin-stmm ${target}" 277 bbnote "building ${IMX_BOOT_SOC_TARGET} - TEE=tee.bin-stmm ${MKIMAGE_EXTRA_ARGS} ${target}"
256 cp ${DEPLOY_DIR_IMAGE}/CRT.* ${BOOT_STAGING} 278 cp ${DEPLOY_DIR_IMAGE}/CRT.* ${BOOT_STAGING}
257 make SOC=${IMX_BOOT_SOC_TARGET} TEE=tee.bin-stmm dtbs=${UBOOT_DTB_NAME} ${REV_OPTION} ${target} 279 make SOC=${IMX_BOOT_SOC_TARGET} TEE=tee.bin-stmm ${MKIMAGE_EXTRA_ARGS} dtbs=${UBOOT_DTB_NAME} ${REV_OPTION} ${target}
258 ;; 280 ;;
259 *) 281 *)
260 bbnote "building ${IMX_BOOT_SOC_TARGET} - ${REV_OPTION} ${MKIMAGE_EXTRA_ARGS} ${target}" 282 bbnote "building ${IMX_BOOT_SOC_TARGET} - ${REV_OPTION} ${MKIMAGE_EXTRA_ARGS} ${target}"
@@ -365,12 +387,14 @@ deploy_mx93() {
365 387
366deploy_mx943() { 388deploy_mx943() {
367 deploy_mx93 389 deploy_mx93
390 install -m 0644 ${BOOT_STAGING}/${OEI_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
368 install -m 0644 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin \ 391 install -m 0644 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin \
369 ${DEPLOYDIR}/${BOOT_TOOLS}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin 392 ${DEPLOYDIR}/${BOOT_TOOLS}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin
370} 393}
371 394
372deploy_mx95() { 395deploy_mx95() {
373 deploy_mx93 396 deploy_mx93
397 install -m 0644 ${BOOT_STAGING}/${OEI_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
374 install -m 0644 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin \ 398 install -m 0644 ${BOOT_STAGING}/${SYSTEM_MANAGER_FIRMWARE_BASENAME}.bin \
375 ${DEPLOYDIR}/${BOOT_TOOLS}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin 399 ${DEPLOYDIR}/${BOOT_TOOLS}/${SYSTEM_MANAGER_FIRMWARE_NAME}.bin
376} 400}
@@ -383,9 +407,12 @@ do_deploy() {
383 install -m 0644 ${DEPLOY_DIR_IMAGE}/tee.bin ${DEPLOYDIR}/${BOOT_TOOLS} 407 install -m 0644 ${DEPLOY_DIR_IMAGE}/tee.bin ${DEPLOYDIR}/${BOOT_TOOLS}
384 fi 408 fi
385 409
386 # copy oei to deploy path 410 # copy crrm to deploy path
387 if [ "${OEI_ENABLE}" = "YES" ]; then 411 if [ ${@bb.utils.filter('UBOOT_CONFIG', 'crrm', d)} ]; then
388 install -m 0644 ${BOOT_STAGING}/${OEI_NAME} ${DEPLOYDIR}/${BOOT_TOOLS} 412 for f in ${CRRM_FILES}; do
413 cp ${DEPLOY_DIR_IMAGE}/$f ${DEPLOYDIR}/${BOOT_TOOLS}/$f
414 done
415 ln -s ${CRRM_INITRAMFS}-${MACHINE}.cpio.zst.u-boot ${DEPLOYDIR}/${BOOT_TOOLS}/initramfs.cpio.zst.u-boot
389 fi 416 fi
390 417
391 # copy makefile (soc.mak) for reference 418 # copy makefile (soc.mak) for reference
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
index f95f2a2ba..282bc45a1 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.bb
@@ -1,5 +1,5 @@
1# Copyright (C) 2016 Freescale Semiconductor 1# Copyright (C) 2016 Freescale Semiconductor
2# Copyright (C) 2017-2022 NXP 2# Copyright 2017-2022,2026 NXP
3 3
4require imx-mkimage_git.inc 4require imx-mkimage_git.inc
5 5
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
index a14d98241..4a4efae01 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
@@ -1,12 +1,13 @@
1# Copyright 2017-2025 NXP 1# Copyright 2017-2026 NXP
2 2
3DEPENDS = "zlib-native openssl-native" 3DEPENDS = "zlib-native openssl-native"
4 4
5SRC_URI = "git://github.com/nxp-imx/imx-mkimage.git;protocol=https;branch=${SRCBRANCH} \ 5SRC_URI = "${IMX_MKIMAGE_SRC};branch=${SRCBRANCH} \
6 file://0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch \ 6 file://0001-iMX8M-soc.mak-use-native-mkimage-from-sysroot.patch \
7" 7"
8SRCBRANCH = "lf-6.12.20_2.0.0" 8IMX_MKIMAGE_SRC ?= "git://github.com/nxp-imx/imx-mkimage.git;protocol=https"
9SRCREV = "4c2e5b25232f5aa003976ddca9d1d2fb9667beb1" 9SRCBRANCH = "lf-6.18.2_1.0.0"
10SRCREV = "c0debd7c0b4a125bd3ca66bc68f1915882b2bb62"
10 11
11BOOT_TOOLS = "imx-boot-tools" 12BOOT_TOOLS = "imx-boot-tools"
12SYSROOT_DIRS += "/boot" 13SYSROOT_DIRS += "/boot"
diff --git a/recipes-bsp/imx-seco/imx-seco_5.9.4.1.bb b/recipes-bsp/imx-seco/imx-seco_5.9.4.1.bb
index 2710297d6..a9d021b6c 100644
--- a/recipes-bsp/imx-seco/imx-seco_5.9.4.1.bb
+++ b/recipes-bsp/imx-seco/imx-seco_5.9.4.1.bb
@@ -17,7 +17,10 @@ S = "${UNPACKDIR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}"
17 17
18do_compile[noexec] = "1" 18do_compile[noexec] = "1"
19 19
20do_install[noexec] = "1" 20do_install:append() {
21 install -d ${D}${base_libdir}/firmware/${PN}
22 install -m 0644 ${S}/firmware/seco/${SECO_FIRMWARE_NAME} ${D}${base_libdir}/firmware/${PN}
23}
21 24
22addtask deploy after do_install 25addtask deploy after do_install
23do_deploy () { 26do_deploy () {
@@ -25,4 +28,5 @@ do_deploy () {
25 install -m 0644 ${S}/firmware/seco/${SECO_FIRMWARE_NAME} ${DEPLOYDIR} 28 install -m 0644 ${S}/firmware/seco/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}
26} 29}
27 30
31FILES:${PN} = "/"
28COMPATIBLE_MACHINE = "(mx8qm-generic-bsp|mx8qxp-generic-bsp|mx8dxl-generic-bsp|mx8dx-generic-bsp)" 32COMPATIBLE_MACHINE = "(mx8qm-generic-bsp|mx8qxp-generic-bsp|mx8dxl-generic-bsp|mx8dx-generic-bsp)"
diff --git a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc/0001-base_type.h-make-header-compatible-with-c23.patch b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc/0001-base_type.h-make-header-compatible-with-c23.patch
deleted file mode 100644
index 8d017ab71..000000000
--- a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc/0001-base_type.h-make-header-compatible-with-c23.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From e7f6097c9e7cb30f130502cc4804e1a1b01342de Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Wed, 7 May 2025 16:13:38 +0000
4Subject: [PATCH] base_type.h: make header compatible with c23
5
6With C23 bool, true and false are built in keywords and cannot be
7redefined.
8
9Upstream-Status: Pending
10Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
11---
12 usr/include/hantro_VC8000E_enc/base_type.h | 4 ++++
13 1 file changed, 4 insertions(+)
14
15diff --git a/usr/include/hantro_VC8000E_enc/base_type.h b/usr/include/hantro_VC8000E_enc/base_type.h
16index 282fc81b8eba..af4212eed2bd 100755
17--- a/usr/include/hantro_VC8000E_enc/base_type.h
18+++ b/usr/include/hantro_VC8000E_enc/base_type.h
19@@ -67,6 +67,9 @@ typedef unsigned int UInt;
20 #define HANTRO_FALSE 0
21 #define HANTRO_TRUE 1
22
23+#if defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L
24+/* bool, true and false are keywords. */
25+#else
26 #ifndef bool
27 typedef enum
28 {
29@@ -74,6 +77,7 @@ typedef enum
30 true = HANTRO_TRUE
31 } bool;
32 #endif
33+#endif
34
35 enum
36 {
37--
382.42.0
39
diff --git a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.10.1.bb b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.11.0.bb
index 68c2a4979..528b05e17 100644
--- a/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.10.1.bb
+++ b/recipes-bsp/imx-vpu-hantro-vc/imx-vpu-hantro-vc_1.11.0.bb
@@ -2,18 +2,14 @@
2 2
3DESCRIPTION = "i.MX VC8000E Encoder library" 3DESCRIPTION = "i.MX VC8000E Encoder library"
4LICENSE = "Proprietary" 4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=ca53281cc0caa7e320d4945a896fb837" 5LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
6 6
7inherit fsl-eula-unpack 7inherit fsl-eula-unpack
8 8
9SRC_URI = " \ 9SRC_URI = " ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
10 ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \ 10IMX_SRCREV_ABBREV = "5e18a84"
11 file://0001-base_type.h-make-header-compatible-with-c23.patch \
12"
13IMX_SRCREV_ABBREV = "c0244a1"
14
15SRC_URI[sha256sum] = "713ba375f25490727fcc62bab5d5508f74de03204b4c153464b696b652c5c7df"
16 11
12SRC_URI[sha256sum] = "04d2a9c5c75804a11a4500a0133dfc7d8e84f74254cee52c42075f5ecc229550"
17S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" 13S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
18 14
19# SCR is the location and name of the Software Content Register file 15# SCR is the location and name of the Software Content Register file
@@ -36,4 +32,5 @@ do_install () {
36FILES:${PN} = "/" 32FILES:${PN} = "/"
37 33
38PACKAGE_ARCH = "${MACHINE_SOCARCH}" 34PACKAGE_ARCH = "${MACHINE_SOCARCH}"
35
39COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)" 36COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.5.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.9.0.bb
index 940b9fa41..d24ab66ea 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.5.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro-daemon_1.9.0.bb
@@ -7,9 +7,9 @@ DEPENDS = "imx-vpu-hantro"
7DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc" 7DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc"
8 8
9SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.tar.gz" 9SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.tar.gz"
10IMX_SRCREV_ABBREV = "3200e68" 10IMX_SRCREV_ABBREV = "a4cefcc"
11 11
12SRC_URI[sha256sum] = "e7806a92d4a5ab51b76d9edef5175a95625c4ac3cab467fe1519bb0ce16e6535" 12SRC_URI[sha256sum] = "629087dd3e9ae0f4c00a75a2f2b715b7e24918b7401b26137e9270d6ac0fa90c"
13 13
14S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" 14S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
15 15
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-basetype.h-make-header-compatible-with-c23.patch b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-basetype.h-make-header-compatible-with-c23.patch
deleted file mode 100644
index bbfec172a..000000000
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-basetype.h-make-header-compatible-with-c23.patch
+++ /dev/null
@@ -1,38 +0,0 @@
1From e39a6602817e4221ae09ac3d520ca6a0d94814dc Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Wed, 7 May 2025 16:13:38 +0000
4Subject: [PATCH] basetype.h: make header compatible with c23
5
6With C23 bool, true and false are built in keywords and cannot be
7redefined.
8
9Upstream-Status: Pending
10Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
11---
12 h1_encoder/software/inc/basetype.h | 4 ++++
13 1 file changed, 4 insertions(+)
14
15diff --git a/h1_encoder/software/inc/basetype.h b/h1_encoder/software/inc/basetype.h
16index 55e46a195b3b..6655ec54481b 100755
17--- a/h1_encoder/software/inc/basetype.h
18+++ b/h1_encoder/software/inc/basetype.h
19@@ -66,12 +66,16 @@ typedef size_t ptr_t;
20 #define PRT_PTR "x"
21 #endif
22
23+#if defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L
24+/* bool, true and false are keywords. */
25+#else
26 #ifndef __cplusplus
27 typedef enum {
28 false = 0,
29 true = 1
30 } bool;
31 #endif
32+#endif
33
34 #else /* __symbian__ or __win__ or whatever, customize it to suit well */
35
36--
372.42.0
38
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-test-md5-convert-to-ansi-c.patch b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-test-md5-convert-to-ansi-c.patch
deleted file mode 100644
index da1af2b9c..000000000
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro/0001-test-md5-convert-to-ansi-c.patch
+++ /dev/null
@@ -1,90 +0,0 @@
1From 0c5bdd12a6f3ba73e605656828bf429966a997ef Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Wed, 7 May 2025 13:25:26 +0000
4Subject: [PATCH] test: md5: convert to ansi c
5
6GCC 15 no longer likes this K&R style function declarations.
7
8Upstream-Status: Pending
9Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
10---
11 decoder_sw/software/test/common/swhw/md5.c | 15 +++++----------
12 decoder_sw/software/test/common/swhw/md5.h | 8 ++++----
13 2 files changed, 9 insertions(+), 14 deletions(-)
14
15diff --git a/decoder_sw/software/test/common/swhw/md5.c b/decoder_sw/software/test/common/swhw/md5.c
16index c3334bf751fd..20014fbdf268 100755
17--- a/decoder_sw/software/test/common/swhw/md5.c
18+++ b/decoder_sw/software/test/common/swhw/md5.c
19@@ -42,8 +42,7 @@
20 /*
21 * Note: this code is harmless on little-endian machines.
22 */
23-void ByteReverse(buf, longs) unsigned char *buf;
24-unsigned longs;
25+void ByteReverse(unsigned char *buf, unsigned longs)
26 {
27 uint32 t;
28 do {
29@@ -59,7 +58,7 @@ unsigned longs;
30 * Start MD5 accumulation. Set bit count to 0 and buffer to mysterious
31 * initialization constants.
32 */
33-void MD5Init(ctx) struct MD5Context *ctx;
34+void MD5Init(struct MD5Context *ctx)
35 {
36 ctx->buf[0] = 0x67452301;
37 ctx->buf[1] = 0xefcdab89;
38@@ -74,9 +73,7 @@ void MD5Init(ctx) struct MD5Context *ctx;
39 * Update context to reflect the concatenation of another buffer full
40 * of bytes.
41 */
42-void MD5Update(ctx, buf, len) struct MD5Context *ctx;
43-unsigned char *buf;
44-unsigned len;
45+void MD5Update(struct MD5Context *ctx, unsigned char *buf, unsigned len)
46 {
47 uint32 t;
48
49@@ -124,8 +121,7 @@ unsigned len;
50 * Final wrapup - pad to 64-byte boundary with the bit pattern
51 * 1 0* (64-bit count of bits processed, MSB-first)
52 */
53-void MD5Final(digest, ctx) unsigned char digest[16];
54-struct MD5Context *ctx;
55+void MD5Final(unsigned char digest[16], struct MD5Context *ctx)
56 {
57 unsigned count;
58 unsigned char *p;
59@@ -186,8 +182,7 @@ struct MD5Context *ctx;
60 * reflect the addition of 16 longwords of new data. MD5Update blocks
61 * the data and converts bytes into longwords for this routine.
62 */
63-void MD5Transform(buf, in) uint32 buf[4];
64-uint32 in[16];
65+void MD5Transform(uint32 buf[4], uint32 in[16])
66 {
67 register uint32 a, b, c, d;
68
69diff --git a/decoder_sw/software/test/common/swhw/md5.h b/decoder_sw/software/test/common/swhw/md5.h
70index 516400236606..c1d773093b66 100755
71--- a/decoder_sw/software/test/common/swhw/md5.h
72+++ b/decoder_sw/software/test/common/swhw/md5.h
73@@ -76,10 +76,10 @@ struct MD5Context {
74 unsigned char in[64];
75 };
76
77-extern void MD5Init();
78-extern void MD5Update();
79-extern void MD5Final();
80-extern void MD5Transform();
81+extern void MD5Init(struct MD5Context *ctx);
82+extern void MD5Update(struct MD5Context *ctx, unsigned char *buf, unsigned len);
83+extern void MD5Final(unsigned char digest[16], struct MD5Context *ctx);
84+extern void MD5Transform(uint32 buf[4], uint32 in[16]);
85
86 /*
87 * This is needed to make RSAREF happy on some MS-DOS compilers.
88--
892.42.0
90
diff --git a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.36.0.bb b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.40.0.bb
index d766e0191..e5113f1c1 100644
--- a/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.36.0.bb
+++ b/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.40.0.bb
@@ -1,19 +1,17 @@
1# Copyright (C) 2017-2020 NXP 1# Copyright (C) 2017-2020,2026 NXP
2 2
3DESCRIPTION = "i.MX Hantro VPU library" 3DESCRIPTION = "i.MX Hantro VPU library"
4LICENSE = "Proprietary" 4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=c0fb372b5d7f12181de23ef480f225f3" 5LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
6 6
7PROVIDES = "virtual/imxvpu" 7PROVIDES = "virtual/imxvpu"
8 8
9SRC_URI = " \ 9SRC_URI = " \
10 ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \ 10 ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \
11 file://0001-test-md5-convert-to-ansi-c.patch \
12 file://0001-basetype.h-make-header-compatible-with-c23.patch \
13" 11"
14IMX_SRCREV_ABBREV = "194a305" 12IMX_SRCREV_ABBREV = "52c7e45"
15 13
16SRC_URI[sha256sum] = "0ef1fb5c6653c08f2d2812c72dedf3e8beb091dd5b3d70d6e26f41bac4ebffa7" 14SRC_URI[sha256sum] = "cdfb28cdec4e26ef84ee8c54be89a1da269eaeb4b51eafe689eb084ac20c7d84"
17 15
18S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" 16S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
19 17
@@ -43,7 +41,5 @@ do_install () {
43 41
44FILES:${PN} += "/unit_tests" 42FILES:${PN} += "/unit_tests"
45 43
46RDEPENDS:${PN} += "imx-vpu-hantro-daemon"
47
48PACKAGE_ARCH = "${MACHINE_SOCARCH}" 44PACKAGE_ARCH = "${MACHINE_SOCARCH}"
49COMPATIBLE_MACHINE = "(mx8mq-nxp-bsp|mx8mm-nxp-bsp|mx8mp-nxp-bsp)" 45COMPATIBLE_MACHINE = "(mx8mq-nxp-bsp|mx8mm-nxp-bsp|mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb b/recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb
deleted file mode 100644
index 012e1f2b7..000000000
--- a/recipes-bsp/isp-imx/basler-camera_4.2.2.25.2.bb
+++ /dev/null
@@ -1,34 +0,0 @@
1# Copyright (C) 2020-2024 NXP
2
3DESCRIPTION = "Basler camera binary drivers"
4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359"
6
7IMX_SRCREV_ABBREV = "dd86758"
8
9inherit fsl-eula-unpack
10
11SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
12
13SRC_URI[sha256sum] = "aa86adeb0c53c3306f7e1c004ffa78ebb7db3e9136c78759e4029b4b5e1b1a64"
14
15S = "${UNPACKDIR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}"
16
17do_compile[noexec] = "1"
18
19do_install() {
20 oe_runmake install INSTALL_DIR=${D}
21 dest_dir=${D}/opt/imx8-isp/bin
22 install -d ${D}/${libdir}
23 install -d $dest_dir
24 cp -r ${S}/opt/imx8-isp/bin/* $dest_dir
25 cp -r ${S}/usr/lib/* ${D}/${libdir}
26}
27
28SYSTEMD_AUTO_ENABLE = "enable"
29
30FILES:${PN} = "${libdir} /opt"
31INSANE_SKIP:${PN} = "already-stripped"
32RDEPENDS:${PN} += "isp-imx"
33
34COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/isp-imx/basler-camera_4.2.2.26.1.bb b/recipes-bsp/isp-imx/basler-camera_4.2.2.26.1.bb
new file mode 100644
index 000000000..11580dfd2
--- /dev/null
+++ b/recipes-bsp/isp-imx/basler-camera_4.2.2.26.1.bb
@@ -0,0 +1,29 @@
1# Copyright 2020-2024 NXP
2
3DESCRIPTION = "Basler camera binary drivers"
4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
6
7IMX_SRCREV_ABBREV = "dd86758"
8
9inherit fsl-eula-unpack
10
11SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
12SRC_URI[sha256sum] = "4c3cfc96833a7d8462f71589152ef7f9c8fcc9badbb925bbc120431f8c5ee3b5"
13
14S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
15
16do_compile[noexec] = "1"
17
18do_install() {
19 oe_runmake install INSTALL_DIR=${D}
20}
21
22SYSTEMD_AUTO_ENABLE = "enable"
23
24FILES:${PN} = "${libdir} /opt"
25INSANE_SKIP:${PN} = "already-stripped"
26RDEPENDS:${PN} += "isp-imx"
27
28
29COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch b/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
index 617abde6f..930119261 100644
--- a/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
+++ b/recipes-bsp/isp-imx/isp-imx/0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch
@@ -1,7 +1,7 @@
1From d24c74528fefd1316f1633f0a7f1a5acea40454f Mon Sep 17 00:00:00 2001 1From 3443f18dc9ab8950071d6299c7a5da86055f3318 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com> 2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Thu, 19 Jan 2023 15:51:24 +0000 3Date: Thu, 19 Jan 2023 15:51:24 +0000
4Subject: [PATCH 1/5] isp-imx: start_isp: don't report error if no camera is 4Subject: [PATCH] isp-imx: start_isp: don't report error if no camera is
5 configured 5 configured
6 6
7The script currently returns '6' when no known camera is configured 7The script currently returns '6' when no known camera is configured
@@ -17,10 +17,10 @@ Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
17 1 file changed, 1 insertion(+), 1 deletion(-) 17 1 file changed, 1 insertion(+), 1 deletion(-)
18 18
19diff --git a/imx/start_isp.sh b/imx/start_isp.sh 19diff --git a/imx/start_isp.sh b/imx/start_isp.sh
20index d544b4ca2a57..22e7783437d6 100755 20index 95cbc19..d603f8f 100755
21--- a/imx/start_isp.sh 21--- a/imx/start_isp.sh
22+++ b/imx/start_isp.sh 22+++ b/imx/start_isp.sh
23@@ -72,5 +72,5 @@ elif [ $NR_DEVICE_TREE_OS08A20 -eq 2 ]; then 23@@ -74,5 +74,5 @@ elif [ $NR_DEVICE_TREE_OS08A20 -eq 2 ]; then
24 else 24 else
25 # no device tree found exit with code no device or address 25 # no device tree found exit with code no device or address
26 echo "No device tree found for Basler camera or os08a20, check dtb file!" >&2 26 echo "No device tree found for Basler camera or os08a20, check dtb file!" >&2
@@ -28,5 +28,4 @@ index d544b4ca2a57..22e7783437d6 100755
28+ exit 0 28+ exit 0
29 fi 29 fi
30-- 30--
312.42.0 312.35.3
32
diff --git a/recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch b/recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch
deleted file mode 100644
index 38b3b6b02..000000000
--- a/recipes-bsp/isp-imx/isp-imx/0002-appshell-cmake-bump-min-version-to-3.5.patch
+++ /dev/null
@@ -1,134 +0,0 @@
1From 5b69b60bd4d0d5ed1474c6457561d48cdbabc778 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 09:19:58 +0000
4Subject: [PATCH 2/5] appshell: cmake: bump min version to 3.5
5
6CMake 4 no longer supports min version set to before 3.5
7
8| CMake Error at CMakeLists.txt:28 (cmake_minimum_required):
9| Compatibility with CMake < 3.5 has been removed from CMake.
10
11Upstream-Status: Pending
12Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
13---
14 appshell/CMakeLists.txt | 2 +-
15 appshell/display/CMakeLists.txt | 2 +-
16 appshell/display/wayland-client/CMakeLists.txt | 2 +-
17 appshell/v4l_drm_test/CMakeLists.txt | 2 +-
18 appshell/vvext/CMakeLists.txt | 2 +-
19 appshell/yuv/CMakeLists.txt | 2 +-
20 units/CMakeLists.txt | 2 +-
21 units/isi/CMakeLists.txt | 2 +-
22 units/isi/drv/OS08a20/CMakeLists.txt | 2 +-
23 units/isi/drv/OS08a20/calib/CMakeLists.txt | 2 +-
24 10 files changed, 10 insertions(+), 10 deletions(-)
25
26diff --git a/appshell/CMakeLists.txt b/appshell/CMakeLists.txt
27index 22092ce975b5..cf14e254c812 100644
28--- a/appshell/CMakeLists.txt
29+++ b/appshell/CMakeLists.txt
30@@ -25,7 +25,7 @@
31 # *****************************************************************************/
32
33
34-cmake_minimum_required(VERSION 3.1.0)
35+cmake_minimum_required(VERSION 3.5.0)
36 project(ISP_APP_SHELL)
37
38 if(DEFINED QTLESS)
39diff --git a/appshell/display/CMakeLists.txt b/appshell/display/CMakeLists.txt
40index 491f086adf55..458a46b165b4 100755
41--- a/appshell/display/CMakeLists.txt
42+++ b/appshell/display/CMakeLists.txt
43@@ -1,4 +1,4 @@
44-cmake_minimum_required(VERSION 2.6)
45+cmake_minimum_required(VERSION 3.6)
46
47 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fPIC")
48
49diff --git a/appshell/display/wayland-client/CMakeLists.txt b/appshell/display/wayland-client/CMakeLists.txt
50index 78247528b0e4..0639d79d8346 100644
51--- a/appshell/display/wayland-client/CMakeLists.txt
52+++ b/appshell/display/wayland-client/CMakeLists.txt
53@@ -1,4 +1,4 @@
54-cmake_minimum_required(VERSION 2.6)
55+cmake_minimum_required(VERSION 3.6)
56
57 set(WAYLAND_XML_PRIFIX ${SDKTARGETSYSROOT}/usr/share/wayland-protocols)
58 set(GEN_INSTALL_PREFIX ${PROJECT_SOURCE_DIR}/display/wayland-client)
59diff --git a/appshell/v4l_drm_test/CMakeLists.txt b/appshell/v4l_drm_test/CMakeLists.txt
60index cf4685c84204..309e5d465e99 100755
61--- a/appshell/v4l_drm_test/CMakeLists.txt
62+++ b/appshell/v4l_drm_test/CMakeLists.txt
63@@ -1,4 +1,4 @@
64-cmake_minimum_required(VERSION 2.6)
65+cmake_minimum_required(VERSION 3.5)
66
67 project(ISP_V4L_DRM_TEST)
68 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
69diff --git a/appshell/vvext/CMakeLists.txt b/appshell/vvext/CMakeLists.txt
70index a5d6c12929fa..63c1eb5f7073 100755
71--- a/appshell/vvext/CMakeLists.txt
72+++ b/appshell/vvext/CMakeLists.txt
73@@ -1,4 +1,4 @@
74-cmake_minimum_required(VERSION 2.6)
75+cmake_minimum_required(VERSION 3.5)
76
77 project(ISP_V4L_DRM_TEST)
78 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
79diff --git a/appshell/yuv/CMakeLists.txt b/appshell/yuv/CMakeLists.txt
80index 131766fcb5d4..0f3591918e08 100755
81--- a/appshell/yuv/CMakeLists.txt
82+++ b/appshell/yuv/CMakeLists.txt
83@@ -1,4 +1,4 @@
84-cmake_minimum_required(VERSION 2.6)
85+cmake_minimum_required(VERSION 3.5)
86 set (CMAKE_CXX_FLAGS_DEBUG "")
87 set (CMAKE_C_FLAGS_DEBUG "")
88
89diff --git a/units/CMakeLists.txt b/units/CMakeLists.txt
90index 37fa65ed4ea8..10abbef1c16c 100755
91--- a/units/CMakeLists.txt
92+++ b/units/CMakeLists.txt
93@@ -24,7 +24,7 @@
94 # *
95 # *****************************************************************************/
96
97-cmake_minimum_required(VERSION 3.1.0)
98+cmake_minimum_required(VERSION 3.5.0)
99 project(ISPcore_SW_STACK)
100 if( NOT DEFINED APPSHELL_TOP_COMPILE)
101
102diff --git a/units/isi/CMakeLists.txt b/units/isi/CMakeLists.txt
103index a91699b4a1a5..ea01aa7d9424 100755
104--- a/units/isi/CMakeLists.txt
105+++ b/units/isi/CMakeLists.txt
106@@ -1,4 +1,4 @@
107-cmake_minimum_required(VERSION 2.6)
108+cmake_minimum_required(VERSION 3.5)
109
110 # define module name
111 set (module isi)
112diff --git a/units/isi/drv/OS08a20/CMakeLists.txt b/units/isi/drv/OS08a20/CMakeLists.txt
113index d27dc97f7945..12c6e9ef993a 100755
114--- a/units/isi/drv/OS08a20/CMakeLists.txt
115+++ b/units/isi/drv/OS08a20/CMakeLists.txt
116@@ -1,4 +1,4 @@
117-cmake_minimum_required(VERSION 2.6)
118+cmake_minimum_required(VERSION 3.5)
119
120 # define module name & interface version
121 set (module os08a20)
122diff --git a/units/isi/drv/OS08a20/calib/CMakeLists.txt b/units/isi/drv/OS08a20/calib/CMakeLists.txt
123index b44b08248135..18119086b967 100755
124--- a/units/isi/drv/OS08a20/calib/CMakeLists.txt
125+++ b/units/isi/drv/OS08a20/calib/CMakeLists.txt
126@@ -1,4 +1,4 @@
127-cmake_minimum_required(VERSION 2.6)
128+cmake_minimum_required(VERSION 3.5)
129
130 # use upper level module name
131
132--
1332.42.0
134
diff --git a/recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch b/recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch
deleted file mode 100644
index f11deb758..000000000
--- a/recipes-bsp/isp-imx/isp-imx/0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch
+++ /dev/null
@@ -1,37 +0,0 @@
1From db07010535d47d7d7eaf3865d97dcec045e19930 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 09:57:22 +0000
4Subject: [PATCH 3/5] appshell: cmake: drop deprecated use of
5 target_link_libraries
6
7Works around:
8
9| CMake Error at display/CMakeLists.txt:48 (target_link_libraries):
10| Cannot specify link libraries for target "wayland-client" which is not
11| built by this project.
12
13caused by CMake 4 deprecating https://cmake.org/cmake/help/v3.5/policy/CMP0016.html
14
15CMP0016 states that the command is silently ignored, thus drop it.
16
17Upstream-Status: Pending
18Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
19---
20 appshell/display/CMakeLists.txt | 1 -
21 1 file changed, 1 deletion(-)
22
23diff --git a/appshell/display/CMakeLists.txt b/appshell/display/CMakeLists.txt
24index 458a46b165b4..160755312368 100755
25--- a/appshell/display/CMakeLists.txt
26+++ b/appshell/display/CMakeLists.txt
27@@ -43,7 +43,6 @@ if (WAYLAND_SUPPORT)
28 file(GLOB pub_headers *.h)
29 file(GLOB libsources *.cpp ./wayland-client/*.c)
30 include_directories(./wayland-client)
31- target_link_libraries(wayland-client)
32 else (WAYLAND_SUPPORT)
33 file(GLOB pub_headers *.h)
34 file(GLOB libsources *.cpp)
35--
362.42.0
37
diff --git a/recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch b/recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch
deleted file mode 100644
index 087f24090..000000000
--- a/recipes-bsp/isp-imx/isp-imx/0004-units-targets.cmake-fix-check-if-a-target-exists.patch
+++ /dev/null
@@ -1,51 +0,0 @@
1From d7e06f57c067e50d86369577b8dc3bccdde6fd40 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 10:44:40 +0000
4Subject: [PATCH 4/5] units/targets.cmake: fix check if a target exists
5
6| CMake Error at units/targets.cmake:35 (get_target_property):
7| get_target_property() called with non-existent target "lib".
8
9Upstream-Status: Pending
10Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
11---
12 units/targets.cmake | 9 +++------
13 1 file changed, 3 insertions(+), 6 deletions(-)
14
15diff --git a/units/targets.cmake b/units/targets.cmake
16index 663a024d9129..d78dbf8b8a45 100755
17--- a/units/targets.cmake
18+++ b/units/targets.cmake
19@@ -32,8 +32,7 @@ add_dependencies(create_alldir ${module}_create_dir)
20 # Settings for target LIB
21 ###############################################################################
22 # check if lib target already exists and create it, this is to assure that only one target called lib will be generated
23-get_target_property(LIB_TARGET lib TYPE)
24-if(NOT LIB_TARGET)
25+if(NOT TARGET lib)
26 add_custom_target(lib)
27 endif()
28 # the library itself is a dependency for the target lib
29@@ -83,8 +82,7 @@ if(HAVE_PUBLIC_HEADERS)
30 endif()
31
32 # check if lib_install target already exists and create it
33-get_target_property(LIB_INSTALL_TARGET lib_install TYPE)
34-if(NOT LIB_INSTALL_TARGET)
35+if(NOT TARGET lib_install)
36 add_custom_target(lib_install)
37 endif()
38
39@@ -104,8 +102,7 @@ add_custom_target(${module}_copy_header
40 COMMENT "Copying Headers of ${module}")
41
42 # check if copy_header target already exists and create it
43-get_target_property(COPY_HEADER_TARGET copy_header TYPE)
44-if(NOT COPY_HEADER_TARGET)
45+if(NOT TARGET copy_header)
46 add_custom_target(copy_header)
47 endif()
48 # if copy_header is selected, modulename_copy_header target must be created
49--
502.42.0
51
diff --git a/recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch b/recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch
deleted file mode 100644
index f4b44ff47..000000000
--- a/recipes-bsp/isp-imx/isp-imx/0005-units-cmake-fix-use-of-add_dependencies.patch
+++ /dev/null
@@ -1,36 +0,0 @@
1From 72d6160d1efc9df8bdee4e3dc9da67560f2206b4 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Fri, 25 Jul 2025 10:52:52 +0000
4Subject: [PATCH 5/5] units: cmake: fix use of add_dependencies
5
6With CMake 4 we get during configure:
7
8| CMake Error at isp-imx/4.2.2.25.2/sources/isp-imx-4.2.2.25.2-3cac1fb:
9| The dependency target "drv/OS08a20" of target "copy_shell_libs_isi" does
10| not exist.
11
12Comment out that the add_dependencies. The driver for OS08a20 is still
13part of the built packages.
14
15Upstream-Status: Pending
16Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
17---
18 units/isi/CMakeLists.txt | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21diff --git a/units/isi/CMakeLists.txt b/units/isi/CMakeLists.txt
22index ea01aa7d9424..2f5c3d803e67 100755
23--- a/units/isi/CMakeLists.txt
24+++ b/units/isi/CMakeLists.txt
25@@ -93,7 +93,7 @@ add_custom_target(copy_shell_libs_${module} ALL
26 COMMAND ${CMAKE_COMMAND} -E copy ${UNITS_TOP_DIRECTORY}/isi/drv/*/*.cfg ${LIB_ROOT}/${CMAKE_BUILD_TYPE}/bin/
27 COMMAND ${CMAKE_COMMAND} -E copy ${UNITS_TOP_DIRECTORY}/isi/drv/*.cfg ${LIB_ROOT}/${CMAKE_BUILD_TYPE}/bin/
28 )
29-add_dependencies(copy_shell_libs_${module} drv/OS08a20)
30+#add_dependencies(copy_shell_libs_${module} os08a20_shared)
31
32 endif (GENERATE_PARTITION_BUILD)
33
34--
352.42.0
36
diff --git a/recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb b/recipes-bsp/isp-imx/isp-imx_4.2.2.26.1.bb
index 445822528..0a8ce57c0 100644
--- a/recipes-bsp/isp-imx/isp-imx_4.2.2.25.2.bb
+++ b/recipes-bsp/isp-imx/isp-imx_4.2.2.26.1.bb
@@ -1,24 +1,20 @@
1# Copyright (C) 2020-2024 NXP 1# Copyright 2020-2025 NXP
2 2
3DESCRIPTION = "i.MX Verisilicon Software ISP" 3DESCRIPTION = "i.MX Verisilicon Software ISP"
4LICENSE = "Proprietary" 4LICENSE = "Proprietary"
5LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 5LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
6
6DEPENDS = "boost libdrm virtual/libg2d libtinyxml2 jsoncpp patchelf-native" 7DEPENDS = "boost libdrm virtual/libg2d libtinyxml2 jsoncpp patchelf-native"
7 8
8SRC_URI = " \ 9SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
9 ${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \ 10SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${ISP_SYSTEMD_PATCH}', '', d)}"
10 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${ISP_SYSTEMD_PATCH}', '', d)} \
11 file://0002-appshell-cmake-bump-min-version-to-3.5.patch \
12 file://0003-appshell-cmake-drop-deprecated-use-of-target_link_li.patch \
13 file://0004-units-targets.cmake-fix-check-if-a-target-exists.patch \
14 file://0005-units-cmake-fix-use-of-add_dependencies.patch \
15"
16ISP_SYSTEMD_PATCH = "file://0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch" 11ISP_SYSTEMD_PATCH = "file://0001-isp-imx-start_isp-don-t-report-error-if-no-camera-is.patch"
17 12
18IMX_SRCREV_ABBREV = "3cac1fb" 13SRC_URI[sha256sum] = "ab04d9eae4917591ca21f4ae13269c4e5a6f1b8e2f357cca1693682fa9a87249"
19S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
20 14
21SRC_URI[sha256sum] = "8fa5094da6438505287f4dcc8033dad3057ab81bf98c858884f7c3a2e521b252" 15IMX_SRCREV_ABBREV = "3cbd4a2"
16
17S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
22 18
23inherit fsl-eula-unpack cmake pkgconfig systemd use-imx-headers 19inherit fsl-eula-unpack cmake pkgconfig systemd use-imx-headers
24 20
@@ -52,18 +48,9 @@ EXTRA_OECMAKE += " \
52 -D3A_SRC_BUILD=0 \ 48 -D3A_SRC_BUILD=0 \
53 -DIMX_G2D=ON \ 49 -DIMX_G2D=ON \
54 -Wno-dev \ 50 -Wno-dev \
51 -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
55" 52"
56 53
57do_configure_disable:prepend () {
58 # FIXME: should be rebuild.
59 patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/mediacontrol/install/bin/isp_media_server
60 patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/mediacontrol/install/lib/libmedia_server.so
61 patchelf --replace-needed libjsoncpp.so.25 libjsoncpp.so.26 ${S}/tuningext/install/tuningext
62
63 # FIXME: Should be rebuild.
64 patchelf --replace-needed libtinyxml2.so.10 libtinyxml2.so.11 ${S}/appshell/shell_libs/ispcore/ARM64/libcam_device.so
65}
66
67do_install() { 54do_install() {
68 # The Makefile unconditionally installs tuningext even if it is not built 55 # The Makefile unconditionally installs tuningext even if it is not built
69 if ${@bb.utils.contains('PACKAGECONFIG','tuningext','false','true',d)}; then 56 if ${@bb.utils.contains('PACKAGECONFIG','tuningext','false','true',d)}; then
@@ -76,11 +63,17 @@ do_install() {
76 rm ${D}/opt/imx8-isp/bin/tuningext 63 rm ${D}/opt/imx8-isp/bin/tuningext
77 fi 64 fi
78 65
66 # The prebuilt ISP components were linked against jsoncpp 1.9.6
67 # (SONAME 26). jsoncpp 1.9.7 ships SONAME 27, so update the dynamic
68 # dependency.
69 patchelf --replace-needed libjsoncpp.so.26 libjsoncpp.so.27 \
70 ${D}${libdir}/libmedia_server.so \
71 ${D}/opt/imx8-isp/bin/isp_media_server
72
79 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then 73 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
80 install -d ${D}${systemd_system_unitdir} 74 install -d ${D}${systemd_system_unitdir}
81 install -m 0644 ${S}/imx/imx8-isp.service ${D}${systemd_system_unitdir} 75 install -m 0644 ${S}/imx/imx8-isp.service ${D}${systemd_system_unitdir}
82 fi 76 fi
83
84} 77}
85 78
86# The build contains a mix of versioned and unversioned libraries, so 79# The build contains a mix of versioned and unversioned libraries, so
@@ -97,6 +90,8 @@ FILES_SOLIBS_VERSIONED = " \
97 ${libdir}/libos08a20.so \ 90 ${libdir}/libos08a20.so \
98" 91"
99 92
93INSANE_SKIP:${PN} = "already-stripped"
94
100RDEPENDS:${PN} = "libdrm" 95RDEPENDS:${PN} = "libdrm"
101 96
102COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)" 97COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.2.0.bb
index b1cd3d863..a94d6bf14 100644
--- a/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.1.3.bb
+++ b/recipes-bsp/libimxdmabuffer/libimxdmabuffer_1.2.0.bb
@@ -8,7 +8,7 @@ SECTION = "base"
8PV .= "+git${SRCPV}" 8PV .= "+git${SRCPV}"
9 9
10SRCBRANCH ?= "master" 10SRCBRANCH ?= "master"
11SRCREV = "faf547cc2345bfbf95507ab7e86530f85289bb5b" 11SRCREV = "d44deb80af881b82f394d44696433e6695022c8c"
12SRC_URI = "git://github.com/Freescale/libimxdmabuffer.git;branch=${SRCBRANCH};protocol=https \ 12SRC_URI = "git://github.com/Freescale/libimxdmabuffer.git;branch=${SRCBRANCH};protocol=https \
13 file://run-ptest \ 13 file://run-ptest \
14 " 14 "
diff --git a/recipes-bsp/mxsldr/mxsldr_git.bb b/recipes-bsp/mxsldr/mxsldr_git.bb
index 9fc6338c4..ade3570c4 100644
--- a/recipes-bsp/mxsldr/mxsldr_git.bb
+++ b/recipes-bsp/mxsldr/mxsldr_git.bb
@@ -7,7 +7,7 @@ LICENSE = "GPL-2.0-or-later"
7LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" 7LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
8 8
9SRCREV = "c40d80472525e1d57dae5317c028b745968c0399" 9SRCREV = "c40d80472525e1d57dae5317c028b745968c0399"
10SRC_URI = "git://git.denx.de/mxsldr.git;branch=master \ 10SRC_URI = "git://source.denx.de/denx/mxsldr.git;branch=master;protocol=https \
11 file://0001-Do-not-ignore-OE-cflags-and-ldflags.patch \ 11 file://0001-Do-not-ignore-OE-cflags-and-ldflags.patch \
12 " 12 "
13 13
diff --git a/recipes-bsp/u-boot/u-boot-imx_2025.04.bb b/recipes-bsp/u-boot/u-boot-imx_2025.04.bb
index 27c3555f4..a27291460 100644
--- a/recipes-bsp/u-boot/u-boot-imx_2025.04.bb
+++ b/recipes-bsp/u-boot/u-boot-imx_2025.04.bb
@@ -1,6 +1,6 @@
1# Copyright (C) 2013-2016 Freescale Semiconductor 1# Copyright (C) 2013-2016 Freescale Semiconductor
2# Copyright 2018 (C) O.S. Systems Software LTDA. 2# Copyright 2018 (C) O.S. Systems Software LTDA.
3# Copyright 2017-2024 NXP 3# Copyright 2017-2026 NXP
4 4
5require recipes-bsp/u-boot/u-boot.inc 5require recipes-bsp/u-boot/u-boot.inc
6require u-boot-imx-common_${PV}.inc 6require u-boot-imx-common_${PV}.inc
@@ -34,19 +34,31 @@ do_deploy:append:mx8m-generic-bsp() {
34 for key_value in ${UBOOT_DTB_NAME_FLAGS}; do 34 for key_value in ${UBOOT_DTB_NAME_FLAGS}; do
35 local type_key="${key_value%%:*}" 35 local type_key="${key_value%%:*}"
36 local dtb_name="${key_value#*:}" 36 local dtb_name="${key_value#*:}"
37 local dtb_path=""
37 if [ "$type_key" = "$type" ] 38 if [ "$type_key" = "$type" ]
38 then 39 then
39 bbnote "UBOOT_CONFIG = $type, UBOOT_DTB_NAME = $dtb_name" 40 bbnote "UBOOT_CONFIG = $type, UBOOT_DTB_NAME = $dtb_name"
40 # There is only one ${dtb_name}, the first one. All the other are with the type appended 41 # There is only one ${dtb_name}, the first one. All the other are with the type appended
41 if [ ! -f "${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}" ]; then 42 if [ ! -f "${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}" ]; then
42 install -m 0644 ${B}/${builddir}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name} 43 if [ -f "${B}/${builddir}/arch/arm/dts/${dtb_name}" ]; then
44 dtb_path="arch/arm/dts"
45 elif [ -f "${B}/${builddir}/dts/upstream/src/arm64/freescale/${dtb_name}" ]; then
46 dtb_path="dts/upstream/src/arm64/freescale"
47 else
48 bbfatal "DTB '${dtb_name}' not found in expected locations"
49 fi
50 bbnote "DTB found at ${B}/${builddir}/${dtb_path}/${dtb_name}"
51 install -m 0644 ${B}/${builddir}/${dtb_path}/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}
43 else 52 else
44 bbwarn "Use custom wks.in for $dtb_name = $type" 53 bbwarn "Use custom wks.in for $dtb_name = $type"
45 fi 54 fi
46 install -m 0644 ${B}/${builddir}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}-${type} 55 if [ -f "${B}/${builddir}/${dtb_path}/${dtb_name}" ]; then
56 install -m 0644 ${B}/${builddir}/${dtb_path}/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}-${type}
57 fi
47 fi 58 fi
48 unset type_key 59 unset type_key
49 unset dtb_name 60 unset dtb_name
61 unset dtb_path
50 done 62 done
51 63
52 unset UBOOT_DTB_NAME_FLAGS 64 unset UBOOT_DTB_NAME_FLAGS
@@ -66,5 +78,10 @@ do_deploy:append:mx93-generic-bsp() {
66 install -m 0644 ${S}/CRT.* ${DEPLOYDIR} 78 install -m 0644 ${S}/CRT.* ${DEPLOYDIR}
67} 79}
68 80
81do_deploy:append:mx95-generic-bsp() {
82 # Deploy CRT.* from u-boot for stmm
83 install -m 0644 ${S}/CRT.* ${DEPLOYDIR}
84}
85
69PACKAGE_ARCH = "${MACHINE_ARCH}" 86PACKAGE_ARCH = "${MACHINE_ARCH}"
70COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp|mx9-generic-bsp)" 87COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp|mx9-generic-bsp)"
diff --git a/recipes-connectivity/iproute2/iproute2_%.bbappend b/recipes-connectivity/iproute2/iproute2_%.bbappend
index 0f9b5a87d..660984d7a 100644
--- a/recipes-connectivity/iproute2/iproute2_%.bbappend
+++ b/recipes-connectivity/iproute2/iproute2_%.bbappend
@@ -1,5 +1,11 @@
1do_install:append () { 1do_install:append:imx-generic-bsp () {
2 install -d ${D}/usr/include/tc 2 install -d ${D}/usr/include/tc
3 cp -a ${B}/include ${D}/usr/include
4 cp -a ${B}/tc/*.h ${D}/usr/include/tc
5}
6
7do_install:append:qoriq-generic-bsp () {
8 install -d ${D}/usr/include/tc
3 cp -a ${B}/include ${D}/usr/include 9 cp -a ${B}/include ${D}/usr/include
4 cp -a ${B}/tc/*.h ${D}/usr/include/tc 10 cp -a ${B}/tc/*.h ${D}/usr/include/tc
5} 11}
diff --git a/recipes-core/udev/udev-rules-qoriq.bb b/recipes-core/udev/udev-rules-qoriq.bb
index 792c32343..bd6158fe6 100644
--- a/recipes-core/udev/udev-rules-qoriq.bb
+++ b/recipes-core/udev/udev-rules-qoriq.bb
@@ -9,6 +9,7 @@ SRC_URI = "\
9 file://74-ls1046a-xfi2-networking.rules \ 9 file://74-ls1046a-xfi2-networking.rules \
10 file://73-fsl-enetc-networking.rules \ 10 file://73-fsl-enetc-networking.rules \
11" 11"
12S = "${UNPACKDIR}"
12 13
13RULE = "71-fsl-dpaa-persistent-networking.rules" 14RULE = "71-fsl-dpaa-persistent-networking.rules"
14RULE:e6500 = "72-fsl-dpaa-persistent-networking.rules" 15RULE:e6500 = "72-fsl-dpaa-persistent-networking.rules"
diff --git a/recipes-devtools/half/half_2.1.0.bb b/recipes-devtools/half/half_2.1.0.bb
new file mode 100644
index 000000000..4914f8701
--- /dev/null
+++ b/recipes-devtools/half/half_2.1.0.bb
@@ -0,0 +1,19 @@
1SUMMARY = "C++ library for half precision floating point arithmetics"
2DESCRIPTION = "half is a C++ header-only library to provide an IEEE-754 conformant \
3half-precision floating point type along with corresponding arithmetic operators, \
4type conversions and common mathematical functions."
5
6LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=813a6278831975d26c115ed6f9c21831"
8
9SRC_URI = "https://sourceforge.net/projects/half/files/half/${PV}/${BP}.zip"
10SRC_URI[sha256sum] = "ad1788afe0300fa2b02b0d1df128d857f021f92ccf7c8bddd07812685fa07a25"
11
12S = "${UNPACKDIR}"
13
14do_install () {
15 install -d ${D}${includedir}
16 cp -r ${S}/include/* ${D}${includedir}
17}
18
19ALLOW_EMPTY:${PN} = "1"
diff --git a/recipes-devtools/stb/stb_git.bb b/recipes-devtools/stb/stb_git.bb
new file mode 100644
index 000000000..f5d52f809
--- /dev/null
+++ b/recipes-devtools/stb/stb_git.bb
@@ -0,0 +1,18 @@
1SUMMARY = "single-file public domain (or MIT licensed) libraries for C/C++"
2LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://stb.h;beginline=14418;endline=14433;md5=b10975d4c8155af1811ab611586f01d2"
4
5PV = "0.0+git${SRCPV}"
6
7SRCREV = "f67165c2bb2af3060ecae7d20d6f731173485ad0"
8SRC_URI = "git://github.com/nothings/stb.git;protocol=https;branch=master"
9
10do_install() {
11 install -d ${D}${includedir}
12 for hdr in ${S}/*.h; do
13 install -m 0644 $hdr ${D}${includedir}
14 done
15}
16
17# This is a header-only library, so the main package will be empty.
18ALLOW_EMPTY:${PN} = "1"
diff --git a/recipes-extended/dpdk/dpdk_22.11.bb b/recipes-extended/dpdk/dpdk_22.11.bb
index 727106e49..84bda4770 100644
--- a/recipes-extended/dpdk/dpdk_22.11.bb
+++ b/recipes-extended/dpdk/dpdk_22.11.bb
@@ -32,7 +32,6 @@ EXTRA_OEMESON = " \
32 -Denable_driver_sdk=true \ 32 -Denable_driver_sdk=true \
33 ${@bb.utils.contains('DISTRO_FEATURES', 'vpp', '-Dc_args="-Ofast -fPIC -ftls-model=local-dynamic"', '', d)} \ 33 ${@bb.utils.contains('DISTRO_FEATURES', 'vpp', '-Dc_args="-Ofast -fPIC -ftls-model=local-dynamic"', '', d)} \
34 -Denable_examples_source_install=false \ 34 -Denable_examples_source_install=false \
35 -Ddrivers_install_subdir= \
36 -Denable_apps=${DPDK_APPS} \ 35 -Denable_apps=${DPDK_APPS} \
37" 36"
38 37
@@ -41,6 +40,8 @@ do_install:append(){
41 cp -rf ${S}/nxp/* ${D}/${sysconfdir}/dpdk 40 cp -rf ${S}/nxp/* ${D}/${sysconfdir}/dpdk
42} 41}
43 42
43INSANE_SKIP:${PN} = "dev-so"
44
44RDEPENDS:${PN} += "bash pciutils python3-core python3-pyelftools" 45RDEPENDS:${PN} += "bash pciutils python3-core python3-pyelftools"
45 46
46COMPATIBLE_MACHINE = "(qoriq-arm64)" 47COMPATIBLE_MACHINE = "(qoriq-arm64)"
diff --git a/recipes-extended/merge-files/merge-files_1.0.bb b/recipes-extended/merge-files/merge-files_1.0.bb
index bd788fdb5..a1f8a35a7 100644
--- a/recipes-extended/merge-files/merge-files_1.0.bb
+++ b/recipes-extended/merge-files/merge-files_1.0.bb
@@ -18,4 +18,4 @@ do_compile[noexec] = "1"
18 18
19FILES:${PN} = "/*" 19FILES:${PN} = "/*"
20ALLOW_EMPTY:${PN} = "1" 20ALLOW_EMPTY:${PN} = "1"
21INSANE_SKIP:${PN} = "debug-files dev-so" 21INSANE_SKIP:${PN} = "dev-so"
diff --git a/recipes-fsl/fsl-rc-local/fsl-rc-local.bb b/recipes-fsl/fsl-rc-local/fsl-rc-local.bb
new file mode 100644
index 000000000..d5c8ebc31
--- /dev/null
+++ b/recipes-fsl/fsl-rc-local/fsl-rc-local.bb
@@ -0,0 +1,23 @@
1# Copyright (C) 2012 O.S. Systems Software LTDA.
2
3DESCRIPTION = "Extra files for fsl-gui-image"
4LICENSE = "LGPL-2.0-only"
5LIC_FILES_CHKSUM = "file://LICENSE;md5=39ec502560ab2755c4555ee8416dfe42"
6
7SRC_URI = "file://rc.local.etc \
8 file://rc.local.init \
9 file://LICENSE"
10
11S = "${UNPACKDIR}"
12
13inherit update-rc.d
14
15INITSCRIPT_NAME = "rc.local"
16INITSCRIPT_PARAMS = "start 99 2 3 4 5 ."
17
18do_install () {
19 install -d ${D}/${sysconfdir}/init.d
20 install -m 755 ${S}/rc.local.etc ${D}/${sysconfdir}/rc.local
21 install -m 755 ${S}/rc.local.init ${D}/${sysconfdir}/init.d/rc.local
22
23}
diff --git a/recipes-fsl/fsl-rc-local/fsl-rc-local/LICENSE b/recipes-fsl/fsl-rc-local/fsl-rc-local/LICENSE
new file mode 100644
index 000000000..757cfe655
--- /dev/null
+++ b/recipes-fsl/fsl-rc-local/fsl-rc-local/LICENSE
@@ -0,0 +1 @@
All content inside fsl-rc-local package are distributed under GPLv2 license
diff --git a/recipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.etc b/recipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.etc
new file mode 100755
index 000000000..65634dfa4
--- /dev/null
+++ b/recipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.etc
@@ -0,0 +1,14 @@
1#!/bin/sh -e
2#
3# rc.local
4#
5# This script is executed at the end of each multiuser runlevel.
6# Make sure that the script will "exit 0" on success or any other
7# value on error.
8#
9# In order to enable or disable this script just change the execution
10# bits.
11#
12# By default this script does nothing.
13
14exit 0
diff --git a/recipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.init b/recipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.init
new file mode 100755
index 000000000..13402a758
--- /dev/null
+++ b/recipes-fsl/fsl-rc-local/fsl-rc-local/rc.local.init
@@ -0,0 +1,36 @@
1#! /bin/sh
2### BEGIN INIT INFO
3# Provides: rc.local
4# Required-Start: $all
5# Required-Stop:
6# Default-Start: 2 3 4 5
7# Default-Stop:
8# Short-Description: Run /etc/rc.local if it exist
9### END INIT INFO
10
11PATH=/sbin:/usr/sbin:/bin:/usr/bin
12
13do_start() {
14 if [ -x /etc/rc.local ]; then
15 echo -n "Running local boot scripts (/etc/rc.local)"
16 /etc/rc.local
17 [ $? = 0 ] && echo "." || echo "error"
18 return $ES
19 fi
20}
21
22case "$1" in
23 start)
24 do_start
25 ;;
26 restart|reload|force-reload)
27 echo "Error: argument '$1' not supported" >&2
28 exit 3
29 ;;
30 stop)
31 ;;
32 *)
33 echo "Usage: $0 start|stop" >&2
34 exit 3
35 ;;
36esac
diff --git a/recipes-fsl/images/fsl-image-machine-test.bb b/recipes-fsl/images/fsl-image-machine-test.bb
new file mode 100644
index 000000000..43af6f7e9
--- /dev/null
+++ b/recipes-fsl/images/fsl-image-machine-test.bb
@@ -0,0 +1,33 @@
1DESCRIPTION = "A console-only image that includes gstreamer packages, \
2Freescale's multimedia packages (VPU and GPU) when available, and \
3test and benchmark applications."
4
5IMAGE_FEATURES += " \
6 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
7 bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11-base', \
8 '', d), d)} \
9 debug-tweaks \
10 tools-testapps \
11 tools-profile \
12"
13
14LICENSE = "MIT"
15
16inherit core-image
17
18CORE_IMAGE_EXTRA_INSTALL += " \
19 packagegroup-fsl-gstreamer1.0 \
20 packagegroup-fsl-gstreamer1.0-full \
21 packagegroup-fsl-tools-gpu \
22 packagegroup-fsl-tools-gpu-external \
23 ${@bb.utils.contains('BBFILE_COLLECTIONS', 'openembedded-layer', \
24 'packagegroup-fsl-tools-testapps', '', d)} \
25 ${@bb.utils.contains('BBFILE_COLLECTIONS', 'openembedded-layer', \
26 'packagegroup-fsl-tools-benchmark', '', d)} \
27 ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', \
28 'firmwared', '', d)} \
29 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', \
30 'weston weston-init', '', d)} \
31 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', \
32 'weston-xwayland xterm', '', d)} \
33"
diff --git a/recipes-fsl/images/fsl-image-multimedia-full.bb b/recipes-fsl/images/fsl-image-multimedia-full.bb
new file mode 100644
index 000000000..0384162bc
--- /dev/null
+++ b/recipes-fsl/images/fsl-image-multimedia-full.bb
@@ -0,0 +1,8 @@
1# This image extends fsl-image-multimedia with additional
2# gstreamer plugins
3
4require fsl-image-multimedia.bb
5
6CORE_IMAGE_EXTRA_INSTALL += " \
7 packagegroup-fsl-gstreamer1.0-full \
8"
diff --git a/recipes-fsl/images/fsl-image-multimedia.bb b/recipes-fsl/images/fsl-image-multimedia.bb
new file mode 100644
index 000000000..3a3ce28b8
--- /dev/null
+++ b/recipes-fsl/images/fsl-image-multimedia.bb
@@ -0,0 +1,30 @@
1DESCRIPTION = "A console-only image that includes gstreamer packages and \
2Freescale's multimedia packages (VPU and GPU) when available for the specific \
3machine."
4
5IMAGE_FEATURES += "\
6 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'weston', \
7 bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11-base', \
8 '', d), d)} \
9"
10
11LICENSE = "MIT"
12
13inherit core-image
14
15CORE_IMAGE_EXTRA_INSTALL += " \
16 packagegroup-fsl-tools-gpu \
17 packagegroup-fsl-gstreamer1.0 \
18 packagegroup-imx-tools-audio \
19 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', \
20 'weston weston-init weston-examples \
21 gtk+3-demo', '', d)} \
22 ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', \
23 'weston-xwayland xterm', '', d)} \
24"
25
26PACKAGE_IMX_TO_REMOVE = ""
27PACKAGE_IMX_TO_REMOVE:imxgpu2d = "gtk+3-demo"
28PACKAGE_IMX_TO_REMOVE:imxgpu3d = ""
29
30CORE_IMAGE_EXTRA_INSTALL:remove = "${PACKAGE_IMX_TO_REMOVE}"
diff --git a/recipes-fsl/images/fsl-image-network-full-cmdline.bb b/recipes-fsl/images/fsl-image-network-full-cmdline.bb
new file mode 100644
index 000000000..01f47c3e5
--- /dev/null
+++ b/recipes-fsl/images/fsl-image-network-full-cmdline.bb
@@ -0,0 +1,22 @@
1DESCRIPTION = "A console-only image that includes full cmdline and \
2Freescale's networking packages (QorIQ DPAA/DPAA2) when available."
3
4IMAGE_FEATURES += " \
5 debug-tweaks \
6 tools-profile \
7"
8
9LICENSE = "MIT"
10
11CORE_IMAGE_EXTRA_INSTALL:append = "\
12 packagegroup-core-boot \
13 packagegroup-core-full-cmdline \
14 packagegroup-fsl-network \
15"
16
17# SPI Nor-Flash
18NETWORK_TOOLS:append:fsl-lsch3 = "\
19 mtd-utils \
20"
21
22inherit core-image
diff --git a/recipes-fsl/mcore-demos/README b/recipes-fsl/mcore-demos/README
index 25013f996..bf0cf7725 100644
--- a/recipes-fsl/mcore-demos/README
+++ b/recipes-fsl/mcore-demos/README
@@ -1,15 +1,16 @@
1The M4 demo app version of each SoCs are followed: 1The M4 demo app version of each SoCs are followed:
2* 2.16.000 -- i.MX 7ULP 2* 2.16.000 -- i.MX 7ULP
3* 25.09.00 -- i.MX 8MQ, 8MM 3* 26.03.00 -- i.MX 8MQ, 8MM
4* 2.9.0 -- i.MX 8DXL, 8QM, 8QXP 4* 2.9.0 -- i.MX 8DXL, 8QM, 8QXP
5* 1.0.1 -- i.MX 7D 5* 1.0.1 -- i.MX 7D
6 6
7The M7 demo app version of each SoCs are followed: 7The M7 demo app version of each SoCs are followed:
8* 25.09.00 -- i.MX 8MP , 8MNULite, 8MN 8* 26.03.00 -- i.MX 8MP , 8MNULite, 8MN
9* 25.12.00 -- i.MX95 9* 26.03.00 -- i.MX95
10* 25.12.00 -- i.MX952
10 11
11The M33 demo app version of each SoCs are followed: 12The M33 demo app version of each SoCs are followed:
12* 25.12.00 -- i.MX 8ULP, 93 13* 26.03.00 -- i.MX 8ULP, 93
13 14
14The MCore demo app version of each SoCs are followed: 15The MCore demo app version of each SoCs are followed:
15* 25.12.00 -- i.MX 943 16* 26.03.00 -- i.MX 943
diff --git a/recipes-fsl/mcore-demos/imx-m33-demos_25.12.00.bb b/recipes-fsl/mcore-demos/imx-m33-demos_26.03.00.bb
index 4cf087859..fb0e94e47 100644
--- a/recipes-fsl/mcore-demos/imx-m33-demos_25.12.00.bb
+++ b/recipes-fsl/mcore-demos/imx-m33-demos_26.03.00.bb
@@ -7,9 +7,8 @@ LIC_FILES_CHKSUM:mx8ulp-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d
7 7
8LIC_FILES_CHKSUM:mx93-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 8LIC_FILES_CHKSUM:mx93-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
9 9
10SRC_URI[imx8ulp.sha256sum] = "115905810d24887cf14ed081b4f52c2ca846d94ee5ba6bf459790d3151af78d2" 10SRC_URI[imx8ulp.sha256sum] = "dcafb6989b1bf58ae5fef5b77c12007aa2eef6c02656b6ba13078579e222e2a8"
11 11
12SRC_URI[imx93.sha256sum] = "fbaf3baa6916757747696ba90a23d515ee10215b19a03e9feb5d6b16cc4d6a4f" 12SRC_URI[imx93.sha256sum] = "feca3c27892840d44e6f7759623fbea41469cc8cbbbe4ce434cd51fe71685742"
13 13
14COMPATIBLE_MACHINE = "(mx8ulp-nxp-bsp|mx93-nxp-bsp)" 14COMPATIBLE_MACHINE = "(mx8ulp-nxp-bsp|mx93-nxp-bsp)"
15
diff --git a/recipes-fsl/mcore-demos/imx-m4-demos_25.09.00.bb b/recipes-fsl/mcore-demos/imx-m4-demos_26.03.00.bb
index d096cf9dc..d5c0c300c 100644
--- a/recipes-fsl/mcore-demos/imx-m4-demos_25.09.00.bb
+++ b/recipes-fsl/mcore-demos/imx-m4-demos_26.03.00.bb
@@ -6,8 +6,7 @@ require imx-mcore-demos.inc
6LIC_FILES_CHKSUM:mx8mm-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 6LIC_FILES_CHKSUM:mx8mm-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
7LIC_FILES_CHKSUM:mx8mq-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 7LIC_FILES_CHKSUM:mx8mq-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
8 8
9SRC_URI[imx8mm.sha256sum] = "b2a08b5d5aeb23ffb9d30f915a551c891c997d6ed55f12a9e21103b6153752cc" 9SRC_URI[imx8mm.sha256sum] = "fd07b66367585f302c0ae17f42bae11909beef10bcd219f553bd16ceef731b58"
10SRC_URI[imx8mq.sha256sum] = "9cd1e2e1f328911ea7fb13cd4da213a2ca0d08108963ca501c694edad100ec3f" 10SRC_URI[imx8mq.sha256sum] = "96eed93c394d4e6263a8636c906bba7cc0fec17b28512f84a14ceb000a34eb62"
11 11
12COMPATIBLE_MACHINE = "(mx8mm-nxp-bsp|mx8mq-nxp-bsp)" 12COMPATIBLE_MACHINE = "(mx8mm-nxp-bsp|mx8mq-nxp-bsp)"
13
diff --git a/recipes-fsl/mcore-demos/imx-m7-demos_25.12.00.bb b/recipes-fsl/mcore-demos/imx-m7-demos_25.12.00.bb
index 5154866cf..c09f70113 100644
--- a/recipes-fsl/mcore-demos/imx-m7-demos_25.12.00.bb
+++ b/recipes-fsl/mcore-demos/imx-m7-demos_25.12.00.bb
@@ -3,9 +3,8 @@
3 3
4require imx-mcore-demos.inc 4require imx-mcore-demos.inc
5 5
6LIC_FILES_CHKSUM:mx95-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 6LIC_FILES_CHKSUM:mx952-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
7 7
8SRC_URI[imx95.sha256sum] = "1ed885757d570a1bcd4309cd41d158827f855af451d140d056fa02f92e8b73eb" 8SRC_URI[imx952.sha256sum] = "e717f3a673ef76ba433d192e01c40e2c4ebf7d9487b23e2e505bd07383d797ca"
9
10COMPATIBLE_MACHINE = "(mx95-nxp-bsp)"
11 9
10COMPATIBLE_MACHINE = "(mx952-nxp-bsp)"
diff --git a/recipes-fsl/mcore-demos/imx-m7-demos_25.03.00.bb b/recipes-fsl/mcore-demos/imx-m7-demos_26.03.00.bb
index 224a164f6..904e5c08f 100644
--- a/recipes-fsl/mcore-demos/imx-m7-demos_25.03.00.bb
+++ b/recipes-fsl/mcore-demos/imx-m7-demos_26.03.00.bb
@@ -9,10 +9,13 @@ LIC_FILES_CHKSUM:mx8mnul-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8
9LIC_FILES_CHKSUM:mx8mp-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 9LIC_FILES_CHKSUM:mx8mp-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
10LIC_FILES_CHKSUM:mx8mpul-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 10LIC_FILES_CHKSUM:mx8mpul-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
11 11
12SRC_URI[imx8mn.sha256sum] = "6fb7bfad067f0dda55ce7d6e1f688da8d979e3a75a0a3e1325ad10684ce943b3" 12LIC_FILES_CHKSUM:mx95-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
13SRC_URI[imx8mnddr3l.sha256sum] = "e107ca6f12e863368133a881d8b848813bdad77249777926880dffbebd3c30c9"
14 13
15SRC_URI[imx8mp.sha256sum] = "d97c215a466bc4155ca96b6c6697f1512d6650c29241559ffefa52de0eaf8535" 14SRC_URI[imx8mn.sha256sum] = "e02fd9d7beb72831e21481839fc58e023a5f5cad54665aeee98669a52da67e43"
15SRC_URI[imx8mnddr3l.sha256sum] = "eb7f479bf69cfa73bc59ba4289b25bcb01cafeb379839dec7797de8830137586"
16 16
17COMPATIBLE_MACHINE = "(mx8mn-nxp-bsp|mx8mnul-nxp-bsp|mx8mp-nxp-bsp|mx8mpul-nxp-bsp)" 17SRC_URI[imx8mp.sha256sum] = "2ead4fa253e61dab3af84407ff7e60f66f6ea5b33b1c5eee9d83fc757263ba00"
18 18
19SRC_URI[imx95.sha256sum] = "84c2ad9c858f321488dbc6f7d4c6a111e00053bc16ec1e659593ec694c73ad10"
20
21COMPATIBLE_MACHINE = "(mx8mn-nxp-bsp|mx8mnul-nxp-bsp|mx8mp-nxp-bsp|mx8mpul-nxp-bsp|mx95-nxp-bsp)"
diff --git a/recipes-fsl/mcore-demos/imx-mcore-demos_25.12.00.bb b/recipes-fsl/mcore-demos/imx-mcore-demos_26.03.00.bb
index 380821658..f2503c855 100644
--- a/recipes-fsl/mcore-demos/imx-mcore-demos_25.12.00.bb
+++ b/recipes-fsl/mcore-demos/imx-mcore-demos_26.03.00.bb
@@ -1,10 +1,10 @@
1# Copyright 2025 NXP 1# Copyright 2026 NXP
2# Released under the MIT license (see COPYING.MIT for the terms) 2# Released under the MIT license (see COPYING.MIT for the terms)
3 3
4require imx-mcore-demos.inc 4require imx-mcore-demos.inc
5 5
6LIC_FILES_CHKSUM:mx943-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac" 6LIC_FILES_CHKSUM:mx943-nxp-bsp = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
7 7
8SRC_URI[imx943.sha256sum] = "52acc5cb421ae98b9b496512035f1635be7238c2f15178f62277269e4744b95a" 8SRC_URI[imx943.sha256sum] = "408e94e64b8e94d243737e0c068459036273a2ca384b63b893696c77d69c2807"
9 9
10COMPATIBLE_MACHINE = "(mx943-nxp-bsp)" 10COMPATIBLE_MACHINE = "(mx943-nxp-bsp)"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-commercial.bb b/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-commercial.bb
new file mode 100644
index 000000000..9a86e5013
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-commercial.bb
@@ -0,0 +1,17 @@
1DESCRIPTION = "Package group used by FSL Community to provide audio and video plugins \
2that are subject to restricted licensing and/or royalties and thus require \
3the 'commercial' license whitelist flag"
4SUMMARY = "FSL Community package group - set of GStreamer 1.0 plugins with commercial licence flag"
5LICENSE_FLAGS = "commercial"
6
7inherit packagegroup
8
9RDEPENDS:${PN} = " \
10 packagegroup-fsl-gstreamer1.0 \
11"
12
13# Plugins from the -ugly collection which require the "commercial" flag in LICENSE_FLAGS_ACCEPTED to be set
14RDEPENDS:${PN} = " \
15 gstreamer1.0-plugins-ugly-asf \
16 gstreamer1.0-libav \
17"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-full.bb b/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-full.bb
new file mode 100644
index 000000000..6b2c3ac0e
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0-full.bb
@@ -0,0 +1,15 @@
1DESCRIPTION = "Package group used by FSL Community to provide all GStreamer plugins from the \
2base, good, and bad packages, as well as the ugly and libav ones if commercial packages \
3are whitelisted, and plugins for the required hardware acceleration (if supported by the SoC)."
4SUMMARY = "FSL Community package group - full set of all GStreamer 1.0 plugins"
5
6inherit packagegroup
7
8RDEPENDS:${PN} = " \
9 packagegroup-fsl-gstreamer1.0 \
10 ${@bb.utils.contains('LICENSE_FLAGS_ACCEPTED', 'commercial', 'packagegroup-fsl-gstreamer1.0-commercial', '', d)} \
11 gstreamer1.0-plugins-base-meta \
12 gstreamer1.0-plugins-good-meta \
13 gstreamer1.0-plugins-bad-meta \
14 ${@bb.utils.contains('LICENSE_FLAGS_ACCEPTED', 'commercial', 'gstreamer1.0-plugins-ugly-meta', '', d)} \
15"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0.bb b/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0.bb
new file mode 100644
index 000000000..aef582a57
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-gstreamer1.0.bb
@@ -0,0 +1,118 @@
1DESCRIPTION = "Package group used by FSL Community to provide audio, video, networking and debug \
2GStreamer plugins with the required hardware acceleration (if supported by the SoC)."
3SUMMARY = "FSL Community package group - set of commonly used GStreamer 1.0 plugins"
4
5PACKAGE_ARCH = "${MACHINE_ARCH}"
6
7inherit packagegroup
8
9PACKAGES += " \
10 ${PN}-base \
11 ${PN}-audio \
12 ${PN}-video \
13 ${PN}-video-bad \
14 ${PN}-debug \
15 ${PN}-network-base \
16 ${PN}-network \
17"
18
19MACHINE_GSTREAMER_1_0_PLUGIN ?= ""
20
21RDEPENDS:${PN} = " \
22 ${PN}-audio \
23 ${PN}-video \
24 ${PN}-network-base \
25 ${PN}-debug \
26"
27
28# List of X11 specific plugins
29GST_X11_PACKAGES = " \
30 gstreamer1.0-plugins-base-ximagesink \
31 gstreamer1.0-plugins-base-xvimagesink \
32"
33
34# List of Wayland specific plugins
35GST_WAYLAND_PACKAGES = " \
36 gstreamer1.0-plugins-bad-waylandsink \
37"
38
39# basic plugins required in virtually every pipeline
40RDEPENDS:${PN}-base = " \
41 gstreamer1.0 \
42 gstreamer1.0-plugins-base-playback \
43 ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'gstreamer1.0-plugins-base-alsa', '', d)} \
44 gstreamer1.0-plugins-base-audioconvert \
45 gstreamer1.0-plugins-base-audioresample \
46 gstreamer1.0-plugins-base-gio \
47 gstreamer1.0-plugins-base-typefindfunctions \
48 gstreamer1.0-plugins-base-videoconvertscale \
49 gstreamer1.0-plugins-base-volume \
50 gstreamer1.0-plugins-good-autodetect \
51 ${MACHINE_GSTREAMER_1_0_PLUGIN} \
52 ${@bb.utils.contains("MACHINE_GSTREAMER_1_0_PLUGIN", "imx-gst1.0-plugin", "imx-gst1.0-plugin-tools", "", d)} \
53"
54
55RRECOMMENDS:${PN}-base = " \
56 ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${GST_X11_PACKAGES}', \
57 bb.utils.contains('DISTRO_FEATURES', 'wayland', \
58 '${GST_WAYLAND_PACKAGES}', '', d), d)} \
59"
60
61# Basic audio plugins: parsers, demuxers, decoders
62RDEPENDS:${PN}-audio = " \
63 ${PN}-base \
64 gstreamer1.0-plugins-base-ogg \
65 gstreamer1.0-plugins-good-audioparsers \
66 gstreamer1.0-plugins-good-flac \
67 gstreamer1.0-plugins-good-icydemux \
68 gstreamer1.0-plugins-good-id3demux \
69 gstreamer1.0-plugins-good-speex \
70 gstreamer1.0-plugins-good-wavparse \
71"
72
73# Basic video plugins: parsers, demuxers
74RDEPENDS:${PN}-video = " \
75 ${PN}-base \
76 gstreamer1.0-plugins-base-subparse \
77 gstreamer1.0-plugins-base-theora \
78 gstreamer1.0-plugins-good-avi \
79 gstreamer1.0-plugins-good-flv \
80 gstreamer1.0-plugins-good-isomp4 \
81 gstreamer1.0-plugins-good-matroska \
82"
83
84RRECOMMENDS:${PN}-video = " \
85 ${PN}-audio \
86"
87
88# Additional video plugins from the -bad collection
89RDEPENDS:${PN}-video-bad = " \
90 ${PN}-video \
91 gstreamer1.0-plugins-bad-mpegpsdemux \
92 gstreamer1.0-plugins-bad-mpegtsdemux \
93 gstreamer1.0-plugins-bad-videoparsersbad \
94"
95
96# Plugins used for diagnostics and debugging of pipelines
97RDEPENDS:${PN}-debug = " \
98 ${PN}-base \
99 gstreamer1.0-plugins-base-audiotestsrc \
100 gstreamer1.0-plugins-base-videotestsrc \
101 gstreamer1.0-plugins-good-debug \
102 gstreamer1.0-plugins-good-navigationtest \
103"
104
105# Basic networking plugins required by most pipelines that receive and/or send data
106RDEPENDS:${PN}-network-base = " \
107 gstreamer1.0-plugins-base-tcp \
108 gstreamer1.0-plugins-good-soup \
109 gstreamer1.0-plugins-good-udp \
110"
111
112# Additional networking plugins
113RDEPENDS:${PN}-network = " \
114 ${PN}-network-base \
115 gstreamer1.0-plugins-good-rtp \
116 gstreamer1.0-plugins-good-rtpmanager \
117 gstreamer1.0-plugins-good-rtsp \
118"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-network.bb b/recipes-fsl/packagegroups/packagegroup-fsl-network.bb
new file mode 100644
index 000000000..96e3097d5
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-network.bb
@@ -0,0 +1,49 @@
1# Copyright (C) 2020 Jens Rehsack <sno@netbsd.org>
2# Released under the MIT license (see COPYING.MIT for the terms)
3
4DESCRIPTION = "Package group used by FSL Community to add the packages which provide (QorIQ) networking support."
5SUMMARY = "FSL Community package group - networking"
6
7PACKAGE_ARCH = "${MACHINE_ARCH}"
8
9inherit packagegroup
10
11NETWORK_TOOLS = "\
12 ethtool \
13"
14
15NETWORK_TOOLS:append:qoriq = " \
16 ceetm \
17 dpdk \
18 ovs-dpdk \
19 pktgen-dpdk \
20 tsntool \
21"
22
23# Data Place Acceleration Architecture
24NETWORK_TOOLS:append:fsl-lsch2 = "\
25 eth-config \
26"
27
28# 2nd generation Data Place Acceleration Architecture
29NETWORK_TOOLS:append:ls1088a = "\
30 aiopsl \
31 gpp-aioptool \
32 ofp \
33"
34
35NETWORK_TOOLS:append:ls2088a = "\
36 aiopsl \
37 gpp-aioptool \
38 ofp \
39"
40
41NETWORK_TOOLS:append:fsl-lsch3 = "\
42 dce \
43 restool \
44 spc \
45"
46
47RDEPENDS:${PN} = " \
48 ${NETWORK_TOOLS} \
49"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu-external.bb b/recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu-external.bb
new file mode 100644
index 000000000..a361a4dd2
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu-external.bb
@@ -0,0 +1,28 @@
1# Copyright (C) 2014, 2016 Freescale Semiconductor
2# Copyright (C) 2015, 2016 O.S. Systems Software LTDA.
3# Released under the MIT license (see COPYING.MIT for the terms)
4DESCRIPTION = "Package group used by FSL Community to provide graphic packages used \
5to test the several hardware accelerated graphics APIs including packages not \
6provided by Freescale."
7SUMMARY = "FSL Community Package group - tools/gpu/external"
8
9PACKAGE_ARCH = "${MACHINE_ARCH}"
10
11inherit packagegroup
12
13SOC_TOOLS_GPU_X11 = ""
14SOC_TOOLS_GPU_X11:imxgpu2d = " mesa-demos glmark2 gtkperf"
15
16SOC_TOOLS_GPU_FB = ""
17
18SOC_TOOLS_GPU_WAYLAND = ""
19
20SOC_TOOLS_GPU_XWAYLAND = ""
21SOC_TOOLS_GPU_XWAYLAND:imxgpu2d = "mesa-demos gtkperf"
22
23RDEPENDS:${PN} = " \
24 ${@bb.utils.contains("DISTRO_FEATURES", "x11 wayland", "${SOC_TOOLS_GPU_XWAYLAND}", \
25 bb.utils.contains("DISTRO_FEATURES", "wayland", "${SOC_TOOLS_GPU_WAYLAND}", \
26 bb.utils.contains("DISTRO_FEATURES", "x11", "${SOC_TOOLS_GPU_X11}", \
27 "${SOC_TOOLS_GPU_FB}", d), d), d)} \
28"
diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu.bb b/recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu.bb
new file mode 100644
index 000000000..c7e820adb
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-fsl-tools-gpu.bb
@@ -0,0 +1,32 @@
1# Copyright (C) 2012-2014, 2016 Freescale Semiconductor
2# Copyright (C) 2015, 2016 O.S. Systems Software LTDA.
3# Released under the MIT license (see COPYING.MIT for the terms)
4
5DESCRIPTION = "Package group used by FSL Community to add the packages which provide GPU support."
6SUMMARY = "FSL Community package group - tools/gpu"
7
8PACKAGE_ARCH = "${MACHINE_ARCH}"
9
10inherit packagegroup
11
12SOC_TOOLS_GPU = ""
13
14# i.MX6 SoloLite does not support apitrace because of its dependency on gles2.
15SOC_TOOLS_GPU:imxgpu2d = " \
16 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', \
17 bb.utils.contains('DISTRO_FEATURES', 'x11', 'xserver-xorg-extension-viv-autohdmi', \
18 '', d), d)} \
19"
20
21SOC_TOOLS_GPU:append:imxgpu3d = " \
22 imx-gpu-apitrace \
23"
24
25SOC_TOOLS_GPU:append:imxgpu = " \
26 imx-gpu-sdk \
27 imx-gpu-viv-tools \
28"
29
30RDEPENDS:${PN} = " \
31 ${SOC_TOOLS_GPU} \
32"
diff --git a/recipes-fsl/packagegroups/packagegroup-imx-tools-audio.bb b/recipes-fsl/packagegroups/packagegroup-imx-tools-audio.bb
new file mode 100644
index 000000000..54a428fdf
--- /dev/null
+++ b/recipes-fsl/packagegroups/packagegroup-imx-tools-audio.bb
@@ -0,0 +1,33 @@
1# Copyright (C) 2015 Freescale Semiconductor
2# Copyright (C) 2015 O.S. Systems Software LTDA.
3# Released under the MIT license (see COPYING.MIT for the terms)
4
5SUMMARY = "Set of audio tools for inclusion on images"
6LICENSE = "MIT"
7LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302 \
8 file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
9
10inherit packagegroup
11
12ALSA_INSTALL = " \
13 alsa-utils \
14 alsa-tools \
15"
16
17PULSEAUDIO_INSTALL = " \
18 pulseaudio-server \
19 pulseaudio-module-cli \
20 pulseaudio-misc \
21 pulseaudio-module-device-manager \
22 ${@bb.utils.contains('DISTRO_FEATURES',"x11", "pulseaudio-module-x11-xsmp \
23 pulseaudio-module-x11-publish \
24 pulseaudio-module-x11-cork-request \
25 pulseaudio-module-x11-bell \
26 consolekit", \
27 "", d)} \
28"
29
30RDEPENDS:${PN} = " \
31 ${@bb.utils.contains("DISTRO_FEATURES", "alsa", "${ALSA_INSTALL}", "", d)} \
32 ${@bb.utils.contains("DISTRO_FEATURES", "pulseaudio", "${PULSEAUDIO_INSTALL}", "", d)} \
33"
diff --git a/recipes-graphics/devil/devil_1.8.0.bb b/recipes-graphics/devil/devil_1.8.0.bb
new file mode 100644
index 000000000..dcbdf3ac1
--- /dev/null
+++ b/recipes-graphics/devil/devil_1.8.0.bb
@@ -0,0 +1,21 @@
1DESCRIPTION = "A full featured cross-platform image library"
2SECTION = "libs"
3LICENSE = "LGPL-2.1-only"
4LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/LGPL-2.1-only;md5=1a6d268fd218675ffea8be556788b780"
5PR = "r0"
6
7DEPENDS = "libpng jpeg tiff xz"
8
9SRC_URI = "http://sourceforge.net/projects/openil/files/DevIL/${PV}/DevIL-${PV}.zip"
10SRC_URI[sha256sum] = "451337f392c65bfb83698a781370534dc63d7bafca21e9b37178df0518f7e895"
11
12S = "${UNPACKDIR}/DevIL/DevIL"
13
14inherit cmake
15
16TARGET_CFLAGS += "-Dpng_set_gray_1_2_4_to_8=png_set_expand_gray_1_2_4_to_8"
17
18SOLIBS = ".so"
19FILES_SOLIBSDEV = ""
20
21PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-graphics/drm/libdrm_2.4.123.imx.bb b/recipes-graphics/drm/libdrm_2.4.127.imx.bb
index e4208cff3..198db014e 100644
--- a/recipes-graphics/drm/libdrm_2.4.123.imx.bb
+++ b/recipes-graphics/drm/libdrm_2.4.127.imx.bb
@@ -13,8 +13,8 @@ DEPENDS = "libpthread-stubs"
13 13
14SRC_URI = "${IMX_LIBDRM_SRC};branch=${SRCBRANCH}" 14SRC_URI = "${IMX_LIBDRM_SRC};branch=${SRCBRANCH}"
15IMX_LIBDRM_SRC ?= "git://github.com/nxp-imx/libdrm-imx.git;protocol=https" 15IMX_LIBDRM_SRC ?= "git://github.com/nxp-imx/libdrm-imx.git;protocol=https"
16SRCBRANCH = "libdrm-imx-2.4.123" 16SRCBRANCH = "libdrm-imx-2.4.127"
17SRCREV = "c7c4953161a0f8f2cc7bee70284bf3263c9cfcf5" 17SRCREV = "ef5d39b51d2acfa66e165db89ba32ae32d55def5"
18 18
19DEFAULT_PREFERENCE = "-1" 19DEFAULT_PREFERENCE = "-1"
20COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 20COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-graphics/gli/gli_0.8.4.0.bb b/recipes-graphics/gli/gli_0.8.4.0.bb
new file mode 100644
index 000000000..14d6a75ed
--- /dev/null
+++ b/recipes-graphics/gli/gli_0.8.4.0.bb
@@ -0,0 +1,22 @@
1SUMMARY = "OpenGL Image Library"
2DESCRIPTION = "OpenGL Image (GLI) is a header only C++ \
3image library for graphics software."
4HOMEPAGE = "http://gli.g-truc.net"
5BUGTRACKER = "https://github.com/g-truc/gli/issues"
6
7SECTION = "libs"
8
9LICENSE = "MIT"
10LIC_FILES_CHKSUM = "file://readme.md;beginline=19;endline=20;md5=ab03b667ee630c1abb1add70365a50fb"
11
12SRC_URI = " \
13 git://github.com/g-truc/gli;protocol=https;branch=master \
14"
15SRCREV = "0c171ee87fcfe35a7e0e0445adef06f92e0b6a91"
16
17inherit cmake
18
19# This is a header-only library, so the main package will be empty.
20ALLOW_EMPTY:${PN} = "1"
21
22BBCLASSEXTEND = "native"
diff --git a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.4.0.0.bb b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.5.0.2.bb
index 4e3444b9d..94a876a94 100644
--- a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.4.0.0.bb
+++ b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.5.0.2.bb
@@ -4,7 +4,7 @@
4 4
5DESCRIPTION = "G2D library using i.MX DPU" 5DESCRIPTION = "G2D library using i.MX DPU"
6LICENSE = "Proprietary" 6LICENSE = "Proprietary"
7LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 7LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
8 8
9DEPENDS = "libdrm ${LIBGAL_IMX}" 9DEPENDS = "libdrm ${LIBGAL_IMX}"
10LIBGAL_IMX = "" 10LIBGAL_IMX = ""
@@ -15,14 +15,13 @@ PROVIDES += "virtual/libg2d"
15SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;fsl-eula=true;name=${IMX_SRC_URI_NAME}" 15SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;fsl-eula=true;name=${IMX_SRC_URI_NAME}"
16IMX_BIN_NAME = "${BPN}-${IMX_SRC_URI_NAME}-${PV}-${IMX_SRCREV_ABBREV}" 16IMX_BIN_NAME = "${BPN}-${IMX_SRC_URI_NAME}-${PV}-${IMX_SRCREV_ABBREV}"
17 17
18IMX_SRCREV_ABBREV = "9e8bbf1" 18IMX_SRCREV_ABBREV = "f126d54"
19IMX_SRC_URI_NAME = "v1" 19IMX_SRC_URI_NAME = "v1"
20SRC_URI[v1.sha256sum] = "67be9b56a5d2196613460d3cc3a734d7a088e2177377e27f83287766d5d8cf70" 20SRC_URI[v1.sha256sum] = "344116d525d98b4ec1fd9713c611c47323778245939e0a4770ad847f8965644b"
21 21
22IMX_SRCREV_ABBREV:imxmali = "9e8bbf1" 22IMX_SRCREV_ABBREV:imxmali = "f126d54"
23IMX_SRC_URI_NAME:imxmali = "v2" 23IMX_SRC_URI_NAME:imxmali = "v2"
24SRC_URI[v2.sha256sum] = "f56dae607f89e0f414625657d8345c5d1b68b79d3ac61e50016fbe4d49a91402" 24SRC_URI[v2.sha256sum] = "baa9a48a954bcdcf7eb9a14022cf6c9daa27281c642bec2ba3c24ca428c5b952"
25
26S = "${UNPACKDIR}/${IMX_BIN_NAME}" 25S = "${UNPACKDIR}/${IMX_BIN_NAME}"
27 26
28inherit fsl-eula-unpack 27inherit fsl-eula-unpack
diff --git a/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb b/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb
index 98e976100..af92476e1 100644
--- a/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb
+++ b/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb
@@ -5,12 +5,12 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=0858ec9c7a80c4a2cf16e4f825a2cc91"
5 5
6DEPENDS = "cairo" 6DEPENDS = "cairo"
7 7
8PV = "2.4+git" 8PV = "2.5.0+git"
9 9
10SRC_URI = "${GPU_G2D_SAMPLES_SRC};branch=${SRCBRANCH}" 10SRC_URI = "${GPU_G2D_SAMPLES_SRC};branch=${SRCBRANCH}"
11GPU_G2D_SAMPLES_SRC ?= "git://github.com/nxp-imx/g2d-samples.git;protocol=https" 11GPU_G2D_SAMPLES_SRC ?= "git://github.com/nxp-imx/g2d-samples.git;protocol=https"
12SRCBRANCH = "imx_2.4" 12SRCBRANCH = "imx_2.5"
13SRCREV = "7d12c50c07d73650b4c97906ce917aff429238f8" 13SRCREV = "22ca65feb57702832fbaca7f7c9c8d691466e649"
14 14
15inherit pkgconfig 15inherit pkgconfig
16 16
diff --git a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p3.2.bb b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p4.4.bb
index 7ee61ff83..1a359676f 100644
--- a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p3.2.bb
+++ b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p4.4.bb
@@ -1,20 +1,19 @@
1# Copyright (C) 2016 Freescale Semiconductor 1# Copyright (C) 2016 Freescale Semiconductor
2# Copyright 2017-2022 NXP 2# Copyright 2017-2022,2026 NXP
3# Copyright 2018 (C) O.S. Systems Software LTDA. 3# Copyright 2018 (C) O.S. Systems Software LTDA.
4# Released under the MIT license (see COPYING.MIT for the terms) 4# Released under the MIT license (see COPYING.MIT for the terms)
5 5
6DESCRIPTION = "G2D library using i.MX GPU" 6DESCRIPTION = "G2D library using i.MX GPU"
7HOMEPAGE = "https://www.nxp.com/"
8LICENSE = "Proprietary" 7LICENSE = "Proprietary"
9LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 8LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
10DEPENDS = "libgal-imx" 9DEPENDS = "libgal-imx"
11PROVIDES = "virtual/libg2d" 10PROVIDES = "virtual/libg2d"
12 11
13SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;name=${TARGET_ARCH};fsl-eula=true" 12SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;name=${TARGET_ARCH};fsl-eula=true"
14IMX_BIN_NAME = "${BP}-${TARGET_ARCH}-${IMX_SRCREV_ABBREV}" 13IMX_BIN_NAME = "${BP}-${TARGET_ARCH}-${IMX_SRCREV_ABBREV}"
15IMX_SRCREV_ABBREV = "3c5e429" 14IMX_SRCREV_ABBREV = "8626797"
16SRC_URI[aarch64.sha256sum] = "190bc9203e60e5de508e1dcf057b36d2c9bc3667c6972fd12f7df797e508a22d" 15SRC_URI[aarch64.sha256sum] = "c2f68f79a6718f04f9df781925777ad6aec64edfdb4c35ca7e42f2b39d19fb4f"
17SRC_URI[arm.sha256sum] = "aaf9a38fe446af579b16a836bf297f8cb1b2842ca3a784bedc21e32d37271ab4" 16SRC_URI[arm.sha256sum] = "aa2b5525a3a58e2650d2594fdf2c7145cbf36ca99c5fe54111c39440069e0651"
18 17
19S = "${UNPACKDIR}/${IMX_BIN_NAME}" 18S = "${UNPACKDIR}/${IMX_BIN_NAME}"
20 19
diff --git a/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb b/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb
index 8165c0c62..2b848e89c 100644
--- a/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb
+++ b/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb
@@ -1,5 +1,5 @@
1# Copyright (C) 2016 Freescale Semiconductor 1# Copyright (C) 2016 Freescale Semiconductor
2# Copyright 2017-2025 NXP 2# Copyright 2017-2026 NXP
3# Released under the MIT license (see COPYING.MIT for the terms) 3# Released under the MIT license (see COPYING.MIT for the terms)
4 4
5DESCRIPTION = "G2D library using i.MX PXP" 5DESCRIPTION = "G2D library using i.MX PXP"
@@ -8,12 +8,12 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a93b654673e1bc8398ed1f30e0813359"
8 8
9PROVIDES += "virtual/libg2d" 9PROVIDES += "virtual/libg2d"
10 10
11PV = "2.4+git" 11PV = "2.5.0+git"
12 12
13SRC_URI = "${IMX_PXP_G2D_SRC};branch=${SRCBRANCH}" 13SRC_URI = "${IMX_PXP_G2D_SRC};branch=${SRCBRANCH}"
14IMX_PXP_G2D_SRC ?= "git://github.com/nxp-imx/imx-g2d-pxp.git;protocol=https" 14IMX_PXP_G2D_SRC ?= "git://github.com/nxp-imx/imx-g2d-pxp.git;protocol=https"
15SRCBRANCH = "imx_2.4" 15SRCBRANCH = "imx_2.5"
16SRCREV = "c3368ea82e4507d7b35aee258c28d04f9f8fb8e9" 16SRCREV = "7dd4ca631b894a29389dadda5bd112cfa576b2d9"
17 17
18inherit use-imx-headers 18inherit use-imx-headers
19 19
diff --git a/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk-src.inc b/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk-src.inc
new file mode 100644
index 000000000..3c927b587
--- /dev/null
+++ b/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk-src.inc
@@ -0,0 +1,4 @@
1SRC_URI = "${GPU_SDK_SRC};branch=${GPU_SDK_SRC_BRANCH}"
2GPU_SDK_SRC ?= "git://github.com/nxp-imx/gtec-demo-framework.git;protocol=https"
3GPU_SDK_SRC_BRANCH ?= "master"
4SRCREV = "35bbd45ed6eac169a778bd154283771b9bf39be7"
diff --git a/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk_6.1.1.bb b/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk_6.1.1.bb
new file mode 100644
index 000000000..e1510baf3
--- /dev/null
+++ b/recipes-graphics/imx-gpu-sdk/imx-gpu-sdk_6.1.1.bb
@@ -0,0 +1,145 @@
1SUMMARY = "i.MX GPU SDK Samples"
2DESCRIPTION = "Set of sample applications for i.MX GPU"
3LICENSE = "BSD-3-Clause"
4LIC_FILES_CHKSUM = "file://License.md;md5=9d58a2573275ce8c35d79576835dbeb8"
5
6DEPENDS_BACKEND = \
7 "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', ' libxdg-shell wayland', \
8 bb.utils.contains('DISTRO_FEATURES', 'x11', ' xrandr', \
9 '', d), d)}"
10DEPENDS_MX8 = ""
11DEPENDS_MX8:mx8-nxp-bsp = " \
12 glslang-native \
13 opencv \
14 rapidopencl \
15 rapidopenvx \
16 rapidvulkan \
17 vulkan-headers \
18 vulkan-loader \
19"
20DEPENDS_MX8:mx8mm-nxp-bsp = " \
21 opencv \
22"
23DEPENDS = " \
24 assimp \
25 cmake-native \
26 devil \
27 fmt \
28 gli \
29 glm \
30 gstreamer1.0 \
31 gstreamer1.0-plugins-base \
32 gtest \
33 half \
34 ninja-native \
35 nlohmann-json \
36 rapidjson \
37 stb \
38 zlib \
39 ${DEPENDS_BACKEND} \
40 ${DEPENDS_MX8} \
41"
42DEPENDS:append:imxgpu2d = " virtual/libg2d virtual/libopenvg"
43DEPENDS:append:imxgpu3d = " virtual/libgles2"
44
45require imx-gpu-sdk-src.inc
46
47
48WINDOW_SYSTEM = \
49 "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'Wayland_XDG', \
50 bb.utils.contains('DISTRO_FEATURES', 'x11', 'X11', \
51 'FB', d), d)}"
52
53FEATURES = "ConsoleHost,EarlyAccess,EGL,GoogleUnitTest,Lib_NlohmannJson,OpenVG,Test_RequireUserInputToExit,WindowHost"
54FEATURES:append:imxgpu = ",HW_GPU_VIVANTE"
55FEATURES:append:imxgpu2d = ",G2D"
56FEATURES:append:imxgpu3d = ",OpenGLES2"
57FEATURES:append = "${FEATURES_SOC}"
58
59FEATURES_SOC = ""
60FEATURES_SOC:mx6q-nxp-bsp = ",OpenGLES3"
61FEATURES_SOC:mx6dl-nxp-bsp = ",OpenGLES3"
62FEATURES_SOC:mx8-nxp-bsp = ",OpenCV4,Vulkan1.2,OpenGLES3.2,OpenCL1.2,OpenVX1.2"
63FEATURES_SOC:mx8mm-nxp-bsp = ",OpenCV4"
64
65EXTENSIONS = "*"
66EXTENSIONS:mx6q-nxp-bsp = "OpenGLES:GL_VIV_direct_texture,OpenGLES3:GL_EXT_geometry_shader,OpenGLES3:GL_EXT_tessellation_shader"
67EXTENSIONS:mx6dl-nxp-bsp = "OpenGLES:GL_VIV_direct_texture,OpenGLES3:GL_EXT_geometry_shader,OpenGLES3:GL_EXT_tessellation_shader"
68EXTENSIONS:mx8m-nxp-bsp = "OpenGLES:GL_VIV_direct_texture,OpenGLES3:GL_EXT_color_buffer_float"
69EXTENSIONS:mx8mm-nxp-bsp = "*"
70
71do_compile () {
72 export FSL_PLATFORM_NAME=Yocto
73 export ROOTFS=${STAGING_DIR_HOST}
74 . ./prepare.sh
75 FslBuild.py -vvvvv -t sdk --UseFeatures [${FEATURES}] --UseExtensions [${EXTENSIONS}] --Variants [WindowSystem=${WINDOW_SYSTEM}] --BuildThreads ${@oe.utils.parallel_make(d)} -c install --CMakeInstallPrefix ${S}
76}
77
78REMOVALS = " \
79 GLES2/DeBayer \
80 GLES2/DirectMultiSamplingVideoYUV \
81 GLES3/DirectMultiSamplingVideoYUV \
82"
83REMOVALS:append:imxdpu = " \
84 G2D/EightLayers \
85"
86REMOVALS:append:mx6q-nxp-bsp = " \
87 GLES3/HDR02_FBBasicToneMapping \
88 GLES3/HDR03_SkyboxTonemapping \
89 GLES3/HDR04_HDRFramebuffer \
90"
91REMOVALS:append:mx6dl-nxp-bsp = " \
92 GLES3/HDR02_FBBasicToneMapping \
93 GLES3/HDR03_SkyboxTonemapping \
94 GLES3/HDR04_HDRFramebuffer \
95"
96
97do_install () {
98 install -d "${D}/opt/${PN}"
99 cp -r ${S}/bin/* ${D}/opt/${PN}
100 for removal in ${REMOVALS}; do
101 rm -rf ${D}/opt/${PN}/$removal
102 done
103}
104
105FILES:${PN} += "/opt/${PN}"
106FILES:${PN}-dbg += "/opt/${PN}/*/*/.debug /usr/src/debug"
107INSANE_SKIP:${PN} += "already-stripped rpaths"
108
109# Unfortunately recipes with an empty main package, like header-only libraries,
110# are not included in the SDK. Use RDEPENDS as a workaround.
111RDEPENDS_EMPTY_MAIN_PACKAGE = " \
112 fmt \
113 gli \
114 glm \
115 googletest \
116 half \
117 nlohmann-json \
118 rapidjson \
119 stb \
120"
121RDEPENDS_EMPTY_MAIN_PACKAGE_MX8 = ""
122RDEPENDS_EMPTY_MAIN_PACKAGE_MX8:mx8-nxp-bsp = " \
123 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'libxdg-shell', '', d)} \
124 rapidopencl \
125 rapidopenvx \
126 rapidvulkan \
127"
128RDEPENDS_EMPTY_MAIN_PACKAGE_MX8:mx8mm-nxp-bsp = ""
129# vulkan-loader is dynamically loaded, so need to add an explicit
130# dependency
131RDEPENDS_VULKAN_LOADER = ""
132RDEPENDS_VULKAN_LOADER:mx8-nxp-bsp = "vulkan-validation-layers vulkan-loader"
133RDEPENDS_VULKAN_LOADER:mx8mm-nxp-bsp = ""
134RDEPENDS:${PN} += " \
135 ${RDEPENDS_EMPTY_MAIN_PACKAGE} \
136 ${RDEPENDS_EMPTY_MAIN_PACKAGE_MX8} \
137 ${RDEPENDS_VULKAN_LOADER} \
138"
139
140# For backwards compatibility
141RPROVIDES:${PN} = "fsl-gpu-sdk"
142RREPLACES:${PN} = "fsl-gpu-sdk"
143RCONFLICTS:${PN} = "fsl-gpu-sdk"
144
145COMPATIBLE_MACHINE = "(imxgpu)"
diff --git a/recipes-graphics/imx-gpu-sdk/libxdg-shell.bb b/recipes-graphics/imx-gpu-sdk/libxdg-shell.bb
new file mode 100644
index 000000000..a5637869a
--- /dev/null
+++ b/recipes-graphics/imx-gpu-sdk/libxdg-shell.bb
@@ -0,0 +1,21 @@
1SUMMARY = "Provides XDG shell header and glue code library"
2LICENSE = "BSD-3-Clause"
3LIC_FILES_CHKSUM = "file://${UNPACKDIR}/${BP}/License.md;md5=9d58a2573275ce8c35d79576835dbeb8"
4
5DEPENDS = "wayland-native wayland wayland-protocols"
6
7require imx-gpu-sdk-src.inc
8
9SRC_URI += "file://0001-xdg-shell-Add-CMake-minimum.patch"
10
11S = "${UNPACKDIR}/${BP}/ThirdParty/Recipe/xdg-shell"
12
13inherit cmake pkgconfig
14
15EXTRA_OECMAKE = " \
16 -DWAYLAND_SCANNER=${STAGING_BINDIR_NATIVE}/wayland-scanner \
17 -DWAYLAND_PROTOCOLS_DIR=${STAGING_DATADIR}/wayland-protocols \
18"
19
20ALLOW_EMPTY:${PN} = "1"
21RDEPENDS:${PN}-dev = "${PN}-staticdev"
diff --git a/recipes-graphics/imx-gpu-sdk/libxdg-shell/0001-xdg-shell-Add-CMake-minimum.patch b/recipes-graphics/imx-gpu-sdk/libxdg-shell/0001-xdg-shell-Add-CMake-minimum.patch
new file mode 100644
index 000000000..9ece7d8f7
--- /dev/null
+++ b/recipes-graphics/imx-gpu-sdk/libxdg-shell/0001-xdg-shell-Add-CMake-minimum.patch
@@ -0,0 +1,38 @@
1From 6e38ee09378bfa7edc97528967f0dd0bd810f2c6 Mon Sep 17 00:00:00 2001
2From: Tom Hochstein <tom.hochstein@nxp.com>
3Date: Thu, 9 Oct 2025 08:29:44 -0500
4Subject: [PATCH] xdg-shell: Add CMake minimum
5
6The build is broken:
7```
8| CMake Error in CMakeLists.txt:
9| No cmake_minimum_required command is present. A line of code such as
10|
11| cmake_minimum_required(VERSION 4.1)
12|
13| should be added at the top of the file. The version specified may be lower
14| if you wish to support older CMake versions for this project. For more
15| information run "cmake --help-policy CMP0000".
16```
17
18Upstream-Status: Pending
19Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
20---
21 CMakeLists.txt | 2 ++
22 1 file changed, 2 insertions(+)
23
24diff --git a/CMakeLists.txt b/CMakeLists.txt
25index 8d39c6c5..5cb52e32 100644
26--- a/CMakeLists.txt
27+++ b/CMakeLists.txt
28@@ -1,5 +1,7 @@
29 # Generate the client header and glue library from xdg-shell.xml
30
31+cmake_minimum_required(VERSION 3.5)
32+
33 include(FindPkgConfig)
34
35 if (NOT DEFINED WAYLAND_PROTOCOLS_DIR)
36--
372.34.1
38
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 3b05b2abd..38f976c71 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -339,7 +339,7 @@ INSANE_SKIP:libgbm-imx += "dev-so"
339 339
340FILES:libvulkan-imx = "\ 340FILES:libvulkan-imx = "\
341 ${libdir}/libvulkan_VSI${REALSOLIBS} \ 341 ${libdir}/libvulkan_VSI${REALSOLIBS} \
342 ${sysconfdir}/vulkan" 342 ${datadir}/vulkan"
343FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}" 343FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}"
344RPROVIDES:libvulkan-imx = "virtual-vulkan-icd" 344RPROVIDES:libvulkan-imx = "virtual-vulkan-icd"
345 345
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch32.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch32.bb
deleted file mode 100644
index f0e7d285d..000000000
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch32.bb
+++ /dev/null
@@ -1,9 +0,0 @@
1require imx-gpu-viv-6.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359"
4
5IMX_SRCREV_ABBREV = "3c5e429"
6
7SRC_URI[sha256sum] = "ea7ffb01fd7cd88f2a308e5b12b40cc3c9553b8ff2941c4867943b4fee265d27"
8
9COMPATIBLE_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.11.p3.2-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch64.bb
deleted file mode 100644
index 38870add7..000000000
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p3.2-aarch64.bb
+++ /dev/null
@@ -1,9 +0,0 @@
1require imx-gpu-viv-6.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359"
4
5IMX_SRCREV_ABBREV = "3c5e429"
6
7SRC_URI[sha256sum] = "bf6fe102e8aa7a16373392efcf6ac45d705bbb95f5c39501da8aaa30957c554f"
8
9COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch32.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch32.bb
new file mode 100644
index 000000000..86a7c20a3
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch32.bb
@@ -0,0 +1,9 @@
1require imx-gpu-viv-6.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
4
5IMX_SRCREV_ABBREV = "8626797"
6
7SRC_URI[sha256sum] = "db361e1f9db45f498fd669e1f58823d937d436e6fc797da6c710cf35609b47a9"
8
9COMPATIBLE_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.11.p4.4-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch64.bb
new file mode 100644
index 000000000..5a6ba030a
--- /dev/null
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p4.4-aarch64.bb
@@ -0,0 +1,27 @@
1require imx-gpu-viv-6.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
4
5IMX_SRCREV_ABBREV = "8626797"
6
7SRC_URI[sha256sum] = "8cc97005a7469c0e83139cf1b9a8106fa6f0a84fb6f87d0f6bb9808408305c28"
8
9do_install:prepend() {
10 if [ "${IS_MX8}" = "1" ]; then
11 if [ ! -z "${PACKAGES_VULKAN}" ]; then
12 mkdir -p ${S}/gpu-core/etc/vulkan/icd.d
13 mv ${S}/gpu-core/usr/share/vulkan/icd.d/verisilicon_icd.json ${S}/gpu-core/etc/vulkan/icd.d/imx_icd.json
14 fi
15 fi
16}
17
18do_install:append() {
19 if [ "${IS_MX8}" = "1" ]; then
20 if [ ! -z "${PACKAGES_VULKAN}" ]; then
21 mkdir -p ${D}${datadir}/vulkan/icd.d
22 mv ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json ${D}${datadir}/vulkan/icd.d/verisilicon_icd.json
23 fi
24 fi
25}
26
27COMPATIBLE_MACHINE = "(mx8-nxp-bsp)"
diff --git a/recipes-graphics/piglit/piglit_%.bbappend b/recipes-graphics/piglit/piglit_%.bbappend
index 3caf8aa15..0a4a3a4a4 100644
--- a/recipes-graphics/piglit/piglit_%.bbappend
+++ b/recipes-graphics/piglit/piglit_%.bbappend
@@ -8,8 +8,8 @@ PACKAGECONFIG:remove = " ${PACKAGECONFIG_REMOVE}"
8 8
9PACKAGECONFIG_APPEND ?= " \ 9PACKAGECONFIG_APPEND ?= " \
10 gbm \ 10 gbm \
11 opencl \
12 ${@bb.utils.filter('DISTRO_FEATURES', 'vulkan', d)}" 11 ${@bb.utils.filter('DISTRO_FEATURES', 'vulkan', d)}"
12PACKAGECONFIG_APPEND:append:imxviv:mx8-nxp-bsp = " opencl"
13PACKAGECONFIG_APPEND:imxgpu:mx6-nxp-bsp = "" 13PACKAGECONFIG_APPEND:imxgpu:mx6-nxp-bsp = ""
14PACKAGECONFIG_APPEND:imxgpu:mx7-nxp-bsp = "" 14PACKAGECONFIG_APPEND:imxgpu:mx7-nxp-bsp = ""
15 15
diff --git a/recipes-graphics/rapidopencl/rapidopencl_1.1.0.1.bb b/recipes-graphics/rapidopencl/rapidopencl_1.1.0.1.bb
new file mode 100644
index 000000000..d4200d394
--- /dev/null
+++ b/recipes-graphics/rapidopencl/rapidopencl_1.1.0.1.bb
@@ -0,0 +1,16 @@
1SUMMARY = "Experimental low level header only C++11 RAII wrapper classes for the OpenCL API"
2LICENSE = "BSD-3-Clause"
3LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b98f636daed34d12d11e25f3185c0204"
4
5SRC_URI = "git://github.com/Unarmed1000/RapidOpenCL;protocol=https;branch=master \
6"
7SRCREV = "21254804a56ae96e8385c2652733c338d62da04f"
8
9# RapidOpenCL is a header-only C++11 RAII wrapper class, so the main package will be empty.
10
11do_install () {
12 install -d ${D}${includedir}
13 cp -r ${S}/include/* ${D}${includedir}
14}
15
16ALLOW_EMPTY:${PN} = "1"
diff --git a/recipes-graphics/rapidopenvx/rapidopenvx_1.1.0.bb b/recipes-graphics/rapidopenvx/rapidopenvx_1.1.0.bb
new file mode 100644
index 000000000..049fca0fd
--- /dev/null
+++ b/recipes-graphics/rapidopenvx/rapidopenvx_1.1.0.bb
@@ -0,0 +1,14 @@
1SUMMARY = "Low level header only C++11 RAII wrapper classes for the OpenVX API"
2LICENSE = "BSD-3-Clause"
3LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b98f636daed34d12d11e25f3185c0204"
4
5SRC_URI = "git://github.com/Unarmed1000/RapidOpenVX;protocol=https;branch=master \
6"
7SRCREV = "909c7abbff0ee35610f07f6fadeaf3a2eadce36e"
8
9do_install () {
10 install -d ${D}${includedir}
11 cp -r ${S}/include/* ${D}${includedir}
12}
13
14ALLOW_EMPTY:${PN} = "1"
diff --git a/recipes-graphics/rapidvulkan/rapidvulkan_1.2.162.0.bb b/recipes-graphics/rapidvulkan/rapidvulkan_1.2.162.0.bb
new file mode 100644
index 000000000..c37cf7411
--- /dev/null
+++ b/recipes-graphics/rapidvulkan/rapidvulkan_1.2.162.0.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Low level header only C++11 RAII wrapper classes for the Vulkan API"
2LICENSE = "BSD-3-Clause"
3LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b98f636daed34d12d11e25f3185c0204"
4
5DEPENDS = "vulkan-loader"
6
7SRC_URI = "git://github.com/Unarmed1000/RapidVulkan;protocol=https;branch=master"
8SRCREV = "e39a407c5ae880792d8843ada65a19dd26b3dca7"
9
10
11REQUIRED_DISTRO_FEATURES = "vulkan"
12
13inherit cmake features_check
14
15ALLOW_EMPTY:${PN} = "1"
diff --git a/recipes-graphics/vulkan/assimp/0001-X3D-Fix-invalid-vector-back-usage-6283.patch b/recipes-graphics/vulkan/assimp/0001-X3D-Fix-invalid-vector-back-usage-6283.patch
new file mode 100644
index 000000000..1b2bb5b1a
--- /dev/null
+++ b/recipes-graphics/vulkan/assimp/0001-X3D-Fix-invalid-vector-back-usage-6283.patch
@@ -0,0 +1,52 @@
1From 59bc03d931270b6354690512d0c881eec8b97678 Mon Sep 17 00:00:00 2001
2From: Kim Kulling <kimkulling@users.noreply.github.com>
3Date: Fri, 25 Jul 2025 15:01:16 +0200
4Subject: [PATCH] X3D: Fix invalid vector::back usage (#6283)
5
6* X3D: Fix invalid vector::back usage
7
8Upstream-Status: Backport [https://github.com/assimp/assimp/commit/59bc03d931270b6354690512d0c881eec8b97678]
9---
10 code/AssetLib/X3D/X3DGeoHelper.cpp | 14 ++++++++++----
11 1 file changed, 10 insertions(+), 4 deletions(-)
12
13diff --git a/code/AssetLib/X3D/X3DGeoHelper.cpp b/code/AssetLib/X3D/X3DGeoHelper.cpp
14index 1c962a460..b90956d2c 100644
15--- a/code/AssetLib/X3D/X3DGeoHelper.cpp
16+++ b/code/AssetLib/X3D/X3DGeoHelper.cpp
17@@ -128,13 +128,17 @@ void X3DGeoHelper::rect_parallel_epiped(const aiVector3D &pSize, std::list<aiVec
18
19 #undef MESH_RectParallelepiped_CREATE_VERT
20
21+static constexpr int InvalidIndex = -1;
22+
23 void X3DGeoHelper::coordIdx_str2faces_arr(const std::vector<int32_t> &pCoordIdx, std::vector<aiFace> &pFaces, unsigned int &pPrimitiveTypes) {
24 std::vector<int32_t> f_data(pCoordIdx);
25 std::vector<unsigned int> inds;
26 unsigned int prim_type = 0;
27
28- if (f_data.back() != (-1)) {
29- f_data.push_back(-1);
30+ if (!f_data.empty()) {
31+ if (f_data.back() != InvalidIndex) {
32+ f_data.push_back(InvalidIndex);
33+ }
34 }
35
36 // reserve average size.
37@@ -191,8 +195,10 @@ mg_m_err:
38 void X3DGeoHelper::coordIdx_str2lines_arr(const std::vector<int32_t> &pCoordIdx, std::vector<aiFace> &pFaces) {
39 std::vector<int32_t> f_data(pCoordIdx);
40
41- if (f_data.back() != (-1)) {
42- f_data.push_back(-1);
43+ if (!f_data.empty()) {
44+ if (f_data.back() != InvalidIndex) {
45+ f_data.push_back(InvalidIndex);
46+ }
47 }
48
49 // reserve average size.
50--
512.34.1
52
diff --git a/recipes-graphics/vulkan/assimp_5.4.3.bb b/recipes-graphics/vulkan/assimp_5.4.3.bb
new file mode 100644
index 000000000..ff4fb7719
--- /dev/null
+++ b/recipes-graphics/vulkan/assimp_5.4.3.bb
@@ -0,0 +1,34 @@
1DESCRIPTION = "Open Asset Import Library is a portable Open Source library to import \
2 various well-known 3D model formats in a uniform manner."
3HOMEPAGE = "http://www.assimp.org/"
4SECTION = "devel"
5
6LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=d9d5275cab4fb13ae624d42ce64865de"
8
9DEPENDS = "zlib"
10
11SRC_URI = "git://github.com/assimp/assimp.git;protocol=https;branch=master \
12 file://0001-X3D-Fix-invalid-vector-back-usage-6283.patch"
13UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>(\d+(\.\d+)+))"
14
15SRCREV = "c35200e38ea8f058812b83de2ef32c6093b0ece2"
16
17inherit cmake
18
19do_unpack:append() {
20 bb.build.exec_func('remove_non_compliant_source', d)
21}
22
23remove_non_compliant_source() {
24 # Remove non-compliant files manually. A patch file cannot be used
25 # since many of the files are binary.
26 rm -rf ${S}/test/models-nonbsd ${S}/scripts/StepImporter/schema_ifc2x3.exp
27}
28
29EXTRA_OECMAKE = "-DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_BUILD_TESTS=OFF -DASSIMP_LIB_INSTALL_DIR=${baselib}"
30
31BBCLASSEXTEND = "native nativesdk"
32
33# Work around do_package_qa error
34INSANE_SKIP:${PN}-dev += "buildpaths"
diff --git a/recipes-graphics/vulkan/vulkan-wsi-layer/0001-wayland-Add-C-guard-before-__STDC_VERSION__-define.patch b/recipes-graphics/vulkan/vulkan-wsi-layer/0001-wayland-Add-C-guard-before-__STDC_VERSION__-define.patch
new file mode 100644
index 000000000..ca76a1231
--- /dev/null
+++ b/recipes-graphics/vulkan/vulkan-wsi-layer/0001-wayland-Add-C-guard-before-__STDC_VERSION__-define.patch
@@ -0,0 +1,106 @@
1From aa5d634a607d58f45cc9ccbdc1f80c94685a45a2 Mon Sep 17 00:00:00 2001
2From: Franz Schnyder <franz.schnyder@toradex.com>
3Date: Wed, 3 Jun 2026 10:00:55 +0200
4Subject: [PATCH] wayland: Add C++ guard before __STDC_VERSION__ define
5
6'__STDC_VERSION__' is predefined by the compiler in C++ mode. Redefining
7it triggers '-Wbuiltin-macro-redefined', which with '-Werror' fails the
8build under GCC 16.
9
10Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/vulkan-wsi-layer/-/work_items/33]
11Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
12---
13 wsi/wayland/surface.hpp | 3 +++
14 wsi/wayland/surface_properties.cpp | 2 ++
15 wsi/wayland/swapchain.hpp | 3 +++
16 wsi/wayland/wl_helpers.hpp | 3 +++
17 wsi/wayland/wl_object_owner.hpp | 3 +++
18 5 files changed, 14 insertions(+)
19
20diff --git a/wsi/wayland/surface.hpp b/wsi/wayland/surface.hpp
21index f060f00..92aa598 100644
22--- a/wsi/wayland/surface.hpp
23+++ b/wsi/wayland/surface.hpp
24@@ -28,9 +28,12 @@
25
26 #pragma once
27
28+#ifndef __cplusplus
29 #ifndef __STDC_VERSION__
30 #define __STDC_VERSION__ 0
31 #endif
32+#endif
33+
34 #include <wayland-client.h>
35
36 #include "wsi/surface.hpp"
37diff --git a/wsi/wayland/surface_properties.cpp b/wsi/wayland/surface_properties.cpp
38index e6435b9..caf840d 100644
39--- a/wsi/wayland/surface_properties.cpp
40+++ b/wsi/wayland/surface_properties.cpp
41@@ -24,9 +24,11 @@
42
43 #define VK_USE_PLATFORM_WAYLAND_KHR 1
44
45+#ifndef __cplusplus
46 #ifndef __STDC_VERSION__
47 #define __STDC_VERSION__ 0
48 #endif
49+#endif
50
51 #include <wayland-client.h>
52 #include <linux-dmabuf-unstable-v1-client-protocol.h>
53diff --git a/wsi/wayland/swapchain.hpp b/wsi/wayland/swapchain.hpp
54index 7667324..95096f8 100644
55--- a/wsi/wayland/swapchain.hpp
56+++ b/wsi/wayland/swapchain.hpp
57@@ -31,9 +31,12 @@ extern "C" {
58 #include <vulkan/vk_icd.h>
59 }
60
61+#ifndef __cplusplus
62 #ifndef __STDC_VERSION__
63 #define __STDC_VERSION__ 0
64 #endif
65+#endif
66+
67 #include <wayland-client.h>
68 #include <linux-dmabuf-unstable-v1-client-protocol.h>
69 #include "util/wsialloc/wsialloc.h"
70diff --git a/wsi/wayland/wl_helpers.hpp b/wsi/wayland/wl_helpers.hpp
71index 1f6bad6..2ca131b 100644
72--- a/wsi/wayland/wl_helpers.hpp
73+++ b/wsi/wayland/wl_helpers.hpp
74@@ -26,9 +26,12 @@
75
76 #include <stdint.h>
77
78+#ifndef __cplusplus
79 #ifndef __STDC_VERSION__
80 #define __STDC_VERSION__ 0
81 #endif
82+#endif
83+
84 #include <wayland-client.h>
85
86 #include "util/custom_allocator.hpp"
87diff --git a/wsi/wayland/wl_object_owner.hpp b/wsi/wayland/wl_object_owner.hpp
88index d317e28..564fd5a 100644
89--- a/wsi/wayland/wl_object_owner.hpp
90+++ b/wsi/wayland/wl_object_owner.hpp
91@@ -24,9 +24,12 @@
92
93 #pragma once
94
95+#ifndef __cplusplus
96 #ifndef __STDC_VERSION__
97 #define __STDC_VERSION__ 0
98 #endif
99+#endif
100+
101 #include <wayland-client.h>
102 #include <linux-dmabuf-unstable-v1-client-protocol.h>
103 #include <linux-explicit-synchronization-unstable-v1-protocol.h>
104--
1052.43.0
106
diff --git a/recipes-graphics/vulkan/vulkan-wsi-layer_git.bb b/recipes-graphics/vulkan/vulkan-wsi-layer_git.bb
index efa6accb3..0118975a5 100644
--- a/recipes-graphics/vulkan/vulkan-wsi-layer_git.bb
+++ b/recipes-graphics/vulkan/vulkan-wsi-layer_git.bb
@@ -8,10 +8,13 @@ PV = "0.0+git${SRCPV}"
8SRC_URI = "git://gitlab.freedesktop.org/mesa/vulkan-wsi-layer.git;protocol=https;branch=main \ 8SRC_URI = "git://gitlab.freedesktop.org/mesa/vulkan-wsi-layer.git;protocol=https;branch=main \
9 file://0001-MGS-6801-ccc-vkmark-on-wayland.patch \ 9 file://0001-MGS-6801-ccc-vkmark-on-wayland.patch \
10 file://0002-MGS-6823-nxp-Add-support-of-VK_COMPOSITE_ALPHA_OPAQU.patch \ 10 file://0002-MGS-6823-nxp-Add-support-of-VK_COMPOSITE_ALPHA_OPAQU.patch \
11 file://0003-Update-minimum-version-of-CMake.patch" 11 file://0003-Update-minimum-version-of-CMake.patch \
12 file://0001-wayland-Add-C-guard-before-__STDC_VERSION__-define.patch"
12SRCREV = "cb1a50cf7e640ad7306e673131ded98c0f133628" 13SRCREV = "cb1a50cf7e640ad7306e673131ded98c0f133628"
13 14
14inherit cmake pkgconfig 15REQUIRED_DISTRO_FEATURES = "vulkan"
16
17inherit cmake pkgconfig features_check
15 18
16PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', 'headless', d)}" 19PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', 'headless', d)}"
17 20
diff --git a/recipes-graphics/waffle/waffle_%.bbappend b/recipes-graphics/waffle/waffle_%.bbappend
index e88f558d4..fd375271f 100644
--- a/recipes-graphics/waffle/waffle_%.bbappend
+++ b/recipes-graphics/waffle/waffle_%.bbappend
@@ -1,6 +1,6 @@
1FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" 1FILESEXTRAPATHS:prepend:imxgpu := "${THISDIR}/${PN}:"
2 2
3SRC_URI += " \ 3SRC_URI:append:imxgpu = " \
4 file://0001-meson-Add-missing-wayland-dependency-on-EGL.patch \ 4 file://0001-meson-Add-missing-wayland-dependency-on-EGL.patch \
5 file://0002-meson-Separate-surfaceless-option-from-x11.patch \ 5 file://0002-meson-Separate-surfaceless-option-from-x11.patch \
6" 6"
diff --git a/recipes-graphics/wayland/wayland-protocols/0001-unstable-Add-alpha-compositing-protocol.patch b/recipes-graphics/wayland/wayland-protocols/0001-unstable-Add-alpha-compositing-protocol.patch
index ed649e231..82c99d524 100644
--- a/recipes-graphics/wayland/wayland-protocols/0001-unstable-Add-alpha-compositing-protocol.patch
+++ b/recipes-graphics/wayland/wayland-protocols/0001-unstable-Add-alpha-compositing-protocol.patch
@@ -28,14 +28,14 @@ Conflicts:
28 create mode 100644 unstable/alpha-compositing/alpha-compositing-unstable-v1.xml 28 create mode 100644 unstable/alpha-compositing/alpha-compositing-unstable-v1.xml
29 29
30diff --git a/meson.build b/meson.build 30diff --git a/meson.build b/meson.build
31index a78d698a730b..99a555d53a09 100644 31index 25d42ce..4eb37f0 100644
32--- a/meson.build 32--- a/meson.build
33+++ b/meson.build 33+++ b/meson.build
34@@ -42,6 +42,7 @@ unstable_protocols = { 34@@ -45,6 +45,7 @@ unstable_protocols = {
35 'xdg-output': ['v1'], 35 'xdg-output': {'v1': []},
36 'xdg-shell': ['v5', 'v6'], 36 'xdg-shell': {'v5': [], 'v6': []},
37 'xwayland-keyboard-grab': ['v1'], 37 'xwayland-keyboard-grab': {'v1': []},
38+ 'alpha-compositing': ['v1'], 38+ 'alpha-compositing': {'v1': []},
39 } 39 }
40 40
41 staging_protocols = { 41 staging_protocols = {
diff --git a/recipes-graphics/wayland/wayland-protocols/0002-unstable-Add-hdr10-metadata-protocol.patch b/recipes-graphics/wayland/wayland-protocols/0002-unstable-Add-hdr10-metadata-protocol.patch
index 7711fed60..0c021f37c 100644
--- a/recipes-graphics/wayland/wayland-protocols/0002-unstable-Add-hdr10-metadata-protocol.patch
+++ b/recipes-graphics/wayland/wayland-protocols/0002-unstable-Add-hdr10-metadata-protocol.patch
@@ -19,14 +19,14 @@ Signed-off-by: Haihua Hu <jared.hu@nxp.com>
19 create mode 100644 unstable/hdr10-metadata/hdr10-metadata-unstable-v1.xml 19 create mode 100644 unstable/hdr10-metadata/hdr10-metadata-unstable-v1.xml
20 20
21diff --git a/meson.build b/meson.build 21diff --git a/meson.build b/meson.build
22index 99a555d53a09..70b594d3b89c 100644 22index 4eb37f0..c131e95 100644
23--- a/meson.build 23--- a/meson.build
24+++ b/meson.build 24+++ b/meson.build
25@@ -43,6 +43,7 @@ unstable_protocols = { 25@@ -46,6 +46,7 @@ unstable_protocols = {
26 'xdg-shell': ['v5', 'v6'], 26 'xdg-shell': {'v5': [], 'v6': []},
27 'xwayland-keyboard-grab': ['v1'], 27 'xwayland-keyboard-grab': {'v1': []},
28 'alpha-compositing': ['v1'], 28 'alpha-compositing': {'v1': []},
29+ 'hdr10-metadata': ['v1'], 29+ 'hdr10-metadata': {'v1': []},
30 } 30 }
31 31
32 staging_protocols = { 32 staging_protocols = {
diff --git a/recipes-graphics/wayland/wayland-protocols_%.bbappend b/recipes-graphics/wayland/wayland-protocols_%.bbappend
index c82b46568..762b47a31 100644
--- a/recipes-graphics/wayland/wayland-protocols_%.bbappend
+++ b/recipes-graphics/wayland/wayland-protocols_%.bbappend
@@ -6,11 +6,11 @@ NXP_PATCHES = " \
6 file://0003-linux-dmabuf-support-passing-buffer-DTRC-meta-to-com.patch \ 6 file://0003-linux-dmabuf-support-passing-buffer-DTRC-meta-to-com.patch \
7" 7"
8 8
9SRC_URI:append:imx-nxp-bsp = " ${NXP_PATCHES}" 9SRC_URI:append:imx-nxp-bsp:class-target = " ${NXP_PATCHES}"
10 10
11# override the effect of "inherit allarch" 11# override the effect of "inherit allarch"
12python allarch_package_arch_handler:prepend:imx-nxp-bsp () { 12python allarch_package_arch_handler:prepend:imx-nxp-bsp:class-target () {
13 return 13 return
14} 14}
15 15
16PACKAGE_ARCH:imx-nxp-bsp = "${MACHINE_SOCARCH}" 16PACKAGE_ARCH:imx-nxp-bsp:class-target = "${MACHINE_SOCARCH}"
diff --git a/recipes-graphics/wayland/weston-init.bbappend b/recipes-graphics/wayland/weston-init.bbappend
index 27a5b947b..1b08b1955 100644
--- a/recipes-graphics/wayland/weston-init.bbappend
+++ b/recipes-graphics/wayland/weston-init.bbappend
@@ -45,6 +45,7 @@ PACKAGECONFIG_USE_G2D:mx8qm-nxp-bsp ?= ""
45PACKAGECONFIG_USE_G2D:mx8qxp-nxp-bsp ?= "" 45PACKAGECONFIG_USE_G2D:mx8qxp-nxp-bsp ?= ""
46PACKAGECONFIG_USE_G2D:mx8dx-nxp-bsp ?= "" 46PACKAGECONFIG_USE_G2D:mx8dx-nxp-bsp ?= ""
47PACKAGECONFIG_USE_G2D:mx93-nxp-bsp ?= "use-g2d" 47PACKAGECONFIG_USE_G2D:mx93-nxp-bsp ?= "use-g2d"
48PACKAGECONFIG_USE_G2D:mx943-nxp-bsp ?= "use-g2d"
48 49
49USE_G2D_VALUE = "true" 50USE_G2D_VALUE = "true"
50USE_G2D_VALUE:mx6-nxp-bsp = "1" 51USE_G2D_VALUE:mx6-nxp-bsp = "1"
@@ -57,6 +58,18 @@ PACKAGECONFIG[size] = ",,"
57PACKAGECONFIG[use-g2d] = ",," 58PACKAGECONFIG[use-g2d] = ",,"
58PACKAGECONFIG[xwayland] = ",," 59PACKAGECONFIG[xwayland] = ",,"
59 60
61update_file() {
62 sed -i -e "s,$1,$2," $3
63}
64
65insert_line_before() {
66 sed -i -e "/$1/i $2" $3
67}
68
69insert_line_after() {
70 sed -i -e "/$1/a $2" $3
71}
72
60do_install:append() { 73do_install:append() {
61 # Replace the template variables 74 # Replace the template variables
62 sed -i -e 's,@bindir@,${bindir},g' ${D}${sysconfdir}/xdg/weston/weston.ini 75 sed -i -e 's,@bindir@,${bindir},g' ${D}${sysconfdir}/xdg/weston/weston.ini
@@ -91,4 +104,35 @@ do_install:append() {
91 if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "no" ]; then 104 if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "no" ]; then
92 sed -i -e "s/^xwayland=true/#xwayland=true/g" ${D}${sysconfdir}/xdg/weston/weston.ini 105 sed -i -e "s/^xwayland=true/#xwayland=true/g" ${D}${sysconfdir}/xdg/weston/weston.ini
93 fi 106 fi
107
108 if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
109 # Add weston.log back, used by NXP for testing
110 update_file "ExecStart=/usr/bin/weston " "ExecStart=/usr/bin/weston --log=\$\{XDG_RUNTIME_DIR\}/weston.log " ${D}${systemd_system_unitdir}/weston.service
111
112 # FIXME: weston should be run as weston, not as root
113 update_file "User=weston" "User=root" ${D}${systemd_system_unitdir}/weston.service
114 update_file "Group=weston" "Group=root" ${D}${systemd_system_unitdir}/weston.service
115
116 # FIXME: Upstream this change
117 insert_line_before "ExecStart=" "ExecStartPre=+chvt 7" ${D}${systemd_system_unitdir}/weston.service
118
119 # FIXME: fix the underlying problem and drop this workaround
120 insert_line_after "ExecStart=" "Restart=on-failure" ${D}${systemd_system_unitdir}/weston.service
121 else
122 # Install weston-socket.sh for sysvinit as well
123 install -D -p -m0644 ${S}/weston-socket.sh ${D}${sysconfdir}/profile.d/weston-socket.sh
124 fi
125
126 # Include commented gbm-format
127 if ! [ "${@bb.utils.contains('PACKAGECONFIG', 'gbm-format', 'yes', 'no', d)}" = "yes" ]; then
128 sed -i -e "/^\[core\]/a #gbm-format=${GBM_FORMAT_VALUE}" ${D}${sysconfdir}/xdg/weston/weston.ini
129 fi
130}
131
132do_install:append:mx6-nxp-bsp() {
133 update_file "--no-resizeable" "--no-clients-resize" ${D}${sysconfdir}/xdg/weston/weston.ini
134}
135
136do_install:append:mx7-nxp-bsp() {
137 update_file "--no-resizeable" "--no-clients-resize" ${D}${sysconfdir}/xdg/weston/weston.ini
94} 138}
diff --git a/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini b/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini
index 19e6ad244..d865ef773 100644
--- a/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini
+++ b/recipes-graphics/wayland/weston-init/imx-nxp-bsp/weston.ini
@@ -21,5 +21,5 @@ touchscreen_calibrator=true
21#transform=rotate-90 21#transform=rotate-90
22 22
23[screen-share] 23[screen-share]
24command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize 24command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-resizeable
25#start-on-startup=true 25#start-on-startup=true
diff --git a/recipes-graphics/wayland/weston_10.0.5.imx.bb b/recipes-graphics/wayland/weston_10.0.5.imx.bb
index 4d7d99130..991650fb9 100644
--- a/recipes-graphics/wayland/weston_10.0.5.imx.bb
+++ b/recipes-graphics/wayland/weston_10.0.5.imx.bb
@@ -161,11 +161,12 @@ LIC_FILES_CHKSUM:append = "file://LICENSE;md5=d79ee9e66bb0f95d3386a7acae780b70"
161DEFAULT_PREFERENCE = "-1" 161DEFAULT_PREFERENCE = "-1"
162 162
163SRC_URI:remove = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downloads/${BPN}-${PV}.tar.xz" 163SRC_URI:remove = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downloads/${BPN}-${PV}.tar.xz"
164SRC_URI:prepend = "git://github.com/nxp-imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} " 164SRC_URI:prepend = "${WESTON_SRC};branch=${SRCBRANCH} "
165WESTON_SRC ?= "git://github.com/nxp-imx/weston-imx.git;protocol=https"
165SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch \ 166SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch \
166 file://0001-g2d-renderer.c-Include-sys-stat.h.patch" 167 file://0001-g2d-renderer.c-Include-sys-stat.h.patch"
167SRCBRANCH = "weston-imx-10.0.5" 168SRCBRANCH = "weston-imx-10.0.5"
168SRCREV = "7129417ae04de57f9596ccf27f74ef967660a64f" 169SRCREV = "5223a3c86177709d25f86a96622c0829da955a0e"
169 170
170# Disable OpenGL for parts with GPU support for 2D but not 3D 171# Disable OpenGL for parts with GPU support for 2D but not 3D
171REQUIRED_DISTRO_FEATURES = "opengl" 172REQUIRED_DISTRO_FEATURES = "opengl"
diff --git a/recipes-graphics/wayland/weston_14.0.2.imx.bb b/recipes-graphics/wayland/weston_14.0.2.imx.bb
index 299796f3b..2c0b13d41 100644
--- a/recipes-graphics/wayland/weston_14.0.2.imx.bb
+++ b/recipes-graphics/wayland/weston_14.0.2.imx.bb
@@ -163,17 +163,21 @@ SRC_URI:remove = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}
163SRC_URI:prepend = "${WESTON_SRC};branch=${SRCBRANCH} " 163SRC_URI:prepend = "${WESTON_SRC};branch=${SRCBRANCH} "
164WESTON_SRC ?= "git://github.com/nxp-imx/weston-imx.git;protocol=https" 164WESTON_SRC ?= "git://github.com/nxp-imx/weston-imx.git;protocol=https"
165SRCBRANCH = "weston-imx-14.0.2" 165SRCBRANCH = "weston-imx-14.0.2"
166SRCREV = "c267ba8e6eed3a824e042a200bcc1b4c370ba88f" 166SRCREV = "be99fd1adad7e77c8c31926b09520ade5cdaca35"
167 167
168PACKAGECONFIG:remove = "${PACKAGECONFIG_IMX_REMOVALS}" 168PACKAGECONFIG:remove = "${PACKAGECONFIG_IMX_REMOVALS}"
169PACKAGECONFIG_IMX_REMOVALS ?= "wayland x11" 169PACKAGECONFIG_IMX_REMOVALS ?= "wayland x11"
170 170
171PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D}" 171PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D} ${PACKAGECONFIG_PIPEWIRE}"
172PACKAGECONFIG_G2D ??= "" 172PACKAGECONFIG_G2D ??= ""
173PACKAGECONFIG_G2D:imxgpu2d ??= "imxg2d" 173PACKAGECONFIG_G2D:imxgpu2d ??= "imxg2d"
174PACKAGECONFIG_G2D:mx93-nxp-bsp ??= "imxg2d" 174PACKAGECONFIG_G2D:mx93-nxp-bsp ??= "imxg2d"
175PACKAGECONFIG_G2D:mx943-nxp-bsp ??= "imxg2d" 175PACKAGECONFIG_G2D:mx943-nxp-bsp ??= "imxg2d"
176 176
177PACKAGECONFIG_PIPEWIRE ??= ""
178PACKAGECONFIG_PIPEWIRE:mx8-nxp-bsp ??= "pipewire"
179PACKAGECONFIG_PIPEWIRE:mx9-nxp-bsp ??= "pipewire"
180
177# Weston with i.MX G2D renderer 181# Weston with i.MX G2D renderer
178PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d" 182PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d"
179 183
diff --git a/recipes-graphics/xwayland/xwayland_24.1.6.imx.bbappend b/recipes-graphics/xwayland/xwayland_%.bbappend
index d8f5bdde5..d8f5bdde5 100644
--- a/recipes-graphics/xwayland/xwayland_24.1.6.imx.bbappend
+++ b/recipes-graphics/xwayland/xwayland_%.bbappend
diff --git a/recipes-graphics/xwayland/xwayland_24.1.6.imx.bb b/recipes-graphics/xwayland/xwayland_24.1.6.imx.bb
deleted file mode 100644
index 1d7ee80f6..000000000
--- a/recipes-graphics/xwayland/xwayland_24.1.6.imx.bb
+++ /dev/null
@@ -1,62 +0,0 @@
1# This recipe copy helps keep meta-freescale master branch compatible
2# with Yocto walnascar.
3# (From OE-Core rev: 737e612ca36bbdf415a911644eb7592cf9389846847b47fa46dc705bd754d2d7)
4
5SUMMARY = "XWayland is an X Server that runs under Wayland."
6DESCRIPTION = "XWayland is an X Server running as a Wayland client, \
7and thus is capable of displaying native X11 client applications in a \
8Wayland compositor environment. The goal of XWayland is to facilitate \
9the transition from X Window System to Wayland environments, providing \
10a way to run unported applications in the meantime."
11HOMEPAGE = "https://fedoraproject.org/wiki/Changes/XwaylandStandalone"
12
13DEFAULT_PREFERENCE = "-1"
14
15LICENSE = "MIT"
16LIC_FILES_CHKSUM = "file://COPYING;md5=5df87950af51ac2c5822094553ea1880"
17
18SRC_URI = "https://www.x.org/archive/individual/xserver/${BP_ORIGINAL}.tar.xz"
19BP_ORIGINAL = "${BPN}-24.1.6"
20SRC_URI[sha256sum] = "737e612ca36bbdf415a911644eb7592cf9389846847b47fa46dc705bd754d2d7"
21S = "${UNPACKDIR}/${BP_ORIGINAL}"
22
23UPSTREAM_CHECK_REGEX = "xwayland-(?P<pver>\d+(\.(?!90\d)\d+)+)\.tar"
24
25inherit meson features_check pkgconfig
26REQUIRED_DISTRO_FEATURES = "x11 opengl"
27
28DEPENDS += "xorgproto xtrans pixman libxkbfile libxfont2 wayland wayland-native wayland-protocols libdrm libepoxy libxcvt libtirpc"
29
30OPENGL_PKGCONFIGS = "glx glamor dri3"
31PACKAGECONFIG ??= "${XORG_CRYPTO} ${XWAYLAND_EI} \
32 ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', '${OPENGL_PKGCONFIGS}', '', d)} \
33"
34PACKAGECONFIG[dri3] = "-Ddri3=true,-Ddri3=false,libxshmfence"
35PACKAGECONFIG[libdecor] = "-Dlibdecor=true,-Dlibdecor=false,libdecor"
36PACKAGECONFIG[glx] = "-Dglx=true,-Dglx=false,virtual/libgl virtual/libx11"
37PACKAGECONFIG[glamor] = "-Dglamor=true,-Dglamor=false,libepoxy virtual/libgbm,libegl"
38PACKAGECONFIG[unwind] = "-Dlibunwind=true,-Dlibunwind=false,libunwind"
39PACKAGECONFIG[xinerama] = "-Dxinerama=true,-Dxinerama=false"
40
41# Xorg requires a SHA1 implementation, pick one
42XORG_CRYPTO ??= "openssl"
43PACKAGECONFIG[openssl] = "-Dsha1=libcrypto,,openssl"
44PACKAGECONFIG[nettle] = "-Dsha1=libnettle,,nettle"
45PACKAGECONFIG[gcrypt] = "-Dsha1=libgcrypt,,libgcrypt"
46XWAYLAND_EI ??= "xwayland_ei_false"
47PACKAGECONFIG[xwayland_ei_false] = "-Dxwayland_ei=false"
48PACKAGECONFIG[xwayland_ei_portal] = "-Dxwayland_ei=portal,,libei"
49PACKAGECONFIG[xwayland_ei_socket] = "-Dxwayland_ei=socket,,libei"
50
51do_install:append() {
52 # remove files not needed and clashing with xserver-xorg
53 rm -rf ${D}/${libdir}/xorg/
54}
55
56FILES:${PN} += "${libdir}/xorg/protocol.txt"
57
58RDEPENDS:${PN} += "xkbcomp"
59
60CVE_STATUS_GROUPS = "CVE_STATUS_REDHAT"
61CVE_STATUS_REDHAT = "CVE-2025-26594 CVE-2025-26595 CVE-2025-26596 CVE-2025-26597 CVE-2025-26598 CVE-2025-26599 CVE-2025-26600 CVE-2025-26601"
62CVE_STATUS_REDHAT[status] = "fixed-version: these are tracked as versionless redhat CVEs in NVD DB, fixed in 24.1.6"
diff --git a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.2.bb b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.4.bb
index dc0f2886f..5dc9ab894 100644
--- a/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.2.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-imx-gpu-viv_6.4.11.p4.4.bb
@@ -1,5 +1,5 @@
1# Copyright (C) 2015-2016 Freescale Semiconductor 1# Copyright (C) 2015-2016 Freescale Semiconductor
2# Copyright (C) 2017-2025 NXP 2# Copyright (C) 2017-2026 NXP
3 3
4SUMMARY = "Kernel loadable module for Vivante GPU" 4SUMMARY = "Kernel loadable module for Vivante GPU"
5DESCRIPTION = "Builds the Vivante GPU kernel driver as a loadable kernel module, \ 5DESCRIPTION = "Builds the Vivante GPU kernel driver as a loadable kernel module, \
@@ -7,15 +7,12 @@ allowing flexibility to use a newer graphics release with an older kernel."
7LICENSE = "GPL-2.0-only" 7LICENSE = "GPL-2.0-only"
8LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6" 8LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
9 9
10SRC_URI = "${LINUX_IMX_SRC};subpath=drivers/mxc/gpu-viv;destsuffix=${BP}/src \ 10SRC_URI = "${LINUX_IMX_SRC};subpath=drivers/mxc/gpu-viv;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/src \
11 file://Add-makefile.patch" 11 file://Add-makefile.patch"
12
13LINUX_IMX_SRC ?= "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}" 12LINUX_IMX_SRC ?= "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
14SRCBRANCH = "lf-6.12.y" 13SRCBRANCH = "lf-6.18.y"
15LOCALVERSION = "-lts-${SRCBRANCH}" 14LOCALVERSION = "-6.18.2-1.0.0"
16SRCREV = "807e28f65f46b131a698a4c62e2cc0b6b4682731" 15SRCREV = "b9ab260bee4d15d079e39a373162eb6201c1cb4a"
17
18S = "${UNPACKDIR}/${BP}"
19 16
20inherit module 17inherit module
21 18
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-video-add-v4l2-fh-compat-for-pre-6.18-kernels.patch b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-video-add-v4l2-fh-compat-for-pre-6.18-kernels.patch
new file mode 100644
index 000000000..4a784eee2
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam/0001-video-add-v4l2-fh-compat-for-pre-6.18-kernels.patch
@@ -0,0 +1,88 @@
1From 35d5a732cc4b53897a0e6188fae5e9c8fd1b97a1 Mon Sep 17 00:00:00 2001
2From: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
3Date: Mon, 11 May 2026 16:00:30 +0000
4Subject: [PATCH] video: add v4l2_fh compat for pre-6.18 kernels
5
6Linux v6.18 added file_to_v4l2_fh() and changed v4l2_fh_add() and
7v4l2_fh_del() to take the file pointer so the helpers can manage
8file->private_data internally.
9
10The relevant upstream commits are:
11 618882c92681 ("media: Wrap file->private_data access with a helper function")
12 47f4b1acb4d5 ("media: Set file->private_data in v4l2_fh_add()")
13 277966749f46 ("media: Reset file->private_data to NULL in v4l2_fh_del()")
14
15Add a small compatibility layer for older kernels that keeps
16file->private_data management in this driver.
17
18Upstream-Status: Inappropriate
19Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
20---
21 video/video.c | 30 +++++++++++++++++++++++++++---
22 1 file changed, 27 insertions(+), 3 deletions(-)
23
24diff --git a/video/video.c b/video/video.c
25index bccf466b05f5..ce8c7d725150 100644
26--- a/video/video.c
27+++ b/video/video.c
28@@ -69,6 +69,30 @@
29 #include "vvdefs.h"
30 #include "vvsensor.h"
31
32+#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 18, 0)
33+static inline struct v4l2_fh *viv_file_to_v4l2_fh(struct file *file)
34+{
35+ return file->private_data;
36+}
37+
38+static inline void viv_v4l2_fh_add(struct v4l2_fh *fh, struct file *file)
39+{
40+ file->private_data = fh;
41+ v4l2_fh_add(fh);
42+}
43+
44+static inline void viv_v4l2_fh_del(struct v4l2_fh *fh, struct file *file)
45+{
46+ v4l2_fh_del(fh);
47+ file->private_data = NULL;
48+}
49+
50+#define file_to_v4l2_fh(file) viv_file_to_v4l2_fh(file)
51+#else
52+#define viv_v4l2_fh_add(fh, file) v4l2_fh_add(fh, file)
53+#define viv_v4l2_fh_del(fh, file) v4l2_fh_del(fh, file)
54+#endif
55+
56 #define DEF_PLANE_NO (0)
57
58 static struct viv_video_device *vvdev[VIDEO_NODE_NUM];
59@@ -573,7 +597,7 @@ static int video_open(struct file *file)
60 handle = kzalloc(sizeof(*handle), GFP_KERNEL);
61
62 v4l2_fh_init(&handle->vfh, dev->video);
63- v4l2_fh_add(&handle->vfh, file);
64+ viv_v4l2_fh_add(&handle->vfh, file);
65
66 handle->vdev = dev;
67 handle->queue.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
68@@ -589,7 +613,7 @@ static int video_open(struct file *file)
69 rc = vb2_queue_init(&handle->queue);
70 if (rc) {
71 pr_err("can't init vb queue\n");
72- v4l2_fh_del(&handle->vfh, file);
73+ viv_v4l2_fh_del(&handle->vfh, file);
74 v4l2_fh_exit(&handle->vfh);
75 kfree(handle);
76 return rc;
77@@ -654,7 +678,7 @@ static int video_close(struct file *file)
78 vb2_buffer_done(vb, VB2_BUF_STATE_ERROR);
79 }
80
81- v4l2_fh_del(&handle->vfh, file);
82+ viv_v4l2_fh_del(&handle->vfh, file);
83 v4l2_fh_exit(&handle->vfh);
84
85 {
86--
872.43.0
88
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.25.4.bb b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.25.4.bb
deleted file mode 100644
index 2da42a7dc..000000000
--- a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.25.4.bb
+++ /dev/null
@@ -1,23 +0,0 @@
1# Copyright 2020-2023 NXP
2
3DESCRIPTION = "Kernel loadable module for ISP"
4LICENSE = "GPL-2.0-only"
5
6LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
7
8SRC_URI = "${ISP_KERNEL_SRC};branch=${SRCBRANCH}"
9ISP_KERNEL_SRC ?= "git://github.com/nxp-imx/isp-vvcam.git;protocol=https"
10SRCBRANCH = "lf-6.12.y_2.2.0"
11SRCREV = "ad057a15dd57e053e3596ae83b45ea96835acd3e"
12
13S = "${UNPACKDIR}/${BP}/vvcam/v4l2"
14
15inherit module
16
17MODULES_MODULE_SYMVERS_LOCATION = "dwe"
18
19DEBUG_PREFIX_MAP:prepend = " \
20 -fmacro-prefix-map=${WORKDIR}/sources=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
21 -fdebug-prefix-map=${WORKDIR}/sources=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} "
22
23COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.26.1.bb b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.26.1.bb
new file mode 100644
index 000000000..dfe55bc80
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-isp-vvcam_4.2.2.26.1.bb
@@ -0,0 +1,24 @@
1# Copyright 2020-2026 NXP
2
3DESCRIPTION = "Kernel loadable module for ISP"
4LICENSE = "GPL-2.0-only"
5LIC_FILES_CHKSUM = "file://${S}/../LICENSE;md5=64381a6ea83b48c39fe524c85f65fb44"
6
7SRC_URI = "${ISP_KERNEL_SRC};branch=${SRCBRANCH} \
8 file://0001-video-add-v4l2-fh-compat-for-pre-6.18-kernels.patch \
9"
10ISP_KERNEL_SRC ?= "git://github.com/nxp-imx/isp-vvcam.git;protocol=https"
11SRCBRANCH = "lf-6.18.y_1.0.0"
12SRCREV = "5484bc99a258562c3893808736dd67af22ac355e"
13
14S = "${UNPACKDIR}/${BP}/vvcam/v4l2"
15
16inherit module
17
18MODULES_MODULE_SYMVERS_LOCATION = "dwe"
19
20DEBUG_PREFIX_MAP:prepend = " \
21 -fmacro-prefix-map=${UNPACKDIR}/${BP}/vvcam=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
22 -fdebug-prefix-map=${UNPACKDIR}/${BP}/vvcam=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} "
23
24COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)"
diff --git a/recipes-kernel/kernel-modules/kernel-module-nxp-wlan/0001-mlinux-moal_main-fix-device-wakeup-capability.patch b/recipes-kernel/kernel-modules/kernel-module-nxp-wlan/0001-mlinux-moal_main-fix-device-wakeup-capability.patch
new file mode 100644
index 000000000..41ac4007a
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-nxp-wlan/0001-mlinux-moal_main-fix-device-wakeup-capability.patch
@@ -0,0 +1,52 @@
1From 6342842b69302ad5530b07d8390102b0648f4b9a Mon Sep 17 00:00:00 2001
2From: Franz Schnyder <franz.schnyder@toradex.com>
3Date: Thu, 21 May 2026 11:29:47 +0200
4Subject: [PATCH] mlinux: moal_main: fix device wakeup capability
5
6Currently, the device is always advertised as being capable of
7waking up, even if no interrupt line has been allocated for it.
8
9Initialize the device only as wakeup capable if an interrupt has been
10registered.
11
12Upstream-Status: Pending
13Signed-off-by: Franz Schnyder <franz.schnyder@toradex.com>
14---
15 mlinux/moal_main.c | 7 ++++++-
16 1 file changed, 6 insertions(+), 1 deletion(-)
17
18diff --git a/mlinux/moal_main.c b/mlinux/moal_main.c
19index 0214fc3..2d765b8 100644
20--- a/mlinux/moal_main.c
21+++ b/mlinux/moal_main.c
22@@ -14331,6 +14331,11 @@ void woal_regist_oob_wakeup_irq(moal_handle *handle)
23 goto err_exit;
24 }
25
26+ if (device_init_wakeup(dev, true)) {
27+ dev_err(dev, "Failed to init wakeup for mwifiex\n");
28+ goto err_exit;
29+ }
30+
31 disable_irq(handle->irq_oob_wakeup);
32
33 LEAVE();
34@@ -14353,6 +14358,7 @@ void woal_unregist_oob_wakeup_irq(moal_handle *handle)
35
36 ENTER();
37 if (handle->irq_oob_wakeup >= 0) {
38+ device_init_wakeup(dev, false);
39 devm_free_irq(dev, handle->irq_oob_wakeup, handle);
40 }
41 LEAVE();
42@@ -14829,7 +14835,6 @@ moal_handle *woal_add_card(void *card, struct device *dev, moal_if_ops *if_ops,
43 PRINTM(MFATAL, "Firmware Init Failed\n");
44 goto err_init_fw;
45 }
46- device_init_wakeup(dev, true);
47 #ifdef SD8887
48 if (IS_SD8887(handle->card_type)) {
49 if (handle->fw_release_number.minorRevNum == 75) {
50--
512.43.0
52
diff --git a/recipes-kernel/kernel-modules/kernel-module-nxp-wlan/mlinux-moal_main-lower-PRINTM_MMSG-log-level-to-KERN_INFO.patch b/recipes-kernel/kernel-modules/kernel-module-nxp-wlan/mlinux-moal_main-lower-PRINTM_MMSG-log-level-to-KERN_INFO.patch
deleted file mode 100644
index 72e75fd57..000000000
--- a/recipes-kernel/kernel-modules/kernel-module-nxp-wlan/mlinux-moal_main-lower-PRINTM_MMSG-log-level-to-KERN_INFO.patch
+++ /dev/null
@@ -1,33 +0,0 @@
1From f6079560bd0010a7f34bd18fec8fab4df65b22ea Mon Sep 17 00:00:00 2001
2From: Vitor Soares <vitor.soares@toradex.com>
3Date: Wed, 30 Apr 2025 15:12:06 +0100
4Subject: [PATCH] mlinux: moal_main: lower PRINTM_MMSG() log level to KERN_INFO
5
6Currently, the PRINTM_MMSG macro uses KERN_ALERT for printing messages.
7KERN_ALERT is intended for critical conditions requiring immediate
8attention (e.g., hardware failure), and using it for normal debug output
9is misleading and can clutter system logs.
10
11This patch lowers the log level to KERN_INFO, which is more appropriate
12for informational messages that are not indicative of system-critical
13failures.
14
15Upstream-Status: Inappropriate [upstream not accepting patches]
16Signed-off-by: Vitor Soares <vitor.soares@toradex.com>
17---
18 mlinux/moal_main.h | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21diff --git a/mlinux/moal_main.h b/mlinux/moal_main.h
22index 4328652..27121e0 100644
23--- a/mlinux/moal_main.h
24+++ b/mlinux/moal_main.h
25@@ -3529,7 +3529,7 @@ extern t_u32 drvdbg;
26 do { \
27 woal_print(MMSG, msg); \
28 if (drvdbg & MMSG) \
29- printk(KERN_ALERT msg); \
30+ printk(KERN_INFO msg); \
31 } while (0)
32
33 static inline void woal_print(t_u32 level, char *fmt, ...)
diff --git a/recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb b/recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb
index 48f1ad724..d22b643c7 100644
--- a/recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb
+++ b/recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bb
@@ -10,13 +10,13 @@ RCONFLICTS:${PN} = "kernel-module-nxp89xx"
10KERNEL_MODULE_PROBECONF += "moal" 10KERNEL_MODULE_PROBECONF += "moal"
11module_conf_moal = "options moal mod_para=nxp/wifi_mod_para.conf" 11module_conf_moal = "options moal mod_para=nxp/wifi_mod_para.conf"
12 12
13SRCBRANCH = "lf-6.12.49_2.2.0"
14MRVL_SRC ?= "git://github.com/nxp-imx/mwifiex.git;protocol=https"
15SRC_URI = " \ 13SRC_URI = " \
16 ${MRVL_SRC};branch=${SRCBRANCH} \ 14 ${MRVL_SRC};branch=${SRCBRANCH} \
17 file://mlinux-moal_main-lower-PRINTM_MMSG-log-level-to-KERN_INFO.patch \ 15 file://0001-mlinux-moal_main-fix-device-wakeup-capability.patch \
18" 16"
19SRCREV = "84ca65c9ff935d7f2999af100a82531c22c65234" 17MRVL_SRC ?= "git://github.com/nxp-imx/mwifiex.git;protocol=https"
18SRCBRANCH = "lf-6.18.2_1.0.0"
19SRCREV = "a5fe4e194bf99315e349d81d77d6dfacec70757a"
20 20
21inherit module 21inherit module
22 22
diff --git a/recipes-kernel/linux/linux-fslc-imx_6.12.bb b/recipes-kernel/linux/linux-fslc-imx_6.18.bb
index b3b0f190f..229ec1dcb 100644
--- a/recipes-kernel/linux/linux-fslc-imx_6.12.bb
+++ b/recipes-kernel/linux/linux-fslc-imx_6.18.bb
@@ -28,12 +28,12 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
28# ------------------------------------------------------------------------------ 28# ------------------------------------------------------------------------------
29# 1. Stable (tag or SHA(s)) 29# 1. Stable (tag or SHA(s))
30# ------------------------------------------------------------------------------ 30# ------------------------------------------------------------------------------
31# tag: v6.12.3 31# tag: v6.18.24
32# 32#
33# ------------------------------------------------------------------------------ 33# ------------------------------------------------------------------------------
34# 2. NXP-specific (tag or SHA(s)) 34# 2. NXP-specific (tag or SHA(s))
35# ------------------------------------------------------------------------------ 35# ------------------------------------------------------------------------------
36# tag: lf-6.12.3-1.0.0 36# tag: lf-6.18-1.0.x-imx
37# 37#
38# ------------------------------------------------------------------------------ 38# ------------------------------------------------------------------------------
39# 3. Critical patches (SHA(s)) 39# 3. Critical patches (SHA(s))
@@ -42,22 +42,15 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
42# conflicts, prioritizing NXP BSP source code as the latest vendor updates. 42# conflicts, prioritizing NXP BSP source code as the latest vendor updates.
43# Additional commits may exist to better acommodate yocto builds. 43# Additional commits may exist to better acommodate yocto builds.
44# 44#
45# $ git log --oneline --no-merges v6.12.49.. ^mainline/linux-6.12.y ^NXP/lf-6.12.y 45# $ git log --oneline --no-merges v6.18.24.. ^mainline/linux-6.18.y ^NXP/lf-6.18.y
46# - bacd5504126bb imx8mp-olimex.dts: CSI GPIO pins 46# - 6e811374f6340 drm/imx: lcdifv3: Fix videomode settings
47# - 3a7012e991c98 hwrng: optee: support generic crypto 47# - 40b594773feaf drm: of: Fix build without CONFIG_OF
48# - 6c0a3377748eb arm64: dts: imx8mq: drop cpu-idle-states 48# - 40d5cc16c304a arm64: dts: imx8mm-evk-qca-wifi: enable support for bluetooth
49# - 7db0692d9ff5e of: enable using OF_DYNAMIC without OF_UNITTEST 49# - eff109d884f3b gpu: drm: cadence: select hdmi helper
50# - eff98b934385c gpu: drm: cadence: select hdmi helper 50# - ddfe8741dab43 of: enable using OF_DYNAMIC without OF_UNITTEST
51# - be5e175e43d93 imx:dts:imx8mm-evkb: fix the pmic name to avoid duplicated label error 51# - 1b982f1a29bbc arm64: dts: imx8mq: drop cpu-idle-states
52# - 76e18f5a57b3e arm64: dts: imx8mm-evk-qca-wifi: enable support for bluetooth 52# - de4b96e987407 hwrng: optee: support generic crypto
53# - 06b99391f850c drm: of: Fix build without CONFIG_OF 53
54# - 17ac89e381a9d i2c: imx: Remove unnecessary clock reconfiguration
55# - 6d157e81ccc53 drm/imx: lcdifv3: Fix videomode settings
56# - 0a355239e2df3 clk: imx: imx8qm: add more resources to whitelist
57# - c5c4869899b1c arm64: dts: imx8: img: add #address-cells and #size-cells to I2C MIPI CSI nodes
58# - 3159e7d086295 arm64: dts: imx8qm: add missing imx8-ss-cm40.dtsi include
59# - ffea393034d48 arm64: imx_v8_defconfig: Enable CONFIG_GPIO_VF610
60# - a8762ad609202 imx8mp-olimex.dts: Olimex iMX8MP-SOM-EVB-IND
61# 54#
62# NOTE to upgraders: 55# NOTE to upgraders:
63# This recipe should NOT collect individual patches, they should be applied to 56# This recipe should NOT collect individual patches, they should be applied to
@@ -67,16 +60,16 @@ Latest stable Kernel patchlevel is applied and maintained by Community."
67 60
68require linux-imx.inc 61require linux-imx.inc
69 62
70KBRANCH = "6.12-2.0.x-imx" 63KBRANCH = "6.18-1.0.x-imx"
71SRC_URI = "git://github.com/Freescale/linux-fslc.git;branch=${KBRANCH};protocol=https" 64SRC_URI = "git://github.com/Freescale/linux-fslc.git;branch=${KBRANCH};protocol=https"
72SRCREV = "77b58422ab0fa4480a0b89a5f1ebfb9d1a900aef" 65SRCREV = "1d08c2fc5b376a84a3e7092651289fb8e8ffc1af"
73 66
74# PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition 67# PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition
75# required by kernel-yocto.bbclass. 68# required by kernel-yocto.bbclass.
76# 69#
77# LINUX_VERSION define should match to the kernel version referenced by SRC_URI and 70# LINUX_VERSION define should match to the kernel version referenced by SRC_URI and
78# should be updated once patchlevel is merged. 71# should be updated once patchlevel is merged.
79LINUX_VERSION = "6.12.49" 72LINUX_VERSION = "6.18.24"
80 73
81KBUILD_DEFCONFIG:mx6-generic-bsp = "imx_v7_defconfig" 74KBUILD_DEFCONFIG:mx6-generic-bsp = "imx_v7_defconfig"
82KBUILD_DEFCONFIG:mx7-generic-bsp = "imx_v7_defconfig" 75KBUILD_DEFCONFIG:mx7-generic-bsp = "imx_v7_defconfig"
@@ -84,7 +77,7 @@ KBUILD_DEFCONFIG:mx8-generic-bsp = "imx_v8_defconfig"
84KBUILD_DEFCONFIG:mx9-generic-bsp = "imx_v8_defconfig" 77KBUILD_DEFCONFIG:mx9-generic-bsp = "imx_v8_defconfig"
85 78
86# Local version indicates the branch name in the NXP kernel tree where patches are collected from. 79# Local version indicates the branch name in the NXP kernel tree where patches are collected from.
87LOCALVERSION = "-lf-6.12.y" 80LOCALVERSION = "-lf-6.18.y"
88 81
89DEFAULT_PREFERENCE = "1" 82DEFAULT_PREFERENCE = "1"
90 83
diff --git a/recipes-kernel/linux/linux-imx-headers/0001-ipu-uapi-Do-not-redefine-standard-integer-types.patch b/recipes-kernel/linux/linux-imx-headers/0001-ipu-uapi-Do-not-redefine-standard-integer-types.patch
new file mode 100644
index 000000000..cf2b95f74
--- /dev/null
+++ b/recipes-kernel/linux/linux-imx-headers/0001-ipu-uapi-Do-not-redefine-standard-integer-types.patch
@@ -0,0 +1,42 @@
1From 76a44c7b7913daf987a315f77f0c0b1e67a71aeb Mon Sep 17 00:00:00 2001
2From: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
3Date: Thu, 30 Apr 2026 10:52:00 +0200
4Subject: [PATCH] ipu: uapi: Do not redefine standard integer types
5
6The exported IPU UAPI header defines uint32_t, uint16_t and uint8_t as
7preprocessor macros. This breaks userspace builds when another header is
8included afterwards and uses the standard integer type names, because
9the macros rewrite those declarations.
10
11The header itself only needs the local u32 and u8 aliases. Keep those
12aliases mapped to the __u32 and __u8 types provided by linux/types.h,
13and leave the standard uint*_t namespace untouched.
14
15Upstream-Status: Submitted [https://community.nxp.com/t5/i-MX-Processors/linux-imx-include-uapi-linux-ipu-h-redefines-standard-integer/m-p/2359396]
16Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
17---
18 include/uapi/linux/ipu.h | 8 ++------
19 1 file changed, 2 insertions(+), 6 deletions(-)
20
21diff --git a/include/uapi/linux/ipu.h b/include/uapi/linux/ipu.h
22index 7bdac34bd1f0..e49430b0c938 100644
23--- a/include/uapi/linux/ipu.h
24+++ b/include/uapi/linux/ipu.h
25@@ -38,12 +38,8 @@ typedef unsigned char bool;
26 #endif
27 #define irqreturn_t int
28 #define dma_addr_t int
29-#define uint32_t unsigned int
30-#define uint16_t unsigned short
31-#define uint8_t unsigned char
32-#define u32 unsigned int
33-#define u8 unsigned char
34-#define __u32 u32
35+#define u32 __u32
36+#define u8 __u8
37 #endif
38
39 /*!
40--
412.43.0
42
diff --git a/recipes-kernel/linux/linux-imx-headers_6.18.bb b/recipes-kernel/linux/linux-imx-headers_6.18.bb
index c6a3786c9..b6d7f8eb8 100644
--- a/recipes-kernel/linux/linux-imx-headers_6.18.bb
+++ b/recipes-kernel/linux/linux-imx-headers_6.18.bb
@@ -7,7 +7,9 @@ New headers are installed in ${includedir}/imx."
7LICENSE = "GPL-2.0-only" 7LICENSE = "GPL-2.0-only"
8LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" 8LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
9 9
10SRC_URI = "${LINUX_IMX_SRC}" 10SRC_URI = "${LINUX_IMX_SRC} \
11 file://0001-ipu-uapi-Do-not-redefine-standard-integer-types.patch \
12"
11LINUX_IMX_SRC ?= "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}" 13LINUX_IMX_SRC ?= "git://github.com/nxp-imx/linux-imx.git;protocol=https;branch=${SRCBRANCH}"
12SRCBRANCH = "lf-6.18.y" 14SRCBRANCH = "lf-6.18.y"
13LOCALVERSION = "-lts-${SRCBRANCH}" 15LOCALVERSION = "-lts-${SRCBRANCH}"
diff --git a/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack/0001-ethosu.hpp-Fix-gcc15-build-issues.patch b/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack/0001-ethosu.hpp-Fix-gcc15-build-issues.patch
new file mode 100644
index 000000000..c5a0bc1cb
--- /dev/null
+++ b/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack/0001-ethosu.hpp-Fix-gcc15-build-issues.patch
@@ -0,0 +1,32 @@
1From f1e283f16dc6d38552be6e691fbb2eed32a560cc Mon Sep 17 00:00:00 2001
2From: Markus Niebel <Markus.Niebel@ew.tq-group.com>
3Date: Tue, 19 May 2026 17:50:31 +0200
4Subject: [PATCH] ethosu.hpp: Fix gcc15 build issues
5
6https://gcc.gnu.org/gcc-15/porting_to.html#cxx
7Some C++ Standard Library headers are no longer
8including other headers that were being used
9internally by the library.
10
11Upstream-Status: Pending
12
13Signed-off-by: Markus Niebel <Markus.Niebel@ew.tq-group.com>
14---
15 driver_library/include/ethosu.hpp | 1 +
16 1 file changed, 1 insertion(+)
17
18diff --git a/driver_library/include/ethosu.hpp b/driver_library/include/ethosu.hpp
19index f8f7598..977a716 100644
20--- a/driver_library/include/ethosu.hpp
21+++ b/driver_library/include/ethosu.hpp
22@@ -19,6 +19,7 @@
23 #pragma once
24
25 #include <algorithm>
26+#include <cstdint>
27 #include <iostream>
28 #include <memory>
29 #include <string>
30--
312.43.0
32
diff --git a/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb b/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb
index ae762cb9a..b3aae7d46 100644
--- a/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb
+++ b/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_24.05.bb
@@ -8,10 +8,13 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e"
8 8
9DEPENDS = "flatbuffers python3-pybind11 python3-pybind11-native" 9DEPENDS = "flatbuffers python3-pybind11 python3-pybind11-native"
10 10
11SRC_URI = "${ETHOS_U_SRC};branch=${SRCBRANCH}" 11SRC_URI = "${ETHOS_U_SRC};branch=${SRCBRANCH} \
12 file://0001-ethosu.hpp-Fix-gcc15-build-issues.patch \
13"
14
12ETHOS_U_SRC ?= "git://github.com/nxp-imx/ethos-u-driver-stack-imx.git;protocol=https" 15ETHOS_U_SRC ?= "git://github.com/nxp-imx/ethos-u-driver-stack-imx.git;protocol=https"
13SRCBRANCH = "lf-6.12.3_1.0.0" 16SRCBRANCH = "lf-6.18.2_1.0.0"
14SRCREV = "a80c51d77c91f1a8266afc5d8056fb981de4b504" 17SRCREV = "94658d758ef1116e574aa7cf16f96c9546fe932e"
15 18
16inherit cmake setuptools3 19inherit cmake setuptools3
17 20
diff --git a/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb b/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb
index 1f16dce90..7a6fb5aa7 100644
--- a/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb
+++ b/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_24.05.bb
@@ -9,8 +9,8 @@ LIC_FILES_CHKSUM = "\
9 9
10SRC_URI = "${ETHOS_U_FIRMWARE_SRC};branch=${SRCBRANCH}" 10SRC_URI = "${ETHOS_U_FIRMWARE_SRC};branch=${SRCBRANCH}"
11ETHOS_U_FIRMWARE_SRC ?= "git://github.com/nxp-imx/ethos-u-firmware.git;protocol=https" 11ETHOS_U_FIRMWARE_SRC ?= "git://github.com/nxp-imx/ethos-u-firmware.git;protocol=https"
12SRCBRANCH = "lf-6.12.3_1.0.0" 12SRCBRANCH = "lf-6.18.2_1.0.0"
13SRCREV = "3dbedc11bd2a4ba56af9fbe9d285b5bf13f1a088" 13SRCREV = "5c14790b7ed63a52afd2ba6d917070e4c7b4265e"
14 14
15ETHOS_U_FIRMWARE = "ethosu_firmware" 15ETHOS_U_FIRMWARE = "ethosu_firmware"
16ETHOS_U_FIRMWARE:imx93-9x9-lpddr4-qsb = "ethosu_firmware_9x9" 16ETHOS_U_FIRMWARE:imx93-9x9-lpddr4-qsb = "ethosu_firmware_9x9"
diff --git a/recipes-multimedia/alsa/imx-alsa-plugins_git.bb b/recipes-multimedia/alsa/imx-alsa-plugins_git.bb
index d38e97e8f..fabbbb4ff 100644
--- a/recipes-multimedia/alsa/imx-alsa-plugins_git.bb
+++ b/recipes-multimedia/alsa/imx-alsa-plugins_git.bb
@@ -1,5 +1,5 @@
1# Copyright 2013-2016 Freescale Semiconductor 1# Copyright 2013-2016 Freescale Semiconductor
2# Copyright 2017-2025 NXP 2# Copyright 2017-2026 NXP
3# Released under the MIT license (see COPYING.MIT for the terms) 3# Released under the MIT license (see COPYING.MIT for the terms)
4 4
5DESCRIPTION = "Freescale alsa-lib plugins" 5DESCRIPTION = "Freescale alsa-lib plugins"
@@ -19,9 +19,10 @@ inherit autotools pkgconfig use-imx-headers
19 19
20PV = "1.0.26+${SRCPV}" 20PV = "1.0.26+${SRCPV}"
21 21
22SRC_URI = "git://github.com/nxp-imx/imx-alsa-plugins.git;protocol=https;branch=${SRCBRANCH}" 22SRC_URI = "${IMXALSA_SRC};branch=${SRCBRANCH}"
23SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 23IMXALSA_SRC ?= "git://github.com/nxp-imx/imx-alsa-plugins.git;protocol=https"
24SRCREV = "40e45c8023f95c06c4ea10185ca85db7eb2dfcd8" 24SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
25SRCREV = "18eb79b6cf13fb988de7d4eef5b22eb60f8e2533"
25 26
26CFLAGS:append = " -I${STAGING_INCDIR_IMX}" 27CFLAGS:append = " -I${STAGING_INCDIR_IMX}"
27 28
diff --git a/recipes-multimedia/gstreamer/gst-devtools_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gst-devtools_1.26.6.bb
index 9a619f5a0..ddbe334db 100644
--- a/recipes-multimedia/gstreamer/gst-devtools_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gst-devtools_1.26.6.bb
@@ -6,13 +6,13 @@ SECTION = "multimedia"
6LICENSE = "LGPL-2.1-or-later" 6LICENSE = "LGPL-2.1-or-later"
7LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" 7LIC_FILES_CHKSUM = "file://validate/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
8 8
9SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${@get_gst_ver("${PV}")}.tar.xz \ 9#S = "${WORKDIR}/gst-devtools-${PV}"
10
11SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}.tar.xz \
10 file://0001-connect-has-a-different-signature-on-musl.patch \ 12 file://0001-connect-has-a-different-signature-on-musl.patch \
11 " 13 "
12 14
13S = "${UNPACKDIR}/gst-devtools-${@get_gst_ver("${PV}")}" 15SRC_URI[sha256sum] = "dec8fc56d578d65c498e65e56efe44994c5d3f4e85dbbdff0242b441b32e19b2"
14
15SRC_URI[sha256sum] = "eff33d7dc292bb074a2788ea887b6283398ffdefafa49fb7d08efe6658a65648"
16 16
17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base" 17DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
18RRECOMMENDS:${PN} = "git" 18RRECOMMENDS:${PN} = "git"
@@ -40,9 +40,6 @@ EXTRA_OEMESON += " \
40 -Dvalidate=enabled \ 40 -Dvalidate=enabled \
41 ${@gettext_oemeson(d)} \ 41 ${@gettext_oemeson(d)} \
42" 42"
43# Drop .imx from PV
44def get_gst_ver(v):
45 return oe.utils.trim_version(v, 3)
46 43
47do_install:append () { 44do_install:append () {
48 for fn in ${bindir}/gst-validate-launcher \ 45 for fn in ${bindir}/gst-validate-launcher \
@@ -53,3 +50,10 @@ do_install:append () {
53 50
54GIR_MESON_ENABLE_FLAG = "enabled" 51GIR_MESON_ENABLE_FLAG = "enabled"
55GIR_MESON_DISABLE_FLAG = "disabled" 52GIR_MESON_DISABLE_FLAG = "disabled"
53
54########### i.MX overrides ################
55
56EXTRA_OEMESON:append:mx93-nxp-bsp = " -Dintrospection=disabled "
57EXTRA_OEMESON:append:mx943-nxp-bsp = " -Dintrospection=disabled "
58
59########### End of i.MX overrides #########
diff --git a/recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb b/recipes-multimedia/gstreamer/gst-examples_1.26.6.bb
index 9db0051a1..2b31df7df 100644
--- a/recipes-multimedia/gstreamer/gst-examples_1.24.7.imx.bb
+++ b/recipes-multimedia/gstreamer/gst-examples_1.26.6.bb
@@ -1,8 +1,8 @@
1# This builds an older version which is compatible with the gstreamer NXP fork 1.24.7.imx, 1#copy from openembedded-core layer: https://github.com/openembedded/openembedded-core/blob/whinlatter/meta/recipes-multimedia/gstreamer
2# thus the version is appended with '.imx' 2# downgrade version to compatible imx gstreamer version
3 3
4SUMMARY = "GStreamer examples (including gtk-play, gst-play)" 4SUMMARY = "GStreamer examples (including gtk-play, gst-play)"
5DESCRIPTION = "GStreamer example applications." 5DESCRIPTION = "GStreamer example applications"
6HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples" 6HOMEPAGE = "https://gitlab.freedesktop.org/gstreamer/gst-examples"
7BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues" 7BUGTRACKER = "https://gitlab.freedesktop.org/gstreamer/gst-examples/-/issues"
8LICENSE = "LGPL-2.0-or-later" 8LICENSE = "LGPL-2.0-or-later"
@@ -10,18 +10,21 @@ LIC_FILES_CHKSUM = "file://playback/player/gtk/gtk-play.c;beginline=1;endline=20
10 10
11DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 json-glib glib-2.0-native" 11DEPENDS = "glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad gtk+3 json-glib glib-2.0-native"
12 12
13SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gstreamer.git;protocol=https;branch=1.24 \ 13SRC_URI = "git://gitlab.freedesktop.org/gstreamer/gstreamer.git;protocol=https;branch=1.26;tag=${PV} \
14 file://0001-Make-player-examples-installable.patch \ 14 file://0001-Make-player-examples-installable.patch \
15 file://gst-player.desktop \ 15 file://gst-player.desktop \
16 " 16 "
17 17
18SRCREV = "0f1e984e41ce8d6d0758265d35e8b10d5815fde2" 18SRCREV = "6cbdcfaca66dd52cdc4670d6f5122c68b9161170"
19 19
20S = "${UNPACKDIR}/${BP}/subprojects/gst-examples" 20S = "${UNPACKDIR}/${BP}/subprojects/gst-examples"
21 21
22inherit meson pkgconfig features_check 22inherit meson pkgconfig features_check
23 23
24UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)" 24# gtk-play has runtime errors otherwise
25TARGET_LDFLAGS += "-rdynamic"
26
27UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)"
25 28
26ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" 29ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
27 30
diff --git a/recipes-multimedia/gstreamer/gst-variable-rtsp-server_1.0.bb b/recipes-multimedia/gstreamer/gst-variable-rtsp-server_1.0.bb
new file mode 100644
index 000000000..96a7ce6ab
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gst-variable-rtsp-server_1.0.bb
@@ -0,0 +1,25 @@
1# Copyright (C) 2017 NXP Semiconductor
2
3SUMMARY = "RTSP server for live-stream from a v4l2 video source"
4HOMEPAGE = "https://github.com/Gateworks/gst-gateworks-apps"
5SECTION = "multimedia"
6
7LICENSE = "GPL-3.0-only"
8
9inherit pkgconfig
10
11DEPENDS = "gstreamer1.0 gstreamer1.0-rtsp-server glib-2.0"
12
13LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
14
15SRC_URI = " \
16 git://github.com/Gateworks/gst-gateworks-apps;branch=master;protocol=https \
17"
18
19SRCREV = "490564815d8049dbdd79087f546835b673ba6e88"
20
21
22do_install() {
23 install -m 0755 -D ${S}/bin/gst-variable-rtsp-server \
24 ${D}/${bindir}/gst-variable-rtsp-server
25}
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.6.bb
index 138398d85..e7a4a7dea 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.26.6.bb
@@ -11,10 +11,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
11 file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \ 11 file://ext/libav/gstav.h;beginline=1;endline=18;md5=a752c35267d8276fd9ca3db6994fca9c \
12 " 12 "
13 13
14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${@get_gst_ver('${PV}')}.tar.xz" 14SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz"
15SRC_URI[sha256sum] = "707a8b687ff5fddcee5b02415e2ec9b71b4ac44d0b7aec3b477364ceecbf1ecf" 15SRC_URI[sha256sum] = "6e50a6222d509c52b19143f9a7bd3581e22c745d0c4bc27ddb07e1229bcc11b8"
16 16
17S = "${UNPACKDIR}/gst-libav-${@get_gst_ver('${PV}')}" 17S = "${UNPACKDIR}/gst-libav-${PV}"
18 18
19DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg" 19DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base ffmpeg"
20 20
@@ -24,11 +24,5 @@ EXTRA_OEMESON += " \
24 -Dtests=disabled \ 24 -Dtests=disabled \
25" 25"
26 26
27# Drop .imx from PV
28def get_gst_ver(v):
29 return oe.utils.trim_version(v, 3)
30
31FILES:${PN} += "${libdir}/gstreamer-1.0/*.so" 27FILES:${PN} += "${libdir}/gstreamer-1.0/*.so"
32FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" 28FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a"
33
34COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-MMFMWK-9590-gstcuda-disable-gir-build-for-cuda-plugi.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-MMFMWK-9590-gstcuda-disable-gir-build-for-cuda-plugi.patch
new file mode 100644
index 000000000..38282e478
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-MMFMWK-9590-gstcuda-disable-gir-build-for-cuda-plugi.patch
@@ -0,0 +1,30 @@
1From 71b5b04685e6b03b7e2325fed22c83d9c6300f65 Mon Sep 17 00:00:00 2001
2From: Haihua Hu <jared.hu@nxp.com>
3Date: Fri, 6 Feb 2026 17:32:34 +0900
4Subject: [PATCH] MMFMWK-9590 gstcuda: disable gir build for cuda plugin
5 libraries
6
7This is a workaround to only disable cuda gir build to avoid totally
8disable bad library gir build. mesa-rvgpu-emu patch break cuda gir build
9
10Upstream-Status: Inappropriate [i.MX specific]
11---
12 gst-libs/gst/cuda/meson.build | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/gst-libs/gst/cuda/meson.build b/gst-libs/gst/cuda/meson.build
16index 50ae0276ce..5e8a3d209b 100644
17--- a/gst-libs/gst/cuda/meson.build
18+++ b/gst-libs/gst/cuda/meson.build
19@@ -157,7 +157,7 @@ gstcuda= library('gstcuda-' + api_version,
20
21 gen_sources = []
22 library_def = {'lib': gstcuda}
23-if build_gir
24+if false
25 gir_includes = ['Gst-1.0', 'GstBase-1.0', 'GstVideo-1.0', 'CudaGst-1.0']
26 if gstglproto_dep.found()
27 gir_includes += ['GstGL-1.0']
28--
292.34.1
30
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
new file mode 100644
index 000000000..029b80e17
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch
@@ -0,0 +1,33 @@
1From 3bc5d48257032b6bbee532aad15062fbbcc43bfe Mon Sep 17 00:00:00 2001
2From: Andrey Zhizhikin <andrey.z@gmail.com>
3Date: Mon, 27 Jan 2020 10:22:35 +0000
4Subject: [PATCH] opencv: resolve missing opencv data dir in yocto build
5
6When Yocto build is performed, opencv searches for data dir using simple
7'test' command, this fails because pkg-config provides an absolute
8path on the target which needs to be prepended by PKG_CONFIG_SYSROOT_DIR
9in order for the 'test' utility to pick up the absolute path.
10
11Upstream-Status: Inappropriate [OE-specific]
12
13Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
14Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
15
16---
17 ext/opencv/meson.build | 3 +++
18 1 file changed, 3 insertions(+)
19
20diff --git a/ext/opencv/meson.build b/ext/opencv/meson.build
21index 1d86b90..b5c8b95 100644
22--- a/ext/opencv/meson.build
23+++ b/ext/opencv/meson.build
24@@ -87,6 +87,9 @@ if opencv_found
25 opencv_prefix = opencv_dep.get_variable('prefix')
26 gstopencv_cargs += ['-DOPENCV_PREFIX="' + opencv_prefix + '"']
27
28+ pkgconf_sysroot = run_command(python3, '-c', 'import os; print(os.environ.get("PKG_CONFIG_SYSROOT_DIR"))').stdout().strip()
29+ opencv_prefix = pkgconf_sysroot + opencv_prefix
30+
31 # Check the data dir used by opencv for its xml data files
32 # Use prefix from pkg-config to be compatible with cross-compilation
33 r = run_command('test', '-d', opencv_prefix + '/share/opencv', check: false)
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.6.imx.bb
index 1c4ee72d0..36db56eb8 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.26.6.imx.bb
@@ -5,8 +5,8 @@
5########### OE-core copy ################## 5########### OE-core copy ##################
6# Upstream hash: 937817e5164f8af8452aec03ae3c45cb23d63df9 6# Upstream hash: 937817e5164f8af8452aec03ae3c45cb23d63df9
7 7
8require gstreamer1.0-plugins-common.inc 8require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
9require gstreamer1.0-plugins-license.inc 9require recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
10 10
11SUMMARY = "'Bad' GStreamer plugins and helper libraries " 11SUMMARY = "'Bad' GStreamer plugins and helper libraries "
12HOMEPAGE = "https://gstreamer.freedesktop.org/" 12HOMEPAGE = "https://gstreamer.freedesktop.org/"
@@ -19,8 +19,6 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad
19 " 19 "
20SRC_URI[sha256sum] = "e64e75cdafd7ff2fc7fc34e855b06b1e3ed227cc06fa378d17bbcd76780c338c" 20SRC_URI[sha256sum] = "e64e75cdafd7ff2fc7fc34e855b06b1e3ed227cc06fa378d17bbcd76780c338c"
21 21
22S = "${WORKDIR}/gst-plugins-bad-${PV}"
23
24LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later" 22LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
25LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" 23LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
26 24
@@ -181,16 +179,18 @@ DEFAULT_PREFERENCE = "-1"
181LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=69333daa044cb77e486cc36129f7a770" 179LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=69333daa044cb77e486cc36129f7a770"
182 180
183SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ 181SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \
184 file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ 182 file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \
185 file://0002-avoid-including-sys-poll.h-directly.patch \ 183 file://0002-avoid-including-sys-poll.h-directly.patch \
186 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ 184 file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
187 " 185 "
188SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} " 186SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} "
189GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https"
190SRCBRANCH = "MM_04.10.0_2505_L6.12.20"
191SRCREV = "4320364e6be53cae81ac2bca3ce0e09cf8707590"
192 187
193S = "${UNPACKDIR}/${BP}" 188SRC_URI:append:mx93-nxp-bsp = "file://0001-MMFMWK-9590-gstcuda-disable-gir-build-for-cuda-plugi.patch"
189SRC_URI:append:mx943-nxp-bsp = "file://0001-MMFMWK-9590-gstcuda-disable-gir-build-for-cuda-plugi.patch"
190
191GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https"
192SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
193SRCREV = "81b6888efe936153b88c32b22a12d60bf9395054"
194 194
195inherit use-imx-headers 195inherit use-imx-headers
196 196
@@ -202,6 +202,8 @@ PACKAGECONFIG_REMOVE ?= " \
202 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', 'gl', d)} \ 202 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', '', 'gl', d)} \
203" 203"
204PACKAGECONFIG:remove = "${PACKAGECONFIG_REMOVE}" 204PACKAGECONFIG:remove = "${PACKAGECONFIG_REMOVE}"
205PACKAGECONFIG:remove:mx93-nxp-bsp = "gl"
206PACKAGECONFIG:remove:mx943-nxp-bsp = "gl"
205PACKAGECONFIG:append:mx8-nxp-bsp = " kms tinycompress" 207PACKAGECONFIG:append:mx8-nxp-bsp = " kms tinycompress"
206 208
207PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D}" 209PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D}"
@@ -220,4 +222,5 @@ EXTRA_OEMESON:remove = " \
220" 222"
221 223
222COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 224COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
225
223########### End of i.MX overrides ######### 226########### End of i.MX overrides #########
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-9590-gstgl-1.0-disable-gir-build-for-gl-plugi.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-9590-gstgl-1.0-disable-gir-build-for-gl-plugi.patch
new file mode 100644
index 000000000..3f709d84f
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/0001-MMFMWK-9590-gstgl-1.0-disable-gir-build-for-gl-plugi.patch
@@ -0,0 +1,67 @@
1From f85821d405ba287acc01b1c80205470f086b3d61 Mon Sep 17 00:00:00 2001
2From: Haihua Hu <jared.hu@nxp.com>
3Date: Fri, 6 Feb 2026 15:12:52 +0900
4Subject: [PATCH 1/5] MMFMWK-9590 gstgl-1.0: disable gir build for gl plugin
5 libraries
6
7This is a workaround to only display gl gir build to avoid totally
8disable base library gir build. mesa-rvgpu-emu patch break gl gir
9build
10
11Upstream-Status: Inappropriate [i.MX specific]
12---
13 gst-libs/gst/gl/meson.build | 10 +++++-----
14 1 file changed, 5 insertions(+), 5 deletions(-)
15
16diff --git a/gst-libs/gst/gl/meson.build b/gst-libs/gst/gl/meson.build
17index 837cf484e..ef981c8e3 100644
18--- a/gst-libs/gst/gl/meson.build
19+++ b/gst-libs/gst/gl/meson.build
20@@ -1193,7 +1193,7 @@ if build_gstgl
21 description : 'Streaming media framework, OpenGL plugins libraries (OpenGL Prototypes)',
22 )
23
24- if build_gir
25+ if false
26 gir = {
27 'sources' : gl_sources + [gl_enumtypes_h] + [gl_enumtypes_c] + gir_gl_headers,
28 'namespace' : 'GstGL',
29@@ -1239,7 +1239,7 @@ if build_gstgl
30 description : 'Streaming media framework, OpenGL plugins libraries (X11 specifics)',
31 )
32 gl_x11_gir = []
33- if build_gir
34+ if false
35
36 doc_sources = []
37 foreach s: gl_x11_sources + gl_x11_headers
38@@ -1286,7 +1286,7 @@ if build_gstgl
39 description : 'Streaming media framework, OpenGL plugins libraries (Wayland specifics)',
40 )
41 gl_wayland_gir = []
42- if build_gir
43+ if false
44 doc_sources = []
45 foreach s: gl_wayland_sources + gl_wayland_headers
46 doc_sources += s.full_path()
47@@ -1331,7 +1331,7 @@ if build_gstgl
48 description : 'Streaming media framework, OpenGL plugins libraries (EGL specifics)',
49 )
50 gl_egl_gir = []
51- if build_gir
52+ if false
53 gir = {
54 'sources' : gl_egl_sources + gl_egl_headers,
55 'namespace' : 'GstGLEGL',
56@@ -1367,7 +1367,7 @@ if build_gstgl
57 description : 'Streaming media framework, OpenGL plugins libraries (Vivante Framebuffer specifics)',
58 )
59 gl_viv_fb_gir = []
60- if build_gir
61+ if false
62 gir = {
63 'sources' : gl_viv_fb_sources + gl_viv_fb_headers,
64 'namespace' : 'GstGLVivFB',
65--
662.34.1
67
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bb
index 5c2492638..0cfa8c064 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bb
@@ -5,7 +5,7 @@
5########### OE-core copy ################## 5########### OE-core copy ##################
6# Upstream hash: 937817e5164f8af8452aec03ae3c45cb23d63df9 6# Upstream hash: 937817e5164f8af8452aec03ae3c45cb23d63df9
7 7
8require gstreamer1.0-plugins-common.inc 8require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
9 9
10SUMMARY = "'Base' GStreamer plugins and helper libraries" 10SUMMARY = "'Base' GStreamer plugins and helper libraries"
11HOMEPAGE = "https://gstreamer.freedesktop.org/" 11HOMEPAGE = "https://gstreamer.freedesktop.org/"
@@ -20,8 +20,6 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-ba
20 " 20 "
21SRC_URI[sha256sum] = "edd4338b45c26a9af28c0d35aab964a024c3884ba6f520d8428df04212c8c93a" 21SRC_URI[sha256sum] = "edd4338b45c26a9af28c0d35aab964a024c3884ba6f520d8428df04212c8c93a"
22 22
23S = "${WORKDIR}/gst-plugins-base-${PV}"
24
25DEPENDS += "iso-codes util-linux zlib" 23DEPENDS += "iso-codes util-linux zlib"
26 24
27inherit gobject-introspection 25inherit gobject-introspection
@@ -117,11 +115,12 @@ SRC_URI:remove = " \
117 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch" 115 file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch"
118SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} " 116SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} "
119 117
120GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https" 118SRC_URI:append:mx93-nxp-bsp = "file://0001-MMFMWK-9590-gstgl-1.0-disable-gir-build-for-gl-plugi.patch"
121SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 119SRC_URI:append:mx943-nxp-bsp = "file://0001-MMFMWK-9590-gstgl-1.0-disable-gir-build-for-gl-plugi.patch"
122SRCREV = "bbe6aa6f5b666fda0b172c3e1f417c7eadb16549"
123 120
124S = "${UNPACKDIR}/${BP}" 121GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https"
122SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
123SRCREV = "48718c61610e3628f3f162bb8d84ae213ae8516f"
125 124
126inherit use-imx-headers 125inherit use-imx-headers
127 126
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bbappend
index 528d7e1a3..528d7e1a3 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.0.imx.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.26.6.imx.bbappend
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
deleted file mode 100644
index 54dd92873..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
+++ /dev/null
@@ -1,47 +0,0 @@
1# This .inc file contains the common setup for the gstreamer1.0-plugins-*
2# plugin set recipes.
3
4# SUMMARY is set in the actual .bb recipes
5HOMEPAGE = "https://gstreamer.freedesktop.org/"
6BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
7SECTION = "multimedia"
8
9DEPENDS = "gstreamer1.0 glib-2.0-native"
10
11inherit gettext meson pkgconfig upstream-version-is-even
12
13require gstreamer1.0-plugins-packaging.inc
14
15# Orc enables runtime JIT compilation of data processing routines from Orc
16# bytecode to SIMD instructions for various architectures (currently SSE, MMX,
17# MIPS, Altivec and NEON are supported).
18# This value is used in the PACKAGECONFIG values for each plugin set recipe.
19# By modifying it, Orc can be enabled/disabled in all of these recipes at once.
20GSTREAMER_ORC ?= "orc"
21# workaround to disable orc on mips to fix the build failure
22# {standard input}: Assembler messages:
23# {standard input}:46587: Error: branch out of range
24GSTREAMER_ORC:mips = ""
25PACKAGECONFIG[orc] = "-Dorc=enabled,-Dorc=disabled,orc orc-native"
26
27# TODO: put this in a gettext.bbclass patch (with variables to allow for
28# configuring the option name and the enabled/disabled values).
29def gettext_oemeson(d):
30 if d.getVar('USE_NLS') == 'no':
31 return '-Dnls=disabled'
32 # Remove the NLS bits if USE_NLS is no or INHIBIT_DEFAULT_DEPS is set
33 if d.getVar('INHIBIT_DEFAULT_DEPS') and not oe.utils.inherits(d, 'cross-canadian'):
34 return '-Dnls=disabled'
35 return '-Dnls=enabled'
36
37# Not all plugin sets contain examples, so the -Dexamples
38# option needs to be added conditionally.
39GST_PLUGIN_SET_HAS_EXAMPLES ?= "1"
40
41EXTRA_OEMESON += " \
42 ${@bb.utils.contains('GST_PLUGIN_SET_HAS_EXAMPLES', '1', '-Dexamples=disabled', '', d)} \
43 ${@gettext_oemeson(d)} \
44"
45
46GIR_MESON_ENABLE_FLAG = "enabled"
47GIR_MESON_DISABLE_FLAG = "disabled"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.6.imx.bb
index 7c921d97c..269761536 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.26.6.imx.bb
@@ -5,7 +5,7 @@
5########### OE-core copy ################## 5########### OE-core copy ##################
6# Upstream hash: 937817e5164f8af8452aec03ae3c45cb23d63df9 6# Upstream hash: 937817e5164f8af8452aec03ae3c45cb23d63df9
7 7
8require gstreamer1.0-plugins-common.inc 8require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
9 9
10SUMMARY = "'Good' GStreamer plugins" 10SUMMARY = "'Good' GStreamer plugins"
11HOMEPAGE = "https://gstreamer.freedesktop.org/" 11HOMEPAGE = "https://gstreamer.freedesktop.org/"
@@ -17,7 +17,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-go
17 17
18SRC_URI[sha256sum] = "b67b31313a54c6929b82969d41d3cfdf2f58db573fb5f491e6bba5d84aea0778" 18SRC_URI[sha256sum] = "b67b31313a54c6929b82969d41d3cfdf2f58db573fb5f491e6bba5d84aea0778"
19 19
20S = "${WORKDIR}/gst-plugins-good-${PV}" 20S = "${UNPACKDIR}/gst-plugins-good-${PV}"
21 21
22LICENSE = "LGPL-2.1-or-later" 22LICENSE = "LGPL-2.1-or-later"
23LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ 23LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
@@ -98,12 +98,16 @@ LIC_FILES_CHKSUM = " \
98 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe \ 98 file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe \
99" 99"
100# Enable pulsesink in gstreamer 100# Enable pulsesink in gstreamer
101PACKAGECONFIG:append = "${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', ' pulseaudio', '', d)}" 101PACKAGECONFIG:append = " pulseaudio"
102 102
103# fb implementation of v4l2 uses libdrm 103# fb implementation of v4l2 uses libdrm
104DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}" 104DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}"
105DEPENDS_V4L2 = "${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'libdrm', d)}" 105DEPENDS_V4L2 = "${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'libdrm', d)}"
106 106
107# FIXME: imx93/943 DISTRO_FEATURES contains x11 but v4l2 implement by libdrm ?
108DEPENDS:append:mx93-nxp-bsp = " libdrm"
109DEPENDS:append:mx943-nxp-bsp = " libdrm"
110
107SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \ 111SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-${PV}.tar.xz \
108 file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \ 112 file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \
109 file://0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch \ 113 file://0001-v4l2-Define-ioctl_req_t-for-posix-linux-case.patch \
@@ -111,8 +115,8 @@ SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plu
111 115
112SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} " 116SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} "
113GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https" 117GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https"
114SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 118SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
115SRCREV = "6a0df1aee0ef2477dbacedd79df08c5bcb648e55" 119SRCREV = "447aebbd3c2b12a72f00316d60d7c86600a330f6"
116 120
117S = "${UNPACKDIR}/${BP}" 121S = "${UNPACKDIR}/${BP}"
118 122
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
index cc2cedfd5..b042adb94 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-imx_2.2.0.bb
@@ -58,7 +58,7 @@ PACKAGECONFIG[v4l2-mxc-source-sink] = "-Dv4l2-mxc-source-sink=true,-Dv4l2-mxc-so
58PACKAGECONFIG[uniaudiodec] = "-Duniaudiodec=enabled,-Duniaudiodec=disabled,imx-codec" 58PACKAGECONFIG[uniaudiodec] = "-Duniaudiodec=enabled,-Duniaudiodec=disabled,imx-codec"
59PACKAGECONFIG[mp3encoder] = "-Dmp3encoder=enabled,-Dmp3encoder=disabled,imx-codec" 59PACKAGECONFIG[mp3encoder] = "-Dmp3encoder=enabled,-Dmp3encoder=disabled,imx-codec"
60 60
61require gstreamer1.0-plugins-packaging.inc 61require recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
62 62
63# the following line is required to produce one package for each plugin 63# the following line is required to produce one package for each plugin
64PACKAGES_DYNAMIC = "^${PN}-.*" 64PACKAGES_DYNAMIC = "^${PN}-.*"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
deleted file mode 100644
index 8b1c00111..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
+++ /dev/null
@@ -1,19 +0,0 @@
1# This .inc file contains functionality for automatically setting
2# the the license of all plugins according to the GSTREAMER_GPL.
3
4PACKAGESPLITFUNCS += "set_gstreamer_license"
5
6python set_gstreamer_license () {
7 import oe.utils
8 pn = d.getVar('PN') + '-'
9 gpl_plugins_names = [pn+plugin for plugin in d.getVar('GSTREAMER_GPL').split()]
10 for pkg in oe.utils.packages_filter_out_system(d):
11 if pkg in gpl_plugins_names:
12 d.setVar('LICENSE:' + pkg, 'GPL-2.0-or-later')
13 else:
14 d.setVar('LICENSE:' + pkg, 'LGPL-2.1-or-later')
15}
16
17EXTRA_OEMESON += " \
18 ${@bb.utils.contains_any('PACKAGECONFIG', "${GSTREAMER_GPL}", '-Dgpl=enabled', '-Dgpl=disabled', d)} \
19 "
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
deleted file mode 100644
index d77aeed8a..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
+++ /dev/null
@@ -1,73 +0,0 @@
1# This .inc file contains functionality for automatically splitting
2# built plugins into individual packages for each plugin. A -meta
3# package is also set up that has no files of its own, but contains
4# the names of all plugin packages in its RDEPENDS list.
5#
6# This is mainly used by the gstreamer1.0-plugins-* plugin set recipes,
7# but can be used in any recipe that produces GStreamer plugins.
8
9# Dynamically generate packages for all enabled plugins
10PACKAGES_DYNAMIC = "^${PN}-.* ^libgst.*"
11
12PACKAGESPLITFUNCS =+ "split_gstreamer10_packages"
13PACKAGESPLITFUNCS += "set_gstreamer10_metapkg_rdepends"
14
15python split_gstreamer10_packages () {
16 gst_libdir = d.expand('${libdir}/gstreamer-1.0')
17 postinst = d.getVar('plugin_postinst')
18 glibdir = d.getVar('libdir')
19
20 # GStreamer libraries
21 do_split_packages(d, glibdir, r'^lib(.*)\.so\.*', 'lib%s', 'GStreamer 1.0 %s library', extra_depends='', allow_links=True)
22 # GStreamer plugin shared objects
23 do_split_packages(d, gst_libdir, r'libgst(.*)\.so$', d.expand('${PN}-%s'), 'GStreamer 1.0 plugin for %s', postinst=postinst, extra_depends='')
24 # GObject introspection files for GStreamer plugins
25 do_split_packages(d, glibdir+'/girepository-1.0', r'Gst(.*)-1.0\.typelib$', d.expand('${PN}-%s-typelib'), 'GStreamer 1.0 typelib file for %s', postinst=postinst, extra_depends='')
26 # Static GStreamer libraries for development
27 do_split_packages(d, gst_libdir, r'libgst(.*)\.a$', d.expand('${PN}-%s-staticdev'), 'GStreamer 1.0 plugin for %s (static development files)', extra_depends='${PN}-staticdev')
28}
29
30python set_gstreamer10_metapkg_rdepends () {
31 import os
32 import oe.utils
33
34 # Go through all generated packages (excluding the main package and
35 # the -meta package itself) and add them to the -meta package as RDEPENDS.
36
37 pn = d.getVar('PN')
38 metapkg = pn + '-meta'
39 d.setVar('ALLOW_EMPTY:' + metapkg, "1")
40 d.setVar('FILES:' + metapkg, "")
41 exclude = [ pn, pn + '-meta' ]
42 metapkg_rdepends = []
43 pkgdest = d.getVar('PKGDEST')
44 for pkg in oe.utils.packages_filter_out_system(d):
45 if pkg not in exclude and pkg not in metapkg_rdepends:
46 # See if the package is empty by looking at the contents of its PKGDEST subdirectory.
47 # If this subdirectory is empty, then the package is.
48 # Empty packages do not get added to the meta package's RDEPENDS
49 pkgdir = os.path.join(pkgdest, pkg)
50 if os.path.exists(pkgdir):
51 dir_contents = os.listdir(pkgdir) or []
52 else:
53 dir_contents = []
54 is_empty = len(dir_contents) == 0
55 if not is_empty:
56 metapkg_rdepends.append(pkg)
57 d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends))
58 d.setVar('DESCRIPTION:' + metapkg, pn + ' meta package')
59}
60
61# each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev
62# so we need them even when empty (like in gst-plugins-good case)
63ALLOW_EMPTY:${PN} = "1"
64ALLOW_EMPTY:${PN}-dev = "1"
65ALLOW_EMPTY:${PN}-staticdev = "1"
66
67PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib"
68
69FILES:${PN} = ""
70FILES:${PN}-apps = "${bindir}"
71FILES:${PN}-glib = "${datadir}/glib-2.0"
72
73RRECOMMENDS:${PN} += "${PN}-meta"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bb
index 1f5956ab4..71de57530 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bb
@@ -1,5 +1,5 @@
1require gstreamer1.0-plugins-common.inc 1require recipes-multimedia/gstreamer/gstreamer1.0-plugins-common.inc
2require gstreamer1.0-plugins-license.inc 2require recipes-multimedia/gstreamer/gstreamer1.0-plugins-license.inc
3 3
4SUMMARY = "'Ugly GStreamer plugins" 4SUMMARY = "'Ugly GStreamer plugins"
5HOMEPAGE = "https://gstreamer.freedesktop.org/" 5HOMEPAGE = "https://gstreamer.freedesktop.org/"
@@ -12,11 +12,12 @@ LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later"
12LICENSE_FLAGS = "commercial" 12LICENSE_FLAGS = "commercial"
13 13
14SRC_URI = " \ 14SRC_URI = " \
15 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${@get_gst_ver("${PV}")}.tar.xz \ 15 https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
16 " 16 "
17SRC_URI[sha256sum] = "a86b51c8454a813120848c803421f327d8c07aabcae461e0597cc49398c0fcde"
18 17
19S = "${UNPACKDIR}/gst-plugins-ugly-${@get_gst_ver("${PV}")}" 18SRC_URI[sha256sum] = "95032eee4580bb9826c008cbce5a2c3a78b980abb270c96a19b645f77255c491"
19
20S = "${UNPACKDIR}/gst-plugins-ugly-${PV}"
20 21
21DEPENDS += "gstreamer1.0-plugins-base" 22DEPENDS += "gstreamer1.0-plugins-base"
22 23
@@ -39,11 +40,5 @@ EXTRA_OEMESON += " \
39 -Dsidplay=disabled \ 40 -Dsidplay=disabled \
40" 41"
41 42
42# Drop .imx from PV
43def get_gst_ver(v):
44 return oe.utils.trim_version(v, 3)
45
46FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs" 43FILES:${PN}-amrnb += "${datadir}/gstreamer-1.0/presets/GstAmrnbEnc.prs"
47FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs" 44FILES:${PN}-x264 += "${datadir}/gstreamer-1.0/presets/GstX264Enc.prs"
48
49COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bbappend
index ea144b396..ea144b396 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.0.imx.bbappend
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.26.6.bbappend
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.6.bb
index 388ee81e6..89306c928 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-python_1.26.6.bb
@@ -7,8 +7,8 @@ SECTION = "multimedia"
7LICENSE = "LGPL-2.1-or-later" 7LICENSE = "LGPL-2.1-or-later"
8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740" 8LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
9 9
10SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${@get_gst_ver("${PV}")}.tar.xz" 10SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
11SRC_URI[sha256sum] = "e5046a05d77abb15671ad01cd1908d17d62e5a06f5d7841be4342ade2a3fb8db" 11SRC_URI[sha256sum] = "a4b5bfe039b7267fe8cdd48d106ab20cf88cda600f800d84f3d07724079edf1f"
12 12
13DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject" 13DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
14DEPENDS:append = " gstreamer1.0-plugins-bad" 14DEPENDS:append = " gstreamer1.0-plugins-bad"
@@ -17,7 +17,7 @@ RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
17 17
18PNREAL = "gst-python" 18PNREAL = "gst-python"
19 19
20S = "${UNPACKDIR}/${PNREAL}-${@get_gst_ver('${PV}')}" 20S = "${UNPACKDIR}/${PNREAL}-${PV}"
21 21
22EXTRA_OEMESON += "\ 22EXTRA_OEMESON += "\
23 -Dtests=disabled \ 23 -Dtests=disabled \
@@ -25,11 +25,9 @@ EXTRA_OEMESON += "\
25 -Dlibpython-dir=${libdir} \ 25 -Dlibpython-dir=${libdir} \
26" 26"
27 27
28inherit meson pkgconfig setuptools3-base upstream-version-is-even features_check 28CFLAGS += "-Wno-error=implicit-function-declaration"
29 29
30# Drop .imx from PV 30inherit meson pkgconfig setuptools3-base upstream-version-is-even features_check
31def get_gst_ver(v):
32 return oe.utils.trim_version(v, 3)
33 31
34FILES:${PN} += "${libdir}/gstreamer-1.0" 32FILES:${PN} += "${libdir}/gstreamer-1.0"
35 33
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch
new file mode 100644
index 000000000..9a1d206b6
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server/0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch
@@ -0,0 +1,63 @@
1From 0c50b2e474a0887aaefb1ae47af2c9b755cd1a12 Mon Sep 17 00:00:00 2001
2From: Haihua Hu <jared.hu@nxp.com>
3Date: Tue, 8 Jul 2025 17:22:38 +0900
4Subject: [PATCH] YOCIMX-9113 rtsp examples: install test-launch and test-uri
5 into rootfs
6
7gstreamer community has no plan to install these binary as test tool
8https://discourse.gstreamer.org/t/gst-rtsp-server-examples-are-not-installed-by-default/4806
9
10Upstream-Status: Inappropriate [i.MX specific]
11
12Signed-off-by: Haihua Hu <jared.hu@nxp.com>
13---
14 examples/meson.build | 15 +++++++++++++--
15 1 file changed, 13 insertions(+), 2 deletions(-)
16
17diff --git a/examples/meson.build b/examples/meson.build
18index 100c3f99f3..5939fb5ff6 100644
19--- a/examples/meson.build
20+++ b/examples/meson.build
21@@ -7,7 +7,6 @@ examples = [
22 'test-appsrc2',
23 'test-auth',
24 'test-auth-digest',
25- 'test-launch',
26 'test-mp4',
27 'test-multicast2',
28 'test-multicast',
29@@ -22,11 +21,15 @@ examples = [
30 'test-record',
31 'test-replay-server',
32 'test-sdp',
33- 'test-uri',
34 'test-video',
35 'test-video-rtx',
36 ]
37
38+install_examples = [
39+ 'test-launch',
40+ 'test-uri',
41+]
42+
43 foreach example : examples
44 executable(example, '@0@.c'.format(example),
45 c_args : rtspserver_args,
46@@ -35,6 +38,14 @@ foreach example : examples
47 install: false)
48 endforeach
49
50+foreach example : install_examples
51+ executable(example, '@0@.c'.format(example),
52+ c_args : rtspserver_args,
53+ include_directories : rtspserver_incs,
54+ dependencies : [gst_dep, gstapp_dep, gstnet_dep, gst_rtsp_server_dep],
55+ install: true)
56+endforeach
57+
58 cgroup_dep = dependency('libcgroup', version : '>= 0.26', required : false)
59 if cgroup_dep.found()
60 executable('test-cgroups', 'test-cgroups.c',
61--
622.34.1
63
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.6.bb
index b5dd9a322..9c32413ae 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.26.6.bb
@@ -8,31 +8,35 @@ DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base"
8 8
9PNREAL = "gst-rtsp-server" 9PNREAL = "gst-rtsp-server"
10 10
11SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${@get_gst_ver("${PV}")}.tar.xz" 11FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
12 12
13SRC_URI[sha256sum] = "e983c039496e3f75e39696554ce74db4120e2465de17aa1cc37160568e9b40bc" 13SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz \
14 file://0001-YOCIMX-9113-rtsp-examples-install-test-launch-and-te.patch \
15 "
14 16
15S = "${UNPACKDIR}/${PNREAL}-${@get_gst_ver("${PV}")}" 17SRC_URI[sha256sum] = "ce4e0b7dde7f17dc4f39ffb2dd3db64b0222d11d58be1c9820c20d30370d6f90"
18
19S = "${UNPACKDIR}/${PNREAL}-${PV}"
16 20
17inherit meson pkgconfig upstream-version-is-even gobject-introspection 21inherit meson pkgconfig upstream-version-is-even gobject-introspection
18 22
19EXTRA_OEMESON += " \ 23EXTRA_OEMESON += " \
20 -Ddoc=disabled \ 24 -Ddoc=disabled \
21 -Dexamples=disabled \ 25 -Dexamples=enabled \
22 -Dtests=disabled \ 26 -Dtests=disabled \
23" 27"
24 28
25GIR_MESON_ENABLE_FLAG = "enabled" 29GIR_MESON_ENABLE_FLAG = "enabled"
26GIR_MESON_DISABLE_FLAG = "disabled" 30GIR_MESON_DISABLE_FLAG = "disabled"
27 31
28# Drop .imx from PV
29def get_gst_ver(v):
30 return oe.utils.trim_version(v, 3)
31
32# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well 32# Starting with 1.8.0 gst-rtsp-server includes dependency-less plugins as well
33require gstreamer1.0-plugins-packaging.inc 33require recipes-multimedia/gstreamer/gstreamer1.0-plugins-packaging.inc
34 34
35CVE_PRODUCT += "gst-rtsp-server" 35CVE_PRODUCT += "gst-rtsp-server"
36 36
37COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 37########### i.MX overrides ################
38
39EXTRA_OEMESON:append:mx93-nxp-bsp = " -Dintrospection=disabled "
40EXTRA_OEMESON:append:mx943-nxp-bsp = " -Dintrospection=disabled "
38 41
42########### End of i.MX overrides #########
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend
deleted file mode 100644
index 3b23818dd..000000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_%.bbappend
+++ /dev/null
@@ -1 +0,0 @@
1PACKAGECONFIG_GL:imxgpu = "egl"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.6.bb
index 1d83ca031..559bac064 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.26.6.bb
@@ -9,19 +9,15 @@ REALPN = "gstreamer-vaapi"
9LICENSE = "LGPL-2.1-or-later" 9LICENSE = "LGPL-2.1-or-later"
10LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c" 10LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
11 11
12SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${@get_gst_ver("${PV}")}.tar.xz" 12SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz"
13 13
14SRC_URI[sha256sum] = "573931d455f5a96f63db7c8d35d51322b8d287816e8c6a77d84cfbb9fa1351f1" 14SRC_URI[sha256sum] = "d87c57244cecbd17bb030b698dcb67a66225de639f7c5b837391c4a8e5477667"
15 15
16S = "${UNPACKDIR}/${REALPN}-${@get_gst_ver('${PV}')}" 16S = "${UNPACKDIR}/${REALPN}-${PV}"
17DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad" 17DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
18 18
19inherit meson pkgconfig features_check upstream-version-is-even 19inherit meson pkgconfig features_check upstream-version-is-even
20 20
21# Drop .imx from PV
22def get_gst_ver(v):
23 return oe.utils.trim_version(v, 3)
24
25REQUIRED_DISTRO_FEATURES ?= "opengl" 21REQUIRED_DISTRO_FEATURES ?= "opengl"
26 22
27EXTRA_OEMESON += " \ 23EXTRA_OEMESON += " \
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0_1.26.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0_1.26.6.imx.bb
index 5b315ed7f..e602ff35c 100644
--- a/recipes-multimedia/gstreamer/gstreamer1.0_1.26.0.imx.bb
+++ b/recipes-multimedia/gstreamer/gstreamer1.0_1.26.6.imx.bb
@@ -20,8 +20,6 @@ inherit meson pkgconfig gettext upstream-version-is-even gobject-introspection p
20LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \ 20LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
21 file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d" 21 file://gst/gst.h;beginline=1;endline=21;md5=e059138481205ee2c6fc1c079c016d0d"
22 22
23S = "${WORKDIR}/gstreamer-${PV}"
24
25SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ 23SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
26 file://run-ptest \ 24 file://run-ptest \
27 file://0001-tests-respect-the-idententaion-used-in-meson.patch \ 25 file://0001-tests-respect-the-idententaion-used-in-meson.patch \
@@ -93,17 +91,15 @@ LIC_FILES_CHKSUM = " \
93 91
94# Use i.MX fork of GST for customizations 92# Use i.MX fork of GST for customizations
95SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ 93SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \
96 file://0001-tests-respect-the-idententaion-used-in-meson.patch \ 94 file://0001-tests-respect-the-idententaion-used-in-meson.patch \
97 file://0002-tests-add-support-for-install-the-tests.patch \ 95 file://0002-tests-add-support-for-install-the-tests.patch \
98 file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \ 96 file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \
99 file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \ 97 file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \
100" 98"
101SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} " 99SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} "
102GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https" 100GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https"
103SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 101SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
104SRCREV = "dba94b66ed28cc6537608a68c31c8be52f6f53a5" 102SRCREV = "524a14c8906597f4fd302190adbd3a8af3572866"
105
106S = "${UNPACKDIR}/${BP}"
107 103
108PACKAGECONFIG[tests] = "-Dtests=enabled,-Dtests=disabled" 104PACKAGECONFIG[tests] = "-Dtests=enabled,-Dtests=disabled"
109 105
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-gplay2-fix-termio.h-no-longer-existing.patch b/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-gplay2-fix-termio.h-no-longer-existing.patch
deleted file mode 100644
index cb314b38d..000000000
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin/0001-gplay2-fix-termio.h-no-longer-existing.patch
+++ /dev/null
@@ -1,35 +0,0 @@
1From b88aec4d7a8c8993c8c75f002a1f2af1635337d1 Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Sat, 9 Aug 2025 08:20:50 +0000
4Subject: [PATCH] gplay2: fix termio.h no longer existing
5
6glibc 2.42 removed the long deprecated termio.h header which
7in 2.41 only included termios.h and sys/ioctl.h. [1]
8
9Replacing it with sys/ioctl.h seems to provide all the needed
10declaration for successfully compiling.
11
12[1] https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS#l91
13
14Upstream-Status: Pending
15Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
16---
17 tools/gplay2/gplay2.c | 2 +-
18 1 file changed, 1 insertion(+), 1 deletion(-)
19
20diff --git a/tools/gplay2/gplay2.c b/tools/gplay2/gplay2.c
21index 9e406b9ea8c7..98b3ee5cf666 100755
22--- a/tools/gplay2/gplay2.c
23+++ b/tools/gplay2/gplay2.c
24@@ -26,7 +26,7 @@
25 */
26
27
28-#include <termio.h>
29+#include <sys/ioctl.h>
30 #include <unistd.h>
31 #include <pthread.h>
32 #include <stdio.h>
33--
342.42.0
35
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
index 2ba8fdd1d..48d84cead 100644
--- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
+++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb
@@ -1,8 +1,7 @@
1# Copyright (C) 2014,2016 Freescale Semiconductor 1# Copyright (C) 2014,2016 Freescale Semiconductor
2# Copyright 2017-2021 NXP 2# Copyright 2017-2025 NXP
3# Copyright (C) 2012-2015 O.S. Systems Software LTDA. 3# Copyright (C) 2012-2015 O.S. Systems Software LTDA.
4# Released under the MIT license (see COPYING.MIT for the terms) 4# Released under the MIT license (see COPYING.MIT for the terms)
5
6DESCRIPTION = "Gstreamer freescale plugins" 5DESCRIPTION = "Gstreamer freescale plugins"
7SECTION = "multimedia" 6SECTION = "multimedia"
8LICENSE = "GPL-2.0-only & LGPL-2.0-only & LGPL-2.1-only" 7LICENSE = "GPL-2.0-only & LGPL-2.0-only & LGPL-2.1-only"
@@ -15,11 +14,13 @@ DEPENDS = " \
15 imx-codec \ 14 imx-codec \
16 imx-parser \ 15 imx-parser \
17 ${DEPENDS_IMXGPU} \ 16 ${DEPENDS_IMXGPU} \
17 libinput \
18" 18"
19DEPENDS:append:mx6-nxp-bsp = " imx-lib" 19DEPENDS:append:mx6-nxp-bsp = " imx-lib"
20DEPENDS:append:mx7-nxp-bsp = " imx-lib" 20DEPENDS:append:mx7-nxp-bsp = " imx-lib"
21DEPENDS:append:mx8ulp-nxp-bsp = " imx-lib" 21DEPENDS:append:mx8ulp-nxp-bsp = " imx-lib"
22DEPENDS:append:mx93-nxp-bsp = " imx-lib" 22DEPENDS:append:mx93-nxp-bsp = " imx-lib"
23DEPENDS:append:mx943-nxp-bsp = " imx-lib"
23DEPENDS:append:imxvpu = " imx-vpuwrap" 24DEPENDS:append:imxvpu = " imx-vpuwrap"
24DEPENDS:append:imxfbdev:imxgpu = " libdrm" 25DEPENDS:append:imxfbdev:imxgpu = " libdrm"
25DEPENDS_IMXGPU = "" 26DEPENDS_IMXGPU = ""
@@ -34,14 +35,13 @@ RREPLACES:${PN} = "gst1.0-fsl-plugin"
34RPROVIDES:${PN} = "gst1.0-fsl-plugin" 35RPROVIDES:${PN} = "gst1.0-fsl-plugin"
35RCONFLICTS:${PN} = "gst1.0-fsl-plugin" 36RCONFLICTS:${PN} = "gst1.0-fsl-plugin"
36 37
37PV = "4.10.0+git${SRCPV}" 38PV = "4.10.3+git${SRCPV}"
39
40SRC_URI = "${IMXGST_SRC};branch=${SRCBRANCH}"
41IMXGST_SRC ?= "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https"
42SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
43SRCREV = "0565fc515612908a353e8378e24f97de17cc56a6"
38 44
39SRC_URI = " \
40 git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH} \
41 file://0001-gplay2-fix-termio.h-no-longer-existing.patch \
42"
43SRCBRANCH = "MM_04.10.0_2505_L6.12.20"
44SRCREV = "6861aec99901375f5ebcd5170ce1f5232cd38fd6"
45 45
46inherit meson pkgconfig use-imx-headers 46inherit meson pkgconfig use-imx-headers
47 47
@@ -60,7 +60,7 @@ EXTRA_OEMESON = "-Dplatform=${PLATFORM} \
60 -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ 60 -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \
61" 61"
62 62
63PACKAGES =+ "${PN}-gplay ${PN}-libgplaycore ${PN}-libgstfsl ${PN}-grecorder ${PN}-librecorder-engine ${PN}-libplayengine" 63PACKAGES =+ "${PN}-tools ${PN}-libgstfsl"
64 64
65# Add codec list that the beep plugin run-time depended 65# Add codec list that the beep plugin run-time depended
66BEEP_RDEPENDS = "imx-codec-aac imx-codec-mp3 imx-codec-oggvorbis" 66BEEP_RDEPENDS = "imx-codec-aac imx-codec-mp3 imx-codec-oggvorbis"
@@ -86,12 +86,9 @@ FILES:${PN} = "${libdir}/gstreamer-1.0/*.so ${datadir}"
86 86
87FILES:${PN}-dbg += "${libdir}/gstreamer-1.0/.debug" 87FILES:${PN}-dbg += "${libdir}/gstreamer-1.0/.debug"
88FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.la ${libdir}/pkgconfig/*.pc" 88FILES:${PN}-dev += "${libdir}/gstreamer-1.0/*.la ${libdir}/pkgconfig/*.pc"
89FILES:${PN}-staticdev += "${libdir}/gstreamer-1.0/*.a" 89FILES:${PN}-tools += "${bindir}/* ${libdir}/librecorder_engine-1.0${SOLIBS}"
90FILES:${PN}-gplay = "${bindir}/gplay-1.0"
91FILES:${PN}-libgplaycore = "${libdir}/libgplaycore-1.0${SOLIBS}"
92FILES:${PN}-libgstfsl = "${libdir}/libgstfsl-1.0${SOLIBS}" 90FILES:${PN}-libgstfsl = "${libdir}/libgstfsl-1.0${SOLIBS}"
93FILES:${PN}-grecorder = "${bindir}/grecorder-1.0" 91
94FILES:${PN}-librecorder-engine = "${libdir}/librecorder_engine-1.0${SOLIBS}" 92INSANE_SKIP:${PN} = "build-deps"
95FILES:${PN}-libplayengine = "${libdir}/libplayengine-1.0${SOLIBS}"
96 93
97COMPATIBLE_MACHINE = "(imx-nxp-bsp)" 94COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.8.0.bb b/recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.11.0.bb
index cf4e4d182..eca003737 100644
--- a/recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.8.0.bb
+++ b/recipes-multimedia/imx-opencl-converter/imx-opencl-converter_0.11.0.bb
@@ -2,13 +2,13 @@
2DESCRIPTION = "NXP Multimedia opencl converter lib" 2DESCRIPTION = "NXP Multimedia opencl converter lib"
3LICENSE = "Proprietary" 3LICENSE = "Proprietary"
4SECTION = "multimedia" 4SECTION = "multimedia"
5LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 5LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
6DEPENDS = "virtual/libopencl1" 6DEPENDS = "virtual/libopencl1"
7 7
8SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true" 8SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
9IMX_SRCREV_ABBREV = "b81b785" 9IMX_SRCREV_ABBREV = "84ed303"
10 10
11SRC_URI[sha256sum] = "a4dee08d5949d41cb9c61d44ce0b5a055b9416129216f9d36d0bc6d9e512ab64" 11SRC_URI[sha256sum] = "e8813c18e3f65caab2036c1f608b8b7def8314b0f01c830ea696cb1aeb92cc7c"
12 12
13S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" 13S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
14inherit fsl-eula-unpack autotools pkgconfig meson 14inherit fsl-eula-unpack autotools pkgconfig meson
diff --git a/recipes-multimedia/imx-parser/imx-parser_4.10.0.bb b/recipes-multimedia/imx-parser/imx-parser_4.10.3.bb
index 60add6e33..d8f002e64 100644
--- a/recipes-multimedia/imx-parser/imx-parser_4.10.0.bb
+++ b/recipes-multimedia/imx-parser/imx-parser_4.10.3.bb
@@ -5,7 +5,7 @@
5DESCRIPTION = "Freescale Multimedia parser libs" 5DESCRIPTION = "Freescale Multimedia parser libs"
6LICENSE = "Proprietary" 6LICENSE = "Proprietary"
7SECTION = "multimedia" 7SECTION = "multimedia"
8LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 8LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
9 9
10# For backwards compatibility 10# For backwards compatibility
11PROVIDES += "libfslparser" 11PROVIDES += "libfslparser"
@@ -14,10 +14,10 @@ RPROVIDES:${PN} = "libfslparser"
14RCONFLICTS:${PN} = "libfslparser" 14RCONFLICTS:${PN} = "libfslparser"
15 15
16SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true" 16SRC_URI = "${FSL_MIRROR}/${BP}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true"
17IMX_SRCREV_ABBREV = "e8a7ec7" 17IMX_SRCREV_ABBREV = "65603f3"
18S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}" 18S = "${UNPACKDIR}/${BP}-${IMX_SRCREV_ABBREV}"
19 19
20SRC_URI[sha256sum] = "90b4b7f7c3cffc9d57774dbb06e37d810a2618e059f30244e1b4155fb9bc82d5" 20SRC_URI[sha256sum] = "03079bb0fa989dc50fadb66a0fcc7cf65423833c3def04085603d4b66e8f8c70"
21 21
22inherit fsl-eula-unpack autotools pkgconfig 22inherit fsl-eula-unpack autotools pkgconfig
23 23
diff --git a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb
index 1ad735152..dae99cb13 100644
--- a/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb
+++ b/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_git.bb
@@ -5,14 +5,15 @@
5DESCRIPTION = "Freescale Multimedia VPU wrapper" 5DESCRIPTION = "Freescale Multimedia VPU wrapper"
6LICENSE = "Proprietary" 6LICENSE = "Proprietary"
7SECTION = "multimedia" 7SECTION = "multimedia"
8LIC_FILES_CHKSUM = "file://COPYING;md5=a93b654673e1bc8398ed1f30e0813359" 8LIC_FILES_CHKSUM = "file://COPYING;md5=bc649096ad3928ec06a8713b8d787eac"
9 9
10DEPENDS = "virtual/imxvpu" 10DEPENDS = "virtual/imxvpu"
11DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc" 11DEPENDS:append:mx8mp-nxp-bsp = " imx-vpu-hantro-vc"
12 12
13SRC_URI = "git://github.com/NXP/imx-vpuwrap.git;protocol=https;branch=${SRCBRANCH}" 13SRC_URI = "${IMX_VPUWRAP_SRC};branch=${SRCBRANCH}"
14SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 14IMX_VPUWRAP_SRC ?= "git://github.com/NXP/imx-vpuwrap.git;protocol=https"
15SRCREV = "feeb9109a027d3a0f040b0bddb5f79a1daad3587" 15SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
16SRCREV = "1d2136e39789edb1eff730043caf2305ee2c173e"
16 17
17inherit autotools pkgconfig 18inherit autotools pkgconfig
18 19
diff --git a/recipes-multimedia/libcamera/libcamera_0.6.0.imx.bb b/recipes-multimedia/libcamera/libcamera_0.6.0.imx.bb
new file mode 100644
index 000000000..6b811b5f1
--- /dev/null
+++ b/recipes-multimedia/libcamera/libcamera_0.6.0.imx.bb
@@ -0,0 +1,115 @@
1# This recipe is for the i.MX fork of libcamera. For ease of
2# maintenance, the top section is a verbatim copy of an OE-core
3# recipe. The second section customizes the recipe for i.MX.
4
5########### meta-openembedded copy ##################
6# Upstream hash: f4b9dfa0c903bc94c344c657917a3fbb229c322f
7
8SUMMARY = "Linux libcamera framework"
9SECTION = "libs"
10
11LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
12
13LIC_FILES_CHKSUM = "\
14 file://LICENSES/GPL-2.0-or-later.txt;md5=fed54355545ffd980b814dab4a3b312c \
15 file://LICENSES/LGPL-2.1-or-later.txt;md5=2a4f4fd2128ea2f65047ee63fbca9f68 \
16"
17
18SRC_URI = " \
19 git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master;tag=v${PV} \
20"
21
22SRCREV = "3e6f5d83e397e11cccd3844e121463748f56de39"
23
24PE = "1"
25
26DEPENDS = "python3-pyyaml-native python3-jinja2-native python3-ply-native python3-jinja2-native udev gnutls chrpath-native libevent libyaml"
27DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'qt', 'qtbase qtbase-native', '', d)}"
28
29PACKAGES =+ "${PN}-gst ${PN}-pycamera"
30
31PACKAGECONFIG ??= ""
32PACKAGECONFIG[dng] = ",,tiff"
33PACKAGECONFIG[gst] = "-Dgstreamer=enabled,-Dgstreamer=disabled,gstreamer1.0 gstreamer1.0-plugins-base"
34PACKAGECONFIG[pycamera] = "-Dpycamera=enabled,-Dpycamera=disabled,python3 python3-pybind11"
35PACKAGECONFIG[raspberrypi] = ",,libpisp"
36
37# Raspberry Pi requires the meta-raspberrypi layer
38# These values are coming from the project's meson.build file,
39# which lists the supported values by arch.
40ARM_PIPELINES = "${@bb.utils.contains('PACKAGECONFIG', 'raspberrypi', 'rpi/pisp,rpi/vc4,', '', d)}"
41ARM_PIPELINES .= "imx8-isi,mali-c55,simple,uvcvideo"
42
43LIBCAMERA_PIPELINES ??= "auto"
44LIBCAMERA_PIPELINES:arm ??= "${ARM_PIPELINES}"
45LIBCAMERA_PIPELINES:aarch64 ??= "${ARM_PIPELINES}"
46
47EXTRA_OEMESON = " \
48 -Dpipelines=${LIBCAMERA_PIPELINES} \
49 -Dv4l2=true \
50 -Dcam=enabled \
51 -Dlc-compliance=disabled \
52 -Dtest=false \
53 -Ddocumentation=disabled \
54"
55
56RDEPENDS:${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland qt', 'qtwayland', '', d)}"
57
58inherit meson pkgconfig python3native
59
60do_configure:prepend() {
61 sed -i -e 's|py_compile=True,||' ${S}/utils/codegen/ipc/mojo/public/tools/mojom/mojom/generate/template_expander.py
62}
63
64do_install:append() {
65 chrpath -d ${D}${libdir}/libcamera.so
66 chrpath -d ${D}${libexecdir}/libcamera/v4l2-compat.so
67}
68
69do_package:append() {
70 bb.build.exec_func("do_package_recalculate_ipa_signatures", d)
71}
72
73do_package_recalculate_ipa_signatures() {
74 local modules
75 for module in $(find ${PKGD}/usr/lib/libcamera -name "*.so.sign"); do
76 module="${module%.sign}"
77 if [ -f "${module}" ] ; then
78 modules="${modules} ${module}"
79 fi
80 done
81
82 ${S}/src/ipa/ipa-sign-install.sh ${B}/src/ipa-priv-key.pem "${modules}"
83}
84
85FILES:${PN} += " ${libexecdir}/libcamera/v4l2-compat.so"
86FILES:${PN}-gst = "${libdir}/gstreamer-1.0"
87FILES:${PN}-pycamera = "${PYTHON_SITEPACKAGES_DIR}/libcamera"
88
89# libcamera-v4l2 explicitly sets _FILE_OFFSET_BITS=32 to get access to
90# both 32 and 64 bit file APIs.
91GLIBC_64BIT_TIME_FLAGS = ""
92########### End of meta-openembedded copy ###########
93
94########### i.MX overrides ################
95
96SRC_URI:remove = "git://git.libcamera.org/libcamera/libcamera.git;protocol=https;branch=master;tag=v${PV}"
97SRC_URI:prepend = "${LIBCAMERA_SRC};branch=${SRCBRANCH} "
98LIBCAMERA_SRC ?= "git://github.com/nxp-imx/libcamera.git;protocol=https"
99SRCBRANCH = "lf-6.18.2_1.0.0"
100SRCREV = "3e6f5d83e397e11cccd3844e121463748f56de39"
101
102PACKAGECONFIG = "gst pycamera dng"
103
104ARM_PIPELINES .= ",nxp/neo"
105
106EXTRA_OEMESON += " \
107 --python.platlibdir=${PYTHON_SITEPACKAGES_DIR} \
108"
109
110# Qt installs native tools to /usr/libexec, but this is not in PATH
111PATH:prepend = "${@bb.utils.contains('DISTRO_FEATURES', 'qt', '${STAGING_LIBEXECDIR_NATIVE}:', '', d)}"
112
113COMPATIBLE_MACHINE = "(mx95-nxp-bsp|mx8mm-nxp-bsp|mx8ulp-nxp-bsp|mx8mq-nxp-bsp)"
114
115########### End of i.MX overrides #########
diff --git a/recipes-multimedia/libcamera/neo-ipa-uguzzi_0.2.6.bb b/recipes-multimedia/libcamera/neo-ipa-uguzzi_0.2.6.bb
new file mode 100644
index 000000000..88b9a1d0e
--- /dev/null
+++ b/recipes-multimedia/libcamera/neo-ipa-uguzzi_0.2.6.bb
@@ -0,0 +1,35 @@
1SUMMARY = "uGuzzi IPA for the libcamera NXP NEO pipeline"
2DESCRIPTION = "\
3An Image Processing Algorithm library for libcamera, for i.MX95 ISP, \
4based on proprietary MM Solutions EAD uGuzzi 3A library"
5SECTION = "libs"
6LICENSE = "Apache-2.0 & BSD-2-Clause & GPL-2.0-or-later & LGPL-2.1-or-later & MIT & Proprietary"
7# Put EULA on separate line for automated recipe updates
8LIC_FILES_CHKSUM = "file://LICENSES/LA_OPT_NXP_Software_License.txt;md5=bc649096ad3928ec06a8713b8d787eac"
9LIC_FILES_CHKSUM += " \
10 file://COPYING;md5=6462e06298403caf09a22e67a7cc551a \
11 file://LICENSES/Apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
12 file://LICENSES/BSD-2-Clause.txt;md5=63d6ee386b8aaba70b1bf15a79ca50f2 \
13 file://LICENSES/GPL-2.0-or-later.txt;md5=fed54355545ffd980b814dab4a3b312c \
14 file://LICENSES/LGPL-2.1-or-later.txt;md5=3c328714bf889b2c3c7cd842e3e4893b \
15 file://LICENSES/MIT.txt;md5=38aa75cf4c4c87f018227d5ec9638d75 "
16DEPENDS = "libcamera"
17
18SRC_URI = "${NEO_IPA_UGUZZI_SRC};branch=${SRCBRANCH}"
19NEO_IPA_UGUZZI_SRC ?= "git://github.com/nxp-imx/neo-ipa-uguzzi;protocol=https"
20SRCBRANCH = "lf-6.18.2_1.0.0"
21SRCREV = "3c3b18e397a81fac2babe14dca01f4ada1ecc8b2"
22
23
24inherit meson pkgconfig
25
26FILES:${PN} += "${libdir}/libcamera ${datadir}/libcamera"
27
28# Libraries are unversioned
29SOLIBS = ".so"
30FILES_SOLIBSDEV = ""
31
32# Pre-built binaries are already stripped, so skip the QA test
33INSANE_SKIP:${PN} = "already-stripped"
34
35COMPATIBLE_MACHINE = "(mx95-generic-bsp)"
diff --git a/recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb b/recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb
index 7afa44cb1..f29011601 100644
--- a/recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb
+++ b/recipes-multimedia/nxp-afe/nxp-afe-voiceseeker_git.bb
@@ -9,12 +9,13 @@ inherit pkgconfig
9 9
10DEPENDS += "alsa-lib nxp-afe" 10DEPENDS += "alsa-lib nxp-afe"
11 11
12PV = "2.0+git" 12SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
13PV = "2.0+${SRCPV}"
13 14
14SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 15NXPAFE_VOICESEEKER_SRC ?= "git://github.com/nxp-imx/imx-voiceui.git;protocol=https"
15SRC_URI = "git://github.com/nxp-imx/imx-voiceui.git;protocol=https;branch=${SRCBRANCH}" 16SRC_URI = "${NXPAFE_VOICESEEKER_SRC};branch=${SRCBRANCH}"
16 17
17SRCREV = "737c156469eeede28fe1a0777c968becf6fea886" 18SRCREV = "94639a8ea4a65a218f60b900269a7dc4bf97fefb"
18 19
19EXTRA_CONF = "--enable-armv8 --bindir=/unit_tests/ --libdir=${libdir}" 20EXTRA_CONF = "--enable-armv8 --bindir=/unit_tests/ --libdir=${libdir}"
20 21
diff --git a/recipes-multimedia/nxp-afe/nxp-afe_git.bb b/recipes-multimedia/nxp-afe/nxp-afe_git.bb
index a401bedeb..5ac5d374a 100644
--- a/recipes-multimedia/nxp-afe/nxp-afe_git.bb
+++ b/recipes-multimedia/nxp-afe/nxp-afe_git.bb
@@ -6,20 +6,16 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=7bdef19938f3503cfc4c586461f99012"
6 6
7PV = "1.0+git" 7PV = "1.0+git"
8 8
9SRCBRANCH = "MM_04.10.0_2505_L6.12.20" 9SRCBRANCH = "MM_04.10.03_2512_L6.18.2"
10SRC_URI = " git://github.com/nxp-imx/nxp-afe.git;protocol=https;branch=${SRCBRANCH}" 10NXPAFE_SRC ?= "git://github.com/nxp-imx/nxp-afe.git;protocol=https"
11SRC_URI = " ${NXPAFE_SRC};branch=${SRCBRANCH}"
11 12
12SRCREV = "c6b8fee21376e724b8441f3cf6c04dee69b5242e" 13SRCREV = "7d518eb0b18f7c7faadeb3c3397f8b73f0012f3e"
13 14
14DEPENDS += "alsa-lib" 15DEPENDS += "alsa-lib"
15 16
16TARGET_CC_ARCH += "${LDFLAGS}" 17TARGET_CC_ARCH += "${LDFLAGS}"
17 18
18do_compile() {
19 oe_runmake clean
20 oe_runmake all
21}
22
23do_install() { 19do_install() {
24 install -d ${D}${libdir}/nxp-afe 20 install -d ${D}${libdir}/nxp-afe
25 install -d ${D}/unit_tests/nxp-afe 21 install -d ${D}/unit_tests/nxp-afe
@@ -33,3 +29,4 @@ do_install() {
33 29
34FILES:${PN} += "/unit_tests" 30FILES:${PN} += "/unit_tests"
35INSANE_SKIP:${PN} += "dev-so" 31INSANE_SKIP:${PN} += "dev-so"
32INSANE_SKIP:${PN}-dbg += "buildpaths"
diff --git a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
index 6e4db9110..7f5a7ffbe 100644
--- a/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
+++ b/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend
@@ -1,6 +1,6 @@
1FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}/imx-nxp-bsp:" 1FILESEXTRAPATHS:prepend:imx-nxp-bsp := "${THISDIR}/${PN}/imx-nxp-bsp:"
2 2
3SRC_URI += "${SRC_URI_IMX}" 3SRC_URI:append:imx-nxp-bsp = " ${SRC_URI_IMX}"
4SRC_URI_IMX = "" 4SRC_URI_IMX = ""
5SRC_URI_IMX:mx6-nxp-bsp = " \ 5SRC_URI_IMX:mx6-nxp-bsp = " \
6 file://0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch \ 6 file://0001-Fix-pulseaudio-mutex-issue-when-do-pause-in-gstreame.patch \
@@ -16,7 +16,7 @@ SRC_URI_IMX:mx9-nxp-bsp = " \
16 16
17CACHED_CONFIGUREVARS:append:mx6-nxp-bsp = " ax_cv_PTHREAD_PRIO_INHERIT=no" 17CACHED_CONFIGUREVARS:append:mx6-nxp-bsp = " ax_cv_PTHREAD_PRIO_INHERIT=no"
18 18
19do_install:append() { 19do_install:append:imx-nxp-bsp() {
20 if [ -e "${UNPACKDIR}/daemon.conf" ] && [ -e "${UNPACKDIR}/default.pa" ]; then 20 if [ -e "${UNPACKDIR}/daemon.conf" ] && [ -e "${UNPACKDIR}/default.pa" ]; then
21 install -m 0644 ${UNPACKDIR}/daemon.conf ${D}${sysconfdir}/pulse/daemon.conf 21 install -m 0644 ${UNPACKDIR}/daemon.conf ${D}${sysconfdir}/pulse/daemon.conf
22 install -m 0644 ${UNPACKDIR}/default.pa ${D}${sysconfdir}/pulse/default.pa 22 install -m 0644 ${UNPACKDIR}/default.pa ${D}${sysconfdir}/pulse/default.pa
diff --git a/recipes-security/optee-imx/optee-client-fslc-imx.inc b/recipes-security/optee-imx/optee-client-fslc-imx.inc
index 1112a864d..06cc89a22 100644
--- a/recipes-security/optee-imx/optee-client-fslc-imx.inc
+++ b/recipes-security/optee-imx/optee-client-fslc-imx.inc
@@ -1,5 +1,5 @@
1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-client-imx.inc. 1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-client-imx.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L37 2# See:https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L39
3 3
4require optee-client-fslc.inc 4require optee-client-fslc.inc
5 5
@@ -10,8 +10,6 @@ SRC_URI:remove = "git://github.com/OP-TEE/optee_client.git;branch=master;protoco
10SRC_URI:prepend = "${OPTEE_CLIENT_SRC};branch=${SRCBRANCH} " 10SRC_URI:prepend = "${OPTEE_CLIENT_SRC};branch=${SRCBRANCH} "
11OPTEE_CLIENT_SRC ?= "git://github.com/nxp-imx/imx-optee-client.git;protocol=https" 11OPTEE_CLIENT_SRC ?= "git://github.com/nxp-imx/imx-optee-client.git;protocol=https"
12 12
13SRC_URI += "file://0001-tee-supplicant-Fix-non-arch-service-unit-install-pat.patch"
14
15inherit pkgconfig 13inherit pkgconfig
16 14
17EXTRA_OECMAKE += "-DCFG_TEE_CLIENT_LOAD_PATH=${nonarch_base_libdir}" 15EXTRA_OECMAKE += "-DCFG_TEE_CLIENT_LOAD_PATH=${nonarch_base_libdir}"
diff --git a/recipes-security/optee-imx/optee-client-fslc.inc b/recipes-security/optee-imx/optee-client-fslc.inc
index 70a25fe6c..ab7c8bc69 100644
--- a/recipes-security/optee-imx/optee-client-fslc.inc
+++ b/recipes-security/optee-imx/optee-client-fslc.inc
@@ -1,5 +1,5 @@
1# Copied from meta-arm/recipes-security/optee/optee-client.inc. 1# Copied from meta-arm/recipes-security/optee/optee-client.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L30 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L32
3 3
4SUMMARY = "OP-TEE Client API" 4SUMMARY = "OP-TEE Client API"
5DESCRIPTION = "Open Portable Trusted Execution Environment - Normal World Client side of the TEE" 5DESCRIPTION = "Open Portable Trusted Execution Environment - Normal World Client side of the TEE"
diff --git a/recipes-security/optee-imx/optee-client_4.6.0.imx.bb b/recipes-security/optee-imx/optee-client_4.6.0.imx.bb
deleted file mode 100644
index b5a185da1..000000000
--- a/recipes-security/optee-imx/optee-client_4.6.0.imx.bb
+++ /dev/null
@@ -1,4 +0,0 @@
1require optee-client-fslc-imx.inc
2
3SRCBRANCH = "lf-6.12.20_2.0.0"
4SRCREV = "02e7f9213b0d7db9c35ebf1e41e733fc9c5a3f75"
diff --git a/recipes-security/optee-imx/optee-client_4.8.0.imx.bb b/recipes-security/optee-imx/optee-client_4.8.0.imx.bb
new file mode 100644
index 000000000..cb3235a9a
--- /dev/null
+++ b/recipes-security/optee-imx/optee-client_4.8.0.imx.bb
@@ -0,0 +1,4 @@
1require optee-client-fslc-imx.inc
2
3SRCBRANCH = "lf-6.18.2_1.0.0"
4SRCREV = "ad79099ca6b642f2bb69739f020ea50698ea0744"
diff --git a/recipes-security/optee-imx/optee-fslc.inc b/recipes-security/optee-imx/optee-fslc.inc
index 599dda522..dadbfa802 100644
--- a/recipes-security/optee-imx/optee-fslc.inc
+++ b/recipes-security/optee-imx/optee-fslc.inc
@@ -1,5 +1,5 @@
1# Copied from meta-arm/recipes-security/optee/optee.inc. 1# Copied from meta-arm/recipes-security/optee/optee.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L30 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L32
3 3
4UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+(\.\d+)+)$" 4UPSTREAM_CHECK_GITTAGREGEX = "^(?P<pver>\d+(\.\d+)+)$"
5 5
@@ -19,16 +19,13 @@ OPTEE_ARCH:arm = "arm32"
19OPTEE_ARCH:aarch64 = "arm64" 19OPTEE_ARCH:aarch64 = "arm64"
20OPTEE_CORE = "${@d.getVar('OPTEE_ARCH').upper()}" 20OPTEE_CORE = "${@d.getVar('OPTEE_ARCH').upper()}"
21 21
22OPTEE_TOOLCHAIN = "${@d.getVar('TOOLCHAIN') or 'gcc'}"
23OPTEE_COMPILER = "${@bb.utils.contains("BBFILE_COLLECTIONS", "clang-layer", "${OPTEE_TOOLCHAIN}", "gcc", d)}"
24
25# Set here but not passed to EXTRA_OEMAKE by default as that breaks 22# Set here but not passed to EXTRA_OEMAKE by default as that breaks
26# the optee-os build 23# the optee-os build
27TA_DEV_KIT_DIR = "${STAGING_INCDIR}/optee/export-user_ta" 24TA_DEV_KIT_DIR = "${STAGING_INCDIR}/optee/export-user_ta"
28 25
26# Assume that our TOOLCHAIN matches OP-TEE's COMPILER
29EXTRA_OEMAKE += "V=1 \ 27EXTRA_OEMAKE += "V=1 \
30 LIBGCC_LOCATE_CFLAGS='${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}' \ 28 COMPILER=${TOOLCHAIN} \
31 COMPILER=${OPTEE_COMPILER} \
32 OPTEE_CLIENT_EXPORT=${STAGING_DIR_HOST}${prefix} \ 29 OPTEE_CLIENT_EXPORT=${STAGING_DIR_HOST}${prefix} \
33 TEEC_EXPORT=${STAGING_DIR_HOST}${prefix} \ 30 TEEC_EXPORT=${STAGING_DIR_HOST}${prefix} \
34 " 31 "
diff --git a/recipes-security/optee-imx/optee-os-common-fslc-imx.inc b/recipes-security/optee-imx/optee-os-common-fslc-imx.inc
index ffd217099..16ed8cea7 100644
--- a/recipes-security/optee-imx/optee-os-common-fslc-imx.inc
+++ b/recipes-security/optee-imx/optee-os-common-fslc-imx.inc
@@ -1,5 +1,5 @@
1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-os-common-imx.inc. 1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-os-common-imx.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L37 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L39
3require optee-os-fslc.inc 3require optee-os-fslc.inc
4 4
5DEPENDS:append:arm = "u-boot-mkimage-native" 5DEPENDS:append:arm = "u-boot-mkimage-native"
@@ -8,7 +8,6 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/optee-os:"
8 8
9SRC_URI:remove = "git://github.com/OP-TEE/optee_os.git;branch=master;protocol=https" 9SRC_URI:remove = "git://github.com/OP-TEE/optee_os.git;branch=master;protocol=https"
10SRC_URI:prepend = "${OPTEE_OS_SRC};branch=${SRCBRANCH} " 10SRC_URI:prepend = "${OPTEE_OS_SRC};branch=${SRCBRANCH} "
11SRC_URI:append = " file://0007-allow-setting-sysroot-for-clang.patch"
12SRC_URI:remove = "file://0001-allow-setting-sysroot-for-libgcc-lookup.patch \ 11SRC_URI:remove = "file://0001-allow-setting-sysroot-for-libgcc-lookup.patch \
13 file://0002-optee-enable-clang-support.patch \ 12 file://0002-optee-enable-clang-support.patch \
14 file://0003-core-link-add-no-warn-rwx-segments.patch" 13 file://0003-core-link-add-no-warn-rwx-segments.patch"
diff --git a/recipes-security/optee-imx/optee-os-fslc-imx.inc b/recipes-security/optee-imx/optee-os-fslc-imx.inc
index f46f666ee..ecd88b41d 100644
--- a/recipes-security/optee-imx/optee-os-fslc-imx.inc
+++ b/recipes-security/optee-imx/optee-os-fslc-imx.inc
@@ -1,5 +1,5 @@
1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-os-imx.inc. 1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-os-imx.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L37 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L39
3 3
4require optee-os-common-fslc-imx.inc 4require optee-os-common-fslc-imx.inc
5 5
diff --git a/recipes-security/optee-imx/optee-os-fslc.inc b/recipes-security/optee-imx/optee-os-fslc.inc
index 4df1617d1..febdd2c73 100644
--- a/recipes-security/optee-imx/optee-os-fslc.inc
+++ b/recipes-security/optee-imx/optee-os-fslc.inc
@@ -1,5 +1,5 @@
1# Copied from meta-arm/recipes-security/optee/optee-os.inc. 1# Copied from meta-arm/recipes-security/optee/optee-os.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L30 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L32
3 3
4SUMMARY = "OP-TEE Trusted OS" 4SUMMARY = "OP-TEE Trusted OS"
5DESCRIPTION = "Open Portable Trusted Execution Environment - Trusted side of the TEE" 5DESCRIPTION = "Open Portable Trusted Execution Environment - Trusted side of the TEE"
@@ -15,7 +15,7 @@ CVE_PRODUCT = "linaro:op-tee op-tee:op-tee_os"
15 15
16DEPENDS = "python3-pyelftools-native python3-cryptography-native" 16DEPENDS = "python3-pyelftools-native python3-cryptography-native"
17 17
18DEPENDS:append:toolchain-clang = " compiler-rt" 18DEPENDS:append:toolchain-clang = " lld-native compiler-rt"
19 19
20SRC_URI = "git://github.com/OP-TEE/optee_os.git;branch=master;protocol=https" 20SRC_URI = "git://github.com/OP-TEE/optee_os.git;branch=master;protocol=https"
21 21
@@ -33,15 +33,14 @@ EXTRA_OEMAKE += " \
33EXTRA_OEMAKE += " HOST_PREFIX=${HOST_PREFIX}" 33EXTRA_OEMAKE += " HOST_PREFIX=${HOST_PREFIX}"
34EXTRA_OEMAKE += " CROSS_COMPILE64=${HOST_PREFIX}" 34EXTRA_OEMAKE += " CROSS_COMPILE64=${HOST_PREFIX}"
35 35
36# Enable BTI in optee
37EXTRA_OEMAKE += "${@bb.utils.contains('MACHINE_FEATURES', 'arm-branch-protection', ' CFG_TA_BTI=1 CFG_CORE_PAUTH=y CFG_TA_PAUTH=y', '', d)}"
38
36LDFLAGS[unexport] = "1" 39LDFLAGS[unexport] = "1"
37CPPFLAGS[unexport] = "1" 40CPPFLAGS[unexport] = "1"
38AS[unexport] = "1" 41AS[unexport] = "1"
39LD[unexport] = "1" 42LD[unexport] = "1"
40 43
41do_compile:prepend() {
42 PLAT_LIBGCC_PATH=$(${CC} -print-libgcc-file-name)
43}
44
45do_compile() { 44do_compile() {
46 oe_runmake -C ${S} all 45 oe_runmake -C ${S} all
47} 46}
diff --git a/recipes-security/optee-imx/optee-os-tadevkit-fslc-imx.inc b/recipes-security/optee-imx/optee-os-tadevkit-fslc-imx.inc
index 0b02c6908..68918414c 100644
--- a/recipes-security/optee-imx/optee-os-tadevkit-fslc-imx.inc
+++ b/recipes-security/optee-imx/optee-os-tadevkit-fslc-imx.inc
@@ -1,5 +1,5 @@
1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-os-tadevkit-imx.inc. 1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-os-tadevkit-imx.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L37 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L39
3 3
4require optee-os-common-fslc-imx.inc 4require optee-os-common-fslc-imx.inc
5 5
@@ -22,3 +22,6 @@ do_deploy() {
22} 22}
23 23
24FILES:${PN} = "${includedir}/optee/" 24FILES:${PN} = "${includedir}/optee/"
25
26# Build paths are currently embedded
27INSANE_SKIP:${PN}-dev += "buildpaths"
diff --git a/recipes-security/optee-imx/optee-os-tadevkit_4.6.0.imx.bb b/recipes-security/optee-imx/optee-os-tadevkit_4.6.0.imx.bb
deleted file mode 100644
index 92bdf00e7..000000000
--- a/recipes-security/optee-imx/optee-os-tadevkit_4.6.0.imx.bb
+++ /dev/null
@@ -1,4 +0,0 @@
1require optee-os-tadevkit-fslc-imx.inc
2
3SRCBRANCH = "lf-6.12.20_2.0.0"
4SRCREV = "87964807d80baf1dcfd89cafc66de34a1cf16bf3"
diff --git a/recipes-security/optee-imx/optee-os-tadevkit_4.8.0.imx.bb b/recipes-security/optee-imx/optee-os-tadevkit_4.8.0.imx.bb
new file mode 100644
index 000000000..d62d7d647
--- /dev/null
+++ b/recipes-security/optee-imx/optee-os-tadevkit_4.8.0.imx.bb
@@ -0,0 +1,4 @@
1require optee-os-tadevkit-fslc-imx.inc
2
3SRCBRANCH = "lf-6.18.2_1.0.0"
4SRCREV = "e7ed997213779e3d1b7417461c5b4847d3230db9"
diff --git a/recipes-security/optee-imx/optee-os_4.6.0.imx.bb b/recipes-security/optee-imx/optee-os_4.6.0.imx.bb
deleted file mode 100644
index ed2557bcb..000000000
--- a/recipes-security/optee-imx/optee-os_4.6.0.imx.bb
+++ /dev/null
@@ -1,6 +0,0 @@
1# Copyright 2017-2024 NXP
2
3require optee-os-fslc-imx.inc
4
5SRCBRANCH = "lf-6.12.20_2.0.0"
6SRCREV = "87964807d80baf1dcfd89cafc66de34a1cf16bf3"
diff --git a/recipes-security/optee-imx/optee-os_4.8.0.imx.bb b/recipes-security/optee-imx/optee-os_4.8.0.imx.bb
new file mode 100644
index 000000000..b73b4c757
--- /dev/null
+++ b/recipes-security/optee-imx/optee-os_4.8.0.imx.bb
@@ -0,0 +1,6 @@
1# Copyright 2017-2024,2026 NXP
2
3require optee-os-fslc-imx.inc
4
5SRCBRANCH = "lf-6.18.2_1.0.0"
6SRCREV = "e7ed997213779e3d1b7417461c5b4847d3230db9"
diff --git a/recipes-security/optee-imx/optee-test-fslc-imx.inc b/recipes-security/optee-imx/optee-test-fslc-imx.inc
index b4bb6031b..b7d3a34e6 100644
--- a/recipes-security/optee-imx/optee-test-fslc-imx.inc
+++ b/recipes-security/optee-imx/optee-test-fslc-imx.inc
@@ -1,9 +1,13 @@
1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-test-imx.inc. 1# Copied from meta-imx/meta-imx-bsp/recipes-security/optee/optee-test-imx.inc.
2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L37 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L39
3require optee-test-fslc.inc 3require optee-test-fslc.inc
4 4
5DEPENDS += "openssl" 5DEPENDS += "openssl"
6 6
7inherit features_check
8
9REQUIRED_MACHINE_FEATURES = "optee"
10
7FILESEXTRAPATHS:prepend := "${THISDIR}/optee-test:" 11FILESEXTRAPATHS:prepend := "${THISDIR}/optee-test:"
8 12
9SRC_URI:remove = "git://github.com/OP-TEE/optee_test.git;branch=master;protocol=https" 13SRC_URI:remove = "git://github.com/OP-TEE/optee_test.git;branch=master;protocol=https"
diff --git a/recipes-security/optee-imx/optee-test-fslc.inc b/recipes-security/optee-imx/optee-test-fslc.inc
index 46d57ac41..a5183b7e1 100644
--- a/recipes-security/optee-imx/optee-test-fslc.inc
+++ b/recipes-security/optee-imx/optee-test-fslc.inc
@@ -1,5 +1,5 @@
1# Copied from meta-arm/recipes-security/optee/optee-test.inc. 1# Copied from meta-arm/recipes-security/optee/optee-test.inc.
2# See:https://github.com/nxp-imx/imx-manifest/blob/imx-linux-walnascar/imx-6.12.20-2.0.0.xml#L30 2# See: https://github.com/nxp-imx/imx-manifest/blob/imx-linux-whinlatter/imx-6.18.2-1.0.0.xml#L32
3 3
4SUMMARY = "OP-TEE sanity testsuite" 4SUMMARY = "OP-TEE sanity testsuite"
5DESCRIPTION = "Open Portable Trusted Execution Environment - Test suite" 5DESCRIPTION = "Open Portable Trusted Execution Environment - Test suite"
@@ -12,6 +12,7 @@ inherit deploy
12require optee-fslc.inc 12require optee-fslc.inc
13 13
14DEPENDS = "optee-client optee-os-tadevkit python3-cryptography-native openssl" 14DEPENDS = "optee-client optee-os-tadevkit python3-cryptography-native openssl"
15DEPENDS:append:toolchain-clang = " lld-native"
15 16
16SRC_URI = "git://github.com/OP-TEE/optee_test.git;branch=master;protocol=https \ 17SRC_URI = "git://github.com/OP-TEE/optee_test.git;branch=master;protocol=https \
17 file://run-ptest \ 18 file://run-ptest \
diff --git a/recipes-security/optee-imx/optee-test_4.6.0.imx.bb b/recipes-security/optee-imx/optee-test_4.8.0.imx.bb
index 78e933486..2f2b40e09 100644
--- a/recipes-security/optee-imx/optee-test_4.6.0.imx.bb
+++ b/recipes-security/optee-imx/optee-test_4.8.0.imx.bb
@@ -1,4 +1,4 @@
1# Copyright 2017-2024 NXP 1# Copyright 2017-2024,2026 NXP
2 2
3require optee-test-fslc-imx.inc 3require optee-test-fslc-imx.inc
4 4
@@ -9,5 +9,5 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=a8fa504109e4cd7ea575bc49ea4be560 \
9 file://LICENSE-GPL;md5=10e86b5d2a6cb0e2b9dcfdd26a9ac58d" 9 file://LICENSE-GPL;md5=10e86b5d2a6cb0e2b9dcfdd26a9ac58d"
10 10
11 11
12SRCBRANCH = "lf-6.12.20_2.0.0" 12SRCBRANCH = "lf-6.18.2_1.0.0"
13SRCREV = "010f088f05b5ebf392c6e235d6e53d391755722f" 13SRCREV = "3383a744a5997fdb3457b3cbe95aea3ce27879b3"
diff --git a/recipes-security/optee-qoriq/optee-test.nxp.inc b/recipes-security/optee-qoriq/optee-test.nxp.inc
index 6bf158d12..75ed4d0c9 100644
--- a/recipes-security/optee-qoriq/optee-test.nxp.inc
+++ b/recipes-security/optee-qoriq/optee-test.nxp.inc
@@ -10,4 +10,8 @@ SRC_URI:prepend = "${OPTEE_TEST_SRC};branch=${OPTEE_TEST_BRANCH} "
10 10
11OPTEE_TEST_SRC ?= "git://github.com/nxp-qoriq/optee_test.git;protocol=https" 11OPTEE_TEST_SRC ?= "git://github.com/nxp-qoriq/optee_test.git;protocol=https"
12 12
13REQUIRED_MACHINE_FEATURES = "optee"
14
15inherit features_check
16
13COMPATIBLE_MACHINE = "(qoriq-arm64)" 17COMPATIBLE_MACHINE = "(qoriq-arm64)"
diff --git a/recipes-security/smw/crypto-af-alg_git.bb b/recipes-security/smw/crypto-af-alg_git.bb
new file mode 100644
index 000000000..4101776a5
--- /dev/null
+++ b/recipes-security/smw/crypto-af-alg_git.bb
@@ -0,0 +1,21 @@
1# Copyright 2026 NXP
2
3SUMMARY = "NXP i.MX CRYPTO AF_ALG"
4DESCRIPTION = "NXP i.MX crypto af alg tool to perform symmetric operation"
5SECTION = "base"
6LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://LICENSE;md5=4ef68f113b9400b1140be9b69208a816"
8
9SRCBRANCH = "lf-6.18.2_1.0.0"
10CRYPTO_AF_ALG_SRC ?= "git://github.com/nxp-imx/crypto_af_alg.git;protocol=https"
11SRC_URI = "${CRYPTO_AF_ALG_SRC};branch=${SRCBRANCH}"
12
13SRCREV = "2fb11a600af90c80b8bb23368d1d6831c5deb973"
14
15TARGET_CC_ARCH += "${LDFLAGS}"
16
17do_install () {
18 oe_runmake DESTDIR=${D} install
19}
20
21COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-security/smw/files/0001-Fixed-discarded-qualifiers-error.patch b/recipes-security/smw/files/0001-Fixed-discarded-qualifiers-error.patch
new file mode 100644
index 000000000..109a739ae
--- /dev/null
+++ b/recipes-security/smw/files/0001-Fixed-discarded-qualifiers-error.patch
@@ -0,0 +1,28 @@
1Upstream-Status: Pending
2
3diff --git a/osal/linux/obj_db.c b/osal/linux/obj_db.c
4index 446a08b1..18e4931b 100644
5--- a/osal/linux/obj_db.c
6+++ b/osal/linux/obj_db.c
7@@ -1203,7 +1203,7 @@ static void close_db_file(struct obj_db *db)
8 static int create_directory(const char *filename)
9 {
10 int ret = -1;
11- char *end = NULL;
12+ const char *end = NULL;
13 char *directory = NULL;
14 size_t length = 0;
15 int *err = NULL;
16diff --git a/pkcs11/tests/callback.c b/pkcs11/tests/callback.c
17index 3e0ffbf4..02dc2f91 100644
18--- a/pkcs11/tests/callback.c
19+++ b/pkcs11/tests/callback.c
20@@ -245,7 +245,7 @@ void tests_pkcs11_callback(void *lib_hdl, CK_VOID_PTR pfunc)
21
22 TEST_START();
23
24- mp_args.testname = strrchr(__func__, '_');
25+ mp_args.testname = (char *) strrchr(__func__, '_');
26 if (CHECK_EXPECTED(mp_args.testname, "Unable to get function name\n") ||
27 !mp_args.testname)
28 goto end;
diff --git a/recipes-security/smw/itest_git.bb b/recipes-security/smw/itest_git.bb
new file mode 100644
index 000000000..7885edc30
--- /dev/null
+++ b/recipes-security/smw/itest_git.bb
@@ -0,0 +1,34 @@
1# Copyright 2026 NXP
2SUMMARY = "NXP i.MX Itest"
3DESCRIPTION = "NXP i.MX Itest"
4SECTION = "base"
5LICENSE = "BSD-3-Clause"
6LIC_FILES_CHKSUM = "file://LICENSE;md5=8636bd68fc00cc6a3809b7b58b45f982"
7
8SRC_URI = "${ITEST_SRC};branch=${SRCBRANCH}"
9ITEST_SRC ?= "git://github.com/nxp-imx/itest.git;protocol=https"
10SRCBRANCH = "lf-6.18.2_1.0.0"
11SRCREV = "37533de97b8f5f430caa00e3560fdbd4483d893c"
12
13inherit cmake
14
15PACKAGECONFIG:mx8dxl-nxp-bsp ??= "ele-seco"
16PACKAGECONFIG:mx8ulp-nxp-bsp ??= "ele"
17PACKAGECONFIG:mx91-nxp-bsp ??= "ele"
18PACKAGECONFIG:mx93-nxp-bsp ??= "ele"
19PACKAGECONFIG:mx943-nxp-bsp ??= "ele ele-seco prime"
20PACKAGECONFIG:mx95-nxp-bsp ??= "ele ele-seco"
21PACKAGECONFIG:mx952-nxp-bsp ??= "ele ele-seco prime"
22
23PACKAGECONFIG[ele] = "-DELE=1,,imx-secure-enclave"
24PACKAGECONFIG[ele-seco] = "-DV2X=1,,imx-secure-enclave-seco"
25PACKAGECONFIG[prime] = "-DPRIME=1,,imx-secure-enclave-prime"
26
27EXTRA_OECMAKE = " \
28 -DOPENSSL_PATH="${STAGING_DIR_HOST}/usr" \
29 -DELE_LIB_PATH="${STAGING_DIR_HOST}/usr" \
30 -DLIB_PATH="${STAGING_DIR_HOST}${libdir}""
31
32PACKAGE_ARCH = "${MACHINE_SOCARCH}"
33
34COMPATIBLE_MACHINE = "(mx8dxl-nxp-bsp|mx8ulp-nxp-bsp|mx9-nxp-bsp)"
diff --git a/recipes-security/smw/keyctl-caam_git.bb b/recipes-security/smw/keyctl-caam_git.bb
index f147e1148..13202326b 100644
--- a/recipes-security/smw/keyctl-caam_git.bb
+++ b/recipes-security/smw/keyctl-caam_git.bb
@@ -4,15 +4,19 @@ SUMMARY = "NXP i.MX CAAM Keyctl"
4DESCRIPTION = "NXP i.MX keyctl tool to manage CAAM Keys" 4DESCRIPTION = "NXP i.MX keyctl tool to manage CAAM Keys"
5SECTION = "base" 5SECTION = "base"
6LICENSE = "BSD-3-Clause" 6LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://COPYING;md5=8636bd68fc00cc6a3809b7b58b45f982" 7LIC_FILES_CHKSUM = "file://LICENSE;md5=8636bd68fc00cc6a3809b7b58b45f982"
8 8
9SRCBRANCH = "master" 9SRCBRANCH = "lf-6.18.2_1.0.0"
10SRC_URI = "git://github.com/nxp-imx/keyctl_caam.git;protocol=https;branch=${SRCBRANCH}" 10SRC_URI = "git://github.com/nxp-imx/keyctl_caam.git;protocol=https;branch=${SRCBRANCH}"
11 11
12SRCREV = "81dc06cdb9c4d0d4ba10459d85af9a8603774948" 12SRCREV = "71cb18f17d766145217a5517748e37e250b055bf"
13
14DEPENDS = " openssl"
13 15
14TARGET_CC_ARCH += "${LDFLAGS}" 16TARGET_CC_ARCH += "${LDFLAGS}"
15 17
18EXTRA_OEMAKE = " OPENSSL_PATH=${STAGING_INCDIR}"
19
16do_install () { 20do_install () {
17 oe_runmake DESTDIR=${D} install 21 oe_runmake DESTDIR=${D} install
18} 22}
diff --git a/recipes-security/smw/smw_5.3.bb b/recipes-security/smw/smw_5.3.bb
new file mode 100644
index 000000000..46155978e
--- /dev/null
+++ b/recipes-security/smw/smw_5.3.bb
@@ -0,0 +1,88 @@
1# Copyright 2020-2026 NXP
2require recipes-security/optee-imx/optee-fslc.inc
3
4SUMMARY = "NXP i.MX Security Middleware Library"
5DESCRIPTION = "NXP i.MX Security Middleware Library"
6SECTION = "base"
7LICENSE = "BSD-3-Clause"
8LICENSE = "Apache-2.0 & BSD-3-Clause & Zlib"
9LIC_FILES_CHKSUM = "file://LICENSE;md5=ff20c8e51b28869d9cdec70a818d163f \
10 file://${PSA_ARCH_TESTS_SRC_PATH}/LICENSE.md;md5=2a944942e1496af1886903d274dedb13"
11
12DEPENDS = " \
13 python3-cryptography-native \
14 json-c \
15 optee-client \
16 optee-os-tadevkit \
17 sqlite3 \
18"
19
20SRC_URI = "${SMW_LIB_SRC};branch=${SRCBRANCH_smw};name=smw \
21 ${PSA_LIB_SRC};branch=${SRCBRANCH_psa};name=psa;destsuffix=${BB_GIT_DEFAULT_DESTSUFFIX}/${PSA_ARCH_TESTS_SRC_PATH}"
22SRC_URI += "file://0001-Fixed-discarded-qualifiers-error.patch"
23SMW_LIB_SRC ?= "git://github.com/nxp-imx/imx-smw.git;protocol=https"
24PSA_LIB_SRC ?= "git://github.com/ARM-software/psa-arch-tests.git;protocol=https"
25PSA_ARCH_TESTS_SRC_PATH = "../psa-arch-tests"
26
27SRCBRANCH_smw = "release/version_5.x"
28SRCBRANCH_psa = "main"
29SRCREV_smw = "c643587073584057700f39098ab12f536a21600d"
30SRCREV_psa = "463cb95ada820bc6f758d50066cf8c0ed5cc3a02"
31SRCREV_FORMAT = "smw_psa"
32
33inherit cmake features_check python3native
34
35REQUIRED_MACHINE_FEATURES = "optee"
36
37PACKAGECONFIG ??= "${PACKAGECONFIG_DRIVERS} ${PACKAGECONFIG_FEATURES}"
38PACKAGECONFIG_DRIVERS = ""
39PACKAGECONFIG_DRIVERS:mx8x-nxp-bsp = "ele-seco"
40PACKAGECONFIG_DRIVERS:mx8ulp-nxp-bsp = "ele"
41PACKAGECONFIG_DRIVERS:mx91-nxp-bsp = "ele"
42PACKAGECONFIG_DRIVERS:mx93-nxp-bsp = "ele"
43PACKAGECONFIG_DRIVERS:mx943-nxp-bsp = "ele"
44PACKAGECONFIG_DRIVERS:mx95-nxp-bsp = "ele"
45
46PACKAGECONFIG_FEATURES = ""
47PACKAGECONFIG_FEATURES:mx91-nxp-bsp = "tls"
48PACKAGECONFIG_FEATURES:mx93-nxp-bsp = "tls"
49PACKAGECONFIG_FEATURES:mx943-nxp-bsp = "tls"
50PACKAGECONFIG_FEATURES:mx95-nxp-bsp = "tls"
51
52PACKAGECONFIG[ele] = "-DELE_ROOT=${STAGING_DIR_HOST},,imx-secure-enclave,,,ele-seco"
53PACKAGECONFIG[ele-seco] = "-DSECO_ROOT=${STAGING_DIR_HOST},,imx-secure-enclave-seco,,,ele"
54PACKAGECONFIG[tls] = "-DENABLE_TLS=ON,-DENABLE_TLS=OFF,openssl"
55
56CFLAGS[unexport] = "1"
57CPPFLAGS[unexport] = "1"
58AS[unexport] = "1"
59LD[unexport] = "1"
60
61# setting the linker options
62TARGET_LDFLAGS:remove = "${DEBUG_PREFIX_MAP}"
63
64EXTRA_OECMAKE = " \
65 -DYOCTO_BUILD=ON \
66 -DTA_DEV_KIT_ROOT=${TA_DEV_KIT_DIR} \
67 -DTEEC_ROOT=${STAGING_DIR_HOST} \
68 -DJSONC_ROOT="${COMPONENTS_DIR}/${TARGET_ARCH}/json-c/usr" \
69 -DPSA_ARCH_TESTS_SRC_PATH=${PSA_ARCH_TESTS_SRC_PATH} \
70 -DTEE_TA_DESTDIR=${nonarch_base_libdir} \
71"
72
73OECMAKE_TARGET_COMPILE += "build_tests"
74OECMAKE_TARGET_INSTALL += "install_tests"
75
76PACKAGES =+ "${PN}-tests"
77
78FILES:${PN} += "${nonarch_base_libdir}/optee_armtz/*"
79
80INSANE_SKIP:${PN}-dbg = "buildpaths"
81
82FILES:${PN}-tests = "${bindir}/* ${datadir}/${BPN}/*"
83RDEPENDS:${PN}-tests = "cmake"
84INSANE_SKIP:${PN}-tests = "buildpaths"
85
86PACKAGE_ARCH = "${MACHINE_SOCARCH}"
87
88COMPATIBLE_MACHINE = "(imx-nxp-bsp)"
diff --git a/recipes-security/smw/smw_git.bb b/recipes-security/smw/smw_git.bb
deleted file mode 100644
index dbb59d2f3..000000000
--- a/recipes-security/smw/smw_git.bb
+++ /dev/null
@@ -1,64 +0,0 @@
1# Copyright 2020-23 NXP
2
3SUMMARY = "NXP i.MX Security Middleware Library"
4DESCRIPTION = "NXP i.MX Security Middleware Library"
5SECTION = "base"
6LICENSE = "BSD-3-Clause"
7LICENSE = "Apache-2.0 & BSD-3-Clause & Zlib"
8LIC_FILES_CHKSUM = "file://LICENSE;md5=8636bd68fc00cc6a3809b7b58b45f982 \
9 file://../psa-arch-tests/LICENSE.md;md5=2a944942e1496af1886903d274dedb13"
10
11DEPENDS = "json-c optee-os optee-client python3-cryptography-native"
12DEPENDS:append:mx8qxp-nxp-bsp = " imx-seco-libs"
13DEPENDS:append:mx8dx-nxp-bsp = " imx-seco-libs"
14DEPENDS:append:mx8ulp-nxp-bsp = " imx-secure-enclave"
15
16SRC_URI = "git://github.com/nxp-imx/imx-smw.git;protocol=https;branch=release/version_2.x;name=smw;destsuffix=git/smw \
17 git://github.com/ARM-software/psa-arch-tests.git;protocol=https;branch=main;name=psa;destsuffix=git/psa-arch-tests \
18 "
19SRCREV_smw = "f0570b3e8cb5f68d54edc4f9dd7cb984f6f604ed"
20SRCREV_psa = "463cb95ada820bc6f758d50066cf8c0ed5cc3a02"
21SRCREV_FORMAT = "smw_psa"
22S = "${UNPACKDIR}/git/smw"
23
24inherit cmake python3native
25
26CFLAGS[unexport] = "1"
27CPPFLAGS[unexport] = "1"
28AS[unexport] = "1"
29LD[unexport] = "1"
30
31# setting the linker options
32TARGET_LDFLAGS:remove = "${DEBUG_PREFIX_MAP}"
33
34OPTEE_OS_TA_EXPORT_DIR:aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64"
35OPTEE_OS_TA_EXPORT_DIR:arm = "${STAGING_INCDIR}/optee/export-user_ta_arm32"
36
37# Needs to sign OPTEE TAs
38export OPENSSL_MODULES = "${STAGING_LIBDIR_NATIVE}/ossl-modules"
39
40EXTRA_OECMAKE = " \
41 -DTA_DEV_KIT_ROOT=${OPTEE_OS_TA_EXPORT_DIR} \
42 -DTEEC_ROOT=${STAGING_DIR_HOST} \
43 -DJSONC_ROOT="${COMPONENTS_DIR}/${TARGET_ARCH}/json-c/usr" \
44 -DPSA_ARCH_TESTS_SRC_PATH=../${PSA_ARCH_TESTS_SRC_PATH} \
45"
46EXTRA_OECMAKE:append:mx8qxp-nxp-bsp = "-DSECO_ROOT=${STAGING_DIR_HOST}"
47EXTRA_OECMAKE:append:mx8dx-nxp-bsp = "-DSECO_ROOT=${STAGING_DIR_HOST}"
48EXTRA_OECMAKE:append:mx8ulp-nxp-bsp = "-DELE_ROOT=${STAGING_DIR_HOST}"
49EXTRA_OECMAKE_IMX:mx93-nxp-bsp = "-DELE_ROOT=${STAGING_DIR_HOST}"
50
51OECMAKE_TARGET_COMPILE += "build_tests"
52OECMAKE_TARGET_INSTALL += "install_tests"
53
54INSANE_SKIP_${PN}-tests = "textrel"
55
56PACKAGES =+ "${PN}-tests"
57
58FILES:${PN} += "${base_libdir}/optee_armtz/*"
59
60FILES:${PN}-tests = "${bindir}/* ${datadir}/${BPN}/*"
61
62RDEPENDS:${PN}-tests += "bash cmake"
63
64COMPATIBLE_MACHINE = "(imx-nxp-bsp)"