Hi Heiko, On Wed, 5 Jan 2022 at 05:58, Heiko Thiery <heiko.thi...@gmail.com> wrote: > > While converting to binman for an imx8mq board, it has been found that > building in the u-boot CI fails. This is because an imx8mq requires an > external binary (signed_hdmi_imx8m.bin). If this file cannot be found > mkimage fails. > To be able to build this board in the u-boot CI a binman option > (--fake-ext-blobs) is introduced that can be switched on via the u-boot > makefile option BINMAN_FAKE_EXT_BLOBS. With that the needed dummy files are > created. > > Signed-off-by: Heiko Thiery <heiko.thi...@gmail.com> > --- > v3: > - add CheckFakedBlobs() and print a list of faked files at the end > - add unittest > > v2: > - pass allow_fake_blobs to ProcessImage() > - set AllowAllowFakeBlob() to images/entries > - create fake blob in Entry_blot.ObtainContents() when file is missing and > creation is allowed > > still missing: > - unittest > - option to set BINMAN_FAKE_EXT_BLOBS in Makefile via environment > variable. With that we could simply set this env variable in the CI > (gitlab-ci.yml) with adding support to buildman. > > Makefile | 1 + > tools/binman/cmdline.py | 2 ++ > tools/binman/control.py | 26 +++++++++++++++++++------- > tools/binman/entry.py | 23 +++++++++++++++++++++++ > tools/binman/etype/blob.py | 18 ++++++++++++++++++ > tools/binman/etype/blob_ext.py | 8 ++++++++ > tools/binman/etype/mkimage.py | 20 ++++++++++++++++++++ > tools/binman/etype/section.py | 20 ++++++++++++++++++++ > tools/binman/ftest.py | 13 ++++++++++++- > tools/binman/test/203_fake_blob.dts | 14 ++++++++++++++ > 10 files changed, 137 insertions(+), 8 deletions(-) > create mode 100644 tools/binman/test/203_fake_blob.dts
Please check that you keep to 80cols, except where it would split a string. This is missing a few holes in test coverage. Did you try 'binman test -T' ? If you are stuck I could fiddle with it a bit. Regards, Simon