diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2007-08-01 20:59:27 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2007-08-01 20:59:27 +0000 |
commit | 4aaded5c767d8c4d3073716d59608eb146acb03c (patch) | |
tree | 079d00e0a20bbbaa693cf37427d1bfd24cdd2e70 /firmware | |
parent | e1c52e7fbe95dff284f9007ac279d27b51f61dd0 (diff) | |
download | rockbox-4aaded5c767d8c4d3073716d59608eb146acb03c.tar.gz rockbox-4aaded5c767d8c4d3073716d59608eb146acb03c.zip |
PP50xx: COP was left in undefined mode after init. Switch it to supervisor mode before entering cop_main.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14124 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/target/arm/crt0-pp.S | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/firmware/target/arm/crt0-pp.S b/firmware/target/arm/crt0-pp.S index b2e09fd690..85dd7f8b24 100644 --- a/firmware/target/arm/crt0-pp.S +++ b/firmware/target/arm/crt0-pp.S | |||
@@ -202,6 +202,7 @@ cpu_init: | |||
202 | ldr sp, =irq_stack | 202 | ldr sp, =irq_stack |
203 | msr cpsr_c, #0xdb /* IRQ/FIQ disabled */ | 203 | msr cpsr_c, #0xdb /* IRQ/FIQ disabled */ |
204 | ldr sp, =irq_stack | 204 | ldr sp, =irq_stack |
205 | |||
205 | /* Switch to supervisor mode */ | 206 | /* Switch to supervisor mode */ |
206 | msr cpsr_c, #0xd3 | 207 | msr cpsr_c, #0xd3 |
207 | ldr sp, =stackend | 208 | ldr sp, =stackend |
@@ -246,6 +247,8 @@ cop_init: | |||
246 | msr cpsr_c, #0xdb /* IRQ/FIQ disabled */ | 247 | msr cpsr_c, #0xdb /* IRQ/FIQ disabled */ |
247 | ldr sp, =cop_irq_stack | 248 | ldr sp, =cop_irq_stack |
248 | 249 | ||
250 | /* Switch to supervisor mode */ | ||
251 | msr cpsr_c, #0xd3 | ||
249 | ldr sp, =cop_stackend | 252 | ldr sp, =cop_stackend |
250 | 253 | ||
251 | /* Run cop_main() in apps/main.c */ | 254 | /* Run cop_main() in apps/main.c */ |