PR 1921/cpukit
	* score/inline/rtems/score/thread.inl,
	score/src/threadstartmultitasking.c: Allow CPU port to provide
	optional multitasking start and stop.
This commit is contained in:
Sebastian Huber
2011-09-24 12:45:55 +00:00
parent f40139bb9b
commit 86c847c1da
3 changed files with 15 additions and 0 deletions

View File

@@ -1,3 +1,10 @@
2011-09-24 Sebastian Huber <sebastian.huber@embedded-brains.de>
PR 1921/cpukit
* score/inline/rtems/score/thread.inl,
score/src/threadstartmultitasking.c: Allow CPU port to provide
optional multitasking start and stop.
2011-09-20 Petr Benes <benesp16@fel.cvut.cz>
PR 1916/testing

View File

@@ -111,6 +111,9 @@
RTEMS_INLINE_ROUTINE void _Thread_Stop_multitasking( void )
{
#if defined(_CPU_Stop_multitasking)
_CPU_Stop_multitasking( &_Thread_BSP_context );
#else
/*
* This may look a bit of an odd but _Context_Restart_self is just
* a very careful restore of a specific context which ensures that
@@ -120,6 +123,7 @@ RTEMS_INLINE_ROUTINE void _Thread_Stop_multitasking( void )
* saving the context.
*/
_Context_Restart_self( &_Thread_BSP_context );
#endif
/***************************************************************
***************************************************************

View File

@@ -86,5 +86,9 @@ void _Thread_Start_multitasking( void )
_Context_Restore_fp( &_Thread_Heir->fp_context );
#endif
#if defined(_CPU_Start_multitasking)
_CPU_Start_multitasking( &_Thread_BSP_context, &_Thread_Heir->Registers );
#else
_Context_Switch( &_Thread_BSP_context, &_Thread_Heir->Registers );
#endif
}