Commit graph

79 commits

Author SHA1 Message Date
Amaury Pouly
5b00e59614 imxtools/sbtools: fix file type detection
Change-Id: I872e98f5810df3ecc975e025385f9c5ca7b47a44
2013-01-26 18:24:50 +00:00
Amaury Pouly
423755d1bd imxtools/sbtools: improve sb1 key handling
Change-Id: Ib014a102fe44a67dd256e45e804bca9b5812eb61
2012-12-26 01:17:28 +01:00
Amaury Pouly
c3a7190d78 imxtools/sbtools: add crypto code for documentation purpose
Change-Id: I4f3c659d65c1453b192cbce4bf6c85d882761929
2012-12-26 01:17:27 +01:00
Amaury Pouly
54a414b69e elftosb1: fix usage()
Change-Id: I9ce73b907fa6276b9cd1f285156623bdafa6d548
2012-12-26 01:17:27 +01:00
Amaury Pouly
b748243d4f imxtools/sbtools: implement rom/product/component version switch
Change-Id: If3ebae2e60f324c93f85a4f1a6f30257cccb735d
2012-12-16 23:35:23 +01:00
Amaury Pouly
fa1af088e9 imxtools/sbtools: fix sb1 product/component version writing
Change-Id: I0153192f41ccc5fb98e7e9f6f110d97bd76dbc47
2012-12-16 23:35:03 +01:00
Amaury Pouly
47f6d77690 imxtools/sbtools: "fix" address handling in ELF
This is a common problem that proprietary tools don't handle ELF
files correctly. ELF sections use a virtual address and the
virtual -> physical translation is done though segments. This
allows to have a load (physical) address different from the
virtual one. Here is the trick: proprietary tools usually don't
take the pain to do the translation and just grab the virtual
address. This commit implements proper translation in elftosb1
knowing that this introduce a deviation from the behaviour of the
proprietary tool.

Change-Id: I91721a3a8dead382a0603f84ae3b35c5eb9704eb
2012-12-16 21:28:41 +01:00
Amaury Pouly
1e2e79d668 imxtools/sbtools: introduce elftosb1 for stmp36xx
The tool still lacks some feature of the proprietary one but
can create files with all the basic features.

Change-Id: Ib0c91210940ca829291ce70945f88dc510a49974
2012-12-16 21:28:41 +01:00
Amaury Pouly
212cfdf771 imxtools/sbtools: fix some instruction handling & crypto
Change-Id: I6530bdf27896d8325dec4e2ba31c7e6a0131a286
2012-12-16 21:28:41 +01:00
Amaury Pouly
f4f600fc52 imxtools/sbtools: add elf function (sort by address)
Change-Id: Ib68746e11b43eadbbe0443626d4dc65d998348fa
2012-12-16 21:28:41 +01:00
Amaury Pouly
be9787f2e6 imxtools/sbtools: update misc with MIN
Change-Id: I17daaff068fcd3a8c70c52db5fa209082461173f
2012-12-16 21:28:41 +01:00
Amaury Pouly
6f47b29915 imxtools/sbtoelf: use new method to get default xor key
Change-Id: Ie00306a3c78e7490afe9964bd55ce53019e603ed
2012-12-16 01:53:20 +01:00
Amaury Pouly
4fc3397c5b imxtools/sbtools: implement sb1 write
Change-Id: Ic36d3a8fcf09350dff5988eb860d76eb11608cc2
2012-12-16 01:52:19 +01:00
Amaury Pouly
51604e8445 imxtools/elftosb: remove duplicate include
Change-Id: I34776ba3608bb5d25ce0d0fb3c6f228a4c9effc0
2012-12-16 01:51:49 +01:00
Amaury Pouly
788bf2e3b2 imxtools/sbloader: implement stmp36xx recovery support
Change-Id: I6cfb432cd474ca00d7dff77577c0aa499b78fe2d
2012-12-13 16:02:58 +01:00
Amaury Pouly
153bc0d7ec sbtools/sbload: prepare support for the stmp36xx
Change-Id: I13147009f2573d80c2c3dca2852a6d7b45174e9d
2012-12-13 00:24:19 +01:00
Amaury Pouly
c644f6b7f1 sbootls/rsrc: fix warnings
Change-Id: Id756cab14c9151ea74d628d002e1a203c5fbf01a
2012-12-13 00:23:07 +01:00
Amaury Pouly
8666e83aaa rsrctool: improve debug output
Change-Id: I3a4fc048466b9e4d7290237efc1cefb07fd0a118
2012-12-06 12:17:50 +01:00
Amaury Pouly
9f19209c77 rsrctool: produce an actually usuable entry list of the rsrc file
Change-Id: I6c8e5f3faf04741e4a13c1e705e9e869ccf8cfec
2012-12-02 11:51:50 +01:00
Amaury Pouly
ee36a396cd imxtools: introduce rsrctool to manipulate rsrc sections
This tool is very preliminary but could be use for whatever
purpose since the format of the rsrc sections is now known.
By the way it appears that this format is the same as the
one use by the stmp36xx for its resources.

