[PATCH v4 1/4] binman: Add nxp_imx8mcst etype for i.MX8M flash.bin signing

Simon Glass sjg at chromium.org
Thu Jun 27 10:19:13 CEST 2024


Hi Marek,

On Tue, 18 Jun 2024 at 16:30, Marek Vasut <marex at denx.de> wrote:
>
> On 6/18/24 2:43 PM, Simon Glass wrote:
> > Hi again,
> >
> > On Tue, 11 Jun 2024 at 12:51, Simon Glass <sjg at chromium.org> wrote:
> >>
> >> Hi,
> >>
> >> On Fri, 24 May 2024 at 10:26, Fabio Estevam <festevam at gmail.com> wrote:
> >>>
> >>> On Tue, May 21, 2024 at 7:48 AM Marek Vasut <marex at denx.de> wrote:
> >>>>
> >>>> Add new binman etype which allows signing both the SPL and fitImage sections
> >>>> of i.MX8M flash.bin using CST. There are multiple DT properties which govern
> >>>> the signing process, nxp,loader-address is the only mandatory one which sets
> >>>> the SPL signature start address without the imx8mimage header, this should be
> >>>> SPL text base. The key material can be configured using optional DT properties
> >>>> nxp,srk-table, nxp,csf-crt, nxp,img-crt, all of which default the key material
> >>>> names generated by CST tool scripts. The nxp,unlock property can be used to
> >>>> unlock CAAM access in SPL section.
> >>>>
> >>>> Reviewed-by: Tim Harvey <tharvey at gateworks.com>
> >>>> Signed-off-by: Marek Vasut <marex at denx.de>
> >>>
> >>> Applied the series, thanks.
> >>
> >> This lacks tests - can you please add sufficient tests in ftest.py to
> >> get the cover coverage back to 100%? Please try 'binman test -T' to
> >> see this.
> >
> > Any thoughts on this, please? At present -master is broken for one
> > file and -next has three problems.
>
> It is in the pipeline.
>
> What exactly is the error you observe ?
>
> When I run binman test -T , I get a lot of output, but no error reports?

Sorry I somehow missed this email.

The tests are in ftest.py - there are lots of examples, e.g.
testXilinxBootgenSigning() - commit d8a2d3b29

Basically you need to create a test .dts file that uses your entry
type, then use it in the test code. You can check error handling as
well, e.g. by having an invalid dts too if needed.

If you run 'binman test -T' you will see the code-coverage problem.
You may need to fetch tools with 'binman tool -f missing' to get all
the tools*:

Coverage error: 96%, but should be 100%
ValueError: Test coverage failure

It is normally much easier to add an etype using a test than to test
it by using it 'for real', since you don't need to worry about the
U-Boot integration.

* There are some annoying things though, such as mkeficapsule being
old in the u-boot-tools package so not supporting the tests properly.
Also testTIBoardConfigLint needs 'pip install yamllint'

Regards,
Simon


More information about the U-Boot mailing list