diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2001-11-28 18:28:24 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2001-11-28 18:28:24 +0000 |
commit | 89ee0b6936efb5371ec54c2bb37a0dbd492d0a98 (patch) | |
tree | fa9676c30496a4b846101bf8175b0e4ccfae2473 /c/src/exec/score/include/rtems/score/isr.h | |
parent | 2001-11-28 Joel Sherrill <joel@OARcorp.com>, (diff) | |
download | rtems-89ee0b6936efb5371ec54c2bb37a0dbd492d0a98.tar.bz2 |
2001-11-28 Joel Sherrill <joel@OARcorp.com>,
This was tracked as PR91.
* include/rtems/score/isr.h, inline/rtems/score/isr.inl,
macros/rtems/score/isr.inl: Modified to allow any port to provide
its own implementation of the macro _ISR_Is_in_progress. If the
port overrides this macro, it must provide a non-inlined function
implementation.
Diffstat (limited to '')
-rw-r--r-- | c/src/exec/score/include/rtems/score/isr.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/c/src/exec/score/include/rtems/score/isr.h b/c/src/exec/score/include/rtems/score/isr.h index 84052339f1..276e9dada5 100644 --- a/c/src/exec/score/include/rtems/score/isr.h +++ b/c/src/exec/score/include/rtems/score/isr.h @@ -220,6 +220,24 @@ void _ISR_Handler( void ); void _ISR_Dispatch( void ); +/*PAGE + * + * _ISR_Is_in_progress + * + * DESCRIPTION: + * + * This function returns TRUE if the processor is currently servicing + * and interrupt and FALSE otherwise. A return value of TRUE indicates + * that the caller is an interrupt service routine, NOT a thread. The + */ + +#if (CPU_PROVIDES_ISR_IS_IN_PROGRESS == TRUE) +boolean _ISR_Is_in_progress( void ); +#else +#define _ISR_Is_in_progress() \ + (_ISR_Nest_level != 0) +#endif + #include <rtems/score/isr.inl> #ifdef __cplusplus |