diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-06-18 16:44:11 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-06-24 11:36:28 +0200 |
commit | be96cb4345554fac614b252fe8f78dbf32c3a981 (patch) | |
tree | e69c244a4e5ab5dd11bdd4c14ea2c5ef66ef6c34 /bsps/sparc/erc32/start/bspstart.c | |
parent | bsps: bsp_interrupt_handler_dispatch_unchecked() (diff) | |
download | rtems-be96cb4345554fac614b252fe8f78dbf32c3a981.tar.bz2 |
sparc: Simplify trap table initialization
Move _ISR_Handler() to a separate file since it is now only used if a handler
is installed by _CPU_ISR_install_raw_handler().
Statically initialize the traps for external interrupts to use the new
_SPARC_Interrupt_trap() which directly dispatches the interrupt handlers
installed by rtems_interrupt_handler_install() via the BSP-provided
_SPARC_Interrupt_dispatch().
Since the trap table is now fully statically initialized, there is no longer a
dependency on the Cache Manager in the default configuration.
Update #4458.
Diffstat (limited to 'bsps/sparc/erc32/start/bspstart.c')
-rw-r--r-- | bsps/sparc/erc32/start/bspstart.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/bsps/sparc/erc32/start/bspstart.c b/bsps/sparc/erc32/start/bspstart.c index d56d3b2ff2..1979c68308 100644 --- a/bsps/sparc/erc32/start/bspstart.c +++ b/bsps/sparc/erc32/start/bspstart.c @@ -12,22 +12,15 @@ #include <bsp.h> #include <bsp/bootcard.h> +#include <bsp/irq-generic.h> #include <rtems/sysinit.h> /* - * Called just before drivers are initialized. Is used to initialize shared - * interrupt handling. + * Initialize shared interrupt handling, must be done after IRQ controller has + * been found and initialized. */ -static void erc32_pre_driver_hook( void ) -{ - /* Initialize shared interrupt handling, must be done after IRQ - * controller has been found and initialized. - */ - BSP_shared_interrupt_init(); -} - RTEMS_SYSINIT_ITEM( - erc32_pre_driver_hook, + bsp_interrupt_initialize, RTEMS_SYSINIT_BSP_PRE_DRIVERS, RTEMS_SYSINIT_ORDER_MIDDLE ); |