summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi/src
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2011-07-13 18:34:22 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2011-07-13 18:34:22 +0000
commitf58ef8ae7a0ff7e31d89d1b792a70b7ba7dbac6b (patch)
tree789d3f4839434da42114800c812ccf258ea38fd5 /cpukit/sapi/src
parent2011-07-13 Joel Sherrill <joel.sherrill@oarcorp.com> (diff)
downloadrtems-f58ef8ae7a0ff7e31d89d1b792a70b7ba7dbac6b.tar.bz2
2011-07-13 Joel Sherrill <joel.sherrilL@OARcorp.com>
PR 1824/cpukit * sapi/include/rtems/init.h, sapi/src/exinit.c, sapi/src/exshutdown.c: Return exit/shutdown status back to boot_card().
Diffstat (limited to 'cpukit/sapi/src')
-rw-r--r--cpukit/sapi/src/exinit.c5
-rw-r--r--cpukit/sapi/src/exshutdown.c3
2 files changed, 6 insertions, 2 deletions
diff --git a/cpukit/sapi/src/exinit.c b/cpukit/sapi/src/exinit.c
index 860d758774..34b83c7180 100644
--- a/cpukit/sapi/src/exinit.c
+++ b/cpukit/sapi/src/exinit.c
@@ -225,9 +225,8 @@ void rtems_initialize_device_drivers(void)
_API_extensions_Run_postdriver();
}
-void rtems_initialize_start_multitasking(void)
+uint32_t rtems_initialize_start_multitasking(void)
{
-
_System_state_Set( SYSTEM_STATE_BEGIN_MULTITASKING );
_Thread_Start_multitasking();
@@ -240,4 +239,6 @@ void rtems_initialize_start_multitasking(void)
*******************************************************************
*******************************************************************
*******************************************************************/
+
+ return _Per_CPU_Information[0].idle->Wait.return_code;
}
diff --git a/cpukit/sapi/src/exshutdown.c b/cpukit/sapi/src/exshutdown.c
index 1de3b843e2..f004dbd755 100644
--- a/cpukit/sapi/src/exshutdown.c
+++ b/cpukit/sapi/src/exshutdown.c
@@ -44,6 +44,9 @@ void rtems_shutdown_executive(
#if defined(RTEMS_SMP)
_SMP_Request_other_cores_to_shutdown();
#endif
+
+ _Per_CPU_Information[0].idle->Wait.return_code = result;
+
_System_state_Set( SYSTEM_STATE_SHUTDOWN );
_Thread_Stop_multitasking();
}