Commit graph

33 commits

Author SHA1 Message Date
Amaury Pouly
ee2eb13b74 mkimxboot: small fixes and display a human readable error
Change-Id: I9362b62351925aef5b14656635875123942fe7e4
2017-11-05 18:30:11 +01:00
Amaury Pouly
a5950c69af imxtools: rework key/IV overriding logic
The overriding of the IV and real key should be the exception, there is no
need to manually set them to false.

Change-Id: Id66754f20a79aa5c1a991839345d1242e0aa587d
2017-01-16 19:50:25 +01:00
Amaury Pouly
e25983607c mkimxboot: add NWZ-E380 firmware 1.00.200
Change-Id: I0c949a464a0e5880d1215db571aac402ca81eae9
2017-01-02 21:44:22 +01:00
Amaury Pouly
23ecdebf97 mkimxboot: implement firmware unpatching
Change-Id: Idfd68c06f89cdef8e95865e3ff177a6daa072c1a
2017-01-02 21:43:51 +01:00
Amaury Pouly
ff946f1f69 imxtools: completely rework patching logic to prepare unpatching
The old code was working but a mess to maintain. The new code is cleaner
and always simpler handling of all the different options. Extraction of the
OF is no longer a standalone function but just one particular output type.
This commit prepares the ground for firmware "unpatching" (aka OF extraction
from patched OF). The patching code itself did not change so this commit
should still produce the exact same images as before.

Change-Id: I3840793d4b78b8435e38c08f558840925085ead1
2017-01-02 21:43:10 +01:00
Amaury Pouly
782d9c0d80 mkimxboot: add the concept of soft MD5 sum
Change-Id: I7e83218ce0dccc1f4c4a7a6bb9c1df00dacf260b
2017-01-02 21:42:01 +01:00
Amaury Pouly
6022d3100a mkimxboot: tool can now recreate a stub to recover from very low battery
Several devices, including the Fuze+ have great trouble recovering from
very low battery states, even in the presence of USB power. This is partly
due to buggy Sigmatel boot stubs and Rockbox bootloader doing unsafe power
operations on boot (should be fixed soon).  In such a state, it is impossible
to boot either the OF and Rockbox, so only the recovery mode is available.
With this commit, mkimxboot can now create a very small stub which only
does one thing but does it well: setup charging to recover from any situation.
It does not provide a fancy charging screen or whatever, screen will just
stay black and the device will slowly charge at ~100mA. When the battery is
back to a normal level, just unplug and boot normally.

Change-Id: Ib50880af85ed1f4f64a7eed0f2221e73c889c351
2014-01-21 19:01:34 +01:00
Amaury Pouly
cddf388f76 mkzenboot: reflect ZEN V target id change
Change-Id: I0bad98b43e1a23c9432f4bdfe78dc77ead7879a8
2014-01-21 19:01:08 +01:00
Amaury Pouly
1b3ae498cd mkimxboot: fix strange MD5 sum about ZEN X-Fi3
This old sum didn't match the US or EU 1.00.25 version and the actual ones were
missing.

Change-Id: I942641e5f367ab45794cb93a8b26b87962172216
2014-01-21 18:52:28 +01:00
Amaury Pouly
69d0dae55b Initial commit for the ZEN X-Fi Style
Change-Id: Ib25a357a7bafd2ef25f273cadff70fafbd8d4661
2014-01-21 18:52:28 +01:00
Amaury Pouly
192f3020f8 mkimxboot: add NWZ-E380 1.0.0 firmware
Since E380 is just rebranded E370, mark it as E370

Change-Id: I2eb7dac9ff18a7dbbd26c44b8784207e54f48dd0
2013-11-13 21:37:52 +00:00
Amaury Pouly
d13e5b964e mkimxboot: add NWZ-E370 1.0.1 firmware (US)
Change-Id: I49ddcbe2f5c1c3aabc604b81b89272cf0292e28e
2013-09-28 12:14:45 +02:00
Amaury Pouly
6ac481e8bc Add support for the sony NWZ-E360/E370 to mkimxboot
Change-Id: Ied73591326339d22b4f21d311da9e6b1b9c223ed
2013-09-25 14:31:39 +02:00
Amaury Pouly
a2d4a4a560 mkimxboot: fix crash
I was too aggressive when converting reads to standard reads, this
one is memory based and not file based

Change-Id: Ibe7162894cc44cbd79f56cafe7136bda0f76bcdc
2013-08-22 17:49:50 +02:00
Amaury Pouly
05bd3e4cd2 mkimxboot: add entry for ZEN X-Fi3 1.00.25e firmware
Change-Id: I2c6cc4003bcc96662211fa066dd9e6e438b7e258
2013-08-22 00:48:55 +02:00
Amaury Pouly
99f3ca174e sbtools: more code refactoring
Factor all printf method with a unique one defined in misc.h

