rockbox/utils/imxtools/sbtools
Amaury Pouly 7c9e7ec707 sbtools: add option to force sb dump
In the case of encrypted SB files without any key match, it is
still possible to dump the section headers. The force option
allows one to do so. It also allows to dump unencrypted sections
of encrypted files if there are some.

Change-Id: I36280230679ac5903f9c451c68c276f5c6959536
2012-06-27 14:55:58 +02:00
..
aes128.c
crc.c
crypto.c
crypto.h
dbparser.c
dbparser.h
elf.c
elf.h
elftosb.c
fuze+_key_file.txt
Makefile
misc.c sbtools: add option to force sb dump 2012-06-27 14:55:58 +02:00
misc.h sbtools: add option to force sb dump 2012-06-27 14:55:58 +02:00
README
sb.c sbtools: add option to force sb dump 2012-06-27 14:55:58 +02:00
sb.h
sbloader.c imxtools: move tools to a new sbtools/ subdirectory 2012-05-31 13:57:25 +02:00
sbtoelf.c sbtools: add option to force sb dump 2012-06-27 14:55:58 +02:00
sha1.c

This file document the format of the command file used by the elftosb tool.
By no way our tools tries to be compatible with Freescale's elftosb2.
However, our format is more subset of the general one.

The parse supports a limited form of comments: comments starting with // and ending at the end of the line.

A file first contains the list of sources:

sources
{
    hw_init = "sdram_init.elf";
    rockbox = "rockbox.elf";
}

It can then contain an arbitrary number of section. A section is identified by a number.
Within a section, three commands are supported: "load", "jump" and "call":

section(0x626f6f74) // hex for 'boot'
{
    load hw_init;
    call hw_init;
    load rockbox;
    jump rockbox;
}

Finally, both elftosb and sbtoelf tools use key files. A key file is a list of keys.
Each key consist is 128-bit long and is written in hexadecimal:

00000000000000000000000000000000

The parser does not handle blank line and only allows a final newline at the end of the file.
A file is allowed to contain zero (0) keys.