[PATCH u-boot-marvell 0/7] tools: kwbimage: Support for parsing extended v0 format

Pali Rohár pali at kernel.org
Thu Feb 17 10:18:07 CET 2022


On Thursday 17 February 2022 08:10:57 Stefan Roese wrote:
> Hi Pali,
> 
> On 2/15/22 19:59, Pali Rohár wrote:
> > This patch series extends kwbimage v0 format support by providing
> > ability to dump content of Dove boot images (extension of v0 format).
> > It also fixes recognition of these images in kwboot utility (as it uses
> > macros and inline functions from kwbimage.h header file).
> 
> This patchset seems to cause some problems with world / azure building.
> Please see here for details:
> 
> https://dev.azure.com/sr0718/u-boot/_build/results?buildId=159&view=results
> 
> Could you please take a look and address this issue?

  In file included from tools/kwbimage.c:22:
  include/asm-generic/bitops/fls.h:12:8: error: unknown type name '__always_inline'
  static __always_inline int fls(int x)
         ^
    HOSTCC  tools/omapimage.o
  1 error generated.

It looks like that it is not possible to use fls() function from
U-Boot bitops/fls.h header file. I will rewrite code to not use that
header file.

> Thanks,
> Stefan
> 
> > Implementation is based on 88AP510 Functional Specifications,
> > Chapter 5.2 Boot Image Format, which is publicly available at:
> > https://web.archive.org/web/20120130172443/https://www.marvell.com/application-processors/armada-500/assets/Armada-510-Functional-Spec.pdf
> > 
> > Printing information about image.kwb is possible by:
> > 
> >    $ ./tools/dumpimage -l image.kwb
> > 
> > Dumping image.kwb is possible by commands:
> > 
> >    $ ./tools/dumpimage -T kwbimage -p -1 -o image.cfg image.kwb
> >    $ ./tools/dumpimage -T kwbimage -p 0 -o data.bin image.kwb
> >    $ ./tools/dumpimage -T kwbimage -p 1 -o binary1.bin image.kwb
> >    $ ./tools/dumpimage -T kwbimage -p 2 -o binary2.bin image.kwb
> >      ...
> >      (where -p N is Nth binary executable header, e.g. SPL)
> > 
> > Dove images contains more sections which in config file begins with line
> > "MATCH ADDRESS 0xaddr MASK 0xmask VALUE 0xval" and means that section is
> > executed only when check ((readl(addr) & mask) == (val & mask)) passes.
> > 
> > Support for generating these kind of images is not provided.
> > I hope that this patch series helps somebody else to implement it.
> > 
> > Pali Rohár (7):
> >    tools: kwbimage: Define structures for extended kwbimage v0 headers
> >    tools: kwbimage: Fix calculating size of kwbimage v0 header
> >    tools: kwbimage: Add support for dumping extended and binary v0
> >      headers
> >    tools: kwbimage: Do not show mkimage error message in dumpimage
> >    tools: kwbimage: Add support for NAND_BLKSZ and NAND_BADBLK_LOCATION
> >      for v0 images
> >    tools: kwbimage: Fix help how to extract DDR3 training code
> >    tools: kwbimage: Add me as an author of kwbimage
> > 
> >   tools/kwbimage.c | 139 ++++++++++++++++++++++++++++++++++++++++++-----
> >   tools/kwbimage.h | 116 +++++++++++++++++++++++++++++++++++----
> >   2 files changed, 231 insertions(+), 24 deletions(-)
> > 
> 
> Viele Grüße,
> Stefan Roese
> 
> -- 
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de


More information about the U-Boot mailing list