Commit Graph

2511 Commits

Author SHA1 Message Date
Gabriel Valcazar a3cea506c6 qt6: remove nativesdk-packagegroup-qt6-toolchain-host-addons from our SDKs
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>
2025-01-10 14:24:17 +01:00
Gabriel Valcazar 7e51909ef5 adwaita-icon-theme: remove outdated dependency with librsvg-native
The dependency was added in the recipe for adwaita-icon-theme v3.30.1, back in
poky commit 2ad84e129652, because that version of the package required librsvg
to convert SVG files to PNG. In recent versions, this is no longer the case,
and removing the dependency has no effect on the package's contents (they are
identical with or without the dependency).

Since librsvg-native is the only package in our ccimx6ul/x11 images that
depends on rust, remove this dependency to prevent bitbake from generating
the rust compiler, reducing build overhead.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-09 11:38:48 +01:00
Gabriel Valcazar 3cca11034d dey.conf: remove rsvg gstreamer plugin to prevent rust compiler overhead
This plugin is optional and, in platforms where rust isn't used anywhere else,
it adds a lot of overhead during the build process. Remove the plugin to
prevent said overhead when possible.

Alter gstreamer1.0-plugin-bad's PACKAGECONFIG from a single place so the
change applies globally (imx and stm platforms use different gstreamer recipes
and versions).

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-09 09:58:20 +01:00
Gabriel Valcazar 007c84d684 imx-machine-learning: onnxruntime: fix compilation error
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>
2025-01-08 15:32:20 +01:00
Arturo Buzarra b7c15294a2 x-linux-ai: recipes-frameworks: fix build issue with onnxruntime recipe
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>
2025-01-08 12:11:31 +01:00
Gabriel Valcazar c58b5a433f packagegroup-dey-examples: don't install connectcore demo multimedia files
connectcore-demo-example multimedia content is only meant for webkit images,
and all this package does in its regular non-webkit version is add a few static
resources. Remove said resources and install only the demo's server + basic
assets.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2025-01-07 16:10:36 +01:00
Gabriel Valcazar d595a2e3b5 connectcore-demo-example: restructure multimedia dependencies
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>
2025-01-07 16:10:33 +01:00
Isaac Hermida 8ad093c37b imx-machine-learning: check vela return code
Return an error in case any of the models could not be converted.

https://onedigi.atlassian.net/browse/DEL-9424

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-12-20 11:54:27 +01:00
Gabriel Valcazar 25f4fa7641 qt6-layer: NXP: sync with meta-imx scarthgap-6.6.52-2.2.0
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>
2024-12-19 16:19:59 +01:00
Gabriel Valcazar 8d2e3c7ef3 dey-toolchain: add missing gstreamer packages
In the previous commit, removing the qt6 addons packagegroup has the unintended
side effect of removing all gtsreamer packages from the SDK, presumably because
they were being implicitly pulled in by one of the many qt6 packages. Add our
dey-gstreamer packagegroup to dey-toolchain to recover said packages.

Note that the set of packages we include with our packagegroup is much bigger
than the set that was being pulled in by the qt6 addons, but the size increase
is small compared to the increase caused by the qt6 addons. In the
ccimx8x-sbc-pro toolchain, this increases the installer script's size by around
84 MiB.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-12-18 13:17:14 +01:00
Gabriel Valcazar 58cfee7ac7 qt6: remove packagegroup-qt6-addons from dey-toolchain builds
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>
2024-12-18 13:03:56 +01:00
Gabriel Valcazar 4301465674 Revert "packagegroup-qt6-addons: only add qtpdf when "webengine" is a DISTRO_FEATURE"
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>
2024-12-18 11:02:38 +01:00
Gabriel Valcazar db67bb7b82 classes: remove redundant populate_sdk_qt6 bbclass
This bbclass is already available as-is in the meta-qt6 layer, so remove it.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-12-18 11:02:38 +01:00
Javier Viguera 16c281ba74 ccimx93: update/fix ethos-u-firmware for NXP release 6.6.36-2.1.0
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>
2024-12-17 17:42:36 +01:00
Arturo Buzarra d894df580d x-linux-ai: packagegroup-x-linux-ai: remove x-linux-ai tool manager dependency
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>
2024-12-16 23:19:22 +01:00
Arturo Buzarra 9ee4609346 x-linux-ai: packagegroup-x-linux-ai: remove outdated recipes
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>
2024-12-16 09:36:49 +01:00
Arturo Buzarra d80a13250a x-linux-ai: recipes-samples: update launch_npu_demo.sh script
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>
2024-12-16 09:36:49 +01:00
Arturo Buzarra bb19ff5d29 x-linux-ai: recipes-samples: Add STM32MP255 support to the application-resources recipe
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>
2024-12-16 09:36:49 +01:00
Arturo Buzarra 8c0d24248f x-linux-ai: recipes-samples: adapt npu samples customizations
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>
2024-12-16 09:36:49 +01:00
Arturo Buzarra 78d02c2996 x-linux-ai: remove outdated recipes and unnecessary files
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>
2024-12-16 09:36:49 +01:00
Arturo Buzarra 1c534c97b5 Revert "meta-digi-dey: layer.conf: make "outdated" layers compatible with Yocto 5.0"
This reverts commit 3231654757, as a new
scarthgap branch for the meta-st-x-linux-ai layer is now available.

https://onedigi.atlassian.net/browse/DEL-9419
2024-12-16 09:36:49 +01:00
Gabriel Valcazar 5c20361d5c wpewebkit: reduce maximum number of PARALLEL_MAKE threads to 8
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>
2024-12-11 17:51:37 +01:00
Gabriel Valcazar abc92f2d77 wpewebkit: clean up unwanted PACKAGECONFIGs
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>
2024-12-11 13:19:43 +01:00
Gabriel Valcazar c7b2c5e94c Generalize WAYLAND_DISPLAY variable at a platform level and set a default value
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>
2024-12-11 13:18:03 +01:00
Arturo Buzarra d29d7149a7 stm-st-stm32mp: remove outdated recipes and unnecessary files
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>
2024-12-10 10:19:50 +01:00
Gabriel Valcazar 51655b11dd swupdate: fix build errors in ubivol rdiff handler patch
This patch includes code that only gets compiled for platforms that use a NAND
as the internal storage. Recent changes in swupdate's "copyfile" API caused
this code to stop building.

Using the normal rdiff handler code as reference, update our custom handler to
fix the build errors. While at it, include another change to prevent a warning.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-12-04 11:23:05 +01:00
Gabriel Valcazar 655ab0cc36 swupdate: adapt patches to v2024.12
In this version, Config.in files have been renamed to Kconfig, which prevented
one of our patches from applying correctly. Rework the patch to account for
this name change and while at it, update its context.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-12-03 12:55:29 +01:00
Isaac Hermida ca9d8162df bluetooth-init: cc9: do not unload the btnxpuart on reboot
Do not take any action such as removing the btnxpuart module When
the system is being restarted (poweroff or reboot), as the driver
tries to restore the UART baudrate when removing the module, and if
the system is being off, some of the entries might be dissapeared in the
middle of the process, leading to a NULL pointer and preventing the
system of being rebooted.
The btnxpuart can be removed on suspend/resume safely, so add the logic
to detect if the system is being rebooted.

https://onedigi.atlassian.net/browse/DEL-9290

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-11-28 15:41:41 +01:00
Gabriel Valcazar 17cbe3dda3 dey-toolchain: add a few IMAGE_FEATURES to include missing dev packages
This slightly increases the SDK's size, but it adds packages that are required
for common use cases such as integration with weston/x11.

https://onedigi.atlassian.net/browse/DEL-9297

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-11-28 11:40:17 +01:00
Gabriel Valcazar 5315d84350 dey-toolchain: avoid installing kernel binaries in the toolchain
This saves a few megabytes

https://onedigi.atlassian.net/browse/DEL-9297

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-11-27 14:20:25 +01:00
Gabriel Valcazar 74b2a65a19 Move common SDK modifications to a new bbclass, dey-image-sdk
Our new dey-toolchain recipe was missing the logic needed to create the
"dey-version" file in the SDK's installation path. Move this logic from the
dey-image bbclass to a new bbclass meant exclusively for SDK logic, and inherit
it where needed. While at it, move other common SDK modifications to this
class.

https://onedigi.atlassian.net/browse/DEL-9297

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-11-27 13:49:27 +01:00
Gabriel Valcazar db613ceff9 classes/images: Drop ';' delimiter from ROOTFS/IMAGE*COMMAND variables
This is a cosmetic commit that mirrors poky commit 6fd8af0d30e5.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-11-27 12:41:39 +01:00
Gabriel Valcazar 2070d83e0b toolchains: don't overwrite default SDKIMAGE_FEATURES contents
This variable is used to determine the types of complementary packages included
in the SDK: dbg-pkgs, dev-pkgs, doc-pkgs, src-pkgs...

We added staticdev-pkgs to this variable back in Yocto 2.0 (45de4d6943), but
instead of appending it to the original list, we redefined it with its original
value ("dev-pkgs dbg-pkgs") plus "staticdev-pkgs".

However, the default value of SDKIMAGE_FEATURES in poky has changed over time:

    * Starting in Yocto 2.3 (eb345ca720e5), doc-pkgs is included if
      "api-documentation" is in DISTRO_FEATURES. We don't include this feature
      by default, but if a customer were to include it manually, the doc
      packages wouldn't get included in their custom SDKs.
    * Starting in Yocto 2.7 (ba3aa5311291), bitbake changed the default
      PACKAGE_DEBUG_SPLIT_STYLE value so debug packages get split in two: one
      for binaries with debug symbols and another for the source code. In turn,
      src-pkgs was added to the default SDKIMAGE_FEATURES so that SDKs wouldn't
      change behavior, but since we overwrite the default value, we aren't
      including src-pkgs in our SDKs, only dbg-pkgs.
    * Any future changes would be ignored as well, which could potentially lead
      to unexpected behavior.

