diff options
Diffstat (limited to 'firmware/target/arm/imx233/crt0.S')
-rw-r--r-- | firmware/target/arm/imx233/crt0.S | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/firmware/target/arm/imx233/crt0.S b/firmware/target/arm/imx233/crt0.S index 0a71da5d08..5e1720c7c9 100644 --- a/firmware/target/arm/imx233/crt0.S +++ b/firmware/target/arm/imx233/crt0.S | |||
@@ -56,9 +56,12 @@ start: | |||
56 | bic r0, r1 | 56 | bic r0, r1 |
57 | mcr p15, 0, r0, c1, c0, 0 | 57 | mcr p15, 0, r0, c1, c0, 0 |
58 | 58 | ||
59 | /* To call the C code we need a stack, since the stack is in virtual memory | 59 | /* To call the C code we need a stack, since the loader's stack might be |
60 | * use the stack's physical address */ | 60 | * in virtual memory, we need a physical address for the stack. Furthermore, |
61 | ldr sp, =stackend_phys | 61 | * we cannot use the main firmware stack yet because it overlaps with the |
62 | * init code which will be moved later. We rely on the linker to provide | ||
63 | * a safe, temporary stack */ | ||
64 | ldr sp, =crt0_tmpstack_phys | ||
62 | 65 | ||
63 | /* Enable MMU */ | 66 | /* Enable MMU */ |
64 | bl memory_init | 67 | bl memory_init |