summaryrefslogtreecommitdiffstats
path: root/bsps/sparc/leon3/mpci/mpisr.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-06-22 15:40:39 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-06-24 11:36:28 +0200
commit5c30e3d376fea2ec18b28a72c349d153973a983d (patch)
tree986ae16e9800c702bbd3779cafdda9549c3559da /bsps/sparc/leon3/mpci/mpisr.c
parentsparc: More reliable bad trap handling (diff)
downloadrtems-5c30e3d376fea2ec18b28a72c349d153973a983d.tar.bz2
bsps/sparc: Use rtems_interrupt_handler_install()
Avoid using set_vector() which depends on _ISR_Vector_table(). Prepare for a statically initialized trap table. Update #4458.
Diffstat (limited to 'bsps/sparc/leon3/mpci/mpisr.c')
-rw-r--r--bsps/sparc/leon3/mpci/mpisr.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/bsps/sparc/leon3/mpci/mpisr.c b/bsps/sparc/leon3/mpci/mpisr.c
index cdf05293f1..d97b24a87c 100644
--- a/bsps/sparc/leon3/mpci/mpisr.c
+++ b/bsps/sparc/leon3/mpci/mpisr.c
@@ -45,6 +45,11 @@ void Shm_setvec( void )
* Interrupt driven mode is not currently supported.
* This is thought to be the interrupt to use.
*/
- LEON_Unmask_interrupt(LEON3_mp_irq);
- set_vector((rtems_isr_entry) Shm_isr, LEON_TRAP_TYPE(LEON3_mp_irq), 1);
+ (void) rtems_interrupt_handler_install(
+ LEON3_mp_irq,
+ "MPCI",
+ RTEMS_INTERRUPT_SHARED,
+ (rtems_interrupt_handler) Shm_isr,
+ NULL
+ );
}