[PATCH 2/3] rtems: Simplify rtems_interrupt_catch()
Sebastian Huber
sebastian.huber at embedded-brains.de
Thu Nov 8 13:36:50 UTC 2018
Remove casts and superfluous inline functions.
Update #3585.
---
cpukit/rtems/src/intrcatch.c | 38 +++++---------------------------------
1 file changed, 5 insertions(+), 33 deletions(-)
diff --git a/cpukit/rtems/src/intrcatch.c b/cpukit/rtems/src/intrcatch.c
index c83ca4cfeb..ac972f27a2 100644
--- a/cpukit/rtems/src/intrcatch.c
+++ b/cpukit/rtems/src/intrcatch.c
@@ -18,54 +18,26 @@
#include "config.h"
#endif
-#include <rtems/system.h>
-#include <rtems/rtems/status.h>
-#include <rtems/score/isr.h>
#include <rtems/rtems/intr.h>
+#include <rtems/score/isr.h>
#if (CPU_SIMPLE_VECTORED_INTERRUPTS == TRUE)
-
-/**
- * This function returns true if the vector is a valid vector number
- * for this processor and false otherwise.
- */
-
-RTEMS_INLINE_ROUTINE bool _ISR_Is_vector_number_valid (
- uint32_t vector
-)
-{
- return ( vector <= CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER );
-}
-
-/**
- * This function returns true if handler is the entry point of a valid
- * use interrupt service routine and false otherwise.
- */
-
-RTEMS_INLINE_ROUTINE bool _ISR_Is_valid_user_handler (
- void *handler
-)
-{
- return (handler != NULL);
-}
-
rtems_status_code rtems_interrupt_catch(
rtems_isr_entry new_isr_handler,
rtems_vector_number vector,
rtems_isr_entry *old_isr_handler
)
{
- if ( !_ISR_Is_vector_number_valid( vector ) )
+ if ( vector > CPU_INTERRUPT_MAXIMUM_VECTOR_NUMBER )
return RTEMS_INVALID_NUMBER;
- if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )
+ if ( new_isr_handler == NULL )
return RTEMS_INVALID_ADDRESS;
- if ( !_ISR_Is_valid_user_handler( (void *) old_isr_handler ) )
+ if ( old_isr_handler == NULL )
return RTEMS_INVALID_ADDRESS;
- _ISR_Install_vector(
- vector, (proc_ptr)new_isr_handler, (proc_ptr *)old_isr_handler );
+ _ISR_Install_vector( vector, new_isr_handler, old_isr_handler );
return RTEMS_SUCCESSFUL;
}
--
2.16.4
More information about the devel
mailing list