diff options
author | Rafaël Carré <rafael.carre@gmail.com> | 2010-07-16 00:00:29 +0000 |
---|---|---|
committer | Rafaël Carré <rafael.carre@gmail.com> | 2010-07-16 00:00:29 +0000 |
commit | f5c79105a4087362f2b95ecbc359ccecbf4910c9 (patch) | |
tree | a2adb6783082f52b136e58d96dbdc315f3c2993e /rbutil/mkamsboot/dualboot | |
parent | 6d732a32bc4472a9050b118d0920e936a4bf5408 (diff) | |
download | rockbox-f5c79105a4087362f2b95ecbc359ccecbf4910c9.tar.gz rockbox-f5c79105a4087362f2b95ecbc359ccecbf4910c9.zip |
mkamsboot: fix for newer fuzev2
These models are restricted to OF >= v02.3.31, probably because of a
hardware change
The OF checks a version string located between 0x0 and 0x200 in the
firmware block, so let's keep this part unmodified
We put our dualboot code at 0x200, and insert a branch + vectors at 0x0
That way our patched file will present the OF version to the fuzev2 OF
patching it, and we only waste 512 bytes on other models
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27441 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'rbutil/mkamsboot/dualboot')
-rw-r--r-- | rbutil/mkamsboot/dualboot/dualboot.S | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/rbutil/mkamsboot/dualboot/dualboot.S b/rbutil/mkamsboot/dualboot/dualboot.S index d6a8d3701c..77fb4dec7d 100644 --- a/rbutil/mkamsboot/dualboot/dualboot.S +++ b/rbutil/mkamsboot/dualboot/dualboot.S | |||
@@ -51,20 +51,9 @@ | |||
51 | #error i2c prescaler too big! | 51 | #error i2c prescaler too big! |
52 | #endif | 52 | #endif |
53 | 53 | ||
54 | /* Vectors */ | 54 | b start @ skip our data |
55 | 55 | ||
56 | ldr pc, =start /* reset vector */ | 56 | /* These values are filled in by mkamsboot - don't move them from offset 0x4 */ |
57 | /* next vectors are unused, halt cpu */ | ||
58 | 1: b 1b | ||
59 | 1: b 1b | ||
60 | 1: b 1b | ||
61 | 1: b 1b | ||
62 | 1: b 1b | ||
63 | 1: b 1b | ||
64 | 1: b 1b | ||
65 | |||
66 | |||
67 | /* These values are filled in by mkamsboot - don't move them from offset 0x20 */ | ||
68 | 57 | ||
69 | uclunpack_end: .word 0 /* End of the ucl_unpack function */ | 58 | uclunpack_end: .word 0 /* End of the ucl_unpack function */ |
70 | uclunpack_size: .word 0 /* Size in bytes of the ucl_unpack function */ | 59 | uclunpack_size: .word 0 /* Size in bytes of the ucl_unpack function */ |