[PATCH v5 10/16] buildman: Detect binman reporting missing blobs

Tom Rini trini at konsulko.com
Tue Dec 6 00:34:59 CET 2022


On Mon, Dec 05, 2022 at 11:29:30PM +0000, Peter Robinson wrote:
> On Mon, Dec 5, 2022 at 11:23 PM Tom Rini <trini at konsulko.com> wrote:
> >
> > On Mon, Dec 05, 2022 at 11:13:03PM +0000, Peter Robinson wrote:
> > > On Thu, Nov 10, 2022 at 2:17 AM Simon Glass <sjg at chromium.org> wrote:
> > > >
> > > > Buildman should consider a build as a success (with warnings) if missing
> > > > blobs have been dealt with by binman, even though buildman itself returns
> > > > and error code overall. This is how other warnings are dealt with.
> > > >
> > > > We cannot easily access the 103 exit code, so detect the problem in the
> > > > output.
> > > >
> > > > With this change, missing blobs result in an exit code of 101, although
> > > > they still indicate failure.
> > >
> > > So either this or Tom's change of "buildman: Add --allow-missing flag
> > > to allow missing blobs" has broken rc3 builds for Allwinner boards on
> > > Fedora. Tom's isn't a clean revert and I've not had time to test that
> > > but either way the SCP firmware is optional and it works just fine,
> > > ATM we don't have the SCP firmware available to Fedora builds.
> > >
> > > Maybe that sort of of change to the build is expected but which ever
> > > patch it is, and adding "BINMAN_ALLOW_MISSING=1" changes the error but
> > > doesn't change the overall failure, I wouldn't expect this sort of
> > > breakage so late in the cycle.
> > >
> > > Do either of you know which one does the hard breakage here? I thought
> > > I'd highlight it now because I don't have time over the next two weeks
> > > to fully investigate the regression.
> >
> > So, is this for 32bit or 64bit? I only have a 64bit allwinner in my lab
> 
> 64 bit, 32 bit is EOL in Fedora as of F-36.
> 
> > and it needs (I've been assuming, since I'm also passing in SCP) BL31 as
> 
> BL31 isn't the same as SCP, the later is a firmware for the onboard
> PMIC co-processor where as BL31 is Arm Trusted Firmware.

Right, yes.

> > well.  And since you're mentioning buildman, I assume Fedora IS using
> > that rather than make to build everything. I'll go and think about this
> 
> I'm using:
> make pine64_plus_defconfig O=builds/pine64_plus/
> cp /usr/share/arm-trusted-firmware/sun50i_a64/bl31.bin builds/pine64_plus/
> make CROSS_COMPILE="/usr/bin/aarch64-linux-gnu-" O=builds/pine64_plus/

OK, that's a little different than how I run make, that's why it wasn't
caught at least.  I do:
export SCP=/home/trini/work/u-boot/external-binaries/pine64_plus/scp.bin
export BL31=/home/trini/work/u-boot/external-binaries/pine64_plus/bl31.bin
make O=/tmp/pine64_plus pine64_plus_defconfig all -sj$(nproc)

> I thought binman was basically default for this now.

We have too many *man tools sometimes. I thought you said buildman, yes,
binman assembles the images here, when invoking make.  Digging more now,
thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20221205/4b4463eb/attachment.sig>


More information about the U-Boot mailing list