summaryrefslogtreecommitdiffstats
path: root/cpukit
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2008-04-17 22:42:03 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2008-04-17 22:42:03 +0000
commit4f2cd788382dd925826eb717f50d3467ff2b4276 (patch)
tree5a3794bf365eda0dc702f87ebb791a04b0b0f841 /cpukit
parent7625be518e9b9333e6819a8ce2751a7af45f5fae (diff)
downloadrtems-4f2cd788382dd925826eb717f50d3467ff2b4276.tar.bz2
2008-04-17 Joel Sherrill <joel.sherrill@oarcorp.com>
* cpu.c: Add arm_cpu_mode so ARM BSP can overrid default value for cpsr.
Diffstat (limited to 'cpukit')
-rw-r--r--cpukit/score/cpu/arm/ChangeLog5
-rw-r--r--cpukit/score/cpu/arm/cpu.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/cpukit/score/cpu/arm/ChangeLog b/cpukit/score/cpu/arm/ChangeLog
index 081a4fe9db..ad3912565d 100644
--- a/cpukit/score/cpu/arm/ChangeLog
+++ b/cpukit/score/cpu/arm/ChangeLog
@@ -1,3 +1,8 @@
+2008-04-17 Joel Sherrill <joel.sherrill@oarcorp.com>
+
+ * cpu.c: Add arm_cpu_mode so ARM BSP can overrid default value for
+ cpsr.
+
2007-12-17 Joel Sherrill <joel.sherrill@oarcorp.com>
* rtems/score/cpu.h: Add _CPU_Context_Get_SP() for stack check utility.
diff --git a/cpukit/score/cpu/arm/cpu.c b/cpukit/score/cpu/arm/cpu.c
index 8e7e23640c..c6ee2642ac 100644
--- a/cpukit/score/cpu/arm/cpu.c
+++ b/cpukit/score/cpu/arm/cpu.c
@@ -130,6 +130,8 @@ void _CPU_ISR_install_vector(
}
+unsigned int arm_cpu_mode = 0x13;
+
void _CPU_Context_Initialize(
Context_Control *the_context,
uint32_t *stack_base,
@@ -141,7 +143,7 @@ void _CPU_Context_Initialize(
{
the_context->register_sp = (uint32_t )stack_base + size ;
the_context->register_lr = (uint32_t )entry_point;
- the_context->register_cpsr = new_level | 0x13;
+ the_context->register_cpsr = new_level | arm_cpu_mode;
}