make thread dispatching in ISRs generic code

This commit is contained in:
Thomas Doerfler
2009-07-17 09:08:22 +00:00
parent dbe0290e11
commit 915bb51b90
3 changed files with 18 additions and 1 deletions

View File

@@ -1,3 +1,9 @@
2009-07-13 Sebastian Huber <sebastian.huber@embedded-brains.de>
* score/src/isrthreaddispatch.c: New file.
* score/include/rtems/score/isr.h: Added prototype.
* score/Makefile.am: Update.
2009-07-10 Joel Sherrill <joel.sherrill@OARcorp.com>
* configure.ac, score/src/threadqenqueuepriority.c: Add

View File

@@ -196,7 +196,7 @@ libscore_a_SOURCES += src/userextaddapiset.c src/userextaddset.c \
## STD_C_FILES
libscore_a_SOURCES += src/apiext.c src/chain.c src/chainappend.c \
src/chainextract.c src/chainget.c src/chaininsert.c \
src/interr.c src/isr.c src/wkspace.c
src/interr.c src/isr.c src/isrthreaddispatch.c src/wkspace.c
EXTRA_DIST = src/Unlimited.txt

View File

@@ -195,6 +195,17 @@ void _ISR_Handler( void );
*/
void _ISR_Dispatch( void );
/**
* Invokes the thread dispatcher or signal extension if necessary.
*
* It should be called at the end of interrupt processing. The interrupt nest
* level must be zero before calling this routine.
*
* This is a high level replacement of _ISR_Dispatch(). It must be invoked
* within an environment such that a call to _Thread_Dispatch() is allowed.
*/
void _ISR_Thread_dispatch( void );
/**
* This function returns true if the processor is currently servicing
* and interrupt and false otherwise. A return value of true indicates