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

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


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).

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.


Changes in v2:
* Implement custom function fls4() as it is not possible to use U-Boot's
  fls() from asm-generic/bitsops/fls.h file when compling for Mac or Win.

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 | 152 ++++++++++++++++++++++++++++++++++++++++++-----
 tools/kwbimage.h | 116 ++++++++++++++++++++++++++++++++----
 2 files changed, 244 insertions(+), 24 deletions(-)

-- 
2.20.1



More information about the U-Boot mailing list