[OE-core] Why does building an image for machine X delete the bootloader for machine Y?

Paul Eggleton paul.eggleton at linux.intel.com
Wed Nov 26 14:57:48 UTC 2014


On Wednesday 26 November 2014 14:20:46 Mike Looijmans wrote:
> On 11/26/2014 12:31 PM, Paul Eggleton wrote:
> > Hi Mike,
> > 
> > On Wednesday 26 November 2014 09:19:13 Mike Looijmans wrote:
> >> I do a:
> >> 
> >> MACHINE=X bitbake my-image
> >> 
> >> This DEPENDS on a virtual bootloader, which will produce a BOOT.BIN file
> >> in
> >> the deploy directory, which is tmp-glibc/deploy.images/X/
> >> 
> >> If I then do a:
> >> 
> >> MACHINE=Y bitbake my-image
> >> 
> >> the BOOT.BIN in tmp-glibc/deploy.images/X/ is suddenly gone!
> >> 
> >> If i do a
> >> 
> >> MACHINE=X bitbake my-image
> >> 
> >> then the the BOOT.BIN in tmp-glibc/deploy.images/Y/ is suddenly gone, and
> >> the one for the X machine appears again. The bootloader recipe is not
> >> being
> >> rebuilt at all.
> >> 
> >> The machines have the same MACHINE_ARCH, they differ on only minor points
> >> (the FPGA).
> >> 
> >> What is going on here?
> > 
> > I can't be sure, but my guess is the recipe is not marked as being
> > machine-
> > specific (i.e. PACKAGE_ARCH is not set to "${MACHINE_ARCH}" - is that the
> > case?) but there is still some variable dependency on a variable that has
> > a machine-specific value. If it's not obvious from the recipe, check if
> > there are two sets of tasks for the bootloader recipe in the sstate
> > cache, and then use bitbake-diffsigs to compare the sigdata/siginfo
> > files.
> 
> MACHINE is actually "topic-miami-florida-med-xc7z015" or
> "topic-miami-florida-med-xc7z030"
> 
> Both machines have MACHINE_ARCH = "topic_miami_florida_med" since they only
> differ in the FPGA subsystem, but share all the rest (kernel, bootloader,
> etc).
> 
> Is it forbidden to share $MACHINE_ARCH between $MACHINEs? (And if so, why
> does MACHINE_ARCH even exist?)

I don't know for sure, but I don't think that is forbidden. I'm not sure 
that's the issue here though.

> The BSP layer for the topic-miami machines is here (yes, you can build OE or
> Yocto images with it, but I have yet some more work to do to make it a
> proper BSP...):
> https://github.com/topic-embedded-products/meta-topic

Is it u-boot that's the actual bootloader we are talking about here?

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the Openembedded-core mailing list