This imports ethos-u firmware from NXP's MCUXpresso SDK (version
SDK_2_16_000_MIMX9352xxxxM) + some patches provided by NXP to fix the
communication with the TFlite delegate (support case 00663302).
Repo: emp/ethos_u_firmware.git
Revision: 2a98a3899f56830c45fadc708229824e9fee3a01
https://onedigi.atlassian.net/browse/DEL-9355
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This commit removes all references to packages dependent on the X-Linux-AI tool
manager, as it has an internal dependency on the apt-openstlinux package.
https://onedigi.atlassian.net/browse/DEL-9419
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit removes all outdated recipes after the integration of the latest
X-LINUX-AI v6.0.0 release from the meta-st-x-linux-ai layer for Yocto 5.0
(Scarthgap).
https://onedigi.atlassian.net/browse/DEL-9419
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit updates the camera configuration and default paths to align with
the new X-LINUX-AI v6.0.0 release from the meta-st-x-linux-ai layer.
https://onedigi.atlassian.net/browse/DEL-9419
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds a .bbappend to the application-resources recipe, enabling
support for the STM32MP255 variant in the configuration board script.
https://onedigi.atlassian.net/browse/DEL-9419
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
NPU samples were reworked in the new X-LINUX-AI v6.0.0 release from the
meta-st-x-linux-ai layer. This commit updates the Digi customizations to align
with the new NPU sample files.
https://onedigi.atlassian.net/browse/DEL-9419
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit removes all unnecessary files after the integration of the latest
X-LINUX-AI v6.0.0 release from the meta-st-x-linux-ai layer for Yocto 5.0
(Scarthgap).
https://onedigi.atlassian.net/browse/DEL-9419
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Even though we're already limiting this number of threads to 16, the wpewebkit
compilation process often crashes, even on powerful development PCs with 32
logical cores and 32 GiB of RAM. Reducing the number of threads to 8 avoids
this, at the expense of a slightly longer compilation time.
https://onedigi.atlassian.net/browse/DEL-9411
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The main culprit is "accessibility", which adds a dependency with at-spi2-atk.
This service fails to launch if glib-2.0's gschemas.compiled file is missing,
which is the case in our default images. In turn, this failure causes webkit
to stall for 30 seconds before launching. Remove this PACKAGECONFIG to avoid
this issue.
While at it, remove other PACKAGECONFIGs:
* "lbse" and "service-worker" are not configurable anymore and are now
hardcoded features. Removing these PACKAGECONFIGs has no effect on the
build, but their inclusion gives the false impression that they're
configurable, so remove them. "webcrypto" is also not configurable
anymore, but its PACKAGECONFIG pulls in necessary dependencies, so leave
it enabled for now.
* "openjpeg" is not only not configurable, but it's no longer supported.
This PACKAGECONFIG pulls in an openjpeg dependency, making bitbake build
the package even though it never gets included in the final image. Remove
the config to prevent bitbake from building the openjpeg package at all.
* "speech-synthesis" pulls in a dependency with flite, a 15 MiB speech
synthesis tool. We aren't using this feature in our demos, so remove it
from our default configuration to save some space.
https://onedigi.atlassian.net/browse/DEL-9404
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The value of this variable is always the same within a platform, so it doesn't
make sense to have different variables for it in each recipe that requires it.
While at it, it seems like all currently supported platforms in DEY 5.0 use the
same value of "wayland-1", presumably because they all use similar versions of
wayland/weston. Set this as the default value for all platforms for now. As we
support more platforms, we can adjust this value if needed, but if it ends up
being the same for all platforms, we can just hardcode it.
https://onedigi.atlassian.net/browse/DEL-9404
Co-authored-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit removes all unnecessary files after the integration of the latest
ST BSP, based on the openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 tag for
Yocto 5.0 (Scarthgap).
https://onedigi.atlassian.net/browse/DEL-9381
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
After poky commit 4705dd264681d908f144dd4d9bf1f6175f68d8b9, soft dependencies
for complementary packages no longer get included by bitbake's internal package
managers. Make weston's dependency with wayland-protocols a hard one to include
wayland-protocols in our SDKs, which is how it used to be in older DEY
releases.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Remove any content that has been upstreamed to meta-freescale and update the
recipes with the latest changes in meta-imx, while keeping our customizations.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This was always the case until commit 498e94c9132e90fc1c406b8422e4554c6801918e
in meta-qt6, which was meant to reorganize some packages depending on the
target architecture, but removed the check for this package in the process
(while maintaining the check for other related packages). We haven't tried
building qtpdf until now, and since it's causing build errors out of the box,
we might as well remove it for now because it's only meant to be an addon
exclusive to the SDK.
Since the new package qtdoc has a dependency with qtpdf, remove it as well.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Our distribution is Digi Embedded Yocto (DEY), so use that to mark the
upstream status of the patches in our layer.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Similar to what happens in cog with the drm PACKAGECONFIG, this creates a
dependency with libgbm, a library which isn't available on these platforms.
https://onedigi.atlassian.net/browse/DEL-9011
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Back in Yocto 4.0, we backported some ml recipes exclusively for the ccimx93
from meta-imx's rel_imx_6.1.55_2.2.0 tag, but now we simply use what's provided
in the scarthgap-6.6.23-2.0.0 branch of meta-imx. Reflect this in
imx-digi-base.inc.
Remove the recipes for:
* arm-compute-library
* eiq-examples
* ethos-u-driver-stack
* ethos-u-vela
* flatbuffers
* onnxruntime
* tensorflow-lite
https://onedigi.atlassian.net/browse/DEL-9011https://onedigi.atlassian.net/browse/DEL-9081
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Even though these recipes are technically available in meta-freescale, the
imx-gpu-viv-6-overrides.inc file from meta-imx isn't. Port it and include it in
our recipes to make sure we have all of the iMX BSP customizations.
https://onedigi.atlassian.net/browse/DEL-9011https://onedigi.atlassian.net/browse/DEL-9081
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
A lot of the imx93-specific changes have been upstreamed to meta-freescale, and
this version is now used in all platforms, so we don't need to include
version-specific code (for example, to manage weston-socket.sh).
Also, update our do_install:append() to match the one in meta-imx, while
keeping our customizations.
https://onedigi.atlassian.net/browse/DEL-9011https://onedigi.atlassian.net/browse/DEL-9081
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Back in Yocto 4.0, we applied some imx recipe changes exclusively for the
ccimx93 from meta-imx's rel_imx_6.1.55_2.2.0 tag, but now these changes have
been upstreamed in the meta-freescale scarthgap branch. Since there currently
isn't an NXP BSP based on scarthgap, make all platforms use the upstreamed
versions of the recipes, which are the same versions or newer as the ones
available in meta-imx
Remove the recipes for:
* firmware-ele-imx
* gstreamer1.0-plugins-bad
* gstreamer1.0-plugins-base
* gstreamer1.0-plugins-good
* gstreamer1.0-plugins-good
* gstreamer1.0-plugins-ugly
* gstreamer1.0
* imx-atf
* imx-boot-firmware-files
* imx-codec
* imx-g2d-samples
* imx-m33-demos
* imx-m4-demos
* imx-m7-demos
* imx-parser
* imx-pxp-g2d
* libdrm
* linux-imx-headers
* optee-test
* wayland
* wayland-protocols
* weston
* xwayland
Apply these changes:
* Remove ccimx93-exclusive changes in gstreamer1.0-meta-base
* Modify imx-gst1.0-plugin bbappend so the upstream version is used in all
platforms
* Remove imx-alsa-plugins bbappend so the upstream version is used in all
platforms
* Remove firmware-nxp-wifi bbappend since the files we need to install seem
to already be included in the meta-freescale recipe
* Remove imx-test and imx-lib bbappends since our custom changes have
already been included in the meta-freescale recipes
https://onedigi.atlassian.net/browse/DEL-9011https://onedigi.atlassian.net/browse/DEL-9081
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
* meta-ml was renamed to meta-imx-ml, and its BBFILE_COLLECTIONS was renamed to
imx-machine-learning
* meta-st-stm32mpu-ai was renamed to meta-st-x-linux-ai
https://onedigi.atlassian.net/browse/DEL-9011
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The recipe level DEPENDS on ethos-u-vela-native is insufficient to ensure
the native vela tool population into the eiq-examples recipe sysroot
native directory before use. The new download_transform_models task uses
that tool, so add the dependence on the task to ensure it is available
before use.
While on it, configure the working directory of the new task using the
Yocto way (using task[dirs]).
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
* do not run the demos in background, if not they can not be ctrl+c.
* fix service dependencies: required camera and weston.
* patch the examples to:
** set camera resolution to 1280x720
** set default format to ov5640 camera (YUYV)
** detect the "x" event when the demo application is running in windowed mode (not fullscreen).
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Actually, the NPU demos were not making use of the NPU, just the CPU. To enable the NPU usage,
it is required to add the external delegate library 'tflite-vx-delegate'to the system. This is
done by forcing 'tensorflow-lite' to depend on it for the CCMP2 platform, which also requires
'tim-vx' library as a build dependency.
Both the 'tflite-vx-delegate' and 'tim-vx' recipes have been verbatim copied from the ST Beta
branch, using commit with SHA256: 68686850c75061f1c7c4e756a313a41ca810f6ae
Signed-off-by: David Escalona <david.escalona@digi.com>
Customize the NPU samples provided by ST so they can be executed in our DEY images:
- Add a generic launch script to pre-configure environment variables before launching demos.
- Remove 'weston' user check from demos launch scripts.
- Reduce font size for big screens.
- Set camera resolution to 640x480px and center the image.
- Adapt home folder to 'root' user instead of 'weston'.
- Adapt package group to include the new samples and remove the old ones.
- Fix a couple of errors with models download and include them manually.
- Add a runtime dependency with 'libdrm-tests' as the 'modetest' binary is required.
https://onedigi.atlassian.net/browse/CCS-12
Signed-off-by: David Escalona <david.escalona@digi.com>
Current samples were not working properly due to problems with libraries and
the runtime frameworks.
This commit brings the updated samples recipes with the new folder structure
that have been proved to work as they were in the st beta branch, using commit
with SHA256: 68686850c75061f1c7c4e756a313a41ca810f6ae
https://onedigi.atlassian.net/browse/CCS-12
Signed-off-by: David Escalona <david.escalona@digi.com>
Current recipe build was failing due to dependencies with cpuinfo header files and
libraries. This commit backports the recipe that is currently being built in the
ST main branch in GitHub which clears these dependencies.
The recipe was backported as it was in commit with SHA256:
fc56201c67adf899080cff5b45ed33824e427609
https://onedigi.atlassian.net/browse/CCS-12
Signed-off-by: David Escalona <david.escalona@digi.com>
Current recipe build was failing due to dependencies with cpuinfo header files and
libraries. This commit backports the recipe that is currently being built in the
ST main branch in GitHub which clears these dependencies.
The recipe was backported as it was in commit with SHA256:
fc56201c67adf899080cff5b45ed33824e427609
https://onedigi.atlassian.net/browse/CCS-12
Signed-off-by: David Escalona <david.escalona@digi.com>
Backport a new version of cmake-native from Poky's mickledore release. This
is required by the new version of the onnxruntime package (backported in
the following commit).
https://onedigi.atlassian.net/browse/CCS-12
Signed-off-by: David Escalona <david.escalona@digi.com>
Until now, the recipe only installed the binaries and some scripts in the target device. Then,
user had to execute an script in the running system to download and transform the models for
the demo, a process that could take up to 30 minutes. Also, a custom script was required to
acomodate the environment settings before executing any demo. All of this was preventing us from
creating out-of-the-box images including NPU demos for exhibitions and clients.
With the new changes, the recipe now downloads and transforms all the models in the host machine,
saving around 27 minutes and leaving the demos in the target ready to be executed. To ease the
process, a launch script is included for all the demos to configure the environment as well as an
auto-start service.
https://onedigi.atlassian.net/browse/CCS-10
Co-authored-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: David Escalona <david.escalona@digi.com>