forked from len0rd/rockbox
Sansa Fuzev2: Add mkamsboot and dualboot support. The bootloader doesn't work, but pressing |<< or inserting USB to boot the OF does.
It should be pretty safe to run test code on it now. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24924 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
92f0aa85fc
commit
f6540e800d
6 changed files with 44 additions and 4 deletions
|
|
@ -4,8 +4,8 @@ CC=gcc
|
|||
# adding a new target. mkamsboot.c also needs to be edited to refer to these
|
||||
# new images.
|
||||
|
||||
BOOTOBJS = nrv2e_d8.o dualboot_clip.o dualboot_e200v2.o dualboot_c200v2.o dualboot_m200v4.o dualboot_fuze.o dualboot_clipv2.o dualboot_clipplus.o
|
||||
BOOTBINS = nrv2e_d8.arm-bin dualboot_clip.arm-bin dualboot_e200v2.arm-bin dualboot_c200v2.arm-bin dualboot_m200v4.arm-bin dualboot_fuze.arm-bin dualboot_clipv2.arm-bin dualboot_clipplus.arm-bin
|
||||
BOOTOBJS = nrv2e_d8.o dualboot_clip.o dualboot_e200v2.o dualboot_c200v2.o dualboot_m200v4.o dualboot_fuze.o dualboot_clipv2.o dualboot_clipplus.o dualboot_fuzev2.o
|
||||
BOOTBINS = nrv2e_d8.arm-bin dualboot_clip.arm-bin dualboot_e200v2.arm-bin dualboot_c200v2.arm-bin dualboot_m200v4.arm-bin dualboot_fuze.arm-bin dualboot_clipv2.arm-bin dualboot_clipplus.arm-bin dualboot_fuzev2.arm-bin
|
||||
|
||||
all: ../dualboot.h ../dualboot.c
|
||||
|
||||
|
|
@ -32,6 +32,9 @@ dualboot_clipv2.o: dualboot.S
|
|||
dualboot_clipplus.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_CLIPPLUS -c -o dualboot_clipplus.o dualboot.S
|
||||
|
||||
dualboot_fuzev2.o: dualboot.S
|
||||
arm-elf-gcc -DSANSA_FUZEV2 -c -o dualboot_fuzev2.o dualboot.S
|
||||
|
||||
# Rules for the ucl unpack function
|
||||
nrv2e_d8.o: nrv2e_d8.S
|
||||
arm-elf-gcc -DPURE_THUMB -c -o nrv2e_d8.o nrv2e_d8.S
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ uclcopy:
|
|||
#define USB_PIN 1 /* FIXME: not correct on some c200v2s */
|
||||
#elif defined(SANSA_CLIP) || defined(SANSA_CLIPV2)
|
||||
#define USB_PIN 6
|
||||
#elif defined(SANSA_FUZE) || defined(SANSA_E200V2)
|
||||
#elif defined(SANSA_FUZE) || defined(SANSA_E200V2) || defined(SANSA_FUZEV2)
|
||||
#define USB_PIN 3
|
||||
#endif
|
||||
|
||||
|
|
@ -143,14 +143,20 @@ uclcopy:
|
|||
|
||||
cmp r1, #0
|
||||
beq boot_of
|
||||
#elif defined(SANSA_E200V2) || defined(SANSA_FUZE)
|
||||
#elif defined(SANSA_E200V2) || defined(SANSA_FUZE) || defined(SANSA_FUZEV2)
|
||||
ldr r0, =GPIOC
|
||||
mov r1, #0
|
||||
str r1, [r0, #0x400]
|
||||
ldr r1, [r0, #0x20] /* read pin C3 */
|
||||
|
||||
cmp r1, #0 /* C3 = #0 means button pressed */
|
||||
#ifdef SANSA_FUZEV2
|
||||
/* the logic is reversed on the fuzev2 */
|
||||
bne boot_of
|
||||
#else
|
||||
beq boot_of
|
||||
#endif /* SANSA_FUZEV2 */
|
||||
|
||||
#elif defined(SANSA_CLIPPLUS)
|
||||
@ read pins
|
||||
ldr r0, =GPIOC
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue