[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