Commit Graph

4353 Commits

Author SHA1 Message Date
Gabriel Valcazar 9d98563945 trustfence-sign-tools: use appropriate signing script when using SPL and AHAB
When building imx-boot images with SPL on the ccimx8x, a different signing
procedure is required. We already have a script for this use case in our U-Boot
fork, so make use of it.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-07-10 11:09:37 +02:00
Javier Viguera f75c78dd8f swu-images: swu.inc: configure directories needed for fill_description
fill_description copies some artifacts to the images deploy directory,
so that should be created beforehand. Otherwise it may fail on the
'do_unpack' task depending on how bitbake schedules the tasks.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 18:01:49 +02:00
Gonzalo Ruiz aa41094ef5 firmware_qualcomm: remove BDF symlinks
Regulatory domain is now provided as a Kernel parameter, and the
wlan driver uses it to select the correct BDF file, so we don't
need to change the symbolic links to point to one file or another
anymore.

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

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2023-07-07 15:55:46 +02:00
Isaac Hermida 7db683f9fe nxp-wlan-sdk: update to version lf-6.1.22
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-07-07 02:04:16 +02:00
Javier Viguera afe30b8a2b optee: update to NXP's lf-6.1.22-2.0.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:56 +02:00
Javier Viguera e97e0b9325 imx-atf: update to NXP's lf-6.1.22-2.0.0 release for ccimx93
New NXP's release is based on upstream v2.8. Use this only for ccimx93,
and keep using the previous Kirkstone release (based on upstream v2.6)
for the rest of the platforms.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:56 +02:00
Javier Viguera e67f023ecb firmware-imx: update to NXP's lf-6.1.22-2.0.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:56 +02:00
Javier Viguera d0c0c84304 firmware-sentinel: update to NXP's lf-6.1.22-2.0.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:55 +02:00
Javier Viguera 837fbec2ca imx-boot, imx-mkimage: update to NXP's lf-6.1.22-2.0.0 release for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:55 +02:00
Javier Viguera c42cca79ba u-boot-dey: update uboot for ccimx93 to version v2023.04
Following NXP's 'lf-6.1.22-2.0.0' release.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:55 +02:00
Javier Viguera 563bc3e65d linux-dey: update branch for version 6.1 recipe
New development branch is 'v6.1.22/nxp/master' after merging NXP's
'lf-6.1.22-2.0.0' release.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-07-07 12:22:55 +02:00
David Escalona 94d4bbbe9f meta-digi-dey: swupdate-files: add firmware update support based on files
Implement a new mechanism to allow users to create update packages based on files and folders to modify
the active system.

This is done through the new class 'swupdate-files', which creates a tar.gz update file in the image
distribution output directory containing all the files and directories to create/update. The 'tar.gz'
file is used later by the 'swu-images' recipe to generate the final SWUpdate package. The SWU package
installation process extracts the tar.gz file in the root folder ("/") of the active system.

Users can specify the list of files and directories to include in the update package using the
'SWUPDATE_FILES_LIST' variable. These files will be directly copied from the generated system rootfs and
placed in the tar.gz archive. Additionally, users can provide their custom 'tar.gz' file to use in the update
by specifying its location in the 'SWUPDATE_FILES_TARGZ_FILE' variable. In any case, all the paths to include
in the update package must be relative to "/", as it is the base directory where tar.gz file contents are
extracted.

The update process for dual boot systems sets a new u-boot flag so that active bank is not swapped once
installation is complete and system reboots.

The SWU update mechanism based on files provides a custom update script which takes care of preparing the
system for the installation process. Just like in the SWU updates based on images, users can customize this
script or override it with the 'SWUPDATE_SCRIPT' variable, specifying the location of the new script to use.

