mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-12-08 20:55:17 -05:00
Introduce rbutil/mkzenboot, a replacement for tools/mkzenboot
The old tools/mkzenboot has a number of problems: very hard to maintain, poor integration with rbutil. Restart from scratch by recycling all the crypto and descrambling code, rewrite the actual firmware modification part to handle all scenarios in a much clearer way. The code is ready to be integrated into Rockbox Utility, by using the very similar interface to mkimxboot. I copied all the keys from the old mkzenboot, so it can potentially support the older Creative ports, but since this is untested, I prefer not do so at the moment. However, I did add a "mixed" boot option to support the dualboot style used in the older ports. Change-Id: I80cfc48fa78187baa1b1692e8a30ec7137cea37b
This commit is contained in:
parent
5cfb148ae2
commit
2e0c558064
15 changed files with 2574 additions and 0 deletions
32
rbutil/mkzenboot/dualboot/dualboot.lds
Normal file
32
rbutil/mkzenboot/dualboot/dualboot.lds
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
ENTRY(start)
|
||||
OUTPUT_FORMAT(elf32-littlearm)
|
||||
OUTPUT_ARCH(arm)
|
||||
|
||||
MEMORY
|
||||
{
|
||||
/* keep this consistent with the address in mkzenboot.c */
|
||||
#if IMX233_SUBTARGET == 3700
|
||||
RAM : ORIGIN = 0x41000000, LENGTH = 0x8000
|
||||
#elif IMX233_SUBTARGET == 3600
|
||||
RAM : ORIGIN = 0x61000000, LENGTH = 0x8000
|
||||
#else
|
||||
#error define me
|
||||
#endif
|
||||
}
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.text :
|
||||
{
|
||||
*(.start*)
|
||||
*(.text*)
|
||||
. = ALIGN(4);
|
||||
LONG(0x1ceb00da)
|
||||
of_vector = .;
|
||||
. += 4;
|
||||
rb_vector = .;
|
||||
. += 4;
|
||||
boot_arg = .;
|
||||
. += 4;
|
||||
} > RAM
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue