U-boot configuration in Yocto Project

cancel
Showing results for 
Search instead for 
Did you mean: 

U-boot configuration in Yocto Project

Jump to solution
390 Views
Contributor III

Hi all,

    I’m building Yocto project from https://source.codeaurora.org/external/imx/imx-manifest/tree/imx-4.19.35-1.1.0.xml?h=imx-linux-warri... with mender for iMX 6UL EVK.

    Here u-boot consists of two parts (SPL & u-boot.img) rather than the single file u-boot-dtb.imx. It produces headache while integrating mender into the build or while signing the u-boot.

NOTE: generated images are listed in the attached picture

    I would like to know how & where to change the Yocto project build in order to produce the single .imx file. Any help would be much appreciated & thanks in advance.

    

Labels (3)
1 Solution
203 Views
Contributor III

Thanks gusarambula‌,

 We managed to resolve it by changing the wks file used to build the .wic.gz image. Now our MACHINE.conf(conf/machine/imx6ulevk.conf) looks like,

UBOOT_SUFFIX = "imx"
# SPL_BINARY = "SPL"
WKS_FILE = "imx-uboot-bootpart.wks.in"

So, it now uses the single, produced .imx image. Sorry about not mentioning it earlier!

View solution in original post

0 Kudos
4 Replies
203 Views
NXP TechSupport
NXP TechSupport

Hello Kanimozhi Thangappan,

I do not have experience with Mender so I do not know how it may affect Yocto’s behavior, if it does.

As for the .imx bootloader file, it is generated by the imx-mkimage package, specifically the imx-boot recipe which is called bu the u-boot-imx recipe. Are you using u-boot-imx to generate the bootloader? This should be the preferred u-boot for the imx6ulevk MACHINE but I checked the imx6ulevk.conf file and it’s not specified so maybe just adding it may do the trick.

Ty opening the imx6ulevk configuration file:

imx-yocto-bsp/sources/meta-fsl-bsp-release/imx/meta-bsp/conf/machine/imx6ulevk.conf

And adding:

PREFERRED_PROVIDER_u-boot = "u-boot-imx"

And then bake the bootloader or image again.

I hope this helps!

Regards,

203 Views
Contributor III

Hey gusarambula‌,

    Thanks for your insights! I successfully changed the u-boot provider and able to build u-boot but when I attempted to build core-image-base image I encountered the below error.

test_yocto/test_build/tmp/work/imx6ulevk-fslc-linux-gnueabi/core-image-base/1.0-r0/temp/log.do_image_wic.596

ERROR: Function failed: do_image_wic (log file is located at /home/ux/test_yocto/test_build/tmp/work/imx6ulevk-fslc-linux-gnueabi/core-image-base/1.0-r0/temp/log.do_image_wic.596)
ERROR: Task (/home/ux/test_yocto/sources/poky/meta/recipes-core/images/core-image-base.bb:do_image_wic) failed with exit code '1'

    The reason is that do_wic_image expects imx6ulevk/SPL and there's no such file. Can you help me to resolve this error, so that the base image will use the produced .imx file to boot??

NOTE: The detailed log is attached here: imx6/do_image_wic.log at master · danie007/imx6 · GitHub 

0 Kudos
203 Views
NXP TechSupport
NXP TechSupport

Hello Kanimozhi Thangappan,

I found another similar case on the communities for other kernel but the same MACHINE so I’m suspecting there may be other omissions on the machine configuration. I’ll try to reproduce and escalate this issue and I ‘will let you know as soon as I have more information.

Regards,

204 Views
Contributor III

Thanks gusarambula‌,

 We managed to resolve it by changing the wks file used to build the .wic.gz image. Now our MACHINE.conf(conf/machine/imx6ulevk.conf) looks like,

UBOOT_SUFFIX = "imx"
# SPL_BINARY = "SPL"
WKS_FILE = "imx-uboot-bootpart.wks.in"

So, it now uses the single, produced .imx image. Sorry about not mentioning it earlier!

View solution in original post

0 Kudos