On 2/17/22 10:43, 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).

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


Applied to u-boot-marvell/master

Thanks,
Stefan

Reply via email to