Some platforms do not support signing external artifacts (kernel, dtb,
etc.) yet, so we need to decouple the signing of the bootloader from the
signing of the external artifacts.
This commit generalizes the code, so instead of having platform exceptions
scattered along the recipes, we create a new variable used conditionally
to sign or not the external artifacts.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This branch contains the latest BSP changes from STM's v5.15-stm32mp-r2.1
release.
https://onedigi.atlassian.net/browse/DEL-8659
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The btnxpuart driver is used for the bluetooth chip. We want to control
when to load and unload it, and when power/unpower the chip.
Therefore, blacklist it, so we can manage it in our scripts.
https://onedigi.atlassian.net/browse/DEL-8632
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
The only user of 'linux-dey-src.inc' was the linux recipe itself, so
instead rename that file to a more generic 'linux-dey.inc' and include
more common code in that renamed file.
This is in preparation for the new linux 6.1.1 recipe for the ccimx93.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
For the moment, do not sign aditional artifacts, such as the ramdisk,
the kernel or the boot scripts for STM platforms.
In the specific case of the ramdisk, simply copy it over with the
expected filename extension.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Certain platforms share a processor family but need to be differentiated
between them. DEY was using the variable DIGI_FAMILY as the SOM name
rather than the family. It becomes useful to have both (DIGI_SOM as the
more specific, and DIGI_FAMILY as the more generic).
This is the case, for example, of:
- ccmp1 (family)
- ccmp15 (SOM)
- ccmp13 (SOM)
- ccimx8m (family)
- ccimx8mm (SOM)
- ccimx8mn (SOM)
Both variables are used on the machine overrides.
Where DIGI_FAMILY was used, use now DIGI_SOM.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
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>
Symbols are needed for DTB overlays. In the CC6UL we are not using
overlays, so disable symbols generation.
https://onedigi.atlassian.net/browse/DEL-8397
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Also enable recipe for ccimx93, and pass the correct DTC flags to create
overlays capable DTBs.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
For development this would not be needed as it points to AUTOREV, but
for releases we need to specify the SHA1 revision, and this recipe
builds two different branches (for NXP and STM platforms), so we need a
place to define two different revisions.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The SRCREV may change depending on the version of the kernel, so it
cannot be a common variable for all kernel versions.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Use the canonical Stash repository to avoid synchronization problems
between the repo and the mirror.
Moreover the LOG mirror is hosted in an old VM machine with limited
specs, and although the transfer of the objects is faster, the counting
of the objects to transfer (which is done in the server) takes ages to
complete, so at the end, there is no time gain using the mirror.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Commit 8cba3aaefb in 'meta-freescale' changed the kernel_localversion
function we are using in our kernel recipe. This leads to a not-properly
configured kernel build, where CONFIG_MODULES is disabled. That
config option is needed to build external kernel modules in other
recipes, so those recipes (kernel-module-qualcomm, cryptodev-module,
etc) fail to build.
The commit makes sure the kernel is properly configured for building by
extending the do_configure function in a "prepend".
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
It's just a waste of space as we already have the kernel image in the
'linux' partition and that gets mounted under /mnt/linux.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Remove deprecated versions of recipes updated in other general layers
(poky, meta-openembedded). Also remove duplicated IMX specific recipes that
are available in other BSP layers (meta-freescale, meta-fsl-demos, etc).
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This commit avoids creating a subfolder for the kernel artifacts, to homogenize
it with the NXP platforms and avoid using custom recipes for the result
artifacts.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
The license checksum and the source branch should be on the properly
versioned bitbake recipes. Otherwise, when we include this common file
in a different version linux recipe (for example, the upcoming 5.10) it
will inherit incorrect values.
While on it, fix the incorrect license checksum values for the linux 5.4
recipes.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
- Add the '-m' parameter. Without it, the script doesn't
generate the output merged configuration file, and the
fragments are not applied.
- Fix the if condition. The '*.cfg' expands to a list of
files, but the '-f' only admits one parameter. Use instead
the Python find_cfgs() function.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
This allows users to apply small changes to our kernel configuration without
having to create a completely new defconfig. Use a simplified version of the
kernel-yocto.bbclass implementation.
https://onedigi.atlassian.net/browse/DEL-6706
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Enabling DIGI_INTERNAL_GIT defaults to LOG server. The build from local
MTK Digi server was broken.
Fix uboot and linux recipes declaring different repo paths depending on
whether the local remote is LOG or MTK.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Commit ffeb0556("classes: fsl-kernel-localversion: Fix task dependency") in
meta-freescale layer fixes a task dependency issue, so do_preconfigure() was
renamed to do_kernel_localversion().
https://jira.digi.com/browse/DEL-7508
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Remove all v4.9 recipes and build Linux using the same branch on all platforms.
The .inc files were only needed because of the existence of multiple Linux
versions, but that's not the case anymore, so remove them.
https://jira.digi.com/browse/DEL-7221
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The signing script is used for signing multiple artifacts, not just the
kernel, so rename it for a broader use.
https://jira.digi.com/browse/DEL-7047
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
Signing with AHAB mode only requires an additional prior step, so
reuse as much code as possible.
Also, for Image.gz images, sign the uncompressed Image and later
compress the result.
https://jira.digi.com/browse/DEL-7047
Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@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>
Added rsync to the native dependencies, since it is used during
header install to prevent a build issue.
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>
In meta-freescale was renamed the linux-imx-headers recipe with the
full linux kernel version "4.14.98". With that change our custom
recipe from meta-digi is not selected. This commit reuses the recipe
from meta-freescale layer and modifies it.
https://jira.digi.com/browse/DEL-7001
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Digi Embedded Yocto 2.6-r3.1
Manually changed recipes to use the master branches instead of the fixed SHA1
from the last release.
Signed-off-by: Mike Engel <mike.engel@digi.com>
This commit adds some dependencies to include the imx-mkimage package
that is needed to use the mkimage_imx8 tool.
Signed-off-by: Mike Engel <Mike.Engel@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>
Otherwise, users that are behind corporate firewalls might not be able to
obtain the package sources.
https://jira.digi.com/browse/DEL-6663
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
All the dependencies of the required symbols are also added.
These are easier to mantain and enable the minimum support. If extra
features are required they shuold be explicitly added.
https://jira.digi.com/browse/DEL-6681
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
When using virtualization, ammend the kernel configuration so that docker
is supported.
https://jira.digi.com/browse/DEL-6681
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
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>
The new development branch is based on NXP's v4.14.98 BSP.
https://jira.digi.com/browse/DEL-6603
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This recipe's package is meant for packages that require NXP-specific linux
headers.
https://jira.digi.com/browse/DEL-6603
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Digi Embedded Yocto 2.6-r1.3
Manually changed recipes to use the master branches instead of the fixed SHA1
from the last release.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
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>
Device tree files no longer have the kernel type prefixed to their name, so the
trustfence_sign() function must be updated to reflect this change or else
errors will occur.
https://jira.digi.com/browse/DEL-6476
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
KERNEL_IMAGE_BASE_NAME was replaced by KERNEL_IMAGE_NAME for
consistency between variable names.
https://jira.digi.com/browse/DEL-6443
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
new version allows building multiple flavors of the kernel and
module packages by templatizing kernel package names via a new
KERNEL_PACKAGE_NAME variable in kernel.bbclass.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This error only appears when the build host does not have the openssl
development libraries (libssl-dev) installed. If they are, the build
process will use them.
The error is:
|
/home/builder/jenkins/workspace/dey-rocko-use-mainline-bsp/projects/ccimx6ulsbc/tmp/work-shared/ccimx6ulsbc/kernel-source/scripts/extract-cert.c:21:25:
fatal error: openssl/bio.h: No such file or directory
| compilation terminated.
| scripts/Makefile.host:90: recipe for target 'scripts/extract-cert'
failed
| make[3]: *** [scripts/extract-cert] Error 1
| make[3]: *** Waiting for unfinished jobs....
This commit makes openssl-native a dependency and passes the include
path to the build.
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
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>
Digi Embedded Yocto 2.4-r2.4-beta
Manually changed recipes to use the master branches instead of the
fixed SHA1 from the last release.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>