Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:24:08

0001 /**
0002  *  @file
0003  *
0004  *  LEON3 Shared Memory Driver Interrupt Support
0005  */
0006 
0007 /*
0008  *  COPYRIGHT (c) 1989-2012.
0009  *  On-Line Applications Research Corporation (OAR).
0010  *
0011  *  The license and distribution terms for this file may be
0012  *  found in the file LICENSE in this distribution or at
0013  *  http://www.rtems.org/license/LICENSE.
0014  */
0015 
0016 #include <rtems.h>
0017 #include <bsp.h>
0018 #include <shm_driver.h>
0019 
0020 #if 0
0021 void Shm_isr(void)
0022 {
0023   /*
0024    *  If this routine has to do anything other than the mpisr.c
0025    *  found in the generic driver, then copy the contents of the generic
0026    *  mpisr.c and augment it to satisfy this particular board.  Typically,
0027    *  you need to have a board specific mpisr.c when the interrupt
0028    *  must be cleared.
0029    *
0030    *  If the generic mpisr.c satisifies your requirements, then
0031    *  remove this routine from your target's shmsupp/mpisr.c file.
0032    *  Then simply install the generic Shm_isr in the Shm_setvec
0033    *  routine below.
0034    */
0035 }
0036 #endif
0037 
0038 /*
0039  *  This driver routine sets the SHM interrupt vector to point to the
0040  *  driver's SHM interrupt service routine.
0041  */
0042 void Shm_setvec( void )
0043 {
0044   /*
0045    * Interrupt driven mode is not currently supported.
0046    * This is thought to be the interrupt to use.
0047    */
0048   (void) rtems_interrupt_handler_install(
0049     LEON3_mp_irq,
0050     "MPCI",
0051     RTEMS_INTERRUPT_SHARED,
0052     (rtems_interrupt_handler) Shm_isr,
0053     NULL
0054   );
0055 }