diff options
Diffstat (limited to 'c/src/exec/score/inline/rtems/score/isr.inl')
-rw-r--r-- | c/src/exec/score/inline/rtems/score/isr.inl | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/c/src/exec/score/inline/rtems/score/isr.inl b/c/src/exec/score/inline/rtems/score/isr.inl new file mode 100644 index 0000000000..2cfbe6e1b9 --- /dev/null +++ b/c/src/exec/score/inline/rtems/score/isr.inl @@ -0,0 +1,73 @@ +/* isr.inl + * + * This include file contains the static implementation of all + * inlined routines in the Interrupt Handler. + * + * COPYRIGHT (c) 1989-1997. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may in + * the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __ISR_inl +#define __ISR_inl + +/*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 + * directives available to an interrupt service routine are restricted. + */ + +RTEMS_INLINE_ROUTINE boolean _ISR_Is_in_progress( void ) +{ + return (_ISR_Nest_level != 0); +} + +/*PAGE + * + * _ISR_Is_vector_number_valid + * + * DESCRIPTION: + * + * This function returns TRUE if the vector is a valid vector number + * for this processor and FALSE otherwise. + */ + +RTEMS_INLINE_ROUTINE boolean _ISR_Is_vector_number_valid ( + unsigned32 vector +) +{ + return ( vector <= CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER ); +} + +/*PAGE + * + * _ISR_Is_valid_user_handler + * + * + * DESCRIPTION: + * + * This function returns TRUE if handler is the entry point of a valid + * use interrupt service routine and FALSE otherwise. + */ + +RTEMS_INLINE_ROUTINE boolean _ISR_Is_valid_user_handler ( + void *handler +) +{ + return ( handler != NULL); +} + +#endif +/* end of include file */ |