If both the 'SWUPDATE_FILES_LIST' and 'SWUPDATE_FILES_TARGZ_FILE' variables are empty, a standard images
SWUpdate package will be generated instead.

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-07-06 11:00:05 +02:00
David Escalona e5392996ed meta-digi-dey: swupdate: enable 'ARCHIVE' handler support to directly install 'tar.gz' files
Signed-off-by: David Escalona <david.escalona@digi.com>
2023-07-06 11:00:05 +02:00
David Escalona 429125cce0 meta-digi-dey: swupdate: clean defconfig file
Make the 'defconfig' file a real defconfig by including only differences with respect default
values. While on it, improve the recipe:

  - Enable 'BOOTLOADERHANDLER' by default in the 'defconfig'. We were unconditionally setting
    this value to 'y' in the recipe, so move it to the default configuration.
  - Move 'UBI' configuration values to 'mtd.cfg' file to be added only when device filesystem is
    MTD based. Until now, 'UBI' support was always added by default.
  - Move the 'SIGNED_IMAGES' configuration entry to a '.cfg' file like we are doing with the rest
    of the functionallity. Use 'oe.utils.conditional' checking 'TRUSTFENCE' feature for this.

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-07-06 11:00:05 +02:00
David Escalona 4395fa1f11 meta-digi-dey: swupdate-images: add SWUpdate script support
Enable scripting support during the installation of system images with SWU. A new shell
script is included by default in all the SWU update packages that will be executed just
before the update starts and just after it finishes. The script is empty and contains two
place-holders that will be called in the two scenarios mentioned before.

Users can customize this script to execute specific actions based on their final product
needs or provide their own one by setting its location in the 'SWUPDATE_SCRIPT' variable.

While on it, rename the 'sw-description_template' file to 'sw-description-images_template'
as it is more accurate with the update mechanism it is used for.

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-07-06 11:00:03 +02:00
Francisco Gil 1e5bd003bd recovery-initramfs: get rid off singlemtdsys variable
This variable is not defined in ccmp1 platforms, making the
swupdate for single mtd failing.

Instead of reading this variable from uboot environment,
determine if the system is multimtd checking the existence
of /dev/ubi1.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-06 08:18:22 +02:00
Gabriel Valcazar 0c5b5ff75e bblayers: replace meta-qt5 with meta-qt6 in ccimx8x platforms
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-07-05 11:37:19 +02:00
Francisco Gil c5b2a17642 weston: readonly: change default log path to /tmp/
Weston is not launched in read-only filesystem because /home/root
is not a writable path.

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:31:02 +02:00
Francisco Gil 04c153fab9 udev: dualboot: include linux_a/b to partitions to be mounted as ro
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:30:54 +02:00
Francisco Gil 36804ef13d libubootenv: readonly: add hardcoded configuration for readonly systems
We can't run a post installation script in a readonly file system.

We need to provide a configuration file beforehand.

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

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:30:46 +02:00
Francisco Gil 1fe0a0dfe0 readonly: add default configuration for overlayfs_etc
When EXTRA_IMAGE_FEATURES += "overlayfs-etc" is added these
configurations are needed to compile. They are provided with
the default configuration to work with our software.

The user can modify them in their local.conf if needed.

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

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:30:39 +02:00
Francisco Gil 614c457139 update-firmware: squashsf: modify the logic to include the ro systems
In a squashfs the mount points are different and the current logic
wasn't working.

It's more reliable to check the /proc/cmdline to determine if
the system is a nand or an emmc.

Added also logic to get the active partition in nand devices
when the rootfs is squashfs.

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

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:30:33 +02:00
Francisco Gil e395d4a98c sw-update: read-only: modify swu descriptor for squashfs rootfs
When a squashfs image is flashed we need to delete the compression
field in the swupdate descriptor.

Also the rootfstype u-boot variable needs to be set to squashfs.

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

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:30:27 +02:00
Francisco Gil 5cb2e2395d read only: add rootfs_ext for read only filesystem
When the swu package is generated it needs the right
extension of the rootfs to be formed.

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

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-07-03 11:30:21 +02:00
Gabriel Valcazar 2687207948 ccimx8x: reflect imx-boot simplification in installer scripts
We no longer need logic to determine the SOM's RAM size and bus width, we only
need to know the SOC revision, which is info that is always available.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-30 15:00:25 +02:00
Gabriel Valcazar d13b42492f Rework ccimx8x imx-boot/u-boot recipes to reduce number of imx-boot artifacts
Now that both U-Boot and the SCFW can autodetect the RAM configuration, we can
simplify the imx-boot build process to generate two binaries (one per SOC
revision) instead of eight. Build "flash_spl" imx-boot images and use only one
global defconfig for u-boot.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-30 15:00:25 +02:00
Gabriel Valcazar 609028fe66 digi-sc-firmware: update to v1.11.0.1
This update includes automatic RAM configuration detection, and only one SCFW
binary is needed for all ccimx8x variants. Adapt the imx-boot recipe
accordingly.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-30 15:00:25 +02:00
Isaac Hermida 6feaa6e3c0 ccimx93: bluetooth-init: leave the interface up after attaching
Ensure we leave the Bluetooth interface up after attaching it. If not,
under some circumstances, it could be down.

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

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-06-30 11:04:44 +02:00
Gabriel Valcazar 9ce94e4af4 imx-boot: re-add ccimx8x support
Use our custom compile/install/deploy functions from DEY 3.2. NXP's imx-boot
recipe assumes only one U-Boot config and SOC revision, but we have multiple,
so we have to rewrite all of these functions.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-29 16:25:55 +02:00
Gabriel Valcazar fe53d9fe5c u-boot-dey: re-order ccimx8x deployment steps to avoid errors
For the ccimx8x, we changed the order of the steps in do_deploy() from:

    Deploy -> Rename files -> Move binaries

