Using the qt5 STM customizations as reference, adapt them to qt6 by changing
filenames and paths when needed and porting the qtbase configuration options
from the v2.1.0 branch of meta-st-x-linux-qt. Make sure that the
cinematicexperience is included in packagegroup-qt6-dey.
For now, leave the STM qt5 support as-is for backwards compatibility.
https://onedigi.atlassian.net/browse/DEL-9462
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Similar to what we did for the target's version of this packagegorup in commit
58cfee7ac7, keep the "essentials" packagegroup and remove the addons. In this
case, the troublesome qt6 package is qtinterfaceframework, which pulls in
several python3 packages including python3-cryptography, which depends on the
rust compiler.
This reduces overall SDK size and rust compiler overhead during the SDK build.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This mirrors the change done for the STM version of the recipe in meta-digi
commit b7c15294a2, re-using the same patch that was used to fix the
compilation error introduced by poky commit 19fce77a5f13.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit adds a patch to address a build issue with the onnxruntime recipe
when warnings are treated as errors. The issue happens due to changes in commit
19fce77a5f132c569c555e8b6a4dda1379537653 ("gcc: Fix c++: tweak for
Wrange-loop-construct") in the poky layer.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
At the moment, we provide four versions of the connectcore demo package:
* webkit + multimedia: we include this one in webkit images
* webkit (no multimedia): used in cases where the platform supports webkit,
but video/webgl performance isn't optimal
* regular: only contains the demo server and basic assets, we include it in
non-webkit images
* regular + multimedia: contains the regular package plus video/webgl web
content
This last version doesn't make a lot of sense because video/webgl content is
meant to showcase the target's VPU/GPU capabilities, and that can only be done
when running the demo on the target via webkit. Besides, even though we don't
include this version of the package in our default non-webkit images, the
runtime dependencies in the .inc file make bitbake generate the video-examples
and webglsamples packages during the image builds, even if they don't end up
in the final image. This is true even for platforms that don't support webkit,
such as the ccimx6ul, ccimx91 and ccimx93.
Initially, I tried making the -multimedia package exclusive to the webkit
recipe, but this causes its contents to be bundled with the base (regular)
package. To avoid this, define the -multimedia package in the .inc file, and
move its dependency with video-examples and webglsamples to the webkit recipe.
This way, the regular + multimedia version of the package still exists, but
it no longer causes bitbake to generate video/webgl packages when not needed.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Part of these changes are related to the update to Qt 6.8. Slightly modify
qtquick3d_git.bbappend to mirror NXP's configuration (i.MX GPU drivers don't
support OpenXR)
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
packagegroup-qt6-modules is the base packagegroup added to SDKs that inherit
the populate_sdk_qt6 bbclass. By default, this packagegroup pulls in two other
packagegroups: packagegroup-qt6-essentials and packagegroup-qt6-addons.
The addons packagegroup pulls in a big number of qt packages that we don't even
install in our images. This would be fine if it weren't for the fact that the
bitbake server tends to crash when building several of these packages at once,
even on powerful development PCs. The current workaround is to reduce the
number of bitbake jobs at a project level, but this hinders the overall SDK
build time. Remove the addons and use our own qt6 packagegroup instead.
This way, we prevent errors in our daily builds and the qt6 contents in our
SDKs are more similar to what we provide in our images. In the ccimx8x-sbc-pro
toolchain, this reduces the installer script's size by around 492 MiB.
https://onedigi.atlassian.net/browse/DEL-9410
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
After commit 732975b722, which synced our qt6 recipes with meta-imx, there
are no longer any compilation error when building qtpdf. Undo our removal of
this package to minimize the amount of changes done to the qt6 packagegroups.
Don't undo the change in the copyright years
This reverts commit 3bf06c2c6f.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
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>