source: rtems/c/src/lib/libbsp/sparc/leon3/shmsupp/mpisr.c @ 93b000e

4.115
Last change on this file since 93b000e was 93b000e, checked in by Daniel Cederman <cederman@…>, on Oct 1, 2014 at 11:53:03 AM

bsp/leon3: Replace the define LEON3_MP_IRQ with a weakly linked variable

The LEON3_MP_IRQ define is used to pick the IRQ to be used by the
shared memory driver and for inter-processor interrupts. On some LEON3
systems, for example the GR712RC, the default value of 14 is not suitable.
To make this value configurable from the application, it is replaced with
a weakly linked variable that can be overridden from the application.

  • Property mode set to 100644
File size: 1.3 KB
Line 
1/**
2 *  @file
3 *
4 *  LEON3 Shared Memory Driver Interrupt Support
5 */
6
7/*
8 *  COPYRIGHT (c) 1989-2012.
9 *  On-Line Applications Research Corporation (OAR).
10 *
11 *  The license and distribution terms for this file may be
12 *  found in the file LICENSE in this distribution or at
13 *  http://www.rtems.org/license/LICENSE.
14 */
15
16#include <rtems.h>
17#include <bsp.h>
18#include <shm_driver.h>
19
20#if 0
21void Shm_isr(void)
22{
23  /*
24   *  If this routine has to do anything other than the mpisr.c
25   *  found in the generic driver, then copy the contents of the generic
26   *  mpisr.c and augment it to satisfy this particular board.  Typically,
27   *  you need to have a board specific mpisr.c when the interrupt
28   *  must be cleared.
29   *
30   *  If the generic mpisr.c satisifies your requirements, then
31   *  remove this routine from your target's shmsupp/mpisr.c file.
32   *  Then simply install the generic Shm_isr in the Shm_setvec
33   *  routine below.
34   */
35}
36#endif
37
38/*
39 *  This driver routine sets the SHM interrupt vector to point to the
40 *  driver's SHM interrupt service routine.
41 */
42void Shm_setvec( void )
43{
44  /*
45   * Interrupt driven mode is not currently supported.
46   * This is thought to be the interrupt to use.
47   */
48  LEON_Unmask_interrupt(LEON3_mp_irq);
49  set_vector((rtems_isr_entry) Shm_isr, LEON_TRAP_TYPE(LEON3_mp_irq), 1);
50}
Note: See TracBrowser for help on using the repository browser.