diff options
| author | Daniel Ankers <dan@weirdo.org.uk> | 2006-10-10 19:02:49 +0000 |
|---|---|---|
| committer | Daniel Ankers <dan@weirdo.org.uk> | 2006-10-10 19:02:49 +0000 |
| commit | 2740914ee1d9274d77dfb4be6624fb557272ab6f (patch) | |
| tree | 66615eb47fd3307be1d270fba4d2cbeb0a7efb42 | |
| parent | 55c929747a7524548d26de690ad1c7c111467083 (diff) | |
| download | rockbox-2740914ee1d9274d77dfb4be6624fb557272ab6f.zip rockbox-2740914ee1d9274d77dfb4be6624fb557272ab6f.tar.gz rockbox-2740914ee1d9274d77dfb4be6624fb557272ab6f.tar.bz2 rockbox-2740914ee1d9274d77dfb4be6624fb557272ab6f.tar.xz | |
Changes to make Sansa bootloader run. Thanks to Peter Praest.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11177 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | bootloader/e200.c | 26 | ||||
| -rw-r--r-- | firmware/boot.lds | 9 |
2 files changed, 23 insertions, 12 deletions
diff --git a/bootloader/e200.c b/bootloader/e200.c index 639c564..91217f5 100644 --- a/bootloader/e200.c +++ b/bootloader/e200.c @@ -38,13 +38,29 @@ void main(void) { + volatile unsigned int* ptr; int i; - - volatile unsigned short *ptr = (unsigned short *)0x14700000; - for(i=0; i< 10000; i++) - *ptr++=i; - while(1); + while(1) + { + // blink wheel backlight + ptr = (volatile unsigned int*)0x70000020; + if((*ptr) & (1 << 13)) + { + *ptr = (*ptr) & ~(1 << 13); + + } + else + { + *ptr = (*ptr) | (1 << 13); + } + + // wait a while + for(i = 0; i < 0xfffff; i++) + { + } + + } } /* These functions are present in the firmware library, but we reimplement diff --git a/firmware/boot.lds b/firmware/boot.lds index f361e45..97a9f78 100644 --- a/firmware/boot.lds +++ b/firmware/boot.lds @@ -7,15 +7,10 @@ INPUT(target/coldfire/crt0.o) #elif defined (CPU_ARM) OUTPUT_FORMAT(elf32-littlearm) OUTPUT_ARCH(arm) -#ifndef IPOD_ARCH -/* the ipods can't have the crt0.o mentioned here, but the others can't do - without it! */ -#ifdef CPU_PP -INPUT(target/arm/crt0-pp.o) -#else +#ifndef CPU_PP +/* PortalPlayer-based machines won't work if crt0 is included */ INPUT(target/arm/crt0.o) #endif -#endif #else OUTPUT_FORMAT(elf32-sh) INPUT(target/sh/crt0.o) |