Changeset c9973bb in rtems


Ignore:
Timestamp:
May 17, 1999, 11:22:45 PM (22 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
9180f63
Parents:
0123e3b
Message:

Split Interrupt Manager into one routine per file.

Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • c/src/exec/rtems/src/Makefile.in

    r0123e3b rc9973bb  
    2525  taskstart tasksuspend taskwakeafter taskwakewhen
    2626
     27RATEMON_PIECES=\
     28  ratemon ratemoncancel ratemoncreate ratemondelete ratemongetstatus \
     29  ratemonident ratemonperiod ratemontimeout
     30
     31INTR_PIECES=\
     32  intr intrbody intrcatch
     33
    2734CLOCK_PIECES=\
    2835  clock clockget clockset clocktick
     
    4754  signal signalcatch signalsend
    4855
    49 RATEMON_PIECES=\
    50   ratemon ratemoncancel ratemoncreate ratemondelete ratemongetstatus \
    51   ratemonident ratemonperiod ratemontimeout
    52 
    5356REGION_PIECES=\
    5457  region regioncreate regiondelete regionextend regiongetsegment \
     
    6467C_PIECES=\
    6568  attr $(TASK_PIECES) $(RATEMON_PIECES) \
    66   intr intrbody \
     69  $(INTR_PIECES) \
    6770  $(CLOCK_PIECES) $(TIMER_PIECES) \
    6871  $(SEMAPHORE_PIECES) $(MESSAGE_QUEUE_PIECES) \
  • c/src/exec/rtems/src/intr.c

    r0123e3b rc9973bb  
    3131{
    3232}
    33 
    34 /*  rtems_interrupt_catch
    35  *
    36  *  This directive allows a thread to specify what action to take when
    37  *  catching signals.
    38  *
    39  *  Input parameters:
    40  *    new_isr_handler - address of interrupt service routine (isr)
    41  *    vector          - interrupt vector number
    42  *    old_isr_handler - address at which to store previous ISR address
    43  *
    44  *  Output parameters:
    45  *    RTEMS_SUCCESSFUL - always succeeds
    46  *    *old_isr_handler  - previous ISR address
    47  */
    48 
    49 rtems_status_code rtems_interrupt_catch(
    50   rtems_isr_entry      new_isr_handler,
    51   rtems_vector_number  vector,
    52   rtems_isr_entry     *old_isr_handler
    53 )
    54 {
    55   if ( !_ISR_Is_vector_number_valid( vector ) )
    56     return RTEMS_INVALID_NUMBER;
    57 
    58   if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )
    59     return RTEMS_INVALID_ADDRESS;
    60 
    61   if ( !_ISR_Is_valid_user_handler( (void *) old_isr_handler ) )
    62     return RTEMS_INVALID_ADDRESS;
    63 
    64   _ISR_Install_vector(
    65     vector, (proc_ptr)new_isr_handler, (proc_ptr *)old_isr_handler );
    66 
    67   return RTEMS_SUCCESSFUL;
    68 }
  • cpukit/rtems/src/intr.c

    r0123e3b rc9973bb  
    3131{
    3232}
    33 
    34 /*  rtems_interrupt_catch
    35  *
    36  *  This directive allows a thread to specify what action to take when
    37  *  catching signals.
    38  *
    39  *  Input parameters:
    40  *    new_isr_handler - address of interrupt service routine (isr)
    41  *    vector          - interrupt vector number
    42  *    old_isr_handler - address at which to store previous ISR address
    43  *
    44  *  Output parameters:
    45  *    RTEMS_SUCCESSFUL - always succeeds
    46  *    *old_isr_handler  - previous ISR address
    47  */
    48 
    49 rtems_status_code rtems_interrupt_catch(
    50   rtems_isr_entry      new_isr_handler,
    51   rtems_vector_number  vector,
    52   rtems_isr_entry     *old_isr_handler
    53 )
    54 {
    55   if ( !_ISR_Is_vector_number_valid( vector ) )
    56     return RTEMS_INVALID_NUMBER;
    57 
    58   if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )
    59     return RTEMS_INVALID_ADDRESS;
    60 
    61   if ( !_ISR_Is_valid_user_handler( (void *) old_isr_handler ) )
    62     return RTEMS_INVALID_ADDRESS;
    63 
    64   _ISR_Install_vector(
    65     vector, (proc_ptr)new_isr_handler, (proc_ptr *)old_isr_handler );
    66 
    67   return RTEMS_SUCCESSFUL;
    68 }
Note: See TracChangeset for help on using the changeset viewer.