These are just a verbatim copy of the ccimx8mm ones, so the project is
buildable. This file list should be revisited and adapted for the
ccimx93.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
A new set of meta-freescale updates broke our layer, because they
updated opencv package and our bbappend does not apply anymore.
The build fails at parsing:
ERROR: No recipes in default available for:
meta-digi/meta-digi-dey/dynamic-layers/freescale-layer/recipes-support/opencv/opencv_4.5.2.imx.bbappend
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This package includes the concurrent module required by the XBee library
(to use ThreadPoolExecutor)
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
Add a new parameter '-i' to update-firmware to let the user
select a specific image_set of the sw-description file to
use during the swu update.
This allows adding different image_sets on the sw-description
and reduce the number of images to build. It also adds more
future-proof flexibility.
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://onedigi.atlassian.net/browse/DEL-8199
In previous line we are launching the mdev in daemon mode. One of the
first tasks the daemon mode performs is a cold scan, so there is no need
to repeat it afterwards.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
On recovery based devices, the swupdate process is executed in the
recovery, so there is no need to have the swupdate daemon running on the
rootfs.
Add a on-target post installation script to disable the swupdate
bootscript on the normal rootfs. This has the side effect of failing in
the recovery initramfs because the initramfs does not have a complete
SysV init system. For that case add a rootfs postprocess function to
delete the postinst script.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
There is a problem when building the SDK because two binaries
have the same name (update-firmware) and makes the compilation
to fail.
Change the name to update-firmware.recovery and create a wrapper
over the update-firmware to check if the system is not dual boot
to call it.
Rework the code to make it more reliable.
Remove the umount of the alternative linux partition, now it is
not needed because only the active linux partition is mounted now.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
Now in the file descriptor we have three different names:
platform, primary and secondary.
Also a link from 'platform' to 'single' to keep backward
compatibility.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
All the dualboot logic will be checked in run time.
To do this:
* Include the altboot.src by default in all the images
* Create a post installation script to change the
firmware_download_path in the cloud connector
* Unify the swupdate file descriptor for dual and single boot
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
This commit modifies the cloud connector configuration to use
'remotemanager.digi.com' URL since it does not use certificates for the
connection.
'edp12.devicecloud.com' only allows connections with certificates.
The certificate is downloaded during the first device connection to DRM and
stored in '/etc/ssl/certs' directory inside the 'rootfs' partition.
Following connections must use this certificate.
After a firmware update 'rootfs' partition is re-programmed (standard boot)
or changed to use the corresponding partition of the other block (dual boot). In
any case the certificate downloaded is not available anymore, so the device is
not able to reconnect.
Currently there is no a 'immutable' partition to store the certificate, that is,
a place where the certificate is not removed during a firmware update and can
be used by the cloud connector (similar to the 'data' partition on a ccmp1)
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
The directory '/etc/ssl/certs' is in the 'rootfs_x' partition for dual boot or
'rootfs' for standard boot. In any case this certificate cannot be used after
updating because it is stored in the other block partition (for dual boot) or
because the whole partition has be re-programmed (for standard boot).
So, after a firmware update the device will not be able to reconnect to DRM
unless the user revokes the certificate.
This commit changes the certificate directory to be '/mnt/data' where 'data'
partition is mounted. This is not erased during a firmware update, so cloud
connector can use the already downloaded certificate and the device is able to
reconnect to DRM.
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
As a result of the dualboot support we may end up with two
'update-firmware' commands in the rootfs. To prevent file name clashing,
we may need to install the recovery-utils update-firmware as
update-firmware.recovery, and then the current command mode check would
fail.
Relax the check, by just looking at the first character.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
As we are going to document how to build Crank images using our own recipes, we
need a way for customers to provide the sha256 of the engine and demos tarballs:
* Storyboard Engines are not available as a compressed file, it is a directory
available after the installation of the whole Storyboard software, next to
Storyboard Designer, samples, and other resources. The installer is only
available after filling a form and receiving an email with the link and a
license key valid for 1 month.
To use our 'crank-sbengine_7.2.bb' recipe, users must create the tarball
from this directory and provide its path in the 'CRANK_ENGINE_TARBALL_PATH'
and its sha256 in 'CRANK_ENGINE_TARBALL_SHA256'.
* Regarding Storyboard applications, the included demo in the prebuilt image
is not publicly available, but customers can use the same recipe to install
their own applications.
To use our 'crank-demos_7.2.bb' recipe, users must create a tarball with
the exported application from Storyboard Designer and provide its path in
the 'CRANK_DEMOS_TARBALL_PATH' and its sha256 in
'CRANK_DEMOS_TARBALL_SHA256'.
There are also other configurable parameters such as 'CRANK_DEMO_PATH' or
'CRANK_DEMO_OPTIONS'.
The process of adding support to Crank Storyboard applications will be fully
documented as new topics.
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
Since commit 554b97a ("swupdate: Set service type to notify") in meta-swupdate
layer, the swupdate service fails on boot due to the following timeout error:
swupdate.sh[2708]: [TRACE] : SWUPDATE running : [listener_create] : creating socket at /tmp/swupdateprog
swupdate.sh[2708]: [TRACE] : SWUPDATE running : [listener_create] : creating socket at /tmp/sockinstctrl
systemd[1]: swupdate.service: start operation timed out. Terminating.
systemd[1]: swupdate.service: Failed with result 'timeout'.
systemd[1]: Failed to start SWUpdate daemon.
This commit adds a config fragment to enable systemd support to swupdate daemon.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The partition "environment" is not available in the ccmp15.
The solution suggested is read the "/proc/mounts" and check if
the "rootfs" is "ubifs" mounted.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
This commit fixes the following build warning with the swupdate v2022.05:
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.boot.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.boot.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.boot.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.boot.ubifs)
WARNING: dey-image-qt-swu-1.0-r0 do_swuimage: Syntax for sha256 changed,
please use $swupdate_get_sha256(dey-image-qt-wayland-ccmp15-dvk.ubifs)
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
According to the Yocto reference manual, we need to specify the package name
override to indicate the package to which the value applies.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Generated Crank rootfs image for the ConnectCore MP15 is too big to fit in a
dual boot system. This commit removes gstreamer and package-management features.
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
This commit updates:
* Crank engine version to the latest one (7.2)
* Crank demo to the provided one instead of the Thermostat example.
New demo is a launcher that includes 3 applications:
* Electrical vehicle charger demo
* Robot arm demo
* Medical demo
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
The ccmp1 build generates ubifs images for the NAND on the device and vfat and
ext4 images for the SD card. This commit reuses the already implemented
mechanism to match only ubifs images for the ccmp1 platforms.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Cloud Connector opens USER_BUTTON GPIO as an interrupt to listen for rising and
falling edge events and upload them to Remote Manager as data point values.
Having MCA_IO1 as user button and opened by the Cloud Connector (or any other
software) prevents the device to go to sleep when it is not connected (all
MCA GPIOs are wake-up sources when configured as interrupt)
https://onedigi.atlassian.net/browse/DEL-8155
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
This commit fixes the Ethernet entries to prevent ModemManager from trying to
manage it:
ModemManager[177]: <info> [base-manager] couldn't check support for device
'/sys/devices/platform/soc/5800a000.eth1': not supported by any plugin
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit fixes the pulseaudio recipe to launch the pulseaudio-server
service at boot time for sysvinit systems.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit exports the environment variable XDG_RUNTIME_DIR if does not exists
for services that require sharing a pulseaudio instance.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The new DVKs of the cc8mn, cc8mm and ccmp1 have a new ftdi
usb to serial chip that is recognized as a thermal device by default.
With the install_usb_driver.sh script this driver is replaced
to a USB to serial driver.
This script is included for the needed platforms in the zip
installer provided in the getting started.
https://onedigi.atlassian.net/browse/DEL-8126
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
Now the cloud connector has all the logic to detect if its
running in a dual_boot system, so it is not needed this anymore.
We need to modify on the fly the path to save the image in a
dualboot system.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
Use the same name for both firmware update mechanism.
Add a dependency to only add recovery-utils used by the
non dual-boot firmware update system.
Adding this only one binary/script called update-firmware will
be added.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
- create dualboot.bbclass that
- sets DUALBOOT_ENABLED variable
- defines partition names and function for changing the sw-description
for swupdate
- move files from layer into meta-digi
https://onedigi.atlassian.net/browse/DEL-7962
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
Crank demo was not working on CCMP15 devices due to several changes on weston
service and the user launching it. This commit makes several fixes to make
the demo to work again:
- Add 'DEMO_USER' parameter to determine which user will launch the demo. Update
recipe and start script accordingly.
- Add 'DEMO_DISPLAY' parameter to determine the display that will be used to
launch the demo. Update recipe and start script accordingly.
- Parameterize the name of the Weston service after which the demo must be started.
Update recipe and service file accordingly.
- Give Crank engine read and execution permissions so the engine can be started
by any user.
- Add new method to the demo start script to wait until Wayland is fully setup
before actually starting the demo.
Signed-off-by: David Escalona <david.escalona@digi.com>
The new ConnectCore demo functionality makes use of some new Python libraries. Add these libraries
as a dependency in the demo recipe.
Signed-off-by: David Escalona <david.escalona@digi.com>
If a package with a postsints script requires ldconfig, the package class adds
a ldconfig postinst fragment to initialize it before. Systemd has its own
ldconfig.service to initialize it and sometimes if both services are running
at the same time in the first boot, the first one will work, but the second
one will fail with the following error:
ldconfig[141]: /sbin/ldconfig: Renaming of /etc/ld.so.cache~ to /etc/ld.so.cache failed: No such file or directory
This commit adds an ordering dependency between them to make sure that only one
service is running at the same time
https://onedigi.atlassian.net/browse/DEL-8133
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit improves the sysinfo script to skip error on platforms that don't
provide some variables.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
If we add the demo to the graphical images (dey-image-qt) the resulting
image does not fit on the rootfs partition for the smallest variant.
https://onedigi.atlassian.net/browse/DEL-8004
Signed-off-by: Javier Viguera <javier.viguera@digi.com>