Change-Id: Idd7057f5cdce5af9726904169bb100c8bacb0981
2012-11-29 17:30:54 +01:00
Amaury Pouly
9d77ad364d sbtoelf: add switch to prevent elf simplification
While elf simplification is a powerful tool it can be useful to
prevent it from happening for debug purposes. Also add a missing
switch description in usage() and missing static.

Change-Id: I80a1904dc4340c412bd3de1c124a2e38d6ac11a2
2012-11-28 00:17:15 +01:00
Amaury Pouly
f988f5c951 sbtoelf: also simplify elf files for sb2
This is less useful is most cases because sb2 doesn't have the
size restritions but some elf are produced with one section per
file and still yield dozens or hundreds of sections. And this free
anyway so we can do it.

Change-Id: Ia5ca83a8375063ecc7052d1ea73b2b21c00be730
2012-11-28 00:12:17 +01:00
Amaury Pouly
1c14041041 sbtoelf: implement elf simplification
Change-Id: Icfac5a2aa6a7b3582054321df003c6bb217b59d0
2012-11-28 00:06:31 +01:00
Amaury Pouly
8189732e52 sbtoelf: implement sb extraction for sb1
Load, fill and call/jump instructions are extracted as elf files
like for sb2. Because of the size limitations of the sb1
instructions, the resulting elf files can easily have hundreds of
sections. The (currently) implemented elf simplification method
will hopefully reduce this to a few sections only

Change-Id: I8fd6ed935ac3128f244bbd71c782e2a0a1c6d44a
2012-11-27 22:38:48 +01:00
Amaury Pouly
7dc3e939d2 sbtoelf: implement sb1 loading and dumping
Implement actual loading of a sb1 file to a structure in full
generality. Also implement dumping for debug purpose

Change-Id: I320035ea628719480a79aaccb05dce9a83256927
2012-11-27 22:16:56 +01:00
Amaury Pouly
9716d1f1f9 sbtools: add forgotten file
Change-Id: I701a301efa369c9e1247e10d226ba69e6064d1b2
2012-11-27 00:01:35 +01:00
Amaury Pouly
4e95b72ecb sbtools: add support for the stmp36xx format
The STMP36xx series also uses .sb files but with a different
format. The main differences are the encryption and the lack of
sections, making it basically a list of commands: fill, load,
call, jump, switch mode, set sdram settings. Currently only the
sbtoelf has support for the sb1 and can only dump the list of
commands. Actual support for elf creation will come later.

Change-Id: I1f2e0230c91ac64efd0e8430e0c5212098c599fd
2012-11-26 23:58:30 +01:00
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
Amaury Pouly
a87a9ef373 imxtools: move tools to a new sbtools/ subdirectory
Change-Id: I0d8d6831b35037725486f61fc363de87bc8ba92e
2012-05-31 13:57:25 +02:00