diff options
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/score/cpu/arm/ChangeLog | 5 | ||||
-rw-r--r-- | cpukit/score/cpu/arm/cpu.c | 4 |
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; } |