Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Improved crt0-pp.S for PortalPlayer targets (iPod, H10 and Sansa)

Improved crt0-pp.S for PortalPlayer targets (iPod, H10 and Sansa)

From: Barry Wardell <barry.wardell_at_gmail.com>
Date: Tue, 5 Dec 2006 14:44:41 +0000

Hi,
I've been working with Daniel Ankers on getting a dual bootloader
working on the Sansa (and also on the H10). In doing so, it was
necessary to make some changes to crt0-pp.S (patch attached). The
purpose of the changes was to:

* Make sure only the CPU clears the BSS (not the COP)
* Give the CPU and COP separate stacks
* Make the bootloader run from IRAM so it's not overwriting the SDRAM
* Flushing the cache as appropriate (before waking up the COP)
* Remove the unused DEBUG and STUB code (which was only ever used for
the iFP port afaik)

I'm told that the current crt0-pp.S in CVS is very very multiprocessor
unsafe because of the reasons fixed in this patch, so it's quite
possible that some random behaviour in iPods may also be fixed by
this, particularly things related to the COP.

I've tested on my own H10 and Sansa with great results - dual booting
works now where it didn't before. However, I don't have an iPod to
test on so I'm asking for people to help with testing it. Both
bootloader and normal builds need testing and it would also be good to
know if a new bootloader works with an old build of Rockbox and vice
versa (this wasn't the case with my H10 but was with the Sansa). It
needs to be tested to see if Rockbox loads OK and if playback, etc.
still works as it did previously.

Thanks,
Barry

Received on 2006-12-05

Page was last modified "Jan 10 2012" The Rockbox Crew
aaa