To:

    Deploy -> Move binaries -> Rename files

When it's time to rename the files, they won't be in their original place and
the process will fail. Make sure we move the files after they've been renamed
to avoid errors.

Also, one move operation is enough for all artifacts, so remove the second
operation.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-29 16:24:29 +02:00
Gabriel Valcazar 8eb5cf6a1a ccimx8x: populate variables related to imx-boot
These variables are needed for imx-boot compilation

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-29 16:24:29 +02:00
Gabriel Valcazar e35ff312e3 linux-dey-5.15: add support for ccimx8x
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-29 16:24:29 +02:00
Gabriel Valcazar 82ba959324 mkproject.sh: remove i.MX8X platforms from blacklist
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-06-29 16:24:29 +02:00
Isaac Hermida e29de8178f firmware-nxp-wifi: use a more recent FW till it is released
Currenlty, the github FW version is a bit old and some functionality does not
work on latest IW61x batches.
Use this FW binary till it is released on github. This is required to
have WiFi and Bt working simultaneously.

0c6d454ea83b1a78b4e60df16f478f43  sduart_nw61x_v1.bin.se

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
(cherry picked from commit 92ca458e4f)
2023-06-29 12:02:25 +02:00
Isaac Hermida 92ca458e4f firmware-nxp-wifi: use a more recent FW till it is released
Currenlty, the github FW version is a bit old and some functionality does not
work on latest IW61x batches.
Use this FW binary till it is released on github. This is required to
have WiFi and Bt working simultaneously.

0c6d454ea83b1a78b4e60df16f478f43  sduart_nw61x_v1.bin.se

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-06-28 11:54:16 +02:00
Isaac Hermida fbb261d4b8 ethos-u-driver-stack: use ethosu_firmware without debug port
The default ethosu_firmware in github reconfigures the uart2 to be used as
debug port. Those pins are used to manage the HW flow control for the Bluetooth
chip.
Build a custom ethosu_firmware that does not reconfigure the uart2 pins.

Compiled from internal "ethos_u_firmware.git" repository on Stash,
with revision 48a4b9e6a0770212aac529fb7f81ed2e6ff51cbd

md5sum: 0bf8686fcabec7378483755106dc6433

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

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-06-28 11:54:16 +02:00
Javier Viguera 54a0d44df3 onnxruntime: update revision and fix rdepends
Backport changes from NXP's lf-6.1.1-1.0.0 release for the ccimx93.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-06-26 16:20:30 +02:00
Javier Viguera 4992b9934f ethos-u: backport driver, firmware and vela python tool
From NXP's lf-6.1.1-1.0.0 release for the ccimx93.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-06-26 16:20:28 +02:00
Javier Viguera 9acc53d948 flatbuffers: update to version 2.0.7
Backport from NXP's lf-6.1.1-1.0.0 release for the ccimx93 (meta-ml
layer).

This version of flatbuffers is needed for ethos-u-vela version 3.6.0
(backported in following commit).

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-06-26 16:19:42 +02:00
Isaac Hermida cbe83df69a packagegroup-imx-ml: add missing packages for imx93
These packages are new from NXP's release (lf-6.1.1_1.0.0).

https://onedigi.atlassian.net/browse/DEL-8137
https://onedigi.atlassian.net/browse/DEL-8563

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-06-26 16:18:23 +02:00
Isaac Hermida 7e1b8bd65d deepview-rt: fix build error when using tensorflow version 2.10
Update binary package to match backported version of tensorflow-lite.

