diff options
author | Amaury Pouly <pamaury@rockbox.org> | 2011-09-13 23:38:45 +0000 |
---|---|---|
committer | Amaury Pouly <pamaury@rockbox.org> | 2011-09-13 23:38:45 +0000 |
commit | ddb96f1b6533748585591e362579bd4528febd23 (patch) | |
tree | ea7173e043521ac6cc0de26718a0135959289f4f /firmware/target/arm/imx233/crt0.S | |
parent | 3d46b080fda6f271da0949f1338667c7805b145e (diff) | |
download | rockbox-ddb96f1b6533748585591e362579bd4528febd23.tar.gz rockbox-ddb96f1b6533748585591e362579bd4528febd23.zip |
imx233/fuze+: fix ctr0 to use a fresh stack and update firmware linker script
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30523 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/imx233/crt0.S')
-rw-r--r-- | firmware/target/arm/imx233/crt0.S | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/firmware/target/arm/imx233/crt0.S b/firmware/target/arm/imx233/crt0.S index ab0250f6b6..393411b83a 100644 --- a/firmware/target/arm/imx233/crt0.S +++ b/firmware/target/arm/imx233/crt0.S @@ -33,9 +33,9 @@ ldr pc, =irq_handler ldr pc, =fiq_handler -/* When starting, we are running at 0x40000000 but the code - * assumes DRAM is somewhere else (for caching) so we first need to - * setup the MMU and then jump to the right location */ +/* When starting, we are running at 0x4xxxxxxx (uncached) but the code + * assumes DRAM is somewhere else (cached) so we first need to + * setup the MMU and then jump to the right location. */ .text .global start start: @@ -49,9 +49,12 @@ start: bic r0, r1 mcr p15, 0, r0, c1, c0, 0 + /* To call the C code we need a stack, since the stack is in virtual memory + * use the stack's physical address */ + ldr sp, =stackend_phys + /* Enable MMU */ bl memory_init - /* Jump to real location */ ldr pc, =remap remap: |