Amaury Pouly | b6a6809 | 2011-04-17 23:40:14 +0000 | [diff] [blame] | 1 | This file document the format of the command file used by the elftosb tool. |
| 2 | By no way our tools tries to be compatible with Freescale's elftosb2. |
| 3 | However, our format is more subset of the general one. |
| 4 | |
| 5 | The parse supports a limited form of comments: comments starting with // and ending at the end of the line. |
| 6 | |
| 7 | A file first contains the list of sources: |
| 8 | |
| 9 | sources |
| 10 | { |
| 11 | hw_init = "sdram_init.elf"; |
| 12 | rockbox = "rockbox.elf"; |
| 13 | } |
| 14 | |
| 15 | It can then contain an arbitrary number of section. A section is identified by a number. |
| 16 | Within a section, three commands are supported: "load", "jump" and "call": |
| 17 | |
| 18 | section(0x626f6f74) // hex for 'boot' |
| 19 | { |
| 20 | load hw_init; |
| 21 | call hw_init; |
| 22 | load rockbox; |
| 23 | jump rockbox; |
| 24 | } |
| 25 | |
| 26 | Finally, both elftosb and sbtoelf tools use key files. A key file is a list of keys. |
| 27 | Each key consist is 128-bit long and is written in hexadecimal: |
| 28 | |
| 29 | 00000000000000000000000000000000 |
| 30 | |
| 31 | The parser does not handle blank line and only allows a final newline at the end of the file. |
| 32 | A file is allowed to contain zero (0) keys. |