Make sure we don't overwrite the default SDKIMAGE_FEATURES value to include
src-pkgs in our SDKs, as well as the optional doc-pkgs logic. Also, include
staticdev-pkgs in our recently created dey-toolchain recipe.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-11-26 18:36:34 +01:00
Gabriel Valcazar 7f6898e1c6 recipes-core: add new recipe for dey-toolchain, a general DEY toolchain
For many DEY releases, we've been providing one SDK per image type, per
platform. In the case of graphical images, this was redundant for a few
reasons:

    * Most of the SDK's contents were identical, save for the specific packages
      in each image (qt, webkit, lvgl...) and their dependencies. With each SDK
      occupying over 1.5 GiB, this results in a lot of storage space overhead
      in our servers.
    * For some images, namely webkit and lvgl images, their respective SDK
      packages aren't necessary for the expected development use cases, so it's
      perfectly possible to use the qt SDK instead.

Create a separate recipe for a general-use SDK. Said toolchain includes qt5/qt6
packages by default, except for headless platforms. The advantages of this are:

    * We only provide one prebuilt SDK per platform, all with the same base
      name. The SDK should cover most if not all of the expected development
      use cases, and customers are still able to create their own custom SDKs
      if needed.
    * Having a separate recipe for the toolchain, not tied to a specific image
      type, allows us to fine tune its contents without affecting images and
      their recipes. With time, we can incorporate new packages as needed.

https://onedigi.atlassian.net/browse/DEL-9297

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-11-26 18:36:34 +01:00
Isaac Hermida 43451b06a8 cc9: standby: do not disable bluetooth on suspend if power is on
If the power domain is kept on in suspend, do not disable the Bluetooth as
no new initialization is needed.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-11-25 17:29:29 +01:00
Gabriel Valcazar 6b5402e3a1 freescale-layer: weston: make sure wayland-protocols gets included in the SDK
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>
2024-11-22 10:26:32 +01:00
Francisco Gil 8f78f71d3a recovery: ccmp1: update regex to include ubi1 for update partition
In single boot layout the ccmp1 platforms have two UBI devices:

ubi0: Contains uboot_config_r, linux, and recovery.
ubi1: Contains rootfs, data, and update.
The regular expression used for the update partition needs
to be updated to include the ubi1 device, ensuring proper
handling of the update partition.

https://onedigi.atlassian.net/browse/DEL-9387

Signed-off-by: Francisco Gil francisco.gilmartinez@digi.com
2024-11-20 15:25:53 +01:00
Javier Viguera 469868b64f trustfence-fscrypt: migrate to version 0.2 for arm64
Optee client library updated its major version due to a ABI breaking
change:

3eac340a78

This update provides a new build of the trustfence-fscrypt app, linking
to the new version of libteec.

https://onedigi.atlassian.net/browse/DEL-9341

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-18 16:03:56 +01:00
Isaac Hermida e28c7a1000 p2plink: make script more robust
Upon a p2p link, an auxiliar iface "p2p-iface-[0-9]" is created. If
it is not specified to the wpa_cli command, a different interface may
be used (eg, wlan0), leading to a failure.
Make the script more robust by detecting the new interface.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-11-15 13:03:37 +01:00
Gabriel Valcazar 171e5a5db1 trustfence.bbclass: copy public key to fs only if TRUSTFENCE_SIGN is enabled
Commit 998598415a moved this logic to the
trustfence.bbclass file, but in doing so, it removed the TRUSTFENCE_SIGN check
it used to have. The check is needed for two reasons:

* The signing of SWU packages only occurs when TRUSTFENCE_SIGN is enabled, so
  there's no need to copy the key if it's disabled
* When building a project from scratch that has Trustfence enabled but
  TRUSTFENCE_SIGN disabled, a PKI is never generated and the key doesn't exist.
  Because of this, the key won't be found and an error will occur. Note that
  if your project is already pointing to a populated PKI, the error won't
  happen, only if there's no PKI to begin with.

Although the PKI is guaranteed to exist by the time the rootfs is populated,
make sure to check that it has been properly generated and create it if it
doesn't exist. This logic depends on the trustfence-gen-pki.sh from
trustfence-sign-tools-native, so add it as a dependency for
dey-image-recovery-initramfs. The dependency is already there for another
feature in the dey-image recipes, so simply reflect this new dependency in a
comment.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
(cherry picked from commit 8e52c27d5a8e8071c3a17754e91c1819bcceee15)
2024-11-14 13:30:03 +01:00
Javier Viguera cf9a74982c Revert "orc: fix native build on ubuntu 18"
Poky updated orc to version 0.4.40. This patch is no longer needed.

This reverts commit bee97587cb.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-11 11:35:27 +01:00
Gabriel Valcazar a274463266 dey-image: inherit populate_sdk_qt[5/6] only in dey-image-qt to avoid SDK bloat
When it comes to inheriting this qt bbclass, we used to do so for every image
inheriting the "dey-image" bbclass that had "dey-qt" in its IMAGE_FEATURES. In
theory, only dey-image-qt follows these requirements.

However, starting in DEY 3.0, we added support for multiple graphical images,
all of them sharing the same characteristics save for a defining IMAGE_FEATURE.
To implement this, all images have the IMAGE_FEATURE "dey-${GRAPHICAL_CORE}",
with GRAPHICAL_CORE having a default value of "qt" and being overwritten in
each image recipe with its respective value: "qt", "webkit", "crank" or "lvgl".
The problem is that, when checking whether to inherit populate_sdk_qt[5/6] or
not, it's still very early in the recipe parsing process and GRAPHICAL_CORE
still has its default value of "qt", meaning the "dey-qt" IMAGE_FEATURE is
considered present for all graphical images. In turn, this results in qt
packages being included in all graphical image SDKs.

Move the inherit clause to the dey-image-qt recipe and remove the check so
that the qt packages only get installed in the dey-image-qt SDK.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
(cherry picked from commit 593ff866578e6d341ec4d8a09581922c6390e2a4)
2024-11-08 10:30:52 +01:00
Arturo Buzarra 984def64fd meta-digi-dey: sysinfo: fix build info filename from "build" to "buildinfo"
Commit 99f1425340 ("image-buildinfo: Improve and extend to SDK coverage too")
in the Poky layer changes the name of the default build information file from
"build" to "buildinfo", so this commit reflects this change by adapting the
sysinfo script.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-11-07 12:33:07 +01:00
Javier Viguera d83cb9b914 ccimx93: update ML package for NXP release 6.6.36-2.1.0
https://onedigi.atlassian.net/browse/DEL-9257

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-11-05 18:17:02 +01:00
Gabriel Valcazar 732975b722 qt6-layer: NXP: sync with meta-imx scarthgap-6.6.36-2.1.0
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>
2024-11-04 13:05:12 +01:00
Isaac Hermida 5451a0f4bc bluetooth-init: ccimx6ul: validate FW was correctly loaded
Sporadically, the BT FW is uploaded but the interface is not functional
as it is not up and its entries are not populated. Validate the FW
was correctly set, if not, rely on the retry mechanism.

https://onedigi.atlassian.net/browse/DEL-9006

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-10-31 09:59:42 +01:00
Gabriel Valcazar 3bf06c2c6f packagegroup-qt6-addons: only add qtpdf when "webengine" is a DISTRO_FEATURE
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>
2024-10-24 13:03:09 +02:00
Javier Viguera 373f061650 dey: cosmetic, mark patches as DEY specific
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>
2024-10-22 15:48:00 +02:00
Gabriel Valcazar 3231654757 meta-digi-dey: layer.conf: make "outdated" layers compatible with Yocto 5.0
At the moment, not all of the layers we use have a scarthgap branch, so simply
use the closest available Yocto version per branch and make them compatible
with scarthgap. This is very error prone, but at least we'll be able to get
some porting work done.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 5922cfe9cb wpewebkit: remove gbm PACKAGECONFIG for ccimx6 and ccmp1 platforms
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>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 5c57d503ef wpa-supplicant: use our custom defconfig
A recent change in poky changed the configuration behavior of this package,
using the defconfig in the source tree instead of the one provided in Yocto
(which we overwrite in meta-digi). Since our ccmp1 builds have a lot of patches
specific to the platforms' wifi chip, using the default defconfig results in
linking errors.

Restore the ability to use custom defconfigs to be able to use the ones defined
in our layer per platform.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 0aa695785b layer.conf: reflect change in meta-st-x-linux-ai BBFILE_COLLECTIONS name
In the mickledore branch of this layer, BBFILE_COLLECTIONS was renamed from
stm32mpu-ai to x-linux-ai

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9045

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar d207fdfc57 Revert "systemd-boot: meson: Fix build with --optimization=plain"
The patch was officially included in systemd v252, we now use v255.4.