https://onedigi.atlassian.net/browse/DEL-8137
https://onedigi.atlassian.net/browse/DEL-8563

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-06-26 16:16:33 +02:00
Isaac Hermida 43ea95739a tensorflow-lite: add support for version 2.10
Backport tensorflow-lite recipes from NXP's lf-6.1.1_1.0.0 release (Langdale based)

https://onedigi.atlassian.net/browse/DEL-8137
https://onedigi.atlassian.net/browse/DEL-8563

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-06-26 14:48:57 +02:00
Isaac Hermida 4f659d2094 eiq-examples: add eiq tools
Backport EIQ examples recipe from NXP's lf-6.1.1_1.0.0 release (Langdale based)

https://onedigi.atlassian.net/browse/DEL-8137
https://onedigi.atlassian.net/browse/DEL-8563

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-06-23 08:43:55 +02:00
Isaac Hermida 130a5c796c ccimx93: add support for NPU dtb overlay
Load the NPU overlay based on the CPU model.

https://onedigi.atlassian.net/browse/DEL-8565
https://onedigi.atlassian.net/browse/DEL-8563

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-06-22 16:03:16 +02:00
David Escalona a04af0cbc1 meta-digi-dey: swu-images: simplify sw-description file
The fact of including both storage types (mtd and mmc) in the same 'sw-description' file is not providing any kind
of benefit. Instead, it makes the file larger, complex and harder to maintain. Additionally, most of the images
entries share the same structure and contents, changing only names and mount points. This commit simplifies the
'sw-description' file by configuring the storage type and the images to include in the SWU package at build
time, using a generic 'sw-description' template and template files for 'mmc' and 'mtd' images.

While on it, use the new 'DEY_FIRMWARE_VERSION' variable for SWU package version and fix the recipe to not include
all 'SRC_URI' files in the SWU update image, but only the required files for the update. Also, make use of variable
substitution provided by SWU class in the 'sw-description' file.

Note: SWU U-Boot update will be broken after this change. Waiting for official support with a robust implementation.

https://onedigi.atlassian.net/browse/DEL-8537
https://onedigi.atlassian.net/browse/DEL-8538

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-06-21 18:23:50 +02:00
David Escalona 96af1bd3de meta-digi-dey: dey-image: add new 'sw-versions' file to track system firmware version
https://onedigi.atlassian.net/browse/DEL-8574
https://onedigi.atlassian.net/browse/DEL-8575

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-06-21 18:23:50 +02:00
David Escalona a3bbd8a56f meta-digi-dey: sysinfo: include the new firmware version variable in the 'sysinfo' report
While on it, rename the old "Firmware" variable to "DEY version", as it refers explicity to the DEY
distribution version.

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

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-06-21 18:23:50 +02:00
David Escalona ce14f12ac5 meta-digi-dey: fw_version: add new variable to store global system firmware version
https://onedigi.atlassian.net/browse/DEL-8539

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-06-21 18:23:50 +02:00
Tatiana Leon 6e30a8127e cloudconnector: set 'MACHINE' as the default device type
If 'CC_DEVICE_TYPE' is not defined or it is empty use 'MACHINE' as the device
type in the Cloud Connector configuration file.

This commit also limits its length to a maximum of 255 characters.

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

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-06-21 16:57:27 +02:00
Gonzalo Ruiz 82877e9840 firmware-murata: install the FCC.CE specific hcd patch
There are two different firmware files for Bluetooth on Murata's type2AE
module:

- JRL: It configures a Bluetooth TxPower of 7dB, to be used in Japan
only.
- FCC.CE: It configures a Bluetooth TxPower of 5dB, to be used in the
rest of the world.

To comply with the FCC requirement that it should not be possible to
configure different regulatory domains, or in this case configurations,
than FCC, only deploy the FCC.CE file by default:

- BCM4373A0_FCC.CE.hcd (md5sum: 1e287a3ab7f83e59352cb321315ea80f)

This file reports the following information during boot time:

 Bluetooth: hci0: 89373 UART 37.4 MHz wlbga_BU sLNA muRata Type 2EA 5dBm 20220608-0103
 Bluetooth: hci0: BCM4373A0 (001.001.025) build 0155

JRL file will be added via the Worldwide DEY patch addon that customers
can request from Digi.

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

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2023-06-21 12:51:07 +02:00