Change-Id: I58fbf8916b76e873a2e6678506d2c8aece7834ec
2013-08-21 22:20:53 +02:00
Amaury Pouly
cb8274373b sbtools: more printf fixing
Change-Id: Id617297c196b381fd1c381da3eff4345e3157529
2013-08-10 21:37:27 +02:00
Amaury Pouly
21672ba31c mkimxboot: fix red
Change-Id: Id5d27fc00969b6999df665e7182b7ff27bccfacd
2013-08-06 21:24:39 +02:00
Amaury Pouly
da8ebcec2f mkimxboot: code simplification
Change-Id: Ic16334c262ee5bce3575c306440f7e1de2b247f9
2013-08-06 21:24:38 +02:00
Amaury Pouly
55babd5895 mkimxboot: add zen style 100/300 firmware to the list
The tool cannot produce any firmware yet but it can extract the
OF from the installer.

Change-Id: I98684b2bf43310443d93b482aa853464f6f87fa8
2013-06-18 15:02:01 +02:00
Amaury Pouly
d561017f35 mkimxboot: factor code, add support for ELF files
Refactor code.
This tool can now either load a scrambled rockbox
firmware (in which case the model is check against the
firmware), or any ELF file. This is useful for example
for hwstub which produces a ELF file and still needs
to be loaded by producing a SB file.

Change-Id: I7aa381b3f6587788d1950793e89ce5608c53cccc
2013-06-16 02:14:52 +02:00
Amaury Pouly
58e27b9fa1 mkimxboot: refactor code, no functional change
The mkimxboot was becoming messy with juge functions and
redundant code. Factor reading/writing/loading code into smaller
functions. Introduce the concept of rockbox firmware to simplify
support of other formats than scramble.

Change-Id: I3a61295ca5abca1a0eee8c9e8709c6b8dfa256a6
2013-06-15 22:27:34 +02:00
Amaury Pouly
42a725f7ec mkimxboot: add a switch to force version
Add a switch to override the product and component version of the
sb file. This can usually for target like the Zen X-Fi2 where the
upader allows to drop any file named firmware.sb and prints the
version: by using a funky version the users can check they got it
right. This should not be used on the fuze+ or zenxfi3 because the
OF prevents downgrade.
Also make rbutil always zero out the option structure passed to
mkimxboot, this has already created bugs in the past.

Change-Id: I175c5def52c40c2132e11300e2f037d60a4f040e
2013-01-29 11:53:07 +00:00
Amaury Pouly
7fda69222c mkimxboot: add support for 1.23.01 installer
Change-Id: Ibce345ec411a189bd4a0a9555d145c4f057d8b15
2013-01-28 21:02:19 +00:00
Amaury Pouly
f2dfc84760 mkimxboot: add partial support for the Zen X-Fi Style
Change-Id: I3428a398959dfd7fc46175d87fc67acce6a75171
2013-01-26 18:37:12 +00:00
Amaury Pouly
2c36c82a89 fix style
Change-Id: I169b6712121979453269f5f5238b33cc49cd62b2
2013-01-26 18:37:05 +00:00
Amaury Pouly
f6e4456cc4 mkimxboot: add an option to extract the of without processing
Change-Id: Ie370f152f4efff4428ee023a9211b82a77fd1df4
2013-01-26 18:24:50 +00:00
Amaury Pouly
b6cad07f33 mkimxboot: fix bad return on internal error
Change-Id: I6aec9ec694568c15856b03322208f257181eca21
2013-01-26 18:24:50 +00:00
Amaury Pouly
4b1c48f5f5 mkximxboot: add version string and add zenxfi3 file
Add a version string with each md5sum, fix the version of an
entry, add a new zenxfi3 file entry.

Change-Id: I9fba76ee6032bbe31acd791b8d5e104b87992653
2013-01-15 19:10:55 +00:00
Dominik Riebeling
1e2c6506fb Fix crash in mkimxboot bootloader installation.
mkimxboot requires passing a structure which got extended with another field.
This wasn't adjusted in Rockbox Utility, causing an out of bound access to an
array, which results in a segfault.

Change-Id: I0252849ed0b41f1d8804537c053debc9b0ecd08d
2012-06-09 22:08:54 +02:00
Amaury Pouly
e09c1e3d43 mkimxboot: add support for more target and variants
Add creative zen x-fi 2/3 and add a variant mechanism

Change-Id: Ic2ee82a4238a87c2eb5d72b8309650d9a280325f
2012-05-19 16:10:52 +02:00
Amaury Pouly
d9b7d58fa6 mkimxboot: fix bootloader load address, replace call by jump on final call to have a clean boot
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30922 a1c6a512-1295-4272-9138-f99709370657
2011-11-06 20:40:54 +00:00
Amaury Pouly
303c486f4f Introduce mkimxboot to build bootloader images for the i.MX (only the fuze+ currently). Still not integrated in rbutil
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30920 a1c6a512-1295-4272-9138-f99709370657
2011-11-06 19:44:03 +00:00