This reverts commit c5c0c7c966.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 2bc985cbea global: add Upstream-Status tag to all patches
This avoids a QA error that is triggered if a patch is missing said tag

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar f54dcf2067 webkit: cog: remove upstreamed patch
The patch was upstreamed in 0.17.1, we now use 0.18.2.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar f6d91b9022 mca-tool/trustfence-tool: don't install files in /sbin when usrmerge is enabled
These recipes install binaries inside of /sbin, which causes QA errors when
usrmerge is enabled in DISTRO_FEATURES. Said feature is now required for
Yocto 5.0's version of systemd, so keep using the same versions of the tools
and simply move the binaries to /usr/sbin if needed.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 2284565153 Use libgpiod 1.6.4 instead of 2.1.1 to avoid API incompatibility
Otherwise, compilation errors will happen when building libdigiapix

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar facda40624 global: use strong assignments when setting INIT_MANAGER
This variable now has a weak assignment in poky with the default value
"sysvinit", which was overriding our weak assignments.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 41c8616765 global: replace firmware-nxp-wifi-nxpiw612 with firmware-nxp-wifi-nxpiw612-sdio
This is the official name of the package provided by the firmware-nxp-wifi
recipe in meta-freescale

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 9be060dc17 Remove meson 1.0.1 recipe
poky provides the recipe for meson 1.3.1. Besides, using an older version of
meson in a recipe that inherits meson.bbclass results in configuration
errors, so it's best to use the version provided by the community.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 5def090dd3 vulkan: sync recipes with meta-imx
Sync with the scarthgap-6.6.23-2.0.0 branch of meta-imx

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 463aa7965c systemd: adapt patches for v255.4
While at it, add the "Upstream-Status" tag to the patches to avoid QA errors

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 7125fbd222 networkmanager: adapt patches for 1.46.0
While at it, add the "Upstream-Status" tag to the patches to avoid QA errors

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar cb3b03552c pulseaudio: remove upstreamed patch
This patch was added in pulseaudio v15.99.1, poky currently provides v17.0

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 25c952119d ppp: upgrade bbappend to 2.5.0
This is the version of the recipe provided by poky in Yocto 5.0 scarthgap

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar c20e722636 bluez5: adapt bbappend to 5.72
This is the version of the recipe provided by poky in Yocto 5.0 scarthgap.
Aside from updating the verison number, explicitly create /etc/bluetooth
directory during installation.

The creation of this directory was removed from the recipe's base do_install()
in poky (see poky commit 55692591227eaac2d50ab339eea87ddca395f6df), so we need
to create it in our bbappend to be able to add files to it.

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 99d488e2eb busybox: upgrade bbappend to 1.36.%
This is the version of the recipe provided by poky in Yocto 5.0 scarthgap

https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 26e7365005 imx-machine-learning: ethos-u-firmware: sync with meta-imx
Sync with the scarthgap-6.6.23-2.0.0 branch of meta-imx by transforming the bb
file into a bbappend that only contains our customizations

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar f812cbb9b8 imx-machine-learning: tensorflow-lite-ethosu-delegate: remove backported patch
The patch is now included in the latest available version, 2.15.

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 8a5b1594b0 imx-machine-learning: remove recipe for cmake-native 3.25.2
Use the version currently available in poky, which is 3.28.3

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 3316853054 imx-machine-learning: remove code related to deepview-rt
Starting in rel_imx_6.1.36_2.1.0, this functionality is no longer provided by
meta-imx-ml

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 2c14fd36a5 imx-machine-learning: remove backported meta-imx-ml recipes
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-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 2d6ab24a6a freescale-layer: wayland: port patches from scarthgap-6.6.23-2.0.0 meta-imx
All wayland-related recipes save for these patches are already available in
meta-freescale

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar d7ee944abb freescale-layer: packagegroup-dey-gstreamer: reflect change in plugin names
In recent versions of gstreamer, the videoconvert and videoscale plugins were
merged into a single plugin called videoconvertscale.

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 86d1dd0596 freescale-layer: imx-gst1.0-plugin: adapt patches for MM_04.09.00_2405_L6.6.y
While at it, add the "Upstream-Status" tag to the patches to avoid QA errors

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 36e9247a66 freescale-layer: libgpuperfcnt: update to 6.4.11.p2.6
Port the recipes from the scarthgap-6.6.23-2.0.0 branch of meta-imx

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 782b20958a freescale-layer: imx-gpu-viv: sync with meta-imx scarthgap-6.6.23-2.0.0
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-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar a007862f80 freescale-layer: remove deprecated ml-security
This recipe was removed by NXP in their rel_imx_6.1.22_2.0.0 release

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 3bf7a683ae freescale-layer: nxp-afe: update to latest revision in meta-imx
Port the recipes from the scarthgap-6.6.23-2.0.0 branch of meta-imx

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 85f03852c2 freescale-layer: weston-init: adapt to scarthgap
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-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 8699ce656c freescale-layer: weston: change bbappend version from 11.0.3.imx to 12.0.4.imx
Adapt patches and add the "Upstream-Status" tag to them to avoid QA errors

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 6f3e28d9f6 freescale-layer: wayland: change bbappend version from 1.20.0 to 1.22.0
Reflect recipe upgrade in poky

https://onedigi.atlassian.net/browse/DEL-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar e19724efcd freescale-layer: remove upstreamed imx recipes and modifications
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-9011
https://onedigi.atlassian.net/browse/DEL-9081

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 639c176911 dey.conf: reflect upgrade to Yocto 5.0 Scarthgap
https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 13:03:37 +02:00
Gabriel Valcazar 8e012620a9 layer.conf: switch compatibility form Yocto 4.0 (Kirkstone) to 5.0 (Scarthgap)
https://onedigi.atlassian.net/browse/DEL-9011

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-10-17 11:28:26 +02:00
Gabriel Valcazar bd7e84d8b3 global: reflect changes in community layer names after Yocto 5.0 migration
* 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>
2024-10-17 11:28:26 +02:00
Javier Viguera bdbe657578 Merge branch 'dey-4.0/maint' into dey-4.0/master
This merges back release 'dey-4.0-r7.2' + a few more fixes after the
tag.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-10-16 16:28:40 +02:00
Francisco Gil e586f50bd4 cccs: fix name of the package to remove in read-only filesystems
The package name has changed due to commit 52287bf6be.
This fix makes use of the Yocto variable `REMOVE_POSTINST_RPN`,
which holds the target name for the `remove-pkg-postinst-ontarget`
class.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-10-11 14:57:14 +02:00
Francisco Gil 97d8740fb2 ccmp25: swupdate: fix hardcoded index in fwupdate strategy
https://onedigi.atlassian.net/browse/DEL-9228

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-10-11 14:57:14 +02:00
Francisco Gil 7c543bbafb ccmp25: swupdate: remove unnecessary logic in the script
The rdiff update is only available for dual-boot systems,
and it is checked at the beginning of the process.
We can remove the related logic and some variables in the
script.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>

# Conflicts:
#	meta-digi-dey/recipes-digi/swu-images/files/update_rdiff.sh
2024-10-11 14:57:14 +02:00
Arturo Buzarra ed8113d99b meta-digi: revert revisions to AUTOREV
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-10-08 12:00:57 +02:00
Arturo Buzarra 46f15efff2 meta-digi: update revisions for dey-4.0-r7.2
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-10-08 12:00:57 +02:00
Hector Palacios d1105835e2 dey.conf: bump DEY_BUILD version
Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-9291
2024-10-08 12:00:57 +02:00
Javier Viguera 548adca09b eiq-examples: use yocto provided native python
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-10-04 12:34:22 +02:00
Javier Viguera da37858d80 eiq-examples: fix dependence on vela native tool
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>
2024-10-04 11:53:27 +02:00
Isaac Hermida 82851b0308 eiq-examples: improvements
* 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>
2024-10-03 17:04:06 +02:00
Hector Palacios 720d627bd3 cccs: add libubootenv as RDEPENDS of daemon
Some parameters of the CCCS configuration file need to be substituted
at run-time during a postinst script. Such script takes actions depending
on the value of U-Boot env variables.
The libubootenv recipe itself also has a postinst script that modifies
the U-Boot env configuration file (on NAND-based platforms).
If there are no dependencies between these two recipes, poky will decide
the order in which the postinst scripts are named (and thus executed)
during the first boot.
By creating the rdepends to libubootenv, we guarantee that its postinst
script is run before the cccs one, which depends on the environment being
accessible.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-9282
2024-10-02 18:12:59 +02:00
Hector Palacios 52287bf6be cccs: specify the runtime package (daemon) that requires the postinst
The postinst modifies the /etc/cccs.conf config file used by the daemon.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-10-02 18:12:59 +02:00
Hector Palacios 2880f7ea0f cccs: [cosmetic] group RDEPENDS in a single line
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-10-02 18:12:59 +02:00
Javier Viguera 3e1f3cdf9e swupdate: clean warning on firmware update
The swupdate description file allows to configure the setting of u-boot
environment variables. For some platforms the "upgrade_available" variable
has an empty value, and swupdate parser warns when the description asks
to set a variable with an empty value.
    
Initialize the variable to 0, which is semantically the same for u-boot.

https://onedigi.atlassian.net/browse/DEL-9279

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-10-02 11:17:35 +02:00
David Escalona 1de1fae447 stm32mpu-ai: add external delegate library to use NPU
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>
2024-10-01 11:09:11 +02:00
Francisco Gil d9ef21b3d0 meta-digi: revert revisions to AUTOREV
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-09-30 16:39:57 +02:00
Francisco Gil c179cd862c meta-digi: update revisions for dey-4.0-r7.1
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-09-30 16:38:44 +02:00
Javier Viguera 7b50fb3a06 bluetooth-init: ensure the interface is up before unloading the module
This is a workaround for a driver failure when unloading the module. The
"btnxpuart" driver crashes with a null pointer dereference if the bluetooth
interface is down when the module is unloaded.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-09-27 14:09:23 +02:00
Javier Viguera 55f8ccadec bluetooth-init: start driver load service before bluetooth daemon
Revert to the previous used order for the bluetooth related
services. First, load the driver and then execute the bluetooth
daemon. This is needed for two reasons:

  * The bluetooth daemon caches the MAC address. Loading the module before
    ensures the daemon caches the correct MAC.
  * The connectcore-demo server stops working if the bluetooth interface
    is unavailable when the server launches. This order ensures the demo
    works as expected.

