[OE-core] [PATCH] u-boot: Upgrade from 2019.01 to 2019.04

Alistair Francis alistair23 at gmail.com
Thu Apr 11 17:32:12 UTC 2019


On Thu, Apr 11, 2019 at 10:27 AM Denys Dmytriyenko <denis at denix.org> wrote:
>
> On Thu, Apr 11, 2019 at 09:27:32AM +0100, Richard Purdie wrote:
> > On Wed, 2019-04-10 at 17:23 +0000, Alistair Francis wrote:
> > > Signed-off-by: Alistair Francis <alistair.francis at wdc.com>
> > > ---
> > >  meta/recipes-bsp/u-boot/u-boot-common.inc                       | 2
> > > +-
> > >  .../{u-boot-fw-utils_2019.01.bb => u-boot-fw-utils_2019.04.bb}  | 0
> > >  .../u-boot/{u-boot-tools_2019.01.bb => u-boot-tools_2019.04.bb} | 0
> > >  .../recipes-bsp/u-boot/{u-boot_2019.01.bb => u-boot_2019.04.bb} | 0
> > >  4 files changed, 1 insertion(+), 1 deletion(-)
> > >  rename meta/recipes-bsp/u-boot/{u-boot-fw-utils_2019.01.bb => u-
> > > boot-fw-utils_2019.04.bb} (100%)
> > >  rename meta/recipes-bsp/u-boot/{u-boot-tools_2019.01.bb => u-boot-
> > > tools_2019.04.bb} (100%)
> > >  rename meta/recipes-bsp/u-boot/{u-boot_2019.01.bb => u-
> > > boot_2019.04.bb} (100%)
> >
> > Breaks beaglebone-yocto:
> >
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/490
> > https://autobuilder.yoctoproject.org/typhoon/#/builders/46/builds/489
>
> Richard,
>
> This is quite interesting and surprisingly timely for me! Let me explain.
>
> Both of the above errors are not really specific to beaglebone or even u-boot.
> In both cases, the failure is this:
>
> | ERROR: _exec_cmd: install -m 0644 -D /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/deploy/images/beaglebone-yocto/u-boot.img /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-sato-sdk-ptest/1.0-r0/deploy-core-image-sato-sdk-ptest-image-complete/core-image-sato-sdk-ptest-beaglebone-yocto-20190410232147/tmp.wic.4xf3vi9f/boot.1/u-boot.img returned '1' instead of 0
> | output: install: cannot stat '/home/pokybuild/yocto-worker/beaglebone/build/build/tmp/deploy/images/beaglebone-yocto/u-boot.img': No such file or directory
> | ERROR: Function failed: do_image_wic (log file is located at /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-sato-sdk-ptest/1.0-r0/temp/log.do_image_wic.41960)
>
> I recently received exactly the same error report internally and have been
> investigating it. Though it is against Thud, for a different platform and with
> our own u-boot from meta-ti.
>
> It seems to be a race condition - wic is trying to assemble an image when
> u-boot binary is not yet ready. Usually on subsequent rebuilds when u-boot
> needs to be rebuilt, but everything else is already available.
>
> Packaging for wic is set with IMAGE_BOOT_FILES = "u-boot.img", but the build
> dependency is special, as u-boot is not part of rootfs and is being set by
> EXTRA_IMAGEDEPENDS = "u-boot":
> http://git.yoctoproject.org/cgit/cgit.cgi/meta-yocto/tree/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf
>
> Since wic jumps right into packaging u-boot.img and doesn't wait for it to
> finish building/installing/deploying, it seems EXTRA_IMAGEDEPENDS is broken.
> But it used to work prior to Thud. It appears it may have been broken here:
> https://git.openembedded.org/openembedded-core/commit/?id=b54cdaea7844ee3bf0c39eb97cc7c4c17ed5818c
>
> While the above commit deals with licenses and manifests, removal of these
> lines is not clear:
>
> -    extra_depends = d.getVar("EXTRA_IMAGEDEPENDS")
> -    boot_depends = get_boot_dependencies(d)
> -    depends.extend(extra_depends.split())
> -    depends.extend(boot_depends)
> -    depends = list(set(depends))
>
> Could it have affected boot dependencies and EXTRA_IMAGEDEPENDS behavior?
> Please let me know if you need any more details. Thanks.

Interesting. I just managed to reproduce a build failure for the
beaglebone based on this patch. My build fail wasn't because of the
missing u-boot.img file like in the buildbot error but instead due to
an incorrect config file.

I have sent a patch with you both in CC that fixes the missing config
"beaglebone-yocto: Update u-boot config to match u-boot 19.04".
Without that patch u-boot 19.04 doesn't even compile, so I'm not sure
how the buildbot got far enough to complain about a missing .img file.

After reading your email it makes more sense. It does seem like wic is
trying to package the u-boot.img file too early.

Either way the "beaglebone-yocto: Update u-boot config to match u-boot
19.04" patch should be applied at the same time as this patch.

Alistair

>
> --
> Denys
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


More information about the Openembedded-core mailing list