summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorThom Johansen <thomj@rockbox.org>2005-11-13 23:47:26 +0000
committerThom Johansen <thomj@rockbox.org>2005-11-13 23:47:26 +0000
commite3095ee3b8bc84d4d93796869d694455b7911b2f (patch)
treea7ff616a419acb4a3b487bf57e0b39d03e4851bc /firmware
parente22f9c49c83a211ef8fda6e132c64d84284cfb15 (diff)
downloadrockbox-e3095ee3b8bc84d4d93796869d694455b7911b2f.tar.gz
rockbox-e3095ee3b8bc84d4d93796869d694455b7911b2f.zip
iPod fixes. Stack starts at stackend. Munge stack with 0xdeadbeef.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7851 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/crt0.S13
1 files changed, 10 insertions, 3 deletions
diff --git a/firmware/crt0.S b/firmware/crt0.S
index 9ef597fad6..cba7221471 100644
--- a/firmware/crt0.S
+++ b/firmware/crt0.S
@@ -75,9 +75,16 @@ cop_wake_start:
75 ldr pc, [r0] 75 ldr pc, [r0]
76 76
771: 771:
78 /* setup some stack */ 78 /* setup some stack and munge it with 0xdeadbeef */
79 ldr sp, = _stackbegin 79 ldr sp, =_stackend
80 80 mov r3, sp
81 ldr r2, =_stackbegin
82 ldr r4, =0xdeadbeef
83.mungeloop:
84 str r4, [r2], #4
85 cmp r2, r3
86 bne .mungeloop
87
81 /* get the high part of our execute address */ 88 /* get the high part of our execute address */
82 ldr r2, =0xffffff00 89 ldr r2, =0xffffff00
83 and r4, pc, r2 90 and r4, pc, r2