This change also brings back the problem of the btnxpuart module unload
failure on reboot/suspend. The following commit adds a workaround for
the driver issue.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-09-27 14:02:34 +02:00
Arturo Buzarra 53b9fd076d Merge branch 'dey-4.0/master' into dey-4.0/maint
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-09-25 15:53:50 +02:00
David Escalona 7d4a490a44 dey-image-webkit: include st npu samples in the image for the ccmp25 platform
https://onedigi.atlassian.net/browse/CCS-12

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-09-25 14:02:41 +02:00
David Escalona 4bc892961d stm32mpu-ai: recipes-samples: customize st npu samples
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>
2024-09-25 14:02:34 +02:00
David Escalona 1f678d39a3 stm32mpu-ai: recipes-samples: verbatim copy of npu samples from st beta branch
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>
2024-09-25 13:47:47 +02:00
David Escalona 983df1b9cb stm32mpu-ai: tensorflow-lite: backport recipe from github st main
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>
2024-09-25 13:47:47 +02:00
David Escalona 5bf2f9b99c stm32mpu-ai: onnxruntime: backport recipe from github st main
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>
2024-09-25 13:47:47 +02:00
David Escalona b461dd18ce stm32mpu-ai: update cmake-native to version 3.25
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>
2024-09-25 13:47:47 +02:00
David Escalona c8d5dd29dd conf: allow one additional recipe nesting level to stm32mpu-ai layer
https://onedigi.atlassian.net/browse/CCS-12

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-09-25 13:47:47 +02:00
David Escalona f04581b9a6 eiq-examples: extend recipe to download and transform models in the host
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>
2024-09-25 13:47:36 +02:00
Javier Viguera bee97587cb orc: fix native build on ubuntu 18
Ubuntu 18 is still a supported distro for Kirkstone, but a recent update
of orc is failing the native build, because it requires a GCC version
newer than the default included in ubuntu 18.

This commit backports a fix which is part of upstream orc 0.4.40.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-09-24 12:34:14 +02:00
Isaac Hermida 9f7a8e64ce conf: distro: remove Y2038 compilation flag from alsa-lib
Despite the recipe builds for arm, it crashes at runtime.
While on it, alphabetically sort the list of excluded packages.

https://onedigi.atlassian.net/browse/DEL-9245

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-09-23 15:52:32 +02:00
Arturo Buzarra 909427ed4a init-ifupdown: virtwlans: add support to ConnectCore MP2 platform
https://onedigi.atlassian.net/browse/DEL-9237

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-09-19 13:37:01 +02:00
Arturo Buzarra 19be4782ee wpa_supplicant/hostapd: update support to include ConnectCore MP2 platform
This commit updates the wpa-supplicant and hostapd recipes to apply the Murata
release patch series for ConnectCore MP2 platform.

https://onedigi.atlassian.net/browse/DEL-9237

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-09-19 13:37:01 +02:00
Hector Palacios fa4d07713e psplash: use a PNG logo for psplash instead of *.h file
A preprocessed *.h Digi logo file was used for the psplash.
The psplash recipe from Poky admits a PNG file as input and
does the conversion automatically.

Use a Digi PNG logo and set it using SPLASH_IMAGES variable.
This way, it is easier for users to substitute with their own
logos.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-9239
2024-09-18 17:43:32 +02:00
Isaac Hermida 97dc7ddd36 pulseaudio: ccmp25: avoid speaker mute
based on commit 951f20d36b, this fix
avoids muting the speaker control.
Despite the original commit is for Headphone, it also applies, for the
ccmp25, to the Speaker control.
While on it, reword the files so the change applies to all stm platforms
by using the common machine.

https://onedigi.atlassian.net/browse/DEL-9227

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-09-18 16:44:07 +02:00
Arturo Buzarra a5df257864 connectcore-demo-server: ccmp25: start service after bluetooth init script
ConnectCore MP25 initializes the Bluetooth interface with a init script, so
this commit adds a runtime dependency between the connectcore-demo-server and
the cyw55512-bluetooth service.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-09-16 22:30:01 +02:00
Javier Viguera 6107312f03 bluetooth-init: fix systemd service syntax
According to systemd manual, "After" setting expects a space-separated
list. Fix the wrong comma-separated list to prevent the following boot
failure:

  bluetooth-init.service:4: Failed to add dependency on systemd-udev-settle.service,bluetooth.service, ignoring: Invalid argument

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-09-16 18:58:15 +02:00
Mike Engel 6a2737136d conf: distro: add compilation flag to fix Y2038 issue
This commit adds compilation flag for ARM 32Bit architecture
to use 64Bit structure for time_t to fix the Y2038 issue
instead of 32Bit structure.

https://onedigi.atlassian.net/browse/DEL-9216

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-09-16 12:32:56 +02:00
Francisco Gil 40c6f76859 swupdate: ccmp25: update variables to match the ccmp25 partition table
https://onedigi.atlassian.net/browse/DEL-9228

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-09-13 15:59:36 +02:00
Arturo Buzarra 8f0d1cc65e base-files: fix conflict with procps about sysctl.conf
This commit fixes a build issue by including the procps recipe which also
installs the sysctl.conf file. Since adding this config file in base-file
recipe is something custom from DEY, we include this file only for "dey"
distribution to avoid conflicts.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-09-12 13:55:26 +02:00
Francisco Gil ff5f7ddad4 meta-digi: ccmp2-dvk: update libdigiapix.conf
The i2c-1 has the index 0 in the linux user space.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-09-12 08:49:37 +02:00
Javier Viguera b6d7853fec meta-digi-dey: fix wifi-related functionality overrides for ccimx91
Some wifi-related functionality was enabled on ccimx93 overrides. The
ccimx91 also needs this functionality but it was not being applied as
the overrides were only for ccimx93.

Generalize the overrides for ccimx9.

https://onedigi.atlassian.net/browse/DEL-9214

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-09-11 12:12:14 +02:00
Mike Engel c5c0c7c966 systemd-boot: meson: Fix build with --optimization=plain
This commit fixes build issues with optimization=plain.

commit: ec35091c8a358aacbf787afb2bfab6a0996031ed

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-09-04 12:54:43 +02:00
Mike Engel 269d80105d recovery-utils: add preprocessor flag to change recovery tool usage help
This commit adds a compiler flag to remove certain options from the
recovery-utils, because some features rely on functionality that is
not supported by the CCMP1 platforms.

https://onedigi.atlassian.net/browse/DEL-9116

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-09-04 11:34:40 +02:00
Mike Engel 11426fcb5b recovery: add initramfs into FIT recovery image
This commit adds the initramfs into the FIT recovery
image. If the RAM disk image is included in the FIT
image we need to create a initramfs file that doesn't
include the u-boot header, because the FIT descriptor
contains all the necessary information to use the
initramfs file.

https://onedigi.atlassian.net/browse/DEL-9168

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-09-04 11:34:40 +02:00
Javier Viguera 4c33a85d6b bluetooth-init: start driver load service after bluetooth daemon
The bluetooth daemon does not need the interface to exist before being
executed. We configure the daemon with AutoEnable=true, which will enable
adapters present on start or that appear later on.

On shutdown, systemd stops services in the opposite order to the boot,
so configuring the driver load service after the bluetooth service,
ensures that on shutdown the driver is unloaded before the bluetooth
daemon is stopped.

The btnxpuart driver needs this order, to prevent a module unload failure
on system reboot/poweroff.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-08-30 18:22:37 +02:00
Javier Viguera 9ec3740d51 connectcore-demo: configure board image file for ccimx91
The ccimx91 shares the board image file with the ccimx93.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-08-26 11:29:12 +02:00
Javier Viguera b162eac234 wayland-protocols, weston: fix compatible machine
Adjust the COMPATIBLE_MACHINE to prevent some warnings when building for
the ccimx91.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-08-22 17:11:42 +02:00
Hector Palacios b1adc08178 bootcount: fix segfault by checking the funcs are not NULL
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-08-22 08:29:37 +02:00
Hector Palacios aad224ef28 bootcount: add support to ccmp25 platform on external RTC on I2C1
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-08-21 17:37:32 +02:00
Mike Engel 16525cca53 swupdate: enable SWU authentication when Trustfence is enabled
This commit enables SWU image authentication when TrustFence
is enabled instead of when signing of images is enabled.
This allows the system to authenticate SWU images on images that
have been externally signed.

https://onedigi.atlassian.net/browse/DEL-8891

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-08-07 10:03:07 +02:00
Arturo Buzarra 6f15713cc4 dey-image-installer: add USB driver installation script for ccmp2
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-07-30 22:22:09 +02:00
Francisco Gil d202de613c meta-digi: ccmp2-dvk: update libdigiapix.conf
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-07-30 10:42:02 +02:00
Francisco Gil 06b37d8c9c libdigiapix: ccimx9: add missing spi entry in libdigiapix.conf
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-07-30 10:41:58 +02:00
Arturo Buzarra 1d29e40d23 meta-digi: integrate ConnectCore MP25 DVK platform on common recipes
Add initial support on common DEY recipes for ConnectCore MP25 DVK platform.

https://onedigi.atlassian.net/browse/DEL-8995

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-07-22 17:12:33 +02:00
Hector Palacios 9af1e6c322 bump version to dey-4.0-r7
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-07-19 13:35:30 +02:00
Hector Palacios 22238772ee Merge tag 'dey-4.0-r6.1' into dey-4.0/master
Digi Embedded Yocto 4.0-r6.1

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-07-19 13:35:27 +02:00
Mike Engel d11b291f9a meta-digi: add new CCMX91 platform into DEY
This commits adds the CCMX91 platform to the DEY
build system. Furthermore, it creates generic ccimx9
support to be used for the CCiMX91 and CCiMX93
platform.

https://onedigi.atlassian.net/browse/DEL-9106

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-07-19 07:32:00 +02:00
Isaac Hermida 0c642ed7ec Update Digi Copyright header
Standarize the Copyright header according to company policy.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-07-15 09:28:58 +02:00
Isaac Hermida d439abd0d4 alsa: do not restore UCM profiles
There is a harmless error when restoring alsa profiles, as it also
attempts to restore UCM profiles.
Since we do not include UCM profiles for our sound cards, skip it.

