Commit Graph

2185 Commits

Author SHA1 Message Date
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
Javier Viguera b48f2806eb ccimx93: update graphics package for NXP release 6.1.36-2.1.0
Backport of graphics package for ccimx93 from NXP's Mickledore-based
6.1.36-2.1.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.

Notice, that the new version of weston used now by the ccimx93 requires
a different profile file (weston-socket.sh). This profile supercedes the
old 'weston.sh'.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-21 18:23:26 +01:00
Javier Viguera 3aee8c39f7 ccimx93: update multimedia package for NXP release 6.1.36-2.1.0
Backport of multimedia package for ccimx93 from NXP's Mickledore-based
6.1.36-2.1.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.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-21 18:23:26 +01:00
Javier Viguera 5794b18cd2 meson: backport version 1.0.1 from yocto 4.2
This is required to build the new version of gstreamer used by NXP for
the ccimx93 and integrated in following commits.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-11-21 18:23:26 +01:00
Gabriel Valcazar 2a015f3f87 Add support for dey-image-lvgl images
LVGL is a free and open-source embedded graphics library that is able to run
in environments with limited resources.

This image includes a desktop environment and an LVGL widget demo (lvgl_demo)

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-16 11:39:03 +01:00
Gabriel Valcazar c0789c416b lvgl-demo-fb: generalize for any backend and add improvements
Rename the recipe to lvgl-demo to reflect the generalization and select the
most appropriate backend for each platform. Aside from making sure each backend
builds and runs fine, add some usability improvements:

    * Specify the mouse as the default evdev device instead of the touchscreen
    * Use common resolution variables to be able to configure the app's
      dimensions easily

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-16 11:38:56 +01:00
Gabriel Valcazar 33a93ccae4 Copy lvgl-demo-fb recipe from meta-openebedded master branch
https://onedigi.atlassian.net/browse/DEL-8740

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-11-14 14:24:46 +01:00
Francisco Gil 66af49ef9e update firmware: some improvements in update firmware script
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-11-13 17:23:06 +01:00
Mike Engel df9b1cf329 ccmp1: add signed FIT image support
This commit adds signed FIT image support for the CCMP1
platforms when using Trustfence.

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

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2023-10-30 12:58:19 +01:00
David Escalona 7bf452e85a swu: enable 'upgrade-available' flag on single systems and file updates
ConnectCore 6 based products require the use of the 'upgrade_available' environment flag to save the
bootcount value between resets. Extend the use of this U-Boot variable for single system updates and
updates based on files.

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-10-20 16:33:27 +02:00
Tatiana Leon cb6b4fe67a cccs: increment the wait time to restart cccs services when they fail to start
This commits sets 30s between restart attempt after a failure.

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-10-16 12:18:13 +02:00
Arturo Buzarra e2ee631832 meta-digi: [cosmetic] alphabetize compatible machine string
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2023-10-10 14:58:58 +02:00
Gabriel Valcazar 3ccbcdec0f packagegroup-qt6-dey: remove qtquick3d-dev
This package was inadvertantly pulling in a lot of dependencies into our
images that make use of Qt6. Most of these packages consisted of *-dev
packages, which are only useful for development with the SDK.

Remove this package along with its dependencies to significantly reduce the
dey-image-qt rootfs image size.

Note that this change was already done in commit
8979331ef8, but it was accidentally reverted when
upgrading to Qt 6.5 in commit a5c6f2b795.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
(cherry picked from commit 0d6d6d219f)
2023-10-10 13:50:44 +02:00
Gabriel Valcazar 0d6d6d219f packagegroup-qt6-dey: remove qtquick3d-dev
This package was inadvertantly pulling in a lot of dependencies into our
images that make use of Qt6. Most of these packages consisted of *-dev
packages, which are only useful for development with the SDK.

Remove this package along with its dependencies to significantly reduce the
dey-image-qt rootfs image size.

Note that this change was already done in commit
8979331ef8, but it was accidentally reverted when
upgrading to Qt 6.5 in commit a5c6f2b795.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-10-10 13:23:57 +02:00
Arturo Buzarra 614c7c62c8 meta-digi-dey: bump distro version to 4.0-r5
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2023-10-09 15:47:41 +02:00
Tatiana Leon ef1857fac5 connectcore-demo: fix systemd service dependency on connectcore-demo-server.service
This fix systemd error on boot:

[    6.974370] systemd[1]: /lib/systemd/system/connectcore-demo-example.service:3: Failed to add dependency on connectcore-demo-server, ignoring: Invalid argument

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-10-09 15:36:23 +02:00
Arturo Buzarra 65f7ca3999 Merge tag 'dey-4.0-r4.1' into dey-4.0/master
Digi Embedded Yocto 4.0-r4.1

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2023-10-09 15:33:18 +02:00
Tatiana Leon 0d9b393afc connectcore-demo: fix systemd service dependency on connectcore-demo-server.service
This fix systemd error on boot:

[    6.974370] systemd[1]: /lib/systemd/system/connectcore-demo-example.service:3: Failed to add dependency on connectcore-demo-server, ignoring: Invalid argument

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-09-29 10:50:18 +02:00
Javier Viguera 07525e1c2c trustfence: relax the expression to match AHAB based SRK certs
Current pattern does not match the SRKs generated for the ccimx93. The
ccimx93 does not support subordinated SGK certs, so the name of the SRKs
do not contain the "_ca_" pattern. So relax the expression used in the
trustfence bbclass to match the SRKs generated for both platforms.

  # For the ccimx93
  $ ls -1 crts/SRK1*crt.pem
  crts/SRK1_sha512_secp521r1_v3_usr_crt.pem

  # For the ccimx8x
  $ ls -1 crts/SRK1*crt.pem
  crts/SRK1_sha512_secp521r1_v3_ca_crt.pem

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-09-25 14:23:40 +02:00
Javier Viguera 34e82e9bac trustfence-initramfs: make compatible with ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-09-25 14:23:40 +02:00
Javier Viguera f1bdbe74c8 trustfence: decouple signing external artifacts
Some platforms do not support signing external artifacts (kernel, dtb,
etc.) yet, so we need to decouple the signing of the bootloader from the
signing of the external artifacts.

This commit generalizes the code, so instead of having platform exceptions
scattered along the recipes, we create a new variable used conditionally
to sign or not the external artifacts.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-09-25 14:23:40 +02:00
Isaac Hermida 441164c575 dey-examples: connectcore-demo: restart service on suspend
If the system is send to suspend mode, the bluetooth core is reconfigured.
Therefore, restart the service if it is running, to configure the ble
service.

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

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-09-20 10:43:34 +02:00
Francisco Gil ff071a17be meta-digi: revert revisions to AUTOREV
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-09-15 16:42:58 +02:00
Francisco Gil c7b6a9d637 meta-digi: update revisions for dey-4.0-r4.1
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-09-15 16:41:49 +02:00
David Escalona 7001c87e16 dualboot: pass pubkey to swupdate when available
Signed-off-by: David Escalona <david.escalona@digi.com>
2023-09-15 14:46:09 +02:00
Francisco Gil d6a42cf8e5 meta-digi-dey: remove zstd packageconfig to reduce recovery size
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-09-15 14:46:03 +02:00
David Escalona 600a5f1625 swupdate: fix new SWU package types to be compatible with Trustfence
Signed-off-by: David Escalona <david.escalona@digi.com>
2023-09-14 16:51:57 +02:00