diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-08-01 15:20:17 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-08-05 13:45:36 +0200 |
commit | b4b309c55940da12cbf099ffe19bc74179505fda (patch) | |
tree | 716a05c54f35a421305ff14d7451f3805d55994f /cpukit/sapi/src/exinit.c | |
parent | score: Delete SYSTEM_STATE_BEGIN_MULTITASKING (diff) | |
download | rtems-b4b309c55940da12cbf099ffe19bc74179505fda.tar.bz2 |
smp: Generalize _Thread_Start_multitasking()
Add context parameter to _Thread_Start_multitasking() and use this
function in rtems_smp_secondary_cpu_initialize(). This avoids
duplication of code.
Fix missing floating point context initialization in
rtems_smp_secondary_cpu_initialize(). Now performed via
_Thread_Start_multitasking().
Diffstat (limited to 'cpukit/sapi/src/exinit.c')
-rw-r--r-- | cpukit/sapi/src/exinit.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/cpukit/sapi/src/exinit.c b/cpukit/sapi/src/exinit.c index 7dad241d6c..bfcfa7ce40 100644 --- a/cpukit/sapi/src/exinit.c +++ b/cpukit/sapi/src/exinit.c @@ -219,11 +219,13 @@ void rtems_initialize_start_multitasking(void) { uint32_t status; -#ifdef RTEMS_SMP + _System_state_Set( SYSTEM_STATE_UP ); + +#if defined(RTEMS_SMP) _SMP_Request_other_cores_to_perform_first_context_switch(); #endif - _Thread_Start_multitasking(); + _Thread_Start_multitasking( &_Thread_BSP_context ); /******************************************************************* ******************************************************************* |