https://onedigi.atlassian.net/browse/DEL-9066

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-07-05 13:02:40 +02:00
Francisco Gil ee26f14423 meta-digi: revert revisions to AUTOREV
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-07-02 12:06:59 +02:00
Francisco Gil 35cf4d61bc meta-digi: update revisions for dey-4.0-r6.1
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-07-02 10:19:59 +02:00
Gabriel Valcazar 85e59417a3 recovery: prevent partition encryption when singlemtdsys is enabled
In legacy NAND platforms like the ccimx6ul, it's possible to use a single-MTD
configuration with dualboot disabled, which allows access to the functionality
provided by the recovery partition. However, the partition encryption feature
requires a multi-MTD configuation, so said feature shouldn't be accessible in
this case.

Prevent access to partition encryption in a single-MTD system by:

    * Adding the "system" partition to the partition blacklist in both the
      recovery-utils library and the recovery initscript.
    * Checking the "singlemtdsys" environment variable before using any
      functionality related to partition encryption.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-07-01 13:27:38 +02:00
Gabriel Valcazar 5695cf15db recovery-initramfs-init: fix "update" volume wipe when singlemtdsys is enabled
Currently, when wiping the update volume via the recovery partition on a
ccimx6ul with singlemtdsys enabled, the procedure fails with this error:

    [RECOVERY] Starting recovery...
    [RECOVERY] Wipe 'update' partition requested
    [RECOVERY] Formatting 'update' ubi volume
    ubi0 error: ubi_open_volume.part.0: cannot open device 0, volume 3, error -16
    ubiupdatevol: error!: cannot open "/dev/ubi0_3"
                  error 16 (Device or resource busy)

This is because the logic used to unmount a volume before formatting it is
expecting this entry format when running "mount":

    ubi0:update on /mnt/update type ubifs

While this is the format of the "mount" output in userspace for the rootfs
volume, other trivial volumes have this format instead:

    ubi0_3 on /mnt/update type ubifs

Adapt the logic to this format so that the "update" volume wipe procedure can
take place.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-06-28 13:07:11 +02:00
Javier Viguera 17658bdffa Merge branch 'dey-4.0/master' into dey-4.0/maint
Merges Trustfence file-based encryption support.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-06-28 12:14:26 +02:00
Mike Engel 8a2a1beb08 fscrypt: include trustfence-fscrypt tool into rootfs
Add also 'e2fsprogs-tune2fs' to the image, as busybox's version of
tune2fs command does not support setting the "encrypt" feature of the
EXT4 filesystem.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-06-27 15:39:49 +02:00
Javier Viguera 18c0c69314 Merge branch 'dey-4.0/master' into dey-4.0/maint
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-06-21 14:44:59 +02:00
Javier Viguera 0e23efb9b1 trustfence: add variables for file-based encryption
On new platforms, trustfence will use file-based encryption instead of
full-disk encryption. Add base variables and platform defaults to allow
implementing file-based encryption.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-06-18 14:19:21 +02:00
Javier Viguera 11ee0251d0 trustfence: ccimx93: disable boot artifacts encryption by default
Encrypting boot artifacts impacts the device's boot time, so disable them
by default. It is still possible to enable it in the project's config
file by setting the TRUSTFENCE_DEK_PATH option.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-06-18 14:03:16 +02:00
Javier Viguera 970c0cac50 trustfence: ccimx93: implement missing secure console functionality
Unlike the rest of the NXP platforms, in u-boot, the ccimx93 allows
configuring a GPIO name to activate the console when secure console is
enabled. Those u-boot options were not translated to the trustfence code
in meta-digi.

https://onedigi.atlassian.net/browse/DEL-9063

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-06-14 17:51:33 +02:00
Mike Engel 37f5db42ac tsn: add basic Time sensitive networking (TSN)
This commit adds some basic TSN support to DEY.
It includes the kernel configuration fragment with
the IEEE 802.1 support and the some user space tools
necessary to configure the network.

https://onedigi.atlassian.net/browse/DEL-9026

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-06-04 12:14:18 +02:00
Javier Viguera 584b263614 meta-digi: enable u-boot env encryption support on ccimx93
https://onedigi.atlassian.net/browse/DUB-1079

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-05-28 17:58:01 +02:00
Mike Engel 932c186225 packagegroups: add packages related to RT
This commit adds real time test tools to the system.

The hwlatedetct is a program that controls the kernel
hardware latency detector module. This is used to detect
large system latencies independent of Linux itself.

The rt-tests package is a test suite that includes the cyclictest
tool to measure the difference between a thread's intended
wake-up time and the time at which it actually wakes up.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2024-04-29 16:13:49 +02:00
Javier Viguera afde974a17 packagegroup-imx-ml: ccimx93: only install tensorflow-lite
Rework commit c5c9838e54 to only limit ML
packages for our ccimx93 and not for other imx93-based devices.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-04-18 10:49:23 +02:00
Arturo Buzarra dfda74348e trustfence: stm: fix TRUSTFENCE_PASSWORD_FILE initialization for ccmp13 platform
Trustfence class was setting the TRUSTFENCE_PASSWORD_FILE variable using the
old keys format where a unique key_pass.txt file contains all the key
passwords.  However, in the new format there are one key_pass file for each
key, so using a PKI tree with the new format throws an unexpected error in the
FIP generation due to it is not able to find the required key password.
This commit sets the TRUSTFENCE_PASSWORD_FILE variable for the ccmp1 platforms
on different way.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-04-15 09:15:12 +02:00
Javier Viguera 3c26ef78e0 meta-digi: enable boot artifacts encryption support on ccimx93
Add a check on the existence of the "temp-fitimg-loaded" environment
variable before setting it. It is needed, as with encrypted FIT images,
we need to decrypt them before accessing the boot script. In such cases,
u-boot sets that variable to "no" so the boot script does not override it,
and the FIT image is loaded again before the final boot to the OS.

https://onedigi.atlassian.net/browse/DEL-8945

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-04-11 18:18:13 +02:00
Isaac Hermida b84de064c0 ccimx93: tensorflow-lite-ethosu-delegate: fix hang issue with multiple tflite context
This patch fixes the hang issue with EiQ demos using multiple tflite files,
for instance the gesture_detection demo.

https://onedigi.atlassian.net/browse/DEL-8949

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-04-08 18:00:53 +02:00
Isaac Hermida b00e341495 meta-digi: remove python3-scipy
This recipe is not supported anymore. If you need to add that package
for aarch64, a solution is include pip3 in your image and install it
using the pip3 install manager.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-04-08 17:57:19 +02:00
Arturo Buzarra 2c4e1f85fd trustfence: stm: fix TRUSTFENCE_PASSWORD_FILE initialization for ccmp13 platform
Trustfence class was setting the TRUSTFENCE_PASSWORD_FILE variable using the
old keys format where a unique key_pass.txt file contains all the key
passwords.  However, in the new format there are one key_pass file for each
key, so using a PKI tree with the new format throws an unexpected error in the
FIP generation due to it is not able to find the required key password.
This commit sets the TRUSTFENCE_PASSWORD_FILE variable for the ccmp1 platforms
on different way.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-03-26 13:06:51 +01:00
Gabriel Valcazar 3fc0a30115 trustfence: rename variables related to FIT image signing
Different mechanisms are used to sign FIT images on the ccmp1 platforms and the
ccimx93, and we manage each mechanism via a different variable. The variable
names don't really reflect which platform they affect, which makes maintenance
harder.

Rename the variables so that it's easier to identify the platforms/vendors they
affect:

    * Replace TRUSTFENCE_FIT_IMG with TRUSTFENCE_SIGN_FIT_STM
    * Replace TRUSTFENCE_SIGN_FIT_ARTIFACT with TRUSTFENCE_SIGN_FIT_NXP

Don't rename TRUSTFENCE_FIT_IMG_SIGN_KEYNAME

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-03-19 13:26:47 +01:00
Gabriel Valcazar 72675e510c ccmp1: decouple FIT functionality from signed FIT functionality
We rely on FIT support to implement boot artifact authentication on ccmp1
platforms, but our implementation made it impossible to enable FIT support
outside of the context of Trustfence/secure boot.

Change this so that it's possible to enable FIT support without having to sign
the FIT artifacts. Also, modify the linux-dey 5.15 recipe so that the U-Boot
DTBs with signatures get copied only when FIT signing is enabled.

https://onedigi.atlassian.net/browse/DEL-8946

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-03-19 13:26:47 +01:00
Arturo Buzarra ecd77dece9 firmware-murata: update firmware binaries to version imx-kirkstone-hedorah_r1.0
This commit updates the required firmware binaries for Bluetooth and Wireless
interfaces, hostapd and wpa_supplicant recipes based on the Cypress Linux WiFi
Driver (FMAC) release v5.15.58-2023_1128 (Wireless firmware v13.10.246.334).
This change also includes a custom defconfig file for the hostapd and
wpa_supplicant recipes including the changes from the patches and the Digi
customizations.

Also are updated the Murata firmware repositories to match with the latest
Murata release imx-kirkstone-hedorah_r1.0, which is based in the same Cypress
Linux Wifi Driver release v5.15.58-2023_1128.

https://onedigi.atlassian.net/browse/DEL-8667

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-03-18 18:13:09 +01:00
Javier Viguera e6b67b6bf8 meta-digi: trustfence: support signing a FIT boot artifact
And enable it for the ccimx93.

