U-boot integration for Mender on Colibri IMX6ULL

Hi I have been trying to get Mender to work together with the IMX6ULL but I have a problem with the U-Boot integration. When compiling for U-boot i get the following warning:

WARNING: No bb files matched BBFILE_PATTERN_meta-toradex-distro '...build/../layers/meta-toradex-distro/'

This gives the following error, killing the build process.

ERROR: Task do_patch in ...build/../layers/meta-mender/meta-mender-core/recipes-bsp/u-boot/u-boot-fw-utils-mender-auto-provided_1.0.bb depends upon non-existent task do_mender_tar_src in ...build/../layers/meta-freescale-3rdparty/recipes-bsp/u-boot/u-boot-toradex_2016.11.bb
ERROR: Command execution failed: 1

I’ve tried both your Rocko branch and the new bleeding edge Thud branch with mender 1.7+, but it is the same problem regardless. Is there any known way to solve this problem?

Best Regards Martin

Hello @Masj and Welcome to the Toradex Community!

Could you provide the Software version of your module?

When compiling for U-boot i get the following warning: WARNING: No bb files matched BBFILE_PATTERN_meta-toradex-distro ‘…build/…/layers/meta-toradex-distro/’

Which branch did you compile? Could you share your changes before you launched the compilation?
Please share also a complete error log including the build commands?

Thanks and best regards,
Jaski

I’ve tried several branched with the same result [ Rocko, Rocko-Next as well as Thud-next “LinuxImage3.0-next” ]

I’ve done the following changes to the default layer I’ve added Meta-Mender from menders own git into the layers directory

[ local.conf ]

Changed the machine to my current card

MACHINE ?= "colibri-imx6ull"

Made the project inherit mender-full-ubi which is required for flash storage devices.

INHERIT += " mender-full"
INHERIT += " mender-full-ubi"
Accepts EULA
ACCEPT_FSL_EULA = "1"

Sets required mender features, it compiles fine with grub but gets the above mentioned failure
when enabling -uboot and -ubi

MENDER_FEATURES_ENABLE_append = " mender-uboot mender-image-ubi"
MENDER_FEATURES_DISABLE_append = " mender-grub mender-image-sd mender-image-uefi"

Sets artifact name

MENDER_ARTIFACT_NAME = "mender1"

Sets storage device, mtd requires -ubi as I want to use the internal flash as storage device.

MENDER_STORAGE_DEVICE = "/dev/mtd"
MENDER_STORAGE_TOTAL_SIZE_MB = "512"

I’ve just followed the tutorial on this point.

MENDER_BOOT_PART_SIZE_MB ?= "16"
MENDER_DATA_PART_SIZE_MB ?= "64"
IMAGE_FSTYPES_append = " dataimg"

This is required for -ubi mode but not sure if this is correct.

MENDER_MTDIDS = "nand0=gpmi-nand.flash"

Prefered provider u-boot-toradex

PREFERRED_PROVIDER_u-boot-fw-utils = "u-boot-toradex-fsl-fw-utils"
PREFERRED_RPROVIDER_u-boot-fw-utils = "u-boot-toradex-fsl-fw-utils"

[ bblayer.conf ]

I have also added this line to apply mender-core

${TOPDIR}/../layers/meta-mender/meta-mender-core \

[ bitbake ]
I have tried for trying out purposes, I also have my custom layer but it’s based on the console-tdx-image

MACHINE=colibri-imx6ull bitbake console-tdx-image
bitbake console-tdx-image

If there is anything more you need I’ll gladly provide you with more information!
With best regards
Martin Sjödin Jonsson

You may want to look at the following which shows the integration for Colibri iMX7:

https://mender.io/blog/mender-ota-integration-with-toradex-colibri-imx7

Please note that -next branches are not supported.

@Masj Did you solve the problem?