From dd8df5941321b1bcd7c5b40f7442983b7a3cdc28 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 14 Nov 2012 13:59:27 +0100 Subject: bsps: Interrupt initialization error is fatal --- c/src/lib/libbsp/arm/csb336/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/csb337/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/edb7312/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/gba/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/gp32/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/gumstix/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/lm3s69xx/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/lpc24xx/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/lpc32xx/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c | 4 +-- c/src/lib/libbsp/arm/stm32f4/startup/bspstart.c | 4 +-- c/src/lib/libbsp/i386/shared/irq/irq_init.c | 8 +----- .../lib/libbsp/powerpc/gen5200/startup/bspstart.c | 5 +--- .../lib/libbsp/powerpc/gen83xx/startup/bspstart.c | 5 +--- c/src/lib/libbsp/powerpc/mbx8xx/startup/bspstart.c | 5 +--- .../libbsp/powerpc/mpc55xxevb/startup/bspstart.c | 5 +--- .../libbsp/powerpc/mpc8260ads/startup/bspstart.c | 6 +--- .../lib/libbsp/powerpc/qemuppc/startup/bspstart.c | 5 +--- c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c | 5 +--- .../lib/libbsp/powerpc/t32mppc/startup/bspstart.c | 5 +--- c/src/lib/libbsp/powerpc/tqm8xx/startup/bspstart.c | 5 +--- c/src/lib/libbsp/shared/include/bootcard.h | 7 +++++ c/src/lib/libbsp/shared/include/irq-generic.h | 25 +++++++++------- c/src/lib/libbsp/shared/src/irq-generic.c | 33 +++++++++------------- c/src/lib/libbsp/sparc/erc32/include/bsp.h | 2 +- c/src/lib/libbsp/sparc/leon2/include/bsp.h | 2 +- c/src/lib/libbsp/sparc/leon3/include/bsp.h | 2 +- c/src/lib/libbsp/sparc/shared/irq/irq-shared.c | 8 ++---- 28 files changed, 61 insertions(+), 116 deletions(-) (limited to 'c/src/lib') diff --git a/c/src/lib/libbsp/arm/csb336/startup/bspstart.c b/c/src/lib/libbsp/arm/csb336/startup/bspstart.c index d3b64e2040..253052d0d3 100644 --- a/c/src/lib/libbsp/arm/csb336/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/csb336/startup/bspstart.c @@ -63,9 +63,7 @@ void bsp_start_default( void ) /* * Init rtems interrupt management */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /* bsp_start */ /* Calcuate the frequency for perclk1 */ diff --git a/c/src/lib/libbsp/arm/csb337/startup/bspstart.c b/c/src/lib/libbsp/arm/csb337/startup/bspstart.c index ce899b8ef0..d0bc7640af 100644 --- a/c/src/lib/libbsp/arm/csb337/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/csb337/startup/bspstart.c @@ -62,9 +62,7 @@ void bsp_start_default( void ) /* * Init rtems interrupt management */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /* bsp_start */ diff --git a/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c b/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c index 979946517b..1ae7b67fc9 100644 --- a/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/edb7312/startup/bspstart.c @@ -43,9 +43,7 @@ void bsp_start_default( void ) /* * Init rtems interrupt management */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /* bsp_start */ /* diff --git a/c/src/lib/libbsp/arm/gba/startup/bspstart.c b/c/src/lib/libbsp/arm/gba/startup/bspstart.c index 4af85fbb74..0bc1ab598c 100644 --- a/c/src/lib/libbsp/arm/gba/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/gba/startup/bspstart.c @@ -46,9 +46,7 @@ void bsp_start_default( void ) /* rtems_exception_init_mngt(); */ /* Init rtems interrupt management */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /** diff --git a/c/src/lib/libbsp/arm/gp32/startup/bspstart.c b/c/src/lib/libbsp/arm/gp32/startup/bspstart.c index 0eca8a93a0..cfedc24c39 100644 --- a/c/src/lib/libbsp/arm/gp32/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/gp32/startup/bspstart.c @@ -92,9 +92,7 @@ void bsp_start_default( void ) /* * Init rtems interrupt management */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /* diff --git a/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c b/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c index b184269d67..369e3fcb54 100644 --- a/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/gumstix/startup/bspstart.c @@ -34,9 +34,7 @@ void bsp_start_default( void ) /* disable interrupts */ XSCALE_INT_ICMR = 0x0; rtems_exception_init_mngt(); - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /* bsp_start */ /* diff --git a/c/src/lib/libbsp/arm/lm3s69xx/startup/bspstart.c b/c/src/lib/libbsp/arm/lm3s69xx/startup/bspstart.c index dfd68f5523..a8b54f209c 100644 --- a/c/src/lib/libbsp/arm/lm3s69xx/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/lm3s69xx/startup/bspstart.c @@ -20,7 +20,5 @@ void bsp_start(void) { - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/bspstart.c b/c/src/lib/libbsp/arm/lpc24xx/startup/bspstart.c index a68e6b8f4c..4a1b1196fb 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/bspstart.c @@ -87,9 +87,7 @@ void bsp_start(void) initialize_console(); /* Interrupts */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); /* DMA */ lpc24xx_dma_initialize(); diff --git a/c/src/lib/libbsp/arm/lpc32xx/startup/bspstart.c b/c/src/lib/libbsp/arm/lpc32xx/startup/bspstart.c index ec900a518f..67ab94a9cb 100644 --- a/c/src/lib/libbsp/arm/lpc32xx/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/lpc32xx/startup/bspstart.c @@ -29,7 +29,5 @@ void bsp_start(void) { - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } diff --git a/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c b/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c index bf63ee38a9..f550ad1480 100644 --- a/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/rtl22xx/startup/bspstart.c @@ -85,9 +85,7 @@ void bsp_start_default( void ) /* * Init rtems interrupt management */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } /* bsp_start */ /* diff --git a/c/src/lib/libbsp/arm/stm32f4/startup/bspstart.c b/c/src/lib/libbsp/arm/stm32f4/startup/bspstart.c index fb1d5b1f86..3bea8f94a0 100644 --- a/c/src/lib/libbsp/arm/stm32f4/startup/bspstart.c +++ b/c/src/lib/libbsp/arm/stm32f4/startup/bspstart.c @@ -22,7 +22,5 @@ void bsp_start(void) { stm32f4_gpio_set_config_array(&stm32f4_start_config_gpio [0]); - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - _CPU_Fatal_halt(0xe); - } + bsp_interrupt_initialize(); } diff --git a/c/src/lib/libbsp/i386/shared/irq/irq_init.c b/c/src/lib/libbsp/i386/shared/irq/irq_init.c index ff06ce49d3..938df7bac6 100644 --- a/c/src/lib/libbsp/i386/shared/irq/irq_init.c +++ b/c/src/lib/libbsp/i386/shared/irq/irq_init.c @@ -158,13 +158,7 @@ void rtems_irq_mngt_init(void) /* * Init initial Interrupt management config */ - if (bsp_interrupt_initialize() != RTEMS_SUCCESSFUL) { - /* - * put something here that will show the failure... - */ - printk("Unable to initialize RTEMS interrupt Management!!! System locked\n"); - while (1); - } + bsp_interrupt_initialize(); /* * #define DEBUG diff --git a/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c b/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c index ef948fcd89..b71d6c58a1 100644 --- a/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c @@ -184,10 +184,7 @@ void bsp_start(void) ppc_exc_set_handler(ASM_ALIGN_VECTOR, ppc_exc_alignment_handler); /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot intitialize interrupts"); - } + bsp_interrupt_initialize(); /* * If the BSP was built with IRQ benchmarking enabled, diff --git a/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c b/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c index 9149c7bf2a..6baf0ca699 100644 --- a/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/gen83xx/startup/bspstart.c @@ -150,10 +150,7 @@ void bsp_start( void) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot intitialize interrupts\n"); - } + bsp_interrupt_initialize(); #ifdef SHOW_MORE_INIT_SETTINGS printk("Exit from bspstart\n"); diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mbx8xx/startup/bspstart.c index c4e9638953..1e76c45db1 100644 --- a/c/src/lib/libbsp/powerpc/mbx8xx/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/mbx8xx/startup/bspstart.c @@ -123,10 +123,7 @@ void bsp_start(void) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if ( sc != RTEMS_SUCCESSFUL ) { - BSP_panic( "cannot initialize interrupts" ); - } + bsp_interrupt_initialize(); /* * initialize the device driver parameters diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c index 94f2f93345..d6a29e4861 100644 --- a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/bspstart.c @@ -130,10 +130,7 @@ void bsp_start(void) ppc_exc_set_handler(ASM_ALIGN_VECTOR, ppc_exc_alignment_handler); /* Initialize interrupts */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic( "Cannot initialize interrupts"); - } + bsp_interrupt_initialize(); mpc55xx_edma_init(); #ifdef MPC55XX_EMIOS_PRESCALER diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c index 26581ad4ca..d1f91f0aab 100644 --- a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/bspstart.c @@ -183,11 +183,7 @@ void bsp_start(void) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot intitialize interrupts"); - } - + bsp_interrupt_initialize(); /* mmu_init(); diff --git a/c/src/lib/libbsp/powerpc/qemuppc/startup/bspstart.c b/c/src/lib/libbsp/powerpc/qemuppc/startup/bspstart.c index c0549def00..4c10af94a4 100644 --- a/c/src/lib/libbsp/powerpc/qemuppc/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/qemuppc/startup/bspstart.c @@ -107,10 +107,7 @@ void bsp_start( void ) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot intitialize interrupts"); - } + bsp_interrupt_initialize(); #if 0 /* diff --git a/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c b/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c index 147254ba03..d76dae5922 100644 --- a/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/qoriq/startup/bspstart.c @@ -126,10 +126,7 @@ void bsp_start(void) ); /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot intitialize interrupts\n"); - } + bsp_interrupt_initialize(); /* Disable boot page translation */ qoriq.lcc.bptr &= ~BPTR_EN; diff --git a/c/src/lib/libbsp/powerpc/t32mppc/startup/bspstart.c b/c/src/lib/libbsp/powerpc/t32mppc/startup/bspstart.c index 299f760204..50db2cd7d3 100644 --- a/c/src/lib/libbsp/powerpc/t32mppc/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/t32mppc/startup/bspstart.c @@ -77,8 +77,5 @@ void bsp_start(void) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot initialize interrupts\n"); - } + bsp_interrupt_initialize(); } diff --git a/c/src/lib/libbsp/powerpc/tqm8xx/startup/bspstart.c b/c/src/lib/libbsp/powerpc/tqm8xx/startup/bspstart.c index dd8aa59357..76573906d6 100644 --- a/c/src/lib/libbsp/powerpc/tqm8xx/startup/bspstart.c +++ b/c/src/lib/libbsp/powerpc/tqm8xx/startup/bspstart.c @@ -192,10 +192,7 @@ void bsp_start( void) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) { - BSP_panic("cannot intitialize interrupts"); - } + bsp_interrupt_initialize(); #ifdef SHOW_MORE_INIT_SETTINGS printk("Exit from bspstart\n"); diff --git a/c/src/lib/libbsp/shared/include/bootcard.h b/c/src/lib/libbsp/shared/include/bootcard.h index 1350bb6138..610f175964 100644 --- a/c/src/lib/libbsp/shared/include/bootcard.h +++ b/c/src/lib/libbsp/shared/include/bootcard.h @@ -50,6 +50,13 @@ extern "C" { * @{ */ +/** + * @brief Generic BSP fatal error codes. + */ +typedef enum { + BSP_GENERIC_FATAL_INTERRUPT_INITIALIZATION +} bsp_generic_fatal_code; + /** * @brief Global pointer to the command line of boot_card(). */ diff --git a/c/src/lib/libbsp/shared/include/irq-generic.h b/c/src/lib/libbsp/shared/include/irq-generic.h index d7d5cd095a..d365c0c851 100644 --- a/c/src/lib/libbsp/shared/include/irq-generic.h +++ b/c/src/lib/libbsp/shared/include/irq-generic.h @@ -9,12 +9,13 @@ /* * Based on concepts of Pavel Pisa, Till Straumann and Eric Valette. * - * Copyright (c) 2008, 2009, 2010 - * embedded brains GmbH - * Obere Lagerstr. 30 - * D-82178 Puchheim - * Germany - * + * Copyright (c) 2008-2012 embedded brains GmbH. + * + * embedded brains GmbH + * Obere Lagerstr. 30 + * 82178 Puchheim + * Germany + * * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at @@ -163,11 +164,15 @@ void bsp_interrupt_handler_default(rtems_vector_number vector); * @brief Initialize BSP interrupt support. * * You must call this function before you can install, remove and dispatch - * interrupt handlers. The BSP specific bsp_interrupt_facility_initialize() - * function will be called after all internals are initialized. Initialization - * is complete if everything was successful. + * interrupt handlers. There is no protection against concurrent + * initialization. This function must be called at most once. The BSP + * specific bsp_interrupt_facility_initialize() function will be called after + * all internals are initialized. If the BSP specific initialization fails, + * then this is a fatal error. The fatal error source is + * RTEMS_FATAL_SOURCE_BSP_GENERIC and the fatal error code is + * BSP_GENERIC_FATAL_INTERRUPT_INITIALIZATION. */ -rtems_status_code bsp_interrupt_initialize(void); +void bsp_interrupt_initialize(void); /** * @brief BSP specific initialization. diff --git a/c/src/lib/libbsp/shared/src/irq-generic.c b/c/src/lib/libbsp/shared/src/irq-generic.c index d0d593281b..5cf9c91d77 100644 --- a/c/src/lib/libbsp/shared/src/irq-generic.c +++ b/c/src/lib/libbsp/shared/src/irq-generic.c @@ -9,12 +9,13 @@ /* * Based on concepts of Pavel Pisa, Till Straumann and Eric Valette. * - * Copyright (c) 2008, 2009 - * embedded brains GmbH - * Obere Lagerstr. 30 - * D-82178 Puchheim - * Germany - * + * Copyright (c) 2008-2012 embedded brains GmbH. + * + * embedded brains GmbH + * Obere Lagerstr. 30 + * 82178 Puchheim + * Germany + * * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at @@ -22,6 +23,7 @@ */ #include +#include #include @@ -155,18 +157,11 @@ static void bsp_interrupt_unlock(void) } } -rtems_status_code bsp_interrupt_initialize(void) +void bsp_interrupt_initialize(void) { rtems_status_code sc = RTEMS_SUCCESSFUL; size_t i = 0; - bsp_interrupt_lock(); - - if (bsp_interrupt_is_initialized()) { - bsp_interrupt_unlock(); - return RTEMS_INTERNAL_ERROR; - } - /* Initialize handler table */ for (i = 0; i < BSP_INTERRUPT_HANDLER_TABLE_SIZE; ++i) { bsp_interrupt_handler_table [i].handler = bsp_interrupt_handler_empty; @@ -175,15 +170,13 @@ rtems_status_code bsp_interrupt_initialize(void) sc = bsp_interrupt_facility_initialize(); if (sc != RTEMS_SUCCESSFUL) { - bsp_interrupt_unlock(); - return sc; + rtems_fatal( + RTEMS_FATAL_SOURCE_BSP_GENERIC, + BSP_GENERIC_FATAL_INTERRUPT_INITIALIZATION + ); } bsp_interrupt_set_initialized(); - - bsp_interrupt_unlock(); - - return RTEMS_SUCCESSFUL; } /** diff --git a/c/src/lib/libbsp/sparc/erc32/include/bsp.h b/c/src/lib/libbsp/sparc/erc32/include/bsp.h index 5b3731da0d..652af558b1 100644 --- a/c/src/lib/libbsp/sparc/erc32/include/bsp.h +++ b/c/src/lib/libbsp/sparc/erc32/include/bsp.h @@ -93,7 +93,7 @@ void *bsp_early_malloc(int size); typedef void (*bsp_shared_isr)(void *arg); /* Initializes the Shared System Interrupt service */ -extern int BSP_shared_interrupt_init(void); +extern void BSP_shared_interrupt_init(void); /* Registers a shared IRQ handler, and enable it at IRQ controller. Multiple * interrupt handlers may use the same IRQ number, all ISRs will be called diff --git a/c/src/lib/libbsp/sparc/leon2/include/bsp.h b/c/src/lib/libbsp/sparc/leon2/include/bsp.h index 26b16a33f0..a3fef5680d 100644 --- a/c/src/lib/libbsp/sparc/leon2/include/bsp.h +++ b/c/src/lib/libbsp/sparc/leon2/include/bsp.h @@ -113,7 +113,7 @@ void *bsp_early_malloc(int size); typedef void (*bsp_shared_isr)(void *arg); /* Initializes the Shared System Interrupt service */ -extern int BSP_shared_interrupt_init(void); +extern void BSP_shared_interrupt_init(void); /* Registers a shared IRQ handler, and enable it at IRQ controller. Multiple * interrupt handlers may use the same IRQ number, all ISRs will be called diff --git a/c/src/lib/libbsp/sparc/leon3/include/bsp.h b/c/src/lib/libbsp/sparc/leon3/include/bsp.h index 3811423d06..8915246589 100644 --- a/c/src/lib/libbsp/sparc/leon3/include/bsp.h +++ b/c/src/lib/libbsp/sparc/leon3/include/bsp.h @@ -126,7 +126,7 @@ void *bsp_early_malloc(int size); typedef void (*bsp_shared_isr)(void *arg); /* Initializes the Shared System Interrupt service */ -extern int BSP_shared_interrupt_init(void); +extern void BSP_shared_interrupt_init(void); /* Registers a shared IRQ handler, and enable it at IRQ controller. Multiple * interrupt handlers may use the same IRQ number, all ISRs will be called diff --git a/c/src/lib/libbsp/sparc/shared/irq/irq-shared.c b/c/src/lib/libbsp/sparc/shared/irq/irq-shared.c index 22f2564723..d2e77683d8 100644 --- a/c/src/lib/libbsp/sparc/shared/irq/irq-shared.c +++ b/c/src/lib/libbsp/sparc/shared/irq/irq-shared.c @@ -25,7 +25,7 @@ static void BSP_ISR_handler(rtems_vector_number vector) } /* Initialize interrupts */ -int BSP_shared_interrupt_init(void) +void BSP_shared_interrupt_init(void) { rtems_vector_number vector; rtems_isr_entry previous_isr; @@ -37,11 +37,7 @@ int BSP_shared_interrupt_init(void) } /* Initalize interrupt support */ - sc = bsp_interrupt_initialize(); - if (sc != RTEMS_SUCCESSFUL) - return -1; - - return 0; + bsp_interrupt_initialize(); } /* Callback from bsp_interrupt_initialize() */ -- cgit v1.2.3