https://onedigi.atlassian.net/browse/DEL-8704

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-03-12 18:13:05 +01:00
Isaac Hermida c5c9838e54 packagegroup-imx-ml: imx93: only install tensorflow-lite
Not installing all the ML packages but just tensorflow-lite saves space.
We are not including onnxruntime and torchvision, which are not supported
by the i.mx93 (see NXP user guide for details).
The ext4.gz size is decreased from 430MB to 217MB.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-02-29 12:58:16 +01:00
Gabriel Valcazar 948e55bde9 swupdate: replace on-the-fly patch with a clearer, equivalent one
The patch we were using comes from the time during dualboot support development
where said feature was selectable at build time. The patch adds a new build
option, giving the impression that it only gets enabled under certain
circumstances, when in reality:

    * The option is never enabled anywhere in our code
    * It's a string option that is treated like a boolean, meaning its
      respective conditional compilation is always getting compiled even when
      disabled

Our current dualboot support is enabled at runtime, so it doesn't make sense to
have a build-time option related to it, especially one that's broken. Replace
the patch with a functionally equivalent one that is less confusing. Also,
remove the related config option from our defconfig.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-02-27 18:37:36 +01:00
Gabriel Valcazar b2d9d33cf9 swupdate: reduce default log level in runtime config file
The current log level is very verbose and generates way too much output in some
cases, such as a binary diff update. Reduce the default log level to avoid
this.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-02-27 12:37:27 +01:00
Gabriel Valcazar 8430114f4c swupdate: adapt patches to 2023.12.1
https://onedigi.atlassian.net/browse/DEL-8885

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-02-26 17:18:23 +01:00
Gabriel Valcazar 5457c89a9e Revert "dey.conf: continue using stable versions of swupdate and libubootenv"
Prepare to support the latest versions of these packages

This reverts commit a22d21ab84.

https://onedigi.atlassian.net/browse/DEL-8885
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-02-26 17:17:54 +01:00
Arturo Buzarra 6b5b341a38 psplash: fix bbappend for different distro than "dey"
This commit fixes a build issue using meta-digi layer with a different distro
than "dey". Also simplified the bbappend to avoid creating a custom
do_patch_png() task before do_configure().

Reported-by: Stephan Klatt <skladd@users.noreply.github.com>
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-23 14:27:01 +01:00
Isaac Hermida 5588c30a7b Revert "ccimx93: bluetooth-init: re-initilize the LE support after hci reset"
This reverts commit c5b53c9765.

The HCI reset interface is fixed inside each BT power calibration shell
script, so this workaround is not needed anymore.

https://onedigi.atlassian.net/browse/DEL-8458

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-02-21 18:00:34 +01:00
Isaac Hermida c5b53c9765 ccimx93: bluetooth-init: re-initilize the LE support after hci reset
for the IW61x, when the FW is instructed with an hci reset command, the
LE stack is not correctly reset.
It can be workaround-ed by SW doing a SW power cycle.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-02-19 09:01:45 +01:00
Isaac Hermida f44ae189e5 bluetooth-init: ccimx93: adjust power levels
https://onedigi.atlassian.net/browse/DEL-8327
https://onedigi.atlassian.net/browse/DEL-8458

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-02-19 09:01:45 +01:00
Arturo Buzarra 5e1b0ab830 meta-digi-dey: bump distro version to 4.0-r6
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-16 13:06:48 +01:00
Stephan Klatt 637c392cd5 bootcount: fix typo in INITSCRIPT_PARAMS
Add missing curly brace

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-16 13:05:02 +01:00
Arturo Buzarra 52eb698999 Merge tag 'dey-4.0-r5.2' into dey-4.0/master
Digi Embedded Yocto 4.0-r5.2

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-16 12:59:43 +01:00
Stephan Klatt df1a6160ba bootcount: fix typo in INITSCRIPT_PARAMS
Add missing curly brace

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-14 19:19:51 +01:00
Arturo Buzarra e0193228ad meta-digi: revert revisions to AUTOREV
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-06 18:11:28 +01:00
Arturo Buzarra bdf80833dc meta-digi: update revisions for dey-4.0-r5.2
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-06 18:07:48 +01:00
Arturo Buzarra 67fdbb01e8 meta-digi-dey: bump dey build to 4.0-r5.2
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-02-05 21:46:08 +01:00
Gabriel Valcazar fd35a3149e weston: include NXP patch to enable cursor without having to move the mouse
This is an NXP change that reverts a mainline weston commit form v9.0.0, in
which the mouse cursor only gets activated when there is mouse movement. This
change was only being included in the weston v10.0.X i.MX forks.

For platforms that don't use these weston forks (ccimx93 uses the v11.0.X fork
and ccmp15 uses mainline weston), the mouse cursor doesn't load right away when
booting the system, which causes apps that are automatically launched (such as
the LVGL demo) to not register the mouse, rendering said apps unresponsive to
it.

Port NXP's change to all of the weston versions we currently use to avoid this
problem.

https://onedigi.atlassian.net/browse/DEL-8865

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-02-01 18:34:58 +01:00
Arturo Buzarra 7fb5205e73 meta-digi: revert revisions to AUTOREV
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-30 16:52:26 +01:00
Arturo Buzarra 04a00b2bd0 meta-digi: update revisions for dey-4.0-r5.1
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-30 16:51:33 +01:00
David Escalona a58ce7e254 meta-digi-dey: python3-connectcore-ble: update recipe to v1.0.7
Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-30 15:40:42 +01:00
Hector Palacios 327d9f3cd3 graphic demos: cc93: fix display and expansion of variable
The display for the cc93 is 'wayland-1'.
Use backslashes before the curly braces to avoid potential expansion by
bitbake variables.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-29 18:53:34 +01:00
Hector Palacios cc295eabe0 lvgl-demo: rename bitbake variables by adding LVGL_ prefix
This is to avoid duplicating names with variable DEMO_DISPLAY inside
the lvgl-demo-init script itself.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-29 18:53:34 +01:00
Javier Viguera dc3eabdba0 trustfence: ccimx93: disable not supported functionality
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-26 11:58:04 +01:00
Hector Palacios 68fae1420d packagroup-dey-examples: make recipe compatible with cc93
These are not included on the default image, but allow to
build them for cc93 if requested.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-25 13:59:18 +01:00
Hector Palacios ff22903a81 cc93: standby-actions: rework the programming of resume actions
There are some cases in which the loading of the Wi-Fi modules may be
problematic due to timing conditions:
- when a suspend operation in progress is aborted
- when Bluetooth is disabled

The Wi-Fi needs some time for the system to be ready before loading the
modules.

This commit:
- Stops the Bluetooth before bringing down the Wi-Fi on suspend
- Starts the Bluetooth (or adds a small delay) before bringing up the
  Wi-Fi on resume
