From 4f7c0fc8f909a27381740bc1da9fcd26557aeab4 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:01:04 -0700 Subject: [PATCH 01/21] conf: layer: make langdale and mickledore compatible Signed-off-by: Chris Dimich --- conf/layer.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/layer.conf b/conf/layer.conf index 8e19448..4d2189d 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -8,5 +8,5 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ BBFILE_COLLECTIONS += "meta-freescale-ml" BBFILE_PATTERN_meta-freescale-ml := "^${LAYERDIR}/" BBFILE_PRIORITY_meta-freescale-ml = "8" -LAYERSERIES_COMPAT_meta-freescale-ml = "kirkstone" +LAYERSERIES_COMPAT_meta-freescale-ml = "kirkstone langdale mickledore" LAYERDEPENDS_meta-freescale-ml = "freescale-layer meta-python" From 7f5844fa117f00bf73ccf3fb668b6fe82dd2a507 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:05:01 -0700 Subject: [PATCH 02/21] armnn-swig: remove recipe As per NXP langdale-6.1.1-1.0.0 release, no longer supported. Signed-off-by: Chris Dimich --- recipes-devtools/armnn-swig/armnn-swig.inc | 71 ------------------- ...re-use-pkg-config-for-pcre-detection.patch | 64 ----------------- .../armnn-swig/armnn-swig_4.0.2.bb | 7 -- 3 files changed, 142 deletions(-) delete mode 100644 recipes-devtools/armnn-swig/armnn-swig.inc delete mode 100644 recipes-devtools/armnn-swig/armnn-swig/0001-configure-use-pkg-config-for-pcre-detection.patch delete mode 100644 recipes-devtools/armnn-swig/armnn-swig_4.0.2.bb diff --git a/recipes-devtools/armnn-swig/armnn-swig.inc b/recipes-devtools/armnn-swig/armnn-swig.inc deleted file mode 100644 index 9f3eff7..0000000 --- a/recipes-devtools/armnn-swig/armnn-swig.inc +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "SWIG - Simplified Wrapper and Interface Generator" -DESCRIPTION = "SWIG is a compiler that makes it easy to integrate C and C++ \ -code with other languages including Perl, Tcl, Ruby, Python, Java, Guile, \ -Mzscheme, Chicken, OCaml, Pike, and C#." -HOMEPAGE = "http://www.swig.org/" -LICENSE = "GPL-3.0-only" -LIC_FILES_CHKSUM = "file://LICENSE;md5=e7807a6282784a7dde4c846626b08fc6 \ - file://LICENSE-GPL;md5=d32239bcb673463ab874e80d47fae504 \ - file://LICENSE-UNIVERSITIES;md5=8ce9dcc8f7c994de4a408b205c72ba08" - -SECTION = "devel" - -DEPENDS = "libpcre bison-native" - -SRC_URI = "git://github.com/swig/swig.git" -SRCREV = "efe5f181cf69975cf2fa1dcddefc29b93e4a6196" - -inherit autotools python3native pkgconfig - -EXTRA_OECONF = " \ - --with-python3=${PYTHON} \ - --without-allegrocl \ - --without-android \ - --without-boost \ - --without-chicken \ - --without-clisp \ - --without-csharp \ - --without-d \ - --without-gcj \ - --without-go \ - --without-guile \ - --without-java \ - --without-lua \ - --without-mzscheme \ - --without-ocaml \ - --without-octave \ - --without-perl5 \ - --without-pike \ - --without-php \ - --without-r \ - --without-ruby \ - --without-tcl \ -" - -S = "${WORKDIR}/git" - -EXTRA_AUTORECONF += "-I Tools/config" - -BBCLASSEXTEND = "native nativesdk" - -# necessary together with bison dependency until a new upstream version after -# 3.0.12 includes 0001-Fix-generated-code-for-constant-expressions-containi.patch -do_configure:append() { - mkdir -p ${B}/Source/CParse -} - -do_install:append_class-nativesdk() { - cd ${D}${bindir} - ln -s swig swig4.0 -} - -def swiglib_relpath(d): - swiglib = d.getVar('datadir') + "/" + 'swig' + "/" + d.getVar('PV') - return os.path.relpath(swiglib, d.getVar('bindir')) - -do_install:append_class-native() { - create_wrapper ${D}${bindir}/swig SWIG_LIB='`dirname $''realpath`'/${@swiglib_relpath(d)} -} - -FILES:${PN}-dev += "${datadir}/swig/*/*" -ALLOW_EMPTY:${PN} = "1" diff --git a/recipes-devtools/armnn-swig/armnn-swig/0001-configure-use-pkg-config-for-pcre-detection.patch b/recipes-devtools/armnn-swig/armnn-swig/0001-configure-use-pkg-config-for-pcre-detection.patch deleted file mode 100644 index 1b1128a..0000000 --- a/recipes-devtools/armnn-swig/armnn-swig/0001-configure-use-pkg-config-for-pcre-detection.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 5c4d6d8538994d5fe9b3b46bfafaf0a605e3bda6 Mon Sep 17 00:00:00 2001 -From: Koen Kooi -Date: Tue, 17 Jun 2014 08:18:17 +0200 -Subject: [PATCH] configure: use pkg-config for pcre detection - -Signed-off-by: Koen Kooi -Upstream-Status: pending ---- - configure.ac | 38 +++++++------------------------------- - 1 file changed, 7 insertions(+), 31 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 0c984b7..6edcec1 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -70,38 +70,14 @@ AC_MSG_RESULT([$with_pcre]) - - dnl To make configuring easier, check for a locally built PCRE using the Tools/pcre-build.sh script - if test x"${with_pcre}" = xyes ; then -- AC_MSG_CHECKING([whether to use local PCRE]) -- local_pcre_config=no -- if test -z $PCRE_CONFIG; then -- if test -f `pwd`/pcre/pcre-swig-install/bin/pcre-config; then -- PCRE_CONFIG=`pwd`/pcre/pcre-swig-install/bin/pcre-config -- local_pcre_config=$PCRE_CONFIG -- fi -- fi -- AC_MSG_RESULT([$local_pcre_config]) --fi --AS_IF([test "x$with_pcre" != xno], -- [AX_PATH_GENERIC([pcre], -- [], dnl Minimal version of PCRE we need -- accept any -- [], dnl custom sed script for version parsing is not needed -- [AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE library]) -- LIBS="$LIBS $PCRE_LIBS" -- CPPFLAGS="$CPPFLAGS $PCRE_CFLAGS" -- ], -- [AC_MSG_FAILURE([ -- Cannot find pcre-config script from PCRE (Perl Compatible Regular Expressions) -- library package. This dependency is needed for configure to complete, -- Either: -- - Install the PCRE developer package on your system (preferred approach). -- - Download the PCRE source tarball, build and install on your system -- as you would for any package built from source distribution. -- - Use the Tools/pcre-build.sh script to build PCRE just for SWIG to statically -- link against. Run 'Tools/pcre-build.sh --help' for instructions. -- (quite easy and does not require privileges to install PCRE on your system) -- - Use configure --without-pcre to disable regular expressions support in SWIG -- (not recommended).]) -- ]) -+ PKG_CHECK_MODULES([PCRE], [libpcre], [ -+ AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE library]) -+ LIBS="$LIBS $PCRE_LIBS" -+ CPPFLAGS="$CPPFLAGS $PCRE_CFLAGS" -+ ], [ -+ AC_MSG_WARN([$PCRE_PKG_ERRORS]) - ]) -+fi - - - dnl CCache --- -1.9.3 - diff --git a/recipes-devtools/armnn-swig/armnn-swig_4.0.2.bb b/recipes-devtools/armnn-swig/armnn-swig_4.0.2.bb deleted file mode 100644 index f7a5d0c..0000000 --- a/recipes-devtools/armnn-swig/armnn-swig_4.0.2.bb +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright 2021 NXP -require ${BPN}.inc - -SRC_URI += "file://0001-configure-use-pkg-config-for-pcre-detection.patch \ - " -SRC_URI[md5sum] = "7c3e46cb5af2b469722cafa0d91e127b" -SRC_URI[sha256sum] = "d53be9730d8d58a16bf0cbd1f8ac0c0c3e1090573168bfa151b01eb47fa906fc" From 1bd0103ade07c254d1a1ea1bb32ecb36066a26d5 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:07:27 -0700 Subject: [PATCH 03/21] flatbuffers: bump to version 2.0.7 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- ...rs_%.bbappend => flatbuffers_2.%.bbappend} | 0 .../flatbuffers/flatbuffers_2.0.7.bb | 34 +++++++++++++++++++ 2 files changed, 34 insertions(+) rename recipes-devtools/flatbuffers/{flatbuffers_%.bbappend => flatbuffers_2.%.bbappend} (100%) create mode 100644 recipes-devtools/flatbuffers/flatbuffers_2.0.7.bb diff --git a/recipes-devtools/flatbuffers/flatbuffers_%.bbappend b/recipes-devtools/flatbuffers/flatbuffers_2.%.bbappend similarity index 100% rename from recipes-devtools/flatbuffers/flatbuffers_%.bbappend rename to recipes-devtools/flatbuffers/flatbuffers_2.%.bbappend diff --git a/recipes-devtools/flatbuffers/flatbuffers_2.0.7.bb b/recipes-devtools/flatbuffers/flatbuffers_2.0.7.bb new file mode 100644 index 0000000..1fe5fac --- /dev/null +++ b/recipes-devtools/flatbuffers/flatbuffers_2.0.7.bb @@ -0,0 +1,34 @@ +SUMMARY = "Memory Efficient Serialization Library" +HOMEPAGE = "https://github.com/google/flatbuffers" +SECTION = "console/tools" +LICENSE = "Apache-2.0" + +PACKAGE_BEFORE_PN = "${PN}-compiler" +DEPENDS = "flatbuffers-native" + +RDEPENDS:${PN}-compiler = "${PN}" +RDEPENDS:${PN}-${PYTHON_PN} = "${PN}" +RDEPENDS:${PN}-dev += "${PN}-compiler" + +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" + +SRCREV = "8367664f15c3ea2ee58c67dacf9d630b49466de5" + +SRC_URI = "git://github.com/google/flatbuffers.git;branch=master;protocol=https" + +CVE_CHECK_IGNORE += "CVE-2020-35864" + +EXTRA_OECMAKE += "\ + -DFLATBUFFERS_BUILD_TESTS=OFF \ + -DFLATBUFFERS_BUILD_SHAREDLIB=ON \ +" + +EXTRA_OECMAKE:append:class-target = " -DFLATBUFFERS_FLATC_EXECUTABLE=${STAGING_BINDIR_NATIVE}/flatc" + +inherit cmake python3native + +S = "${WORKDIR}/git" + +FILES:${PN}-compiler = "${bindir}" + +BBCLASSEXTEND = "native nativesdk" From 67ee163759f90fb80180e38f64d4da112303df8c Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:16:31 -0700 Subject: [PATCH 04/21] tensorflow-lite*: update to version 2.10.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- ...e-2.9.1.inc => tensorflow-lite-2.10.0.inc} | 5 +- .../tensorflow-lite-ethosu-delegate_2.10.0.bb | 61 +++++++++++++++++++ ...b => tensorflow-lite-host-tools_2.10.0.bb} | 0 ...-Fix-LIBDIR-for-multilib-environment.patch | 2 +- ... => tensorflow-lite-vx-delegate_2.10.0.bb} | 4 +- .../tensorflow-lite.pc.in | 0 .../tensorflow-lite_2.%.bbappend | 2 +- ...ite_2.9.1.bb => tensorflow-lite_2.10.0.bb} | 9 ++- 8 files changed, 74 insertions(+), 9 deletions(-) rename recipes-libraries/tensorflow-lite/{tensorflow-lite-2.9.1.inc => tensorflow-lite-2.10.0.inc} (55%) create mode 100644 recipes-libraries/tensorflow-lite/tensorflow-lite-ethosu-delegate_2.10.0.bb rename recipes-libraries/tensorflow-lite/{tensorflow-lite-host-tools_2.9.1.bb => tensorflow-lite-host-tools_2.10.0.bb} (100%) rename recipes-libraries/tensorflow-lite/{files => tensorflow-lite-vx-delegate}/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch (97%) rename recipes-libraries/tensorflow-lite/{tensorflow-lite-vx-delegate_2.9.1.bb => tensorflow-lite-vx-delegate_2.10.0.bb} (95%) rename recipes-libraries/tensorflow-lite/{files => tensorflow-lite}/tensorflow-lite.pc.in (100%) rename recipes-libraries/tensorflow-lite/{tensorflow-lite_2.9.1.bb => tensorflow-lite_2.10.0.bb} (92%) diff --git a/recipes-libraries/tensorflow-lite/tensorflow-lite-2.9.1.inc b/recipes-libraries/tensorflow-lite/tensorflow-lite-2.10.0.inc similarity index 55% rename from recipes-libraries/tensorflow-lite/tensorflow-lite-2.9.1.inc rename to recipes-libraries/tensorflow-lite/tensorflow-lite-2.10.0.inc index 08206b8..007d1ac 100644 --- a/recipes-libraries/tensorflow-lite/tensorflow-lite-2.9.1.inc +++ b/recipes-libraries/tensorflow-lite/tensorflow-lite-2.10.0.inc @@ -1,6 +1,5 @@ # Copyright 2020-2021 NXP TENSORFLOW_LITE_SRC ?= "git://github.com/nxp-imx/tensorflow-imx.git;protocol=https" -SRCBRANCH_tf = "lf-5.15.52_2.1.0" -SRCREV_tf = "c50678bc80ea7700dc0d35478023cee7ab51f819" - +SRCBRANCH_tf = "lf-6.1.1_1.0.0" +SRCREV_tf = "6cac366ef5b7e632305c2413875ce2d3b72c03dd" diff --git a/recipes-libraries/tensorflow-lite/tensorflow-lite-ethosu-delegate_2.10.0.bb b/recipes-libraries/tensorflow-lite/tensorflow-lite-ethosu-delegate_2.10.0.bb new file mode 100644 index 0000000..a0de103 --- /dev/null +++ b/recipes-libraries/tensorflow-lite/tensorflow-lite-ethosu-delegate_2.10.0.bb @@ -0,0 +1,61 @@ +# Copyright 2020-2023 NXP +DESCRIPTION = "TensorFlow Lite Ethos-u Delegate" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" + +DEPENDS = "tensorflow-lite ethos-u-driver-stack" + +require tensorflow-lite-${PV}.inc + +TENSORFLOW_LITE_ETHOSU_DELEGATE_SRC ?= "git://github.com/nxp-imx/tflite-ethosu-delegate-imx.git;protocol=https" +SRCBRANCH_ethosu = "lf-6.1.1_1.0.0" +SRCREV_ethosu = "4bd28d3e64d26f4d5b5ee358036b2d06f3322a57" + +SRCREV_FORMAT = "ethosu_tf" + +SRC_URI = "${TENSORFLOW_LITE_ETHOSU_DELEGATE_SRC};branch=${SRCBRANCH_ethosu};name=ethosu \ + ${TENSORFLOW_LITE_SRC};branch=${SRCBRANCH_tf};name=tf;destsuffix=tfgit \ +" + +S = "${WORKDIR}/git" + +inherit python3native cmake + +EXTRA_OECMAKE = "-DCMAKE_SYSROOT=${PKG_CONFIG_SYSROOT_DIR}" +EXTRA_OECMAKE += " \ + -DFETCHCONTENT_FULLY_DISCONNECTED=OFF \ + -DFETCHCONTENT_SOURCE_DIR_TENSORFLOW=${WORKDIR}/tfgit \ + -DTFLITE_LIB_LOC=${STAGING_DIR_HOST}/usr/lib/libtensorflow-lite.so \ + ${S} \ +" + +CXXFLAGS += "-fPIC" + +do_configure[network] = "1" +do_configure:prepend() { + export HTTP_PROXY=${http_proxy} + export HTTPS_PROXY=${https_proxy} + export http_proxy=${http_proxy} + export https_proxy=${https_proxy} + + # There is no Fortran compiler in the toolchain, but bitbake sets this variable anyway + # with unavailable binary. + export FC="" +} + +do_install() { + # install libraries + install -d ${D}${libdir} + for lib in ${B}/lib*.so* + do + cp --no-preserve=ownership -d $lib ${D}${libdir} + done +} + +INHIBIT_PACKAGE_DEBUG_SPLIT = "1" + +# Output library is unversioned +SOLIBS = ".so" +FILES_SOLIBSDEV = "" + +COMPATIBLE_MACHINE = "(mx93-nxp-bsp)" diff --git a/recipes-libraries/tensorflow-lite/tensorflow-lite-host-tools_2.9.1.bb b/recipes-libraries/tensorflow-lite/tensorflow-lite-host-tools_2.10.0.bb similarity index 100% rename from recipes-libraries/tensorflow-lite/tensorflow-lite-host-tools_2.9.1.bb rename to recipes-libraries/tensorflow-lite/tensorflow-lite-host-tools_2.10.0.bb diff --git a/recipes-libraries/tensorflow-lite/files/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch b/recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch similarity index 97% rename from recipes-libraries/tensorflow-lite/files/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch rename to recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch index dc2c509..c5d5b64 100644 --- a/recipes-libraries/tensorflow-lite/files/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch +++ b/recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate/0001-Findtim-vx.cmake-Fix-LIBDIR-for-multilib-environment.patch @@ -2,7 +2,7 @@ From 1ba241438dcc14852017757451521f5e27690290 Mon Sep 17 00:00:00 2001 From: Cristinel Panfir Date: Mon, 2 May 2022 15:18:46 +0000 Subject: [PATCH] Findtim-vx.cmake: Fix LIBDIR for multilib environment -Upstream-Status: Pending + Signed-off-by: Cristinel Panfir --- cmake/modules/Findtim-vx.cmake | 2 +- diff --git a/recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate_2.9.1.bb b/recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate_2.10.0.bb similarity index 95% rename from recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate_2.9.1.bb rename to recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate_2.10.0.bb index 3d6e252..c070c77 100644 --- a/recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate_2.9.1.bb +++ b/recipes-libraries/tensorflow-lite/tensorflow-lite-vx-delegate_2.10.0.bb @@ -8,8 +8,8 @@ DEPENDS = "tensorflow-lite tim-vx" require tensorflow-lite-${PV}.inc TENSORFLOW_LITE_VX_DELEGATE_SRC ?= "git://github.com/nxp-imx/tflite-vx-delegate-imx.git;protocol=https" -SRCBRANCH_vx = "lf-5.15.52_2.1.0" -SRCREV_vx = "1e1669714c6fdc70fbd0f42e4c2b346073e805fd" +SRCBRANCH_vx = "lf-6.1.1_1.0.0" +SRCREV_vx = "ae9a193a3801ae7b027df65e5ecd97724c64af12" SRCREV_FORMAT = "vx_tf" diff --git a/recipes-libraries/tensorflow-lite/files/tensorflow-lite.pc.in b/recipes-libraries/tensorflow-lite/tensorflow-lite/tensorflow-lite.pc.in similarity index 100% rename from recipes-libraries/tensorflow-lite/files/tensorflow-lite.pc.in rename to recipes-libraries/tensorflow-lite/tensorflow-lite/tensorflow-lite.pc.in diff --git a/recipes-libraries/tensorflow-lite/tensorflow-lite_2.%.bbappend b/recipes-libraries/tensorflow-lite/tensorflow-lite_2.%.bbappend index 697e059..13b6d3f 100644 --- a/recipes-libraries/tensorflow-lite/tensorflow-lite_2.%.bbappend +++ b/recipes-libraries/tensorflow-lite/tensorflow-lite_2.%.bbappend @@ -1,4 +1,4 @@ -FILESEXTRAPATHS:prepend := "${THISDIR}/files:" +FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" SRC_URI:append = " file://tensorflow-lite.pc.in" diff --git a/recipes-libraries/tensorflow-lite/tensorflow-lite_2.9.1.bb b/recipes-libraries/tensorflow-lite/tensorflow-lite_2.10.0.bb similarity index 92% rename from recipes-libraries/tensorflow-lite/tensorflow-lite_2.9.1.bb rename to recipes-libraries/tensorflow-lite/tensorflow-lite_2.10.0.bb index 592746d..218672c 100644 --- a/recipes-libraries/tensorflow-lite/tensorflow-lite_2.9.1.bb +++ b/recipes-libraries/tensorflow-lite/tensorflow-lite_2.10.0.bb @@ -3,7 +3,7 @@ DESCRIPTION = "TensorFlow Lite C++ Library" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://LICENSE;md5=4158a261ca7f2525513e31ba9c50ae98" -DEPENDS = "python3-numpy-native python3-pip-native python3-pybind11-native python3-wheel-native unzip-native \ +DEPENDS = "flatbuffers python3-numpy-native python3-pip-native python3-pybind11-native python3-wheel-native unzip-native \ python3 tensorflow-protobuf jpeg zlib ${BPN}-host-tools-native" require tensorflow-lite-${PV}.inc @@ -17,6 +17,12 @@ S = "${WORKDIR}/git" inherit python3native cmake +PACKAGECONFIG ??= "${PACKAGECONFIG_ETHOSU}" +PACKAGECONFIG_ETHOSU = "" +PACKAGECONFIG_ETHOSU:mx93-nxp-bsp = "ethosu" + +PACKAGECONFIG[ethosu] = "-DTFLITE_ENABLE_ETHOSU=on,-DTFLITE_ENABLE_ETHOSU=off,ethos-u-driver-stack" + EXTRA_OECMAKE = " \ -DCMAKE_SYSROOT=${PKG_CONFIG_SYSROOT_DIR} \ -DFETCHCONTENT_FULLY_DISCONNECTED=OFF \ @@ -100,7 +106,6 @@ do_install() { } RDEPENDS:${PN} = " \ - flatbuffers \ python3 \ python3-numpy \ ${RDEPENDS_OPENVX} \ From 5892b10faefc681431ee81390f533280257a00a3 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:18:57 -0700 Subject: [PATCH 05/21] deepview-rt*: update to version 2.4.46.1 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- ...2.4.46-aarch64.bb => deepview-rt_2.4.46.1-aarch64.bb} | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) rename recipes-libraries/deepview-rt/{deepview-rt_2.4.46-aarch64.bb => deepview-rt_2.4.46.1-aarch64.bb} (86%) diff --git a/recipes-libraries/deepview-rt/deepview-rt_2.4.46-aarch64.bb b/recipes-libraries/deepview-rt/deepview-rt_2.4.46.1-aarch64.bb similarity index 86% rename from recipes-libraries/deepview-rt/deepview-rt_2.4.46-aarch64.bb rename to recipes-libraries/deepview-rt/deepview-rt_2.4.46.1-aarch64.bb index 95ef81d..ec22eec 100644 --- a/recipes-libraries/deepview-rt/deepview-rt_2.4.46-aarch64.bb +++ b/recipes-libraries/deepview-rt/deepview-rt_2.4.46.1-aarch64.bb @@ -1,12 +1,12 @@ DESCRIPTION = "This package includes the updated and experimental ModelRunner for TensorFlow Lite and ARM NN. Also in this repository is a pre-release of DeepViewRT with support for the OpenVX backend." LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe" +LIC_FILES_CHKSUM = "file://COPYING;md5=ea25d099982d035af85d193c88a1b479" DEPENDS = "python3 python3-pip-native" SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true" -SRC_URI[md5sum] = "c9693b096ad75852ad82f4e53062edbe" -SRC_URI[sha256sum] = "c2bf31107b288d5cac8e5a17e555f30da07a9b99b4a3547f4dbf35544210995f" +SRC_URI[md5sum] = "a4782e44df2254d30f7c6b0a45c4102e" +SRC_URI[sha256sum] = "40d6c12bbe5fc29a257a1717684ec650bd390eb1565c5bca82ec56e3ffbcf918" S = "${WORKDIR}/${BPN}-${PV}" inherit fsl-eula-unpack python3native @@ -18,6 +18,7 @@ PACKAGECONFIG_OPENVX:mx8mm-nxp-bsp = "" # The tensorflow-lite implementation for 8ULP uses CPU, and so doesn't # support OpenVX PACKAGECONFIG_OPENVX:mx8ulp-nxp-bsp = "" + PACKAGECONFIG[openvx] = ",,,libopenvx-imx" do_install () { @@ -53,4 +54,4 @@ INSANE_SKIP:${PN} += "dev-so dev-deps ldflags" BBCLASSEXTEND = "nativesdk" -COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" +COMPATIBLE_MACHINE = "(mx8-nxp-bsp|mx9-nxp-bsp)" From b85c39d25c416435c732dff6ef27637bffe42268 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:20:16 -0700 Subject: [PATCH 06/21] deepview-rt-examples: update to version 1.6.1 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- ...iew-rt-examples_1.6.bb => deepview-rt-examples_1.6.1.bb} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename recipes-libraries/deepview-rt/{deepview-rt-examples_1.6.bb => deepview-rt-examples_1.6.1.bb} (76%) diff --git a/recipes-libraries/deepview-rt/deepview-rt-examples_1.6.bb b/recipes-libraries/deepview-rt/deepview-rt-examples_1.6.1.bb similarity index 76% rename from recipes-libraries/deepview-rt/deepview-rt-examples_1.6.bb rename to recipes-libraries/deepview-rt/deepview-rt-examples_1.6.1.bb index d7c651d..3e7a9df 100644 --- a/recipes-libraries/deepview-rt/deepview-rt-examples_1.6.bb +++ b/recipes-libraries/deepview-rt/deepview-rt-examples_1.6.1.bb @@ -1,12 +1,12 @@ DESCRIPTION = "DeepViewRT examples" LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=5a0bf11f745e68024f37b4724a5364fe" +LIC_FILES_CHKSUM = "file://COPYING;md5=ea25d099982d035af85d193c88a1b479" DEPENDS = "deepview-rt" SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true" -SRC_URI[md5sum] = "0057ac72f1091b072f4347a945da03f5" -SRC_URI[sha256sum] = "c24339bd9531bed6c71f3383262317ee23369302ef50084f8edce0467fcc9a5e" +SRC_URI[md5sum] = "540cb3aaa22ef96ee44a59bbedb004b9" +SRC_URI[sha256sum] = "333f145d7e742f2cbe08276e9eb5831973ff6520200353b2fe710b1255e63c01" S = "${WORKDIR}/${BPN}-${PV}" inherit fsl-eula-unpack pkgconfig From c3fda4ad41a540194791be31394df8b41cbc26e0 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:23:17 -0700 Subject: [PATCH 07/21] arm-compute-library: Switch to branch lf-6.1.1_1.0.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../arm-compute-library/arm-compute-library_22.05.bb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes-libraries/arm-compute-library/arm-compute-library_22.05.bb b/recipes-libraries/arm-compute-library/arm-compute-library_22.05.bb index 4a234e4..8ec21f9 100644 --- a/recipes-libraries/arm-compute-library/arm-compute-library_22.05.bb +++ b/recipes-libraries/arm-compute-library/arm-compute-library_22.05.bb @@ -1,4 +1,4 @@ -# Copyright 2019-2022 NXP +# Copyright 2019-2023 NXP SUMMARY = "The ARM Computer Vision and Machine Learning library" DESCRIPTION = "The ARM Computer Vision and Machine Learning library is a set of functions optimised for both ARM CPUs and GPUs." LICENSE = "MIT" @@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=f3c5879801d3cffc4ac2399f2b8e8ec5 \ SRC_URI = "${ARM_COMPUTELIBRARY_SRC};branch=${SRCBRANCH}" ARM_COMPUTELIBRARY_SRC ?= "git://github.com/nxp-imx/arm-computelibrary-imx.git;protocol=https" -SRCBRANCH = "lf-5.15.71_2.2.0" -SRCREV = "a3f4331dc076f4e7d117fd6a2d4ef6c390fb383e" +SRCBRANCH = "lf-6.1.1_1.0.0" +SRCREV = "e9658b24c2dfac18961b0b098173732f39f4a31b" S = "${WORKDIR}/git" From da5e59eee380b88428c95da1e9f508c44b5afad2 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:25:40 -0700 Subject: [PATCH 08/21] nn-imx: update to commit da5357b As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- recipes-libraries/nn-imx/nn-imx_1.3.0.bb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/recipes-libraries/nn-imx/nn-imx_1.3.0.bb b/recipes-libraries/nn-imx/nn-imx_1.3.0.bb index c32e34d..acfda1a 100644 --- a/recipes-libraries/nn-imx/nn-imx_1.3.0.bb +++ b/recipes-libraries/nn-imx/nn-imx_1.3.0.bb @@ -1,16 +1,13 @@ -# Copyright 2020-2022 NXP +# Copyright 2020-2023 NXP DESCRIPTION = "i.MX Neural Networks Accelerator Plugin" LICENSE = "MIT" - LIC_FILES_CHKSUM = "file://LICENSE;md5=bba6cdb9c2b03c849ed4975ed9ed90dc" - DEPENDS = "imx-gpu-viv" -NN_IMX_SRC ?= "git://github.com/nxp-imx/nn-imx.git;protocol=https" -SRCBRANCH = "imx_1.3.0" - -SRCREV = "87e262fc89a7f4819b35188f9b2e7117b8563b89" SRC_URI = "${NN_IMX_SRC};branch=${SRCBRANCH}" +NN_IMX_SRC ?= "git://github.com/nxp-imx/nn-imx.git;protocol=https" +SRCBRANCH = "imx_1.3.0" +SRCREV = "da5357bb1e8bd2be4c5b50b3e8abe440102dc4b4" S = "${WORKDIR}/git" From 5452eed36b3ef166130bd0d3bfbfcc7cd0d63019 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:28:08 -0700 Subject: [PATCH 09/21] onnxruntime: Switch branch to lf-6.1.1_1.0.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../onnxruntime/onnxruntime_1.10.0.bb | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/recipes-libraries/onnxruntime/onnxruntime_1.10.0.bb b/recipes-libraries/onnxruntime/onnxruntime_1.10.0.bb index 7c1651e..bef39ad 100644 --- a/recipes-libraries/onnxruntime/onnxruntime_1.10.0.bb +++ b/recipes-libraries/onnxruntime/onnxruntime_1.10.0.bb @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "${LIC_FILES_CHKSUM_runtime} ${LIC_FILES_CHKSUM_model}" DEPENDS = "libpng zlib ${BPN}-native" ONNXRUNTIME_SRC ?= "gitsm://github.com/nxp-imx/onnxruntime-imx.git;protocol=https" -SRCBRANCH_runtime = "lf-5.15.32_2.0.0" +SRCBRANCH_runtime = "lf-6.1.1_1.0.0" SRC_URI = " \ ${ONNXRUNTIME_SRC};branch=${SRCBRANCH_runtime};name=runtime \ https://github.com/onnx/models/raw/${SRCREV_model}/LICENSE;name=model-license \ @@ -19,7 +19,7 @@ SRC_URI[model-license.md5sum] = "3b83ef96387f14655fc854ddc3c6bd57" SRC_URI[model-license.sha256sum] = "cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30" SRC_URI[model-squeezenet.md5sum] = "92e240a948f9bbc92534d752eb465317" SRC_URI[model-squeezenet.sha256sum] = "f4c9a2906a949f089bee5ef1bf9ea1c0dc1b49d5abeb1874fff3d206751d0f3b" -SRCREV_runtime = "7c06686b4260a22bdf0e24e06c120882dc5eaa78" +SRCREV_runtime = "66e3e9a93840ed1e55dc2d7e894c0ae26fb0e51e" SRCREV_model = "6ab957a2fe61f34a76c670946f7cbd806d2cacca" SRCREV_FORMAT = "runtime_model" @@ -45,14 +45,14 @@ EXTRA_OECMAKE += "\ " PYTHON_DEPENDS = "${PYTHON_PN} ${PYTHON_PN}-native ${PYTHON_PN}-pip-native ${PYTHON_PN}-wheel-native ${PYTHON_PN}-setuptools-native ${PYTHON_PN}-numpy-native" -PYTHON_RDEPENDS = "${PYTHON_PN} ${PYTHON_PN}-numpy ${PYTHON_PN}-protobuf flatbuffers-${PYTHON_PN}" - -PACKAGECONFIG_VSI_NPU = "" -PACKAGECONFIG_VSI_NPU:mx8-nxp-bsp = "vsi_npu" -PACKAGECONFIG_VSI_NPU:mx8mm-nxp-bsp = "" -PACKAGECONFIG_VSI_NPU:mx8mnul-nxp-bsp = "" -PACKAGECONFIG_VSI_NPU:mx8mpul-nxp-bsp = "" -PACKAGECONFIG_VSI_NPU:mx8ulp-nxp-bsp = "" +PYTHON_RDEPENDS = "${PYTHON_PN} ${PYTHON_PN}-numpy ${PYTHON_PN}-protobuf ${PYTHON_PN}-flatbuffers" + +PACKAGECONFIG_VSI_NPU = "" +PACKAGECONFIG_VSI_NPU:mx8-nxp-bsp:imxgpu = "vsi_npu" +PACKAGECONFIG_VSI_NPU:mx8mm-nxp-bsp = "" +# The tensorflow-lite implementation for 8ULP uses CPU, and so doesn't +# support OpenVX +PACKAGECONFIG_VSI_NPU:mx8ulp-nxp-bsp = "" PACKAGECONFIG ?= "openmp reports sharedlib eigenblas nnapi python ${PACKAGECONFIG_VSI_NPU}" From 5519d0e5df738dc93fa3244319bf01fba3e520fb Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:28:59 -0700 Subject: [PATCH 10/21] pytorch: switch branch to lf-6.1.1_1.0.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- recipes-libraries/pytorch/pytorch_git.bb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/recipes-libraries/pytorch/pytorch_git.bb b/recipes-libraries/pytorch/pytorch_git.bb index c5c2ea2..d2220a4 100644 --- a/recipes-libraries/pytorch/pytorch_git.bb +++ b/recipes-libraries/pytorch/pytorch_git.bb @@ -9,8 +9,8 @@ RDEPENDS:${PN} += "python3-core python3-numpy python3-future python3-typing-exte PV = "1.9.1.post2" PYV = "cp310" -PYTORCH_SRC ?= "git://github.com/nxpmicro/pytorch-release.git;protocol=https" -SRCBRANCH = "lf-5.15.52_2.1.0" +PYTORCH_SRC ?= "git://github.com/nxp-imx/pytorch-release.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" SRCREV = "ef997d8f79877295e69e5cf34b524eea603c1fae" SRC_URI = " \ @@ -42,5 +42,3 @@ do_install(){ } FILES:${PN} += "${libdir}/python*" - -COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" From b929eb0c4ad314fadea472e9d2d0f727db5bfb44 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:29:42 -0700 Subject: [PATCH 11/21] torchvision: switch branch to lf-6.1.1_1.0.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- recipes-libraries/pytorch/torchvision_git.bb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/recipes-libraries/pytorch/torchvision_git.bb b/recipes-libraries/pytorch/torchvision_git.bb index 703ac12..164394a 100644 --- a/recipes-libraries/pytorch/torchvision_git.bb +++ b/recipes-libraries/pytorch/torchvision_git.bb @@ -9,8 +9,8 @@ RDEPENDS:${PN} += "pytorch python3-numpy python3-future python3-pillow libjpeg-t PV = "0.10.0" PYV = "cp310" -PYTORCH_SRC ?= "git://github.com/nxpmicro/pytorch-release.git;protocol=https" -SRCBRANCH = "lf-5.15.52_2.1.0" +PYTORCH_SRC ?= "git://github.com/nxp-imx/pytorch-release.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" SRCREV = "ef997d8f79877295e69e5cf34b524eea603c1fae" SRC_URI = " \ @@ -30,5 +30,3 @@ do_install(){ } FILES:${PN} += "${libdir}/python*" - -COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" From cb29272c822e3550854f73a9648916f25b50dc1a Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:30:56 -0700 Subject: [PATCH 12/21] tim-vx: switch branch to lf-6.1.1_1.0.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- recipes-libraries/tim-vx/tim-vx_1.1.42.bb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipes-libraries/tim-vx/tim-vx_1.1.42.bb b/recipes-libraries/tim-vx/tim-vx_1.1.42.bb index bc0e236..7470557 100644 --- a/recipes-libraries/tim-vx/tim-vx_1.1.42.bb +++ b/recipes-libraries/tim-vx/tim-vx_1.1.42.bb @@ -7,9 +7,9 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=ededf2503f5d147ae718276dfd28801f" DEPENDS = "imx-gpu-viv nn-imx" -TIM_VX_SRC ?= "git://github.com/nxpmicro/tim-vx-imx.git;protocol=https" -SRCBRANCH = "lf-5.15.52_2.1.0" -SRCREV = "259b04718903589dfafd961922d609651e478762" +TIM_VX_SRC ?= "git://github.com/nxp-imx/tim-vx-imx.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" +SRCREV = "f66e297e4bd4e4ef810f4fd527ff49559c01438d" SRC_URI = "${TIM_VX_SRC};branch=${SRCBRANCH}" S = "${WORKDIR}/git" From 94cc6fda7e216abbd1ea6b50e347401edbf29421 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:32:28 -0700 Subject: [PATCH 13/21] tvm: update as per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- recipes-libraries/tvm/files/tvm_runtime.pc.in | 6 +++++ recipes-libraries/tvm/tvm_0.7.0.bb | 26 ++++++++++++++++--- 2 files changed, 29 insertions(+), 3 deletions(-) create mode 100644 recipes-libraries/tvm/files/tvm_runtime.pc.in diff --git a/recipes-libraries/tvm/files/tvm_runtime.pc.in b/recipes-libraries/tvm/files/tvm_runtime.pc.in new file mode 100644 index 0000000..ddd8d02 --- /dev/null +++ b/recipes-libraries/tvm/files/tvm_runtime.pc.in @@ -0,0 +1,6 @@ + Name: tvm + Description: tvm library + Version: @version@ + Requires: + Libs: -L@libdir@ -ltvm_runtime + Cflags: -I@includedir@ diff --git a/recipes-libraries/tvm/tvm_0.7.0.bb b/recipes-libraries/tvm/tvm_0.7.0.bb index 54a48f4..c704181 100644 --- a/recipes-libraries/tvm/tvm_0.7.0.bb +++ b/recipes-libraries/tvm/tvm_0.7.0.bb @@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=e313a9b6eda820e35716d9529001537f \ DEPENDS = "tim-vx" RDEPENDS:${PN} = "tim-vx python3-decorator python3-numpy python3-attrs python3-psutil python3" -SRCBRANCH = "lf-5.15.32_2.0.0" +SRCBRANCH = "lf-6.1.1_1.0.0" TVM_SRC ?= "git://github.com/nxp-imx/eiq-tvm-imx.git;protocol=https" SRC_URI = "${TVM_SRC};branch=${SRCBRANCH}\ git://github.com/dmlc/dlpack;protocol=https;nobranch=1;destsuffix=${S}/3rdparty/dlpack;name=dlpack \ @@ -22,9 +22,10 @@ SRC_URI = "${TVM_SRC};branch=${SRCBRANCH}\ git://github.com/agauniyal/rang;protocol=https;nobranch=1;destsuffix=${S}/3rdparty/rang;name=rang \ git://github.com/apache/incubator-tvm-vta;protocol=https;nobranch=1;destsuffix=${S}/3rdparty/vta-hw;name=vta-hw \ file://0001-tvm-CMakeLists.txt-Use-CMAKE-variables-for-libs-inst.patch \ + file://tvm_runtime.pc.in \ " -SRCREV = "7042d137a6a50588363c27297e0ab57b3e7f43a8" +SRCREV = "c8fc7971a23cb2da3154eb19e41d546ad9e77e65" SRCREV_dlpack = "3ec04430e89a6834e5a1b99471f415fa939bf642" SRCREV_dmlc-core = "6c401e242c59a1f4c913918246591bb13fd714e7" SRCREV_rang = "cabe04d6d6b05356fa8f9741704924788f0dd762" @@ -51,6 +52,25 @@ do_install () { setuptools3_do_install rm -fr ${D}${datadir} + + # Install pkgconfig file for tvm_runtime lib + install -d ${D}${libdir}/pkgconfig + install -m 0644 ${WORKDIR}/tvm_runtime.pc.in ${D}${libdir}/pkgconfig/tvm_runtime.pc + + sed -i 's:@version@:${PV}:g + s:@libdir@:${libdir}:g + s:@includedir@:${includedir}:g' ${D}${libdir}/pkgconfig/tvm_runtime.pc + + # Install additional header files that tvm public interface depends on + cd ${S}/3rdparty/dlpack/include + cp --parents \ + $(find . -name "*.h*") \ + ${D}${includedir} + + cd ${S}/3rdparty/dmlc-core/include + cp --parents \ + $(find . -name "*.h*") \ + ${D}${includedir} } INSANE_SKIP:${PN} += "dev-deps" @@ -58,4 +78,4 @@ INSANE_SKIP:${PN} += "dev-deps" FILES_SOLIBSDEV = "" FILES:${PN} = "${bindir}/* ${libdir}/*" -COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" +COMPATIBLE_MACHINE = "(mx8mp-nxp-bsp)" From 64992125407b0d19e782fe1c17324eafd648ad58 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:34:14 -0700 Subject: [PATCH 14/21] nnstreamer: update to v2.2.0 As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- ..._box-Fix-ssd-box-decoding-without-po.patch | 43 ----------- ...nstreamer_2.1.1.bb => nnstreamer_2.2.0.bb} | 74 +++++++++++++++++-- 2 files changed, 67 insertions(+), 50 deletions(-) delete mode 100644 recipes-nnstreamer/nnstreamer/files/0001-decoder-bounding_box-Fix-ssd-box-decoding-without-po.patch rename recipes-nnstreamer/nnstreamer/{nnstreamer_2.1.1.bb => nnstreamer_2.2.0.bb} (67%) diff --git a/recipes-nnstreamer/nnstreamer/files/0001-decoder-bounding_box-Fix-ssd-box-decoding-without-po.patch b/recipes-nnstreamer/nnstreamer/files/0001-decoder-bounding_box-Fix-ssd-box-decoding-without-po.patch deleted file mode 100644 index 5d490df..0000000 --- a/recipes-nnstreamer/nnstreamer/files/0001-decoder-bounding_box-Fix-ssd-box-decoding-without-po.patch +++ /dev/null @@ -1,43 +0,0 @@ -From ad3d7be280196229d2291276628ec92ff8a13893 Mon Sep 17 00:00:00 2001 -From: Julien Vuillaumier -Date: Tue, 31 May 2022 10:43:29 +0200 -Subject: [PATCH] [decoder/bounding_box] Fix ssd box decoding without - postprocessing - -Boxes whose detection scores do not exceed the specified sigmoid -threshold shall never be reported as valid. - -This changeset fixes current implementation whereby valid field -for a box is set only when its detection scores have passed the -threshold tests. Thus, if score test is not passed, valid field for -a box is inherited from the previous box score tests. - -Therefore without this change, whenever one box passes the score -criteria, every subsequent boxes will be reported as valid, even though -their detection scores are low. -As a consequence, a very big number of boxes may be passed to the -next stage of NMS processing which causes processing overhead. - -Upstream-Status: Accepted for 2.2.0 -(https://github.com/nnstreamer/nnstreamer/pull/3773) - -Signed-off-by: Julien Vuillaumier ---- - ext/nnstreamer/tensor_decoder/tensordec-boundingbox.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/ext/nnstreamer/tensor_decoder/tensordec-boundingbox.c b/ext/nnstreamer/tensor_decoder/tensordec-boundingbox.c -index 64d5fe39..149f09bf 100644 ---- a/ext/nnstreamer/tensor_decoder/tensordec-boundingbox.c -+++ b/ext/nnstreamer/tensor_decoder/tensordec-boundingbox.c -@@ -1139,6 +1139,7 @@ typedef struct - float x_scale = data->params[MOBILENET_SSD_PARAMS_X_SCALE_IDX]; \ - float h_scale = data->params[MOBILENET_SSD_PARAMS_H_SCALE_IDX]; \ - float w_scale = data->params[MOBILENET_SSD_PARAMS_W_SCALE_IDX]; \ -+ result->valid = FALSE; \ - for (c = 1; c < total_labels; c++) { \ - if (detinputptr[c] >= sigmoid_threshold) { \ - gfloat score = _expit (detinputptr[c]); \ --- -2.25.1 - diff --git a/recipes-nnstreamer/nnstreamer/nnstreamer_2.1.1.bb b/recipes-nnstreamer/nnstreamer/nnstreamer_2.2.0.bb similarity index 67% rename from recipes-nnstreamer/nnstreamer/nnstreamer_2.1.1.bb rename to recipes-nnstreamer/nnstreamer/nnstreamer_2.2.0.bb index 4c4eb2d..f2a7969 100644 --- a/recipes-nnstreamer/nnstreamer/nnstreamer_2.1.1.bb +++ b/recipes-nnstreamer/nnstreamer/nnstreamer_2.2.0.bb @@ -18,17 +18,30 @@ DEPENDS = "\ libpng \ " -SRCREV = "354a149d8d174ad40f758bb19c6a6718f95d3103" +SRCREV = "f82789170b8f2696e50cbc5027b74b767f5e9415" SRC_URI = "\ git://github.com/nnstreamer/nnstreamer.git;branch=main;protocol=https \ - file://0001-decoder-bounding_box-Fix-ssd-box-decoding-without-po.patch \ " +# Use git instead of quilt as patch tool to support patches with binary content +PATCHTOOL = "git" + S = "${WORKDIR}/git" inherit meson pkgconfig -PACKAGECONFIG ??= "protobuf python3 tensorflow-lite " +PACKAGECONFIG ??= "protobuf python3 query ${PACKAGECONFIG_SOC}" +PACKAGECONFIG_SOC ??= "" +PACKAGECONFIG_SOC:mx8-nxp-bsp:imxgpu ??= "deepview-rt tensorflow-lite" +PACKAGECONFIG_SOC:mx8mp-nxp-bsp ??= "deepview-rt tensorflow-lite tvm" +PACKAGECONFIG_SOC:mx9-nxp-bsp ??= "deepview-rt tensorflow-lite" + +PACKAGECONFIG[deepview-rt] = "\ + -Ddeepview-rt-support=enabled, \ + -Ddeepview-rt-support=disabled, \ + deepview-rt, \ + ,,\ +" PACKAGECONFIG[flatbuf] = "\ -Dflatbuf-support=enabled, \ @@ -58,6 +71,13 @@ PACKAGECONFIG[python3] = "\ ,,\ " +PACKAGECONFIG[query] = "\ + -Dnnstreamer-edge-support=enabled, \ + -Dnnstreamer-edge-support=disabled, \ + nnstreamer-edge, \ + ,,\ +" + PACKAGECONFIG[tensorflow-lite] = "\ -Dtflite2-support=enabled, \ -Dtflite2-support=disabled, \ @@ -65,11 +85,25 @@ PACKAGECONFIG[tensorflow-lite] = "\ ,,\ " +PACKAGECONFIG[tvm] = "\ + -Dtvm-support=enabled, \ + -Dtvm-support=disabled, \ + tvm, \ + ,,\ +" + EXTRA_OEMESON += "\ + -Denable-float16=true \ -Denable-test=true \ -Dinstall-test=true \ " +# Temporary workaround for https://github.com/nnstreamer/nnstreamer/issues/3964 +# explicitly disable tflite2-custom feature to avoid build breakage +EXTRA_OEMESON += "\ + -Dtflite2-custom-support=disabled \ +" + do_install:append() { rm -f ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm_add_one.so_ } @@ -77,13 +111,16 @@ do_install:append() { PACKAGES =+ "\ ${PN}-unittest \ ${@bb.utils.contains('PACKAGECONFIG', 'armnn','${PN}-armnn', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'deepview-rt','${PN}-deepview-rt', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'flatbuf','${PN}-flatbuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'flatbuf grpc','${PN}-grpc-flatbuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'grpc','${PN}-grpc', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'protobuf','${PN}-protobuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'protobuf grpc','${PN}-grpc-protobuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'python3','${PN}-python3', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'query','${PN}-query', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'tensorflow-lite','${PN}-tensorflow-lite', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'tvm','${PN}-tvm', '', d)} \ " RDEPENDS:${PN} = "\ @@ -92,13 +129,16 @@ RDEPENDS:${PN} = "\ RDEPENDS:${PN}-unittest = "gstreamer1.0-plugins-good nnstreamer ssat \ ${@bb.utils.contains('PACKAGECONFIG', 'armnn','${PN}-armnn', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'deepview-rt','${PN}-deepview-rt', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'flatbuf','${PN}-flatbuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'flatbuf grpc','${PN}-grpc-flatbuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'grpc','${PN}-grpc', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'protobuf','${PN}-protobuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'protobuf grpc','${PN}-grpc-protobuf', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'python3','${PN}-python3', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'query','${PN}-query', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'tensorflow-lite','${PN}-tensorflow-lite', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'tvm','${PN}-tvm', '', d)} \ " FILES:${PN} += "\ @@ -112,6 +152,10 @@ FILES:${PN}-armnn = "\ ${libdir}/nnstreamer/filters/libnnstreamer_filter_armnn.so \ " +FILES:${PN}-deepview-rt = "\ + ${libdir}/nnstreamer/filters/libnnstreamer_filter_deepview-rt.so \ +" + FILES:${PN}-dev = "\ ${includedir}/nnstreamer/* \ ${libdir}/*.a \ @@ -147,13 +191,22 @@ FILES:${PN}-python3 = "\ ${libdir}/nnstreamer/converters/libnnstreamer_converter_python3.so \ ${libdir}/nnstreamer/decoders/libnnstreamer_decoder_python3.so \ ${libdir}/nnstreamer/filters/libnnstreamer_filter_python3.so \ - ${libdir}/nnstreamer/extra/nnstreamer_python3.so \ + ${libdir}/nnstreamer_python3.so \ + ${PYTHON_SITEPACKAGES_DIR}/nnstreamer_python.so \ +" + +FILES:${PN}-query = "\ + ${libdir}/gstreamer-1.0/libgstedge.so \ " FILES:${PN}-tensorflow-lite = "\ ${libdir}/nnstreamer/filters/libnnstreamer_filter_tensorflow2-lite.so \ " +FILES:${PN}-tvm = "\ + ${libdir}/nnstreamer/filters/libnnstreamer_filter_tvm.so \ +" + FILES:${PN}-unittest = "\ ${bindir}/unittest-nnstreamer/* \ ${libdir}/libnnstreamer_unittest_util.so \ @@ -163,12 +216,19 @@ FILES:${PN}-unittest = "\ " INSANE_SKIP:${PN} += "dev-so" +INSANE_SKIP:${PN}-python3 += "dev-so" -# -# Fixes: 076a78ea [TVM/test] Add models for more architectures -# do_install:append() { + # Fixes: 076a78ea [TVM/test] Add models for more architectures bash -c "shopt -s extglob; rm -f ${D}/${bindir}/unittest-nnstreamer/tests/test_models/models/tvm_add_one_!(${HOST_ARCH}).so_; shopt -u extglob;" + + # Check if python3 is enabled then install python module + if ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'true', 'false', d)}; then + install -d ${D}${PYTHON_SITEPACKAGES_DIR}/ + ln -sf ${libdir}/nnstreamer_python3.so ${D}${PYTHON_SITEPACKAGES_DIR}/nnstreamer_python.so + fi } + +PACKAGE_ARCH = "${MACHINE_SOCARCH}" From 5fb28295f50c49dd7c80fd1102af55693c4457ce Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:35:02 -0700 Subject: [PATCH 15/21] python3-flatbuffers: add recipe As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../flatbuffers/python3-flatbuffers_2.0.7.bb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 recipes-devtools/flatbuffers/python3-flatbuffers_2.0.7.bb diff --git a/recipes-devtools/flatbuffers/python3-flatbuffers_2.0.7.bb b/recipes-devtools/flatbuffers/python3-flatbuffers_2.0.7.bb new file mode 100644 index 0000000..20346ba --- /dev/null +++ b/recipes-devtools/flatbuffers/python3-flatbuffers_2.0.7.bb @@ -0,0 +1,15 @@ +SUMMARY = "Memory Efficient Serialization Library - Python3 Modules" +HOMEPAGE = "https://github.com/google/flatbuffers" +SECTION = "console/tools" +LICENSE = "Apache-2.0" + +LIC_FILES_CHKSUM = "file://../LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57" + +SRCREV = "8367664f15c3ea2ee58c67dacf9d630b49466de5" +SRC_URI = "git://github.com/google/flatbuffers.git;branch=master;protocol=https" +S = "${WORKDIR}/git/python" + +RDEPENDS:${PN} = "flatbuffers" + +inherit setuptools3 + From e7886fc367c1ca9ea67ac6d48fdc38559b2f37db Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:35:21 -0700 Subject: [PATCH 16/21] eiq-examples: add recipe As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../eiq-examples/eiq-examples_git.bb | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 recipes-libraries/eiq-examples/eiq-examples_git.bb diff --git a/recipes-libraries/eiq-examples/eiq-examples_git.bb b/recipes-libraries/eiq-examples/eiq-examples_git.bb new file mode 100644 index 0000000..127a685 --- /dev/null +++ b/recipes-libraries/eiq-examples/eiq-examples_git.bb @@ -0,0 +1,28 @@ +SUMMARY = "The eiq examples based on Tf-lite" +DESCRIPTION = "The eiq examples based on Tf-lite" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" + +SRC_URI = "${EIQ_EXAMPLES_SRC};branch=${SRCBRANCH}" +EIQ_EXAMPLES_SRC ?= "git://github.com/nxp-imx/eiq-example.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" +SRCREV = "798519ee033fb7a5aef989a793afe16f400d6479" + +S = "${WORKDIR}/git" + +do_install () { + # install scripts to /usr/bin + install -d ${D}${bindir}/${PN}-${PV}/ + cp ${S}/download_models.py ${D}${bindir}/${PN}-${PV}/ + cp -r ${S}/dms ${D}${bindir}/${PN}-${PV}/ + cp -r ${S}/face_recognition ${D}${bindir}/${PN}-${PV}/ + cp -r ${S}/image_classification ${D}${bindir}/${PN}-${PV}/ + cp -r ${S}/object_detection ${D}${bindir}/${PN}-${PV}/ + cp -r ${S}/gesture_detection ${D}${bindir}/${PN}-${PV}/ +} + +RDEPENDS:${PN} = "python3 python3-numpy python3-pillow python3-requests \ + python3-opencv python3-pillow tensorflow-lite" + +#Only support imx93 currently, will add other plantform support. +COMPATIBLE_MACHINE = "(mx93-nxp-bsp)" From 14fb8f5a99c74acb1a6629ab7c7cf8b5b4d775ae Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:36:04 -0700 Subject: [PATCH 17/21] ethos-u-driver-stack: add recipe As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../ethos-u-driver-stack_22.08.bb | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_22.08.bb diff --git a/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_22.08.bb b/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_22.08.bb new file mode 100644 index 0000000..38bedc1 --- /dev/null +++ b/recipes-libraries/ethos-u-driver-stack/ethos-u-driver-stack_22.08.bb @@ -0,0 +1,38 @@ +SUMMARY = "The Linux driver stack for Arm(R) Ethos(TM)-U NPU" +DESCRIPTION = "The Linux driver stack for Arm(R) Ethos(TM)-U provides \ +an example of how a rich operating system like Linux can dispatch \ +inferences to an Arm Cortex(R)-M subsystem, consisting of an Arm \ +Cortex-M of choice and an Arm Ethos-U NPU." +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e" + +DEPENDS = "flatbuffers python3-pybind11 python3-pybind11-native" + +SRC_URI = "${ETHOS_U_SRC};branch=${SRCBRANCH}" +ETHOS_U_SRC ?= "git://github.com/nxp-imx/ethos-u-driver-stack-imx.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" +SRCREV = "ca1a424bcd00758e0b50043ac7f8a3ff214e9ed8" + +S = "${WORKDIR}/git" + +inherit cmake setuptools3 + +SETUPTOOLS_BUILD_ARGS = "build_ext --library-dirs ${B}/driver_library" + +do_configure() { + cmake_do_configure +} + +do_compile () { + cmake_do_compile + setuptools3_do_compile +} + +do_install () { + cmake_do_install + setuptools3_do_install +} + +RDEPENDS:${PN} = "flatbuffers python3-numpy python3-pillow" + +COMPATIBLE_MACHINE = "(mx93-nxp-bsp)" From 087ae136b111b014ab94918da88f30b34f4f9263 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:36:20 -0700 Subject: [PATCH 18/21] ethos-u-firmware: add recipe As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../ethos-u-firmware_22.08.bb | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_22.08.bb diff --git a/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_22.08.bb b/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_22.08.bb new file mode 100644 index 0000000..3c35e00 --- /dev/null +++ b/recipes-libraries/ethos-u-driver-stack/ethos-u-firmware_22.08.bb @@ -0,0 +1,29 @@ +SUMMARY = "The firmware of Cortex(R)-M33 for Arm(R) Ethos(TM)-U NPU" +DESCRIPTION = "The firmware of Cortex(R)-M33 for Arm(R) Ethos(TM)-U NPU" +LICENSE = "Apache-2.0 & GPL-2.0-only & BSD-3-Clause" +LIC_FILES_CHKSUM = "\ + file://LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e \ + file://LICENSE-GPL-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://LICENSE-BSD-3.txt;md5=0858ec9c7a80c4a2cf16e4f825a2cc91 \ +" + +SRC_URI = "${ETHOS_U_FIRMWARE_SRC};branch=${SRCBRANCH}" +ETHOS_U_FIRMWARE_SRC ?= "git://github.com/nxp-imx/ethos-u-firmware.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" +SRCREV = "c80a413664f650c366fc4721474a3fe1d1503eb5" + +S = "${WORKDIR}/git" + +ETHOS_U_FIRMWARE = "ethosu_firmware" +ETHOS_U_FIRMWARE:imx93-9x9-lpddr4-qsb = "ethosu_firmware_9x9" +ETHOS_U_FIRMWARE:imx93-11x11-lpddr4x-evk = "ethosu_firmware_11x11" + +do_install () { + install -d ${D}${nonarch_base_libdir}/firmware + install -m 0644 ${S}/${ETHOS_U_FIRMWARE} ${D}${nonarch_base_libdir}/firmware/ethosu_firmware +} + +FILES:${PN} = "${nonarch_base_libdir}/firmware/*" +INSANE_SKIP:${PN} = "arch" + +COMPATIBLE_MACHINE = "(mx93-nxp-bsp)" From 1f3c486693c2228a3ed1e14f204d029ab5da6e16 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:36:34 -0700 Subject: [PATCH 19/21] ethos-u-vela: add recipe As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../ethos-u-vela/ethos-u-vela_3.6.0.bb | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 recipes-libraries/ethos-u-vela/ethos-u-vela_3.6.0.bb diff --git a/recipes-libraries/ethos-u-vela/ethos-u-vela_3.6.0.bb b/recipes-libraries/ethos-u-vela/ethos-u-vela_3.6.0.bb new file mode 100644 index 0000000..031be0f --- /dev/null +++ b/recipes-libraries/ethos-u-vela/ethos-u-vela_3.6.0.bb @@ -0,0 +1,28 @@ +# Copyright 2022 NXP +DESCRIPTION = "The vela tool is used to compile a TensorFlow Lite for \ +Microcontrollers neural network model into an optimised version that \ +can run on an embedded system containing an Arm Ethos-U NPU" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e3fc50a88d0a364313df4b21ef20c29e" +DEPENDS = "python3-pip-native python3-wheel-native flatbuffers python3-numpy python3-lxml" + +SRC_URI = "${VELA_SRC};branch=${SRCBRANCH}" +VELA_SRC ?= "git://github.com/nxp-imx/ethos-u-vela.git;protocol=https" +SRCBRANCH = "lf-6.1.1_1.0.0" +SRCREV = "8b138a2e6880e31bd199764db9c5177c46bd5579" + +S = "${WORKDIR}/git" + +inherit setuptools3 + +do_compile[network] = "1" +do_compile:prepend() { + export HTTP_PROXY=${http_proxy} + export HTTPS_PROXY=${https_proxy} + export http_proxy=${http_proxy} + export https_proxy=${https_proxy} +} + +RDEPENDS:${PN} += "flatbuffers python3-numpy python3-lxml" + +COMPATIBLE_MACHINE = "(mx93-nxp-bsp)" From 4348ce230fc4ec7dca80ec42fe8d2c5310131604 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:37:19 -0700 Subject: [PATCH 20/21] nnstreamer-edge: add recipe As per NXP langdale-6.1.1-1.0.0 release. Signed-off-by: Chris Dimich --- .../nnstreamer-edge/nnstreamer-edge_0.1.0.bb | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 recipes-nnstreamer/nnstreamer-edge/nnstreamer-edge_0.1.0.bb diff --git a/recipes-nnstreamer/nnstreamer-edge/nnstreamer-edge_0.1.0.bb b/recipes-nnstreamer/nnstreamer-edge/nnstreamer-edge_0.1.0.bb new file mode 100644 index 0000000..b797ccc --- /dev/null +++ b/recipes-nnstreamer/nnstreamer-edge/nnstreamer-edge_0.1.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "NNStreamer-Edge library" +DESCRIPTION = "Remote source nodes for NNStreamer pipelines without GStreamer dependencies" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=095e13fef457e259d3bc155d0ed859f1" + +DEPENDS = "\ + gtest \ +" + +NNS_EDGE_SRC ?= "git://github.com/nnstreamer/nnstreamer-edge.git;protocol=https" +SRCBRANCH = "lts/0.1.0.b" +SRCREV = "2efc10afd1161a025fa3848aca487fb9a665f3c0" +SRC_URI = "${NNS_EDGE_SRC};branch=${SRCBRANCH}" + +S = "${WORKDIR}/git" + +inherit cmake pkgconfig + +EXTRA_OECMAKE = " \ + -DENABLE_TEST=ON \ +" From 26473ce1c967b52b077cd26aa293de38386ddcf5 Mon Sep 17 00:00:00 2001 From: Chris Dimich Date: Fri, 2 Jun 2023 00:38:05 -0700 Subject: [PATCH 21/21] packagegroup-fsl-ml: update as per NXP langdale-6.1.1-1.0.0 release Signed-off-by: Chris Dimich --- .../packagegroups/packagegroup-fsl-ml.bb | 58 ++++++++++++++++--- 1 file changed, 49 insertions(+), 9 deletions(-) diff --git a/recipes-fsl/packagegroups/packagegroup-fsl-ml.bb b/recipes-fsl/packagegroups/packagegroup-fsl-ml.bb index 744b4de..10c8fa2 100644 --- a/recipes-fsl/packagegroups/packagegroup-fsl-ml.bb +++ b/recipes-fsl/packagegroups/packagegroup-fsl-ml.bb @@ -1,35 +1,75 @@ +# Copyright 2019-2021 NXP +# Released under the MIT license (see COPYING.MIT for the terms) + DESCRIPTION = "Add packages for AI/ML build" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" -PACKAGE_ARCH = "${MACHINE_SOCARCH}" +PACKAGE_ARCH = "${TUNE_PKGARCH}" inherit packagegroup ML_NNSTREAMER_PKGS_LIST = " \ nnstreamer \ + nnstreamer-deepview-rt \ nnstreamer-protobuf \ nnstreamer-python3 \ + nnstreamer-query \ nnstreamer-tensorflow-lite \ " + ML_NNSTREAMER_PKGS = "" ML_NNSTREAMER_PKGS:mx8-nxp-bsp:imxgpu = "${ML_NNSTREAMER_PKGS_LIST}" +ML_NNSTREAMER_PKGS:mx8mp-nxp-bsp = "${ML_NNSTREAMER_PKGS_LIST} nnstreamer-tvm nnstreamer-unittest" +ML_NNSTREAMER_PKGS:mx9-nxp-bsp = "${ML_NNSTREAMER_PKGS_LIST}" -ML_PKGS ?= "" +# i.MX8MP uses nnshark - other i.MX8/9 use raw gstshark +ML_GST_PROFILER = "" +#ML_GST_PROFILER:mx8-nxp-bsp = "gst-shark" +#ML_GST_PROFILER:mx8mp-nxp-bsp = "nnshark" +#ML_GST_PROFILER:mx9-nxp-bsp = "gst-shark" + +# These packages don't require any acceleration +ML_PKGS = "" ML_PKGS:mx8-nxp-bsp = " \ - onnxruntime \ - pytorch \ + deepview-rt-examples \ + onnxruntime-tests \ tensorflow-lite \ torchvision \ " -ML_PKGS:mx8mq-nxp-bsp = " \ - deepview-rt \ - tvm \ +ML_PKGS:mx9-nxp-bsp = " \ + deepview-rt-examples \ + onnxruntime-tests \ + tensorflow-lite \ + torchvision \ " -ML_PKGS:mx8mp-nxp-bsp = " \ - deepview-rt \ +# These packages require acceleration, which currently maps to +# all SOCs with GPU except for 8M Mini +ML_ACCELERATED_PKGS = "" +ML_ACCELERATED_PKGS:mx8-nxp-bsp:imxgpu = " \ + tensorflow-lite-vx-delegate \ +" +ML_ACCELERATED_PKGS:mx8mp-nxp-bsp = " \ tensorflow-lite-vx-delegate \ tvm \ " +ML_ACCELERATED_PKGS:mx8mm-nxp-bsp = "" + + +# ARM ethos-u package +ETHOS_U_PKGS = "" +ETHOS_U_PKGS:mx93-nxp-bsp = " \ + ethos-u-vela \ + ethos-u-driver-stack \ + tensorflow-lite-ethosu-delegate \ + eiq-examples \ +" + + RDEPENDS:${PN} = " \ ${ML_PKGS} \ + ${ML_ACCELERATED_PKGS} \ ${ML_NNSTREAMER_PKGS} \ + ${ML_GST_PROFILER} \ + ${ETHOS_U_PKGS} \ "