The variable BT_DEVICE_NAME is used to name the Bluetooth device name on
the BlueZ configuration file. Re-use the contents of DIGI_FAMILY (except
for ccimx6qp which re-writes it) to simplify platform definitions.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
- WLAN_P2P_INTERFACE is the same for all platforms: "p2p0".
- WLAN_P2P_DEVICE_NAME can be built out of ${DIGI_FAMILY} except for
the ccimx6qp, that's why it has a weak default assignment.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
This overlay is not handled in our bootscript, but we add it to the Linux
partition in case users want to apply it manually.
https://jira.digi.com/browse/DEL-2609
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Parse the hardware version from the HWID and load the overlay if and only if
the revision is "1". Also, update the board's device tree list accordingly.
https://jira.digi.com/browse/DEL-7070
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Instead of having two separate device trees for the non-wireless and wireless
variants of the ccimx8mn, use the non-wireless .dtb as a base and apply the
overlays in the bootscript depending on the variant's capabilities.
Also, update the board's device tree list accordingly.
https://jira.digi.com/browse/DEL-2609
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Default version is defined in poky layer, this commit also modifies
the preferred version to match with the new one.
https://jira.digi.com/browse/DEL-7013
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Remove support to kernel v4.14 and move platforms to use the new
kernel v5.4
https://jira.digi.com/browse/DEL-7013
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Add Trustfence support for signing imx-boot images:
- Install a different U-Boot signing script for images with U-Boot SPL.
- Store mkimage log for later use in the signing script
- make 'print_hab_log' and store its log for later use in the signing script
https://jira.digi.com/browse/DEL-7023
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
This commit adds a installation script that uses fastboot support to
update the target firmware.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
https://jira.digi.com/browse/DEL-6845
Additionally:
- The handling of gpios has been swapped so 'Set low XBEE_SLEEP_RQ' is done
before 'Power cycle XBEE_RESET_N' to assure the device doesn't enter sleep mode.
- Removed ExecStop entry from systemd service since it's doing nothing.
https://jira.digi.com/browse/DEL-6424https://jira.digi.com/browse/DEL-6423
Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
Environment encryption is not yet supported in U-Boot.
Unset TRUSTFENCE_ENCRYPT_ENVIRONMENT on the machine configuration
and remove the platform conditional on the class.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
* prefix TRUSTFENCE_ to variable SIGN_MODE for DEY
* prefix CONFIG_ to variable SIGN_MODE for script
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The ccimx8mn console is on ttymxc0 (uart1 thanks to aliases).
https://jira.digi.com/browse/DEL-6876
Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
Now that xbee-init supports multiple interfaces, add the XBee Cellular
GPIOs to the already existing XBee User ones to it so it can handle both
of them on the ccimx8mn DVK.
https://jira.digi.com/browse/DEL-6887
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Update the values of the MACHINE_SOCARCH_FILTER variable with the ones in
meta-fsl-bsp-release's imx-base.inc.
https://jira.digi.com/browse/DEL-6932
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
For the i.MX8M processors, the do_deploy support is provided by
the upstream recipe firmware-imx-8m.
https://jira.digi.com/browse/DEL-6911
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
WPA and P2P configuration files are basically the same between all
platforms, so we remove all duplicated files to use a common file
and modify it in the recipe logic.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The meta-freescale-3rdparty layer used for the mainline bsp support does
not support the WiFi interface on thud. WiFi is currently merged on master
so it will probably be available on Zeus (2.8).
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
The artifacts that must go inside the installer ZIP image are not anymore
the ones in UBOOT_CONFIG. For CC8X, the artifacts are combinations of
UBOOT_CONFIG and RAM_CONFIGS.
This commit adds a function 'get_bootable_artifacts()' to boot-artifacts class
to generate a new variable BOOTABLE_ARTIFACTS with the list of bootable
artifacts DEY produces.
The installer recipe can then simply iterate on that list, rather than
needing to calculate it by itself.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6641
A variable called IMAGE_BOOTLOADER was being used without distinction for
referring to two different things:
- the recipe that builds the bootable artifacts
- the prefix of those artifacts
The value of this is "u-boot" for most platforms, but "imx-boot" for the
CC8X based platforms.
The name of the variable is misleading, so this commit splits it into two:
- BOOTLOADER_IMAGE_RECIPE, to refer to the recipe
- UBOOT_PREFIX, to refer to the prefix of the bootable artifact
With the separation, the variable UBOOT_SYMLINK becomes a generic formed
one, so it is moved to digi-defaults.inc.
While on it, fix the image_types_digi.bbclass which was not making use of
the original variable to establish all the dependencies.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Similar to the way the u-boot recipe does, create a symlink to the default
bootable artifact.
Since they are overwritten on every loop, this requires that the default
RAM configuration is set the last on the list of RAM_CONFIGS (same
convention than the one used on UBOOT_CONFIGS).
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6641
With the arrival of DualX variants, the devicetree files have changed
their names to include the soc type (qxp, dx).
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6641
Even though our ccimx6 and ccimx6qp images were using Linux v4.9 sources
correctly, they were using the same recipe as our images with Linux v4.14.
Technically, both recipes are identical (save for the branch name), but each
Linux version should have its own recipe.
Also, make sure that ccimx6/ccimx6qp images are built with our version of the
linux-imx-headers recipe instead of the one in meta-freescale.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Removing the flag breaks the build of the freetype package and possibly others.
Leave the flag as it is for now.
This reverts commit e4cbeafa1c.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This option configures gcc to use PIE by default, which is good from a security
standpoint. However, the files necessary to compile applications statically
with PIE support are missing from glibc, causing builds to fail. Said files
were removed on purpose in poky commit 472c86127ab57759588e5ec53c75ebb52667f094
because static PIE binaries apparently don't work very well when using gcc 7.x.
Instead of enabling static PIE support for glibc and risking runtime failures,
revert to our old situation and remove default PIE suport for gcc.
https://jira.digi.com/browse/DEL-6558
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This recipe adds a script and a related systemd service that
configures two GPIOs (user defined, or else platform-defaults) as
output and sets them to the appropriate value for initializing the
XBee socket:
- XBEE_SLEEP_RQ: is set low, for running the XBee
- XBEE_RESET_N: is set low and then high, to reset the XBee
The service triggers on the condition that the UART TTY device node
pointed to by variable XBEE_UART exists.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6366
Remove the linux-v4.20 recipe and use the linux-fslc kernel recipe in
meta-freescale-3rdparty instead.
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
This version is only required to build U-Boot 2017.X, so select it as preferred
version only on those platforms that build this U-Boot (CC6 and CC6UL).
https://jira.digi.com/browse/DUB-881
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
This adds support for U-Boot v2018.03 for CC8X platforms only.
Create 'digi-u-boot.inc' with the common definitions for both v2017.03
and v2018.03.
https://jira.digi.com/browse/DUB-881
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
The driver now builds directly from the kernel source and the
fixes are already included in the kernel tree so there is no need
to build the module externally.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6460
(cherry picked from commit a0990a7e1dcd03af239efb620b83b7dee126484e)
In Yocto 2.6, this variable is null whenever systemd is enabled. Explicitly set
this variable to keep some necessary scripts in /etc/init.d.
https://jira.digi.com/browse/DEL-6415
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Also, remove sysvinit and add pam, which is needed by weston+systemd.
https://jira.digi.com/browse/DEL-6415
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
cryptoauth-openssl-engine is not compatible with OpenSSL v1.1.x, until
it will be supported, we disable it.
https://jira.digi.com/browse/DEL-6412
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The SDMA firmware does no longer live inside the kernel tree.
It must now be installed on the rootfs.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-6420
Just add the following to the conf/local.conf file:
MACHINEOVERRIDES .= ":use-mainline-bsp"
The defconfig is the mainline imx_v6_v7_defconfig.
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Since we were modifying UBOOT_SYMLINK for the ccimx8x, we were generating
u-boot symlinks with imx-boot names. This also caused the imx-boot recipe to
fail during compilation, because it couldn't find the old UBOOT_SYMLINK that
we replaced.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Some overrides that were missing (imxgpu, imxdpublit) are needed for certain
packages to build.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Also add gtk3+ and clutter demos that depend on wayland since they are also
included in NXP's images.
https://jira.digi.com/browse/DEL-6104
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This package includes applications to:
- Update the MCA firmware
- Manage different MCA settings
- Configure the tamper settings
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This package is the combination of U-Boot and the other i.MX firmware binaries.
In our case, these binaries are: the SCFW, the ATF and the DCD.
The recipe has been ported from the meta-fsl-bsp-release repo, with a couple of
important changes:
* Support for our platform (based on the mx8qxpa0, which uses A0-specific
parameters for mkimage and appends the DCD explicitly)
* Support for multiple UBOOT_CONFIG values (NXP only uses one UBOOT_CONFIG
string per platform; so the compile, install and deploy functions had to
be tweaked to build both 1GB and 2GB variants for our platform).
Our DCD patch used in imx-mkimage is also used, since both packages share the
same repo and imx-boot is the one responsible for generating the final,
bootable image.
https://jira.digi.com/browse/DEL-6085
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
U-Boot's 'dboot' command now supports uncompressing Image.gz.
This will be the default kernel image type for the CC8X.
This also changes the names of the device tree artifacts, that must be
updated on the boot script. While on it, add support for all the SOM
variants (wireless and non-wireless).
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
CC8X variants include either 1GB or 2GB DDR. This requires
different defconfig files for each possible DDR size and so,
different U-boot binary files.
https://jira.digi.com/browse/DUB-836
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
The firmware-qualcomm recipe now provides the Bluetooh and WiFi firmware
for QCA6564 (CC6UL, CC6PLUS) and QCA6574 (CC8X).
The Bluetooth firmware is the same for both chip models.
Regarding the Wifi firmware:
- If using the QCA6564, the proprietary firmware is used.
- If using the QCA6574, the recipe allows to select between the proprietary
or the community driver (via QUALCOMM_WIFI_DRIVER), and will install the
associated firmware. For the community driver, the firmware files have
been copied from linux-firmware repo at SHA1 7518922bd5b9, except for
the file 'board.bin' which needs to be substituted with the proprietary
one by Qualcomm. Default, is to use the community driver.
The do_install() has been improved for re-using the variables with the list
of files.
The package has been renamed basing on the QCA_MODEL variable which can
be set per platform.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
- This is an AARCH64 platform that requires to build "Image", so let's
change KERNEL_IMAGETYPE to a weak assignment in imx-digi-base.inc
- The device tree is inside a vendor folder.
- For the moment, this platform builds from a different branch.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-5936
With this patch a user can provide his own kernel 'defconfig' file by:
- setting the variable KERNEL_DEFCONFIG to a custom kernel configuration
file inside the kernel repository.
- setting the variable KERNEL_DEFCONFIG to a kernel configuration file
using the full path to the file.
- clearing the variable KERNEL_DEFCONFIG and providing a kernel
configuration file in the layer (in this case the file must be named
'defconfig').
Otherwise the default platform's kernel configuration file will be taken
directly from the Linux source code tree.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
This adds support for U-Boot v2017.03 for all platforms (including CC8X).
For legacy v2015.04:
- Renames u-boot.inc as a versioned file only for v2015.04.
- Moves boot/install scripts from versioned folder into non-versioned
folder (since the scripts remain the same between versions).
For new v2017.03:
- Re-uses poky's u-boot.inc in rocko for v2017.03
- DEY recipe re-writes the do_compile for special U-Boot configuration
required for TrustFence.
- DEY recipe appends the do_deploy, for U-Boot scripts and deploy of
special TrustFence artifacts.
- Adds u-boot-dtb.xxx to UBOOT_CONFIG, required for new U-Boots.
- Adds CC8X scripts.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-5936
Add initial support for Digi ConnectCore 8X SBC Express.
- ccimx6qp was used as reference machine from meta-digi.
- imx8qxpmek was used as a reference machine from meta-fsl-bsp-release.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-5936
As a side effect, remove U-Boot entry point variable and LOADADDR
extra parameter from the kernel recipe.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-5554
This tool was only needed for old kernels, newer kernels use the hardware
random number generator themselves.
https://jira.digi.com/browse/DEL-5518
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
U-Boot has been able to boot kernel zImage for a long time so make this
the default kernel image.
For the CC6 we still want to use uImage for compatibility reasons.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-5237
This commit re-adds the imx-gpu-g2d recipe that was removed
from the imx-gpu-viv v6 driver.
https://jira.digi.com/browse/DEL-5234
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds the recipe to update the GPU driver
to the latest version.
https://jira.digi.com/browse/DEL-5234
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds the recipe to update the Vivante GPU
driver to the latest version and refresh patches.
https://jira.digi.com/browse/DEL-5082
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Add initial support for Digi's ConnectCore 6 QuadPlus SBC.
The ccimx6qp platform has the QCA6564 chip instead of the
other Atheros chips and included the Atmel ECC508A cryptographic
chip.
https://jira.digi.com/browse/DEL-5082
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The current value only allows partitions of up to 8 MiB, which is not
enough for the 0x04 variant (which uses a linux partition of 24 MiB by
default).
This new value allows for up to 32 MiB (assuming 128 KiB erase block size).
Also add comments explaining the -c value and maximum partition sizes
supported.
https://jira.digi.com/browse/DEL-4971
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
After the 'ccardimx28js' platform removal, these variables and machine
features are not used anymore, so remove them.
https://jira.digi.com/browse/DEL-4771
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This is required to be able to use the whole RootFS partition which is
512 MiB in the 0x04 CC6UL SOM variant.
The old value only allowed to manage partitions of up to 256 MiB, this new
value allows for up to 1 GiB (assuming 128 KiB erase block size).
https://jira.digi.com/browse/DEL-4567
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
A mechanism was introduced in U-Boot to dynamically locate the environment
copies within a NAND partition, skipping bad blocks and making full use of
the partition blocks.
To trigger this mechanism in Linux tools (fw_printenv/fw_setenv) the
configuration file /etc/fw_env.config must have both copies entries
pointing to the same offset.
This commit substitutes the hardcoded configuration file for CC6UL with a
stub and generates one on an RPM post-script basing on:
- Supplied DEY variables (with default values per platform):
- UBOOT_ENV_OFFSET: starting offset of the environment within the
partition.
- UBOOT_ENV_SIZE: size of each copy of the environment.
- UBOOT_ENV_RANGE: size in the partition that the environment copies may
occupy, starting from UBOOT_ENV_OFFSET. If undefined, the whole
partition is used.
- Calculated values:
- NAND Erase block size
- Number of blocks available for the environment copies
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-4256
This library adds support to use the Atmel CryptoAuth device available
in the ConnectCore 6UL.
https://jira.digi.com/browse/DEL-4284
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
Add support to build U-Boot for variants with 1GB DDR3.
Add support in U-Boot install firmware script to select the
U-Boot artifact to use basing on variant.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-3970