- Reworks the way the resume operations are programmed, to do them in
  reverse order (first load the Wi-Fi modules, then bring the interfaces
  up (if required). It does so by appending/prepending actions into a
  variable and dumping the contents finally to a temp file.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-25 13:57:16 +01:00
Gabriel Valcazar b3391941dd connectcore-demo: avoid removal of board image file for the ccimx6qpsbc
Commit c4f2fce4d3 added logic to do_install()
that saves space by removing board image files that don't match the machine
name. However, the ccimx6qpsbc uses the ccimx6sbc board image file, and it was
being removed from the demo, breaking the demo's landing page.

Avoid this by specifying the correct filename for the ccimx6qpsbc.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-25 09:30:13 +01:00
Gabriel Valcazar 568d142b11 ccimx6ul: remove "-x11" suffix from dey-image-lvgl image name
The ccimx6ul is the only platform that doesn't include a desktop backend in the
LVGL image, so remove the desktop backend suffix from the image's name. This
affects the image name itself, the corresponding SWU package and the
installation scripts.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-25 09:30:13 +01:00
Arturo Buzarra cfe613f5e9 lvgl-demo: set touchscreen as default input method for ccimx6ul platform
ccimx6ul platform uses the fbdev backend to run LVGL graphical applications,
the mouse input device is not supported by default on this platform.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-24 17:16:20 +01:00
Arturo Buzarra 349b263ed9 lvgl-demo: increase default application dimensions for ccimx6ul platform
This commit sets the default LVGL demo dimensions to match with the resolution
of the supported LVDS display, showing the application at fullscreen.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-24 17:16:20 +01:00
Arturo Buzarra a1f68f94d4 lvgl-demo: add support to initialize LVGL demo at boot
This commit adds a systemd service and a sysvinit script to initialize the LVGL
demo automatically on boot.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-24 17:12:31 +01:00
Arturo Buzarra a1a176f091 dey-image-lvgl: remove x11 graphical support for ccimx6ul platform
LVGL graphical library has support for different backends, in the case of the
ccimx6ul we use the fbdev directly, so we don't need the x11 support.
This commit removes x11 support for the ccimx6ul platform for the
dey-image-lvgl image.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-24 17:12:31 +01:00
Gabriel Valcazar dd749650bb lvgl-demo: update to latest revision to fix wayland window glitches
This revision disables LVGL's wayland client-side decorations to prevent visual
glitches on some platforms and homogenize the look of the demo regardless of
platforms/backend.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-19 15:14:49 +01:00
Gabriel Valcazar 87a888d35b weston_11.0.3: restore wl_shell functionality for LVGL demo
This is needed to make the LVGL demo work on the ccimx93, which uses a newer
version of weston that no longer includes wl_shell support. Restore the
wl_shell functionality via a patch and enable it.

https://onedigi.atlassian.net/browse/DEL-8849

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-19 15:14:49 +01:00
Arturo Buzarra 62fa660d05 Merge branch 'dey-4.0/master' into dey-4.0/maint
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-19 11:46:55 +01:00
David Escalona 2ecaf1ca55 swupdate: add support to update U-Boot in the redundant partition
The support to update U-Boot in the redundant partition must be enabled in the project
configuration file by setting the variable "SWUPDATE_UBOOTIMG_REDUNDANT" to "true":

SWUPDATE_UBOOTIMG_REDUNDANT = "true"

This feature is only available for the newer platforms: ccmp13, ccmp15 and ccimx93. Trying to
enable it in older platforms will display a warning and fallback to non-redundant update.

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-19 10:33:44 +01:00
Javier Viguera 9348d94d22 ccimx93: update multimedia package for NXP release lf-6.1.55-2.2.0
Backport of multimedia package for ccimx93 from NXP's Mickledore-based
lf-6.1.55-2.2.0 release. Mainly copies and appends of multimedia
recipes from the new release, and restricted to ccimx93 by changing the
COMPATIBLE_MACHINE, so it does not affect other platforms.

https://onedigi.atlassian.net/browse/DEL-8840

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-18 09:46:32 +01:00
Javier Viguera 5d74f18c2e imx-gst1.0-plugin: restrict patches to ccimx6ul
The JIRA in the patch description describes a problem in the CC6UL, so
do not use the patches on other platforms.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-18 09:46:31 +01:00
Tatiana Leon 721039df6b cccs: add CCCS_CONF_PATH variable to define custom cccs configuration file
If 'CCCS_CONF_PATH' is defined, the specified file is installed as CCCS
configuration file without any modification.
It it is not defined or it is empty, the configuration file in cc_dey
('cc_dey/cccs-daemon/cfg_files/cccs.conf') is installed and modified if
required.

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2024-01-17 18:51:56 +01:00
Isaac Hermida efb80f3806 cc93: standby: decople bluetooth from WiFi actions
Do not make conditional the bluetooth actions on WiFi, as they can be
treated independently.

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2024-01-17 10:51:28 +01:00
David Escalona 6d898e51f9 swupdate: rework script to update U-Boot in NAND devices
Rework the script so that it has a similar structure as the MMC leaving it ready
to integrate new platforms.

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
David Escalona e25f3e4f5f swupdate: ccmp1: remove not required 'upgrade_available' U-Boot variable from tempalte
This variable is only required to enable the bootcount feature after an update when the bootcount value is
stored in the environment. This only happens in the CCIMX6 products, so it makes no sense to use it for the
CCMP1 devices.

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
David Escalona 10b22aea64 swupdate: add support to update U-Boot to boot1 partition in mmc devices
While on it, enable support to update encrypted U-Boot for all mmc platforms
supporting it. The install script extracts the DEK blob from the installed
U-Boot and appends it to the new U-Boot before flashing it.

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
David Escalona a0bc831353 meta-digi-arm: machine: add new 'BOOTLOADER_SEEK_BOOTPART' variable to platform configurations
This new variable establishes the number of 1Kb blocks to skip before writing U-Boot in the
bootloader partition.

Signed-off-by: David Escalona <david.escalona@digi.com>
2024-01-16 17:55:17 +01:00
Arturo Buzarra ba1e3b8328 qt5: ccmp1: add support for EGLFS backend
EGLFS is a platform plugin for running single Qt applications in full-screen
mode, without a windowing system like X11 or Wayland.

https://onedigi.atlassian.net/browse/DEL-8802

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2024-01-16 13:32:46 +01:00
Francisco Gil 0817a4de93 cccs: dualboot: set by default on the fly to true
To work in a dualboot memory layout out of the box, the most
common use case of the firmware update through the cloud should
be on the fly because in nand platforms there is not enough
memory to keep the update file in the system.

https://onedigi.atlassian.net/browse/DEL-8305

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2024-01-15 11:42:35 +01:00
Isaac Hermida 02d1523591 ccimx93: update ML/AI packages for NXP release 6.1.55-2.2.0
As part of the integration of the new ML package, also update the
ethos-u-firmware binary built from Stash:

Repo: emp/ethos_u_firmware.git
Revision: bd5506ddba364ad04602d5009b77077f78450b97
Source: NXP's MCUXpresso SDK_2.14.2_MIMX9352xxxxM

Co-authored-by: Javier Viguera <javier.viguera@digi.com>

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-12 12:09:21 +01:00
Javier Viguera 952edde975 meta-digi: update cmake-native to version 3.25
Backport a new version of cmake-native from Poky's mickledore release. This
is required by the new version of the onnxruntime package (updated in
the following commit).

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-12 12:09:21 +01:00
Gabriel Valcazar fdd8026d30 python3-connectcore-ble: update to v1.0.6
Set the PV variable to keep track of the currently used version.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-11 18:14:04 +01:00
Gabriel Valcazar 3305d78ec1 python3-xbee: update to most recent available version
Set the PV variable to keep track of the currently used version.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-11 18:14:04 +01:00
Gabriel Valcazar e954bd1e6d lvgl-demo: build from our github fork instead of patching the original repo
Our fork contains the same patches that were originally applied in this recipe.
This makes it easier for customers to identify the modifications necessary to
get LVGL working on our platforms.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-11 12:14:56 +01:00
Hector Palacios bf1eeabbf5 cc93: standby: add a small delay before resuming Wi-Fi
When switching off the 3.3V supply from the Wi-Fi during suspend,
around a 10% of the times, when resuming the Wi-Fi driver fails to load.

It was verified that a rebind operation over the mmc interface (which
eventually calls the script that loads the Wi-Fi module) makes it
load successfully, which denotes a timing issue during resume.

Adding a small delay on the resume operation before running the script
makes the Wi-Fi driver load at the first try.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-8821
2024-01-10 13:15:12 +01:00
Javier Viguera 4d8be061f0 ccimx93: update graphics package for NXP release lf-6.1.55-2.2.0
Backport of graphics package for ccimx93 from NXP's Mickledore-based
lf-6.1.55-2.2.0 release. Mainly copies and appends of graphics recipes
from the new release, and restricted to ccimx93 by changing the
COMPATIBLE_MACHINE, so it does not affect other platforms.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2024-01-08 16:39:01 +01:00
Gabriel Valcazar 214acb335d trustfence-initramfs: remove openssl-ossl-module-legacy
We removed this package from the recovery initramfs, but it was getting added
as a recommendation to the trustfence initramfs as well.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-05 14:24:17 +01:00
Gabriel Valcazar 4e86570976 cryptsetup: remove udev packageconfig to prevent unwanted packages in intramfs
We use cryptsetup in both the recovery and trustfence initramfs to handle block
device encryption on platforms that use eMMC as the internal storage. In
meta-openembedded commit 1ce71d6ec31195280073adec0e400dda7c0dd8a7 (between
DEY 2.6 and 3.0), a lot of PACKAGECONFIG options were added to the cryptsetup
recipe, all of them enabled by default. One of these options is "udev", which
adds a runtime dependency with udev that in turn pulls in a lot of other
dependencies with it. This is unnecessary because we already use mdev in our
recovery image, and the other packages simply take up space as they aren't
needed at all.

Our eMMC partition encryption functionality, which is the reason why we need
cryptsetup to begin with, is unaffected by this change and still works as
expected. Keep in mind that it was working properly without udev in DEY 2.6 and
older DEY releases, so removing udev isn't an issue.

Remove this PACKAGECONFIG option to get rid of udev and its dependencies in
the recovery and trustfence initramfs.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-05 14:24:17 +01:00
Gabriel Valcazar ba3f3481aa libcap: prevent linking against libpam
In theory, libcap's pam_cap module should use libpam's dlopen runtime linking
mechanism, but starting in libcap 2.53, this changed in order to support
distros that can only link it at build-time. Then, in 2.54, a compile-time
option was added (FORCELINKPAM) to allow users to force the link or not. In the
poky recipe for libcap, this option isn't set, so the library was getting
linked by default, dragging all of its dependencies with it.

For more info: https://bugzilla.kernel.org/show_bug.cgi?id=214023

Set the flag to "no" to avoid linking against libpam, removing its dependency
from the recovery image and saving some space.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-05 14:24:12 +01:00
Hector Palacios efd5f898d8 ccmp1: move definition of TF-A and OP-TEE suffixes to platform
The TF-A and OP-TEE images have different suffixes depending
on whether TrustFence is enabled or not, but the suffix variables
themselves must exist independently of whether TF is enabled.
Currently, they were defined on the trustfence.bbclass, and the
variables did not exist when TF was disabled, which caused build
problems, for example, building the SWU file.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-04 16:56:06 +01:00
Gabriel Valcazar 82a96801de Remove "wipe" from recovery and trustfence initramfs
This package is purely vestigial and hasn't been used at all in any of our
initramfs images for over 7 years. It was used in the first implementation
of the trustfence initramfs (commit 4dd7d438af)
to securely erase the key used by cryptsetup, but two weeks later, that logic
was moved to trustfence-tool (commit a8c50c16ea)
and "wipe" was no longer needed. However, the package remained in the
dependencies of the trustfence initramfs, which were then used as reference for
the recovery initramfs, even though this initramfs didn't even need "wipe" to
begin with.

Removing this package saves 30.8 KiB in the ccimx6ul recovery image.

https://onedigi.atlassian.net/browse/DEL-8819

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-04 11:24:20 +01:00
Gabriel Valcazar a0309c2a39 recovery-initramfs: remove openssl-ossl-module-legacy from recovery image
This is added as a recommendation for libcrypto and only contains legacy
ciphers which are deemed outdated or unsafe. If any of the packages in the
image actually required this module, they would depend on it explicitly, but
this isn't the case. This saves 66.8 KiB on the ccimx6ul recovery image.

https://onedigi.atlassian.net/browse/DEL-8819

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-04 11:24:20 +01:00
Gabriel Valcazar 215ab5fedf libarchive: remove more unneeded packageconfigs to reduce recovery image size
We depend on libarchive so that swupdate can perform updates with .tar.gz
files, but by default, libarchive is configured to support a lot of additional
features that pull in even more dependencies. This increases the size of the
recovery image, which barely fits on platforms with limited internal storage
like the ccimx6ul. We already removed zstd support to mitigate this, but the
image size increased again after adding imx-kobs to it in commit
aa2480d1de.

Since libarchive isn't used by any other package in our system, remove the
configurations that bloat the recovery image and are not needed at all for
our file update use case. Note that removing the "lzo" packageconfig doesn't
remove its respective library from the image because mtd-utils also depends on
it, but it still reduces the size of libarchive. On the ccimx6ul, this removes
193 KiB worth of libraries and trims libarchive down by 20.5 KiB in the
recovery image.

https://onedigi.atlassian.net/browse/DEL-8819

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-04 11:24:20 +01:00
Hector Palacios cef235f61d swu: add sha256 to SWUPDATE_SCRIPT_NAME
These fields were added to default files, but not to the
special sw-description files for ccmp1 and cc6ul platforms.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-03 13:05:05 +01:00
Mike Engel 0cd1c33a7b trustfence: use signed images suffixes for ccmp1 boot artifacts
When TrustFence is enabled, the boot artifacts (TFA and FIP)
have a 'signed' suffix. Handle this case so that the correct
symlinks are created and the correct artifacts are put into the
SWU file.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-03 13:05:05 +01:00
Hector Palacios 4f33afcbcf trustfence: split ccmp13 passwords in 8 files and set SWUPDATE keys
For signing SWU files we need to set a couple of variables:
 - SWUPDATE_PRIVATE_KEY_TEMPLATE to the private key file
 - SWUPDATE_PASSWORD_FILE to the password of the private key

The latter must only contain one password, whereas the current key_pass.txt
file had (for the ccmp13) the eight keys separated by a white space.

This commit:
 - If the file key_pass.txt exists, it extracts each key into a separate
   file key_pass0X.txt.
 - If the keys don't exist, generates separate files per key.
 - Changes the permissions of password files to 400.
 - Adapts the sign script to use the single password files.
 - Fixes a few quotes

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2024-01-03 13:05:05 +01:00
Gabriel Valcazar 32e46e4f9b swupdate: change runtime config file suffix to avoid build-time config errors
We were using the .cfg suffix for both the build-time config fragments and the
runtime configuration file. During do_configure(), all files in SRC_URI ending
in .cfg were being merged together to create the final build configuration,
including said runtime file, which has a completely different syntax. In most
cases, the contents of this file were being ignored, but when tweaking
swupdate's configuration and re-building the package, sometimes strange errors
would prevent the build from finishing.

Change the runtime file's suffix entirely to separate it from the config
fragments and prevent it from being treated as such, and reflect the name
change in the defconfig and the recovery script.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2024-01-02 11:14:23 +01:00
Gabriel Valcazar b6c453a8c1 dey.conf: continue using stable versions of swupdate and libubootenv
meta-swupdate recently added support for swupdate 2023.12 and libubootenv
0.3.5. This upgrade conflicts with our custom functionality in both packages,
so keep using 2023.05 and 0.3.2 respectively so DEY 4.0 can be built without
introducing possible functionality changes.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-26 17:32:43 +01:00
Gabriel Valcazar a22d21ab84 dey.conf: continue using stable versions of swupdate and libubootenv
meta-swupdate recently added support for swupdate 2023.12 and libubootenv
0.3.5. This upgrade conflicts with our custom functionality in both packages,
so keep using 2023.05 and 0.3.2 respectively so DEY 4.0 can be built without
introducing possible functionality changes.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-26 17:31:41 +01:00
Gabriel Valcazar 90afd7025c recovery-initramfs: fix multi-MTD detection when formatting NAND partitions
Commit 7e81e706a1 modified the logic used to
determine if a NAND is using multi-MTD or single-MTD, but single quotes were
used in the grep pattern, which prevents the variable inside from expanding.
This makes the script always enter the single-MTD code path, even in multi-MTD
systems, which breaks partition formatting in these cases.

Replace the single quotes with double quotes so the variable can expand and the
condition can be properly checked.

https://onedigi.atlassian.net/browse/DEL-8773

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-21 11:21:09 +01:00
Gabriel Valcazar 6468431179 recovery-initramfs: fix multi-MTD detection when formatting NAND partitions
Commit 7e81e706a1 modified the logic used to
determine if a NAND is using multi-MTD or single-MTD, but single quotes were
used in the grep pattern, which prevents the variable inside from expanding.
This makes the script always enter the single-MTD code path, even in multi-MTD
systems, which breaks partition formatting in these cases.

Replace the single quotes with double quotes so the variable can expand and the
condition can be properly checked.

https://onedigi.atlassian.net/browse/DEL-8773

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-20 14:57:02 +01:00
Gabriel Valcazar 85a659dd11 Revert "mp1: cmsis-svd: switch from master branch to main branch"
Fixed via commit 311a492c21f0f3643f4b764f8b743c4c6908d31b in meta-st-stm32mp

This reverts commit 09c4645894.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-15 13:50:56 +01:00
Gabriel Valcazar 31e68ff34a Revert "mp1: cmsis-svd: switch from master branch to main branch"
Fixed via commit 311a492c21f0f3643f4b764f8b743c4c6908d31b in meta-st-stm32mp

This reverts commit 09c4645894.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-12-15 12:15:47 +01:00
Mike Engel aa2480d1de images: add imx-kobs support to recovery image
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-12-05 10:54:29 +01:00
Mike Engel e4bb4d69af swupdate: add u-boot swupdate support
This commit adds u-boot swupdate support for all platforms.
Now u-boot can be updated with all our supported update
options. Currently it will only update first partition
u-boot partition.

https://onedigi.atlassian.net/browse/DEL-8749

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-12-05 10:53:55 +01:00
Hector Palacios fd70bf2fce swupdate: use dynamic mtd-blacklist for configuration file
The 'mtd-blacklist' parameter prevents swupdate from acting upon those
partitions that we consider sensitive.
Make such list platform-dependent.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-12-01 10:55:05 +01:00
Hector Palacios e9aac1b489 swupdate: install a default config file with optional public-key-file
The swupdate recipe installs by default a systemd service
and a socket to listen for updates coming from a web server.
DEY only makes use of such service during on-the-fly updates from Cloud
Connector web service.

The default swupdate service fails on images with TrustFence because it's
called with no arguments and there doesn't exist a configuration file.
This commit installs a default configuration file and, if TrustFence is
enabled, sets the parameter 'public-key-file' to point to the public
certificate to use to authenticate SWU packages.

While on it, it removes the same file from the recovery-initramfs recipe
that was the only recipe that was adding such config file for recovery
images only.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-12-01 10:55:05 +01:00
Hector Palacios 32dc939812 trustfence: create a global variable TRUSTFENCE_ENABLED when the class is added
meta-digi layers use many conditionals basing on TRUSTFENCE_SIGN, but this
variable may be disabled when the signing process wants to be isolated
from the image creation.
There are cases when we still need to know if TrustFence is enabled even
if the images are not going to be signed.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-12-01 10:55:05 +01:00
fgilmar b9b883d47c trustfence: fix trustfence support in NXP platforms
In commit df9b1cf329, the UBOOT_SIGN_ENABLE is set for all
platforms, and should be only added for FIT images.

This is making the process failing in cc8mn/cc8mm platforms
due to the UBOOT_SIGN_ENABLE is also used there to use a dtb
patched with the signature node.

https://onedigi.atlassian.net/browse/DEL-8764

Signed-off-by: Francisco Gil francisco.gilmartinez@digi.com
2023-11-30 14:45:07 +01:00
Gabriel Valcazar 0ae6422742 mp1: cmsis-svd: switch from master branch to main branch
Otherwise, bitbake's git client won't be able to fetch the sources if there are
no mirrors available.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-30 14:22:12 +01:00
Gabriel Valcazar 09c4645894 mp1: cmsis-svd: switch from master branch to main branch
Otherwise, bitbake's git client won't be able to fetch the sources if there are
no mirrors available.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-28 16:31:32 +01:00
Javier Viguera 3cfce77c0f ccimx93: update ML package for NXP release 6.1.36-2.1.0
As part of the integration of the new ML package, also update the
ethos-u-firmware binary built from Stash:

Repo: emp/ethos_u_firmware.git
Revision: a0352b0cf7267c896b55980dedd08daddc780733
Source: NXP's MCUXpresso SDK_2.14.0_MIMX9352xxxxK

And, drop deepview-rt support for ccimx93, as NXP has done the same in
6.1.36-2.1.0 release.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-28 15:51:38 +01:00
Hector Palacios 8f40cddfc6 trustfence: rework configuration for signing FIT images
- Set variables required for FIT signing inside python function, under the
  condition of having TRUSTFENCE_SIGN="1".
- Define two sign keys using TRUSTFENCE_ wrapper constants. Default values:
  - 'fitcfg' for configuration nodes inside the FIT
  - 'fitimg' for image nodes inside the FIT
- Enable FIT_SIGN_INDIVIDUAL to also sign individual images inside the FIT
- Set FIT_GENERATE_KEYS by default (kernel-fitimage.bbclass already checks
  if the keys exist before generating new ones)

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-11-28 12:53:30 +01:00
Gabriel Valcazar c497caca66 lvgl: configure app dimensions in main recipe file instead of lv-drivers.inc
This change isn't functional, but necessary if we want to be able to separate
the logic in the include file and the demo recipe. This way the include file is
agnostic and can be included into other recipes if needed.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-23 17:55:58 +01:00
Gabriel Valcazar d1c5919298 qt5: set default QT_QPA_PLATFORM values for mp1 platforms
Otherwise, launching a Qt5 app will result in errors and the QPA platform will
need to be set manually to get it to work.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-23 11:35:32 +01:00
Gabriel Valcazar 54c9de6a74 qt5: set default QT_QPA_PLATFORM values for mp1 platforms
Otherwise, launching a Qt5 app will result in errors and the QPA platform will
need to be set manually to get it to work.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-22 16:06:07 +01:00