The name of the variable was not very intuitive of what
it contains. This variable expands to the SoC vendor
(NXP or STM).
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
For devices running 'systemd', the mount process is done through 'systemd-mount', which
spawns a system unit. Trying to mount the partition again throws an error stating that a
unit with the same name is already running. To avoid it, check if the unit is already
spawned before mounting the partition and, if so, just restart the unit.
Signed-off-by: David Escalona <david.escalona@digi.com>
Our /tmp file is a symbolic link to /var/tmp, therefore a "find /tmp" returns
nothing. Force to search files inside tmp folder by using "find /tmp/".
https://onedigi.atlassian.net/browse/DEL-8410
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
In the past, this file was cloned from poky to skip mounting
an already mounted device. This condition was done on poky's
version so the cloned file is no longer needed.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
This commit fixes the issue in Jira
https://onedigi.atlassian.net/browse/DEL-7827 (and in GitHub
91bfa01a52#),
that is being manifest again in a CC6UL with 1GB although it may affect other
hardware.
Partitions are mounted:
* For multi-MTD systems, when an MTD subsystem event is received.
* For single-MTD systems, when a UBI subsystem event is received.
This commit avoids process UBI subsystem events in multi-MTD systems.
The automount rules filter UBI subsystem events to only process 'ubi0*' (the
only UBI device/volumes in a single-MTD) and then the executed script
'mount_digiparts.sh' checks for the existance of '/dev/ubi1' node to consider
the system multi-MTD instead of using 'singlemtdsys' U-Boot variable that only
exists on CC6UL.
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
* Use 'MOUNT' variable instead of 'mount' command
* On the MTD subsystem event, stop looping once the UBI device number is found
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
Commit b8d46f01 ("read_only: create folders in build time") creates
unconditionally default folders in spite of we are in a read-only filesystem or
not, however there are different models (dual boot, single boot..) where these
partitions exist or not, so this commit only creates these default partitions
for a read-only filesystem.
https://onedigi.atlassian.net/browse/DEL-8193
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit allows to mount only the linux partition active in read-only mode.
https://onedigi.atlassian.net/browse/DEL-8193
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
According to udev documentation running programs that access to mount/umount
filesystems is not allowed due to the default sandbox that is enforced on
systemd-udevd.service, so on systemd systems we must to use systemd-mount
binary instead of mount. Also systemd-mount does not support mount ubi devices
by volume name, so we need to use the absolute device path.
https://onedigi.atlassian.net/browse/DEL-8193
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
On the CCMP1 SOMs, we only consider a single system partition called UBI,
with many UBI volumes.
The variable 'singlemtdsys' allowed to change between this and
a system with multiple MTD partitions with one UBI volume each
(old approach on CC6UL).
This commit removes the variable and uses the logic as if it was set.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The modalias changed as part of the kernel update to version 5.15.
See commit dd545833b773b20aa7cec10f89bff96014ccb64f in kernel tree.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Building a toolchain/SDK fails for ccmp15-dvk, because the NXP-based
trustfence tools (for example the cst) are not available. Fix the build
by filtering out those tools when the build platform is not NXP based.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
In order to perform the standalone signature process, it was required
to rebuild the Toolchain with Trustfence support enabled.
CST source code is now available for downloading in the Digi FTP, so add
Trustfence sign scripts and cst/srktool to the default toolchain for it
to be used for standalone signature without rebuilding.
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
(cherry picked from commit 2c9b721fb9ce38dcd0034e22d95db6e0ee068955)
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This code path was added in the context of single MTD layout support for
ccimx6ul boards, but it was being executed in the default storage layout use
case as well. This could trigger a race condition in which one code path
deletes the mount point while the other one is still setting it up, causing
partitions to not be mounted automatically (specifically, the "update"
partition).
Since both code paths are mutually exclusive in our implementation, reflect
this by making sure that the single MTD layout path is executed only when said
layout is enabled in the U-Boot environment.
https://onedigi.atlassian.net/browse/DEL-7827
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
(cherry picked from commit 9a7ea10a4dfb74651f865f125372604fe6840a10)
These folders /mnt/linux, /mnt/update and /mnt/data are
created by the automount_block.sh script. In a read only
system, these folders are not created raising some errors.
Creating these folders solves the issue.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
Traditionally, platforms based on NAND, used one UBI volume
per MTD partition.
Now it's possible to use only one MTD partition containing many
UBI volumes.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://onedigi.atlassian.net/browse/DEL-7614
Starting with Linux v4.15, regulatory domains are no longer handled via CRDA,
but via the kernel and a flexible database instead. Said database is included
in the wireless-regdb-static package, which conflicts with the old
wireless-regdb package.
To accomodate for this new package, add CRDA as a dependency for ccimx6
platforms only, and incorporate wireless-regdb-static for the rest of the
platforms. Additionally, the ccimx6 kernel should inherit the
kernel_wireless_regdb .bbclass so the plaintext database is copied to the
kernel sources, but since we use the same recipe for all kernel versions and
ccimx6 platforms are not yet supported in zeus, omit this change for now.
Remove the package-base .bbappend, since only ccimx6ulstarter images include
that packagegroup and they require wireless-regdb-static, anyway.
By adding the regulatory database, we avoid delays when going to suspend,
caused by the kernel waiting for the database to appear.
https://jira.digi.com/browse/DEL-7133
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
imx-mkimage is a host recipe to provide the mkimage_imx8 binaries, required
for the trustfence support with platform based on AHAB (ccimx8x). Since
these binaries are required to the sign process we need to export it in the
SDK to allow the standalone sign mode, and with that we can simplify the
mechanism to share these binaries with another recipes (u-boot, linux).
Also the do_deploy() from imx-mkimage recipe was removed to avoid overriding
the implementation from the native class and allow populating the mkimage
binaries.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
packagegroup-base includes wireless-regdb-static package unconditionally,
however it conflicts with wireless-regdb that it is required by crda,
which is included as a dependency to packagagroup-dey-wireless.
https://jira.digi.com/browse/DEL-7013
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Default poky's version of the 'mount.sh' script doesn't account
for the possibility of udev calling twice the script for the 'add'
action. This has been observed on USB sticks connected to a USB hub
and, although the script eventually fails, for already mounted
partitions, in that case the script tries to remove the created
mountpoint, when it shouldn't.
This patch checks for already mounted partitions earlier (before
creating the mount point) and returns with no actions.
The patch that it adds (with respect to poky's thud default) is
the following:
diff --git a/meta/recipes-core/udev/udev-extraconf/mount.sh b/meta/recipes-core/udev/udev-extraconf/mount.sh
index 3ee67b13183a..e6882a69c223 100644
--- a/meta/recipes-core/udev/udev-extraconf/mount.sh
+++ b/meta/recipes-core/udev/udev-extraconf/mount.sh
@@ -38,6 +38,12 @@ done
automount_systemd() {
name="`basename "$DEVNAME"`"
+ # Skip already mounted partitions
+ if [ -f /run/systemd/transient/run-media-$name.mount ]; then
+ logger "mount.sh/automount" "/run/media/$name already mounted"
+ return
+ fi
+
# Skip the partition which are already in /etc/fstab
grep "^[[:space:]]*$DEVNAME" /etc/fstab && return
for n in LABEL PARTLABEL UUID PARTUUID; do
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6759
The current scripts used the standard mount binary at /bin/mount
for mounting the partitions. Systemd however seems to have a monitor
that eventually umounts such partitions if not mounted by systemd's
specific command 'systemd-mount`.
For platforms using systemd, we need to use this binary together with
parameter --no-block so that partitions are mounted correctly during
the boot process.
This commit merges the two scripts for Digi-handled partitions into
just one:
mount_bootparts.sh
\
+--> mount_digiparts.sh
/
mount_partition.sh
The merged script:
- checks if running with systemd, to use its binary.
- checks if running with busybox, to not use the unsupported '-o'
attribute.
- checks if mounting the 'linux' partition, to mount it read-only.
- checks for already-attached UBI devices, to avoid re-attaching.
This commit also combines the Digi-handled partitions (linux, update)
into the same udev rule, to simplify it, and breaks the rules lines
for readability.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6744
This kernel module is used for debugging and when available it spams the
log file with every input event.
This patch avoid it being loaded by default but the user can still load
it manually if required.
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Generate and include the host tools in the SDK when Trustfence is enabled.
This makes it easier to use the standalone signing and encrypting scripts.
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
Prevents loading the spidev module at boot time to avoid
the undesired warning message from driver.
https://jira.digi.com/browse/DEL-4748
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Add a recipe to include all signing and encryption tools for U-Boot and
kernel images to the SDK. Move existing trustfence kernel scripts to this
new recipe.
This allows to use these scripts not only from the Yocto build system but
also as standalone tools for image signing and encryption.
https://jira.digi.com/browse/DEL-2688
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
Revert to the old way of setting the console for ccardimx28js. Configure
the console on the generic ttyS0 port name and let the device managers
create a symbolic link to the correct device at runtime.
Trying to set it statically at compile time lead to some side effects
with some packages not being recompiled after a change of the preferred
kernel version in the project's local.conf (e.g. udev-extraconf and
sysvinit-inittab).
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
In Yocto 1.7 meta-fsl-arm replaced udev-extraconf bbappend with a new
package (udev-rules-imx). So we need to adapt our own bbappend to these
changes so all the needed udev rules are in place.
https://jira.digi.com/browse/DEL-1336
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This bbappend was added to be able to native build the util-linux
package in our old buildserver (with Debian 6). This is no longer needed
as we migrated our buildserver to newer Debian.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This cleans following warning:
Use of PRINC is deprecated.
The PR server should be used to automatically increment the PR.
See: https://wiki.yoctoproject.org/wiki/PR_Service
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The boot partions name has been changed in u-boot, so change it also
here to match current u-boot.
https://jira.digi.com/browse/DEL-949
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The build was failing in our Jenkins server (Debian 6) with:
error: 'MS_PRIVATE' undeclared
error: 'MS_REC' undeclared
Signed-off-by: Javier Viguera <javier.viguera@digi.com>