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
30
rbutil/mkzenboot/Makefile
Normal file
30
rbutil/mkzenboot/Makefile
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# __________ __ ___.
|
||||
# Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
||||
# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
||||
# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
||||
# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
||||
# \/ \/ \/ \/ \/
|
||||
|
||||
# We use the HMAC-SHA1 code from tools/
|
||||
TOOLS_DIR=../../tools/
|
||||
CFLAGS += -Wall -I$(TOOLS_DIR)
|
||||
CFLAGS += -std=c99 -g
|
||||
LDOPTS += -lz
|
||||
|
||||
OUTPUT = mkzenboot
|
||||
|
||||
# inputs for lib
|
||||
TOOLS_SOURCES = hmac-sha1.c
|
||||
LIBSOURCES := dualboot.c mkzenboot.c md5.c utils.c \
|
||||
$(addprefix $(TOOLS_DIR),$(TOOLS_SOURCES))
|
||||
|
||||
# inputs for binary only
|
||||
SOURCES := $(LIBSOURCES) main.c
|
||||
# dependencies for binary
|
||||
EXTRADEPS :=
|
||||
|
||||
include ../libtools.make
|
||||
|
||||
# explicit dependencies on dualboot.{c,h} and mkimxboot.h
|
||||
$(OBJDIR)mkzenboot.o: dualboot.h dualboot.c mkzenboot.c mkzenboot.h
|
||||
$(OBJDIR)main.o: dualboot.h dualboot.c main.c mkzenboot.h
|
||||
Loading…
Add table
Add a link
Reference in a new issue