Add configuration 'BUILD_UBOOT_SCRIPTS' to select whether to build the
boot and install scripts or not, and set it to 'true' by default.
This allows removing the scripts on upper Yocto layers.
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@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>
Increase the timeout from 90 to 120s since it's a large image
and it may take more time on different NANDs.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The U-Boot environment resides on a UBI volume. The uuu script
relies on the environment to save part of the commands that
U-Boot needs to execute after reboot in the middle of the
installation. If the UBI volume 'uboot_config' does not exist
the installer fails.
This commit:
- Creates a function -on the uuu script only- for obtaining
the result of running any U-Boot command (0=success, 1=error).
- Checks the existance of 'uboot_config' volume.
- Runs 'ubivolscript' script to create the UBI volumes layout
that generates the environment volume if it doesn't exist.
- Increases the timeout for running the 'ubivolscript' since
there are occasions in which 'ubi part' (which is part of the
script) takes more time (if it cannot find the fastmap).
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
By default ccmp1 platforms have dualboot mode by default, however the required
boot script was added to ccmp15 platform only, so this commit fixes it.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The first time the 'dualboot' variable is tested it is directly run in
the script and doesn't need to escape the special characters.
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
When Dual Boot is not enabled, 'rootfsvol' variable must point to the
single boot system rootfs partition 'rootfs'.
Explicitly set this value. Otherwise the script relays on the default
rootfsvol value, which may be a Dual Boot partition.
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@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>
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>
Use the latest 2AE NVRAM file from the master branch. This file improves
the EVM performance for the 2AE murata module.
MD5SUM:
- cyfmac4373-sdio.2AE.txt: 6301804650847946c79797387eda9c7a
https://onedigi.atlassian.net/browse/DEL-7936
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
This commit adds Bluetooth Vulnerability CVE-2019-9506
resolution to the firmware file.
CVE-2019-9506 is a Bluetooth key negotiation vulnerability.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
https://onedigi.atlassian.net/browse/DEL-7134
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>
Reset the FW files to release r00006.3.470144.2a
Verbatim copy of the recipes in DEY-3.2, using command:
git restore -s dey-3.2/master -- meta-digi-arm/recipes-bsp/firmware-qualcomm
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
For the CC6UL 1GB flash variant, the programming of the rootfs exceeds
the current 90 secs timeout, giving following failure:
[Bulk(R):LIBUSB_ERROR_TIMEOUT] fb[-t 90000]: ucmd update rootfs ram ${fastboot_buffer} ${fastboot_bytes} -e
Error: Bulk(R):LIBUSB_ERROR_TIMEOUT
Increase the timeout to prevent the failure.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
As that's an old VM with limited specs, there is no much gain on using
it over the canonical Stash repositories that justifies the code
overhead and the possible errors due to synchronization problems.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This commit updates the required firmware binaries for bluetooth and wireless
interfaces, based on the release imx-hardknott-drogon_r1.0 (Wireless firmware
v13.10.246.265)
https://onedigi.atlassian.net/browse/DEL-8021
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The recipe fails to build for the target, but that is expected, as this
is a tool you need to run in the host or from the toolchain/SDK, so
rework the recipes to restrict only for native and nativesdk.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Yocto 4.0 only supports OpenSSL 3.0.x while NXP's CST (code signing
tool) is still using OpenSSL 1.1.x. So the build fails when using the
Yocto-build OpenSSL. Instead, build OpenSSL 1.1.1 as part of the build of
the CST and link statically against libcrypto, so the resulting binaries
(cst, srktool) do not depend on any specific OpenSSL version installed
on the development computer.
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>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit 16eded4f0edcc603de83be7155f7c09718ba5ddd)
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This commit updates the wireless firmware in order to work with the new Linux
qcacld-3.0 wireless driver.
Latest release "r10016.1 - Post-CS3 1.0.016.1" updates the following files from
"qca6574au-le-2-2-1_qca_oem" product branch:
PCIe:
- athwlan.bin (b4fd36922625b7303d006581f6c7cd10)
- utf.bin (0d70048214fea05d1c40b3034e8107cd)
SDIO:
- qwlan30.bin (342cb50ce5c6ff930a65f341c0dfbc77)
- utf30.bin (f94810be89cc2f3e979ab4a57243872b)
https://onedigi.atlassian.net/browse/DEL-7916
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This recipe will download and install the required firmware binaries for
bluetooth and wireless interfaces. This recipe is based on the release
imx-hardknott-cynder_r1.0 (Wireless firmware v13.10.246.261)
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds u-boot build support for the CCMP15 platform.
The installation scripts are copies from the CC6UL platform.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
https://onedigi.atlassian.net/browse/DEL-7797
The sign mode needed for each platform is invariable, and since the platform
is already a mandatory parameter for the script, we can store this information
implicitly. Reflect this change in every recipe where the script is used, but
keep the variable at the Yocto level since it's still needed in several places.
https://onedigi.atlassian.net/browse/DEL-7862
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit updates the US Board Data File (BDF) to include the changes
required to pass the EN 300 328 V2.2.2 blocking test.
The new BDF files are:
- ccimx6/bdwlan30_US.bin (eb3d3cdafd30b30e837974177a281648)
- ccimx8m/bdwlan30_US.bin (72531e6e0870673e4ba2b02bd551925b)
- ccimx8x/bdwlan30_US.bin (1cf667271da33f6eb207360eeb3d4d63)
https://onedigi.atlassian.net/browse/DEL-7773
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This makes it possible to distinguish between two different packages:
* NXP's tensorflow-lite, which contains modifications for i.MX platforms
* Our tensorflow-lite, which is meant to be used with Google Coral
Since tensorflow-lite-coral provides a subset of the files provided by
tensorflow-lite (specifically, the python libraries), make the packages
conflict during runtime.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This is a small oversight on NXP's part, because this package is pulled in as a
dependency of imx-vpuwrap, but it's only compatible with their EVK board,
making the build fail on any other i.MX8MP board.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
These variables were originally set in NXP's recipes, but they moved their
definitions to each platform's configuration file. Set the appropriate values
where needed. While at it, replace every mention of the SOC_TARGET variable
with its new name, IMX_BOOT_SOC_TARGET.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
NXP now uses the meta-freescale version of the imx-boot recipe as a base, and
applies a .bbappend in meta-imx to apply more customizations. Reflect this
in meta-digi-arm and merge said .bbappend with ours. While at it, omit one of
NXP's operations in their do_deploy, since it breaks our build and doesn't look
essential.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This recipe is only compatible with the i.MX8MP EVK, so it might be
platform-specific or board-specific. Add it for now to be safe.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This recipe was missing from our layer, so add it just in case it's needed
by any new package.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Update the recipes to v8.14. NXP changed the mechanism used to load the sdma
and regulatory firmware (they now use firmwared), so remove our ccimx8mm sdma
fw service for now and see if we need a similar workaround with the new
mechanism.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Digi Embedded Yocto 3.2-r2.2
Manually changed recipes to use the master branches instead of the fixed SHA1
from the last release.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
U-Boot uses partition names instead of partition indexes for the nand devices.
This commit syncs the boot scripts with the new dualboot variables.
https://onedigi.atlassian.net/browse/CC6UL-1254
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Create this symbolics links in build time instead of doing it
in run-time. This simplifies the system and allows it to work
with read only filesystems.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
Before this patch the MAC addresses were read from the device
tree in the qualcomm.sh script executed at init, and a creates
a file where the MAC where located.
In 0a92f5d9e8df644de74e74f152ed6ff3dd8d3369 in the qca driver
the support to read these MAC addresses from the filesystem
was added.
This commits creates the simbolic link between the device tree
and the expected path where the MAC addresses where located, and
gets rid of the file with the MAC addresses.
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
mkimage logs are required for signature on CC8X and CC8M platforms. Create a
copy in the 'imx-boot-tools' deploy directory so a prebuilt imx-boot file can
be later signed using the standalone signature procedure.
Build the 'print_fit_hab' target unconditionally so the log is available for
future standalone signature processes.
Also, use 'CONFIG_MKIMAGE_LOG_PATH' and 'CONFIG_FIT_HAB_LOG_PATH' variables to
point to the logs before calling the sign scripts. We no longer require
creating a symbolic link of the log files.
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
Add missing call to 'uuu' and erase the partition before creating
the UBI volumes.
Also add larger timeouts to erase operations.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The config file /etc/fw_env.config is generated dynamically basing on
the partition table and, in the case of NAND-based SOMs, on the NAND
geometry. This is done on a postinst script that modifies the file on the
first boot of the target. Since this is not allowed on read-only-rootfs,
this commit adds a default fw_env.config file to use instead when
read-only-rootfs is enabled.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://onedigi.atlassian.net/browse/DEL-7708
This allows the packages to be included in the ccimx6sbc images. While at it,
include the Qualcomm bluez patches in ccimx6 builds. These patches aren't
destructive, they simply add functionality required by the Qualcomm chip, so
they shouldn't have any secondary effects when using the Atheros chip.
https://onedigi.atlassian.net/browse/DEL-7661https://onedigi.atlassian.net/browse/DEL-7666
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The variable 'dualboot' (and 'singlemtdsys' for CC6UL) was restored
after the bootcmd that runs the first time after programming U-Boot runs
fastboot again to resume the script.
This is ok for the CC6UL but not for the rest of platforms, that run the
partition script on the bootcmd, *before* running fastboot.
Restore the variables for all platforms in the bootcmd right after